Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
Po przejściu okresu ogólnego zainteresowania Linuxem przyszła pora na coś konkretniejszego. Pewnie większość z Was pracuje czy interesuje się branżą IT, ja też. Pracuję na stanowisku Help Desk w budżetówce, pomagając użytkownikom ogarnąć popularny system operacyjny (tfu tfu). Ale chciałem poznać trochę tajniki "administratora linux", mianowicie nie stać mnie niestety na jakieś kursy tego typu albo podobne rzeczy. Nauka na własną rękę chyba mi zawsze szła najlepiej. Chciałem się zwrócić do Was na pewno doświadczonych w tym względzie ludzi o poradę. Wiem, że owy administrator to bardzo ogólne sformułowanie ale od takiego zacznę. Na co miał bym zwrócić uwagę w szukaniu i eksperymentowaniu. Bo "uczenie" się linuxa to trochę mylne określenie. Mam do dyspozycji komputer i niedawno zakupioną usługę VPSa (na kvm-ie). Planowałem postawić tam taki serverek i coś w nim grzebać. No właśnie coś... I tutaj się kończy.
Proszę Was o jakąś poradę jak się do tego zabrać co bardziej drążyć a co omijać. Oczywiście nie chce abyście mi wszystko wypisywali, wystarczą mi hasła albo nazwy resztę sobie znajdę - wujek nie gryzie :) W co celować na początek, serwery, bazy danych czy może sieci? Czy może jeszcze coś innego?
I może źle pytanie sformułuje ale: jakiego linuxa poznawać, bo mnie to bardzo nurtuję. Jest to dla mnie zagwozdka o której sporo czytałem ale ile stron tyle opinii. Niby wszystko opiera się na jednym ale nie do końca. Dotychczas głównie psułem Debiana. Miałem wrażenie, że ta reszta dystrybucji opiera się o Debiana to po co tracić czas na nie sporo składają się na to samo. Nie mówię tutaj o Red Hat czy BSD bo to dla mnie jest ciemna strefa - nigdy nie próbowałem.
Nie wiem czy to jest dobre miejsce do pytania o takie rzeczy ale na Waszym forum znalazłem masę przydatnych rzeczy i porad ludzi. Myślę ze ktoś pomoże chociaż naprowadzić na temat.
Offline
Specem nie jestem to od razu się przyznam ale zawsze wydawało mi się, że by być Administratorem Linux w formie to trzeba mieć jakieś wykształcenie. Fakt kursy mogą być ale w 2-3 tygodnie a nawet w pół roku tego wszystkiego biegle nie ogarniesz by być naprawdę dobrym Adminem.
Tak poza tym to z tego co zauważyłem na takim stanowisku dobrze jest poznać kilka popularnych dystrybucji bo w każdej firmie mogą różnych używać. Do tych najpopularniejszych to Red Hat, Slackware, SuSe oraz oczywiście Debian (od Debiana dużo Ci doradzi Mati75 oraz Ethanak). Bywają czasem firmy co wolą Unixa czyli coś na bazie BSD (tu jako nauczyciela unixa bym Ci poradził z naszego forum Yampressa).
Co do usług i zarządzania nimi to myślę, że najczęściej spotykane w firmach to Wirtualizacja, Zarządzaniem podziału łącza w firmie DHCP i biegłym zarządzaniem między komputerami klientami a serwerem oraz zrządzanie demonami typu Apache, PHP, SQL i temu podobne w zależności czym zajmuje się firma... aż po obsługę i programowanie pod linuksem obsługi maszyn (obrabiarki CNC, jakieś odlewnicze, drukarki 3D)... itp, etc... bablabla...
[quote=TheBocios]Nie mówię tutaj o Red Hat czy BSD bo to dla mnie jest ciemna strefa - nigdy nie próbowałem.[/quote]
I o to tu chodzi jak podstaw nie znasz to z czym tu do ludzi?! Red Hat i BSD to w zawodzie naprawdę dobrego i wykwalifikowanego (a nie konowała) Administratora Linux to podstawa!
Myślę, że po byle kursikach niewiele się nauczysz. Najlepiej jest skończyć odpowiednią szkołę na odpowiednich kierunkach, odbyć staż pod okiem specjalisty a dopiero potem oferować się jako pełnoprawny Administrator Linux.
Mogę się oczywiście mylić ale nie po to ludzie chodzą na Polibudę (męczą się godzinami ucząc się, zaliczając wszelkie egzaminy, sesje itp) by potem ich byle ludzie po byle kursikach wygryzali którzy nie mają nawet pojęcia czym jest linux.
Ostatnio edytowany przez neo86 (2015-11-12 23:26:49)
Offline
Wszystko zależy od tego czym konkretnie chcesz administrować (czyli co cię najzwyczajniej w świecie kręci) i na administratorów czego w swoim regionie masz zapotrzebowanie.
Kilka przykładowych możliwych ścieżek kariery administratora to:
- Bazodanowiec - MySQL, PostgreSQL, Oracle. Obok znajomości języka SQL dla danego serwera potrzebne jest też zrozumienie dla działania wewnętrznych mechanizmów systemów bazodanowych, wiedza z zakresu bezpieczeństwa baz, określania dostępu i uprawnień, zapewniania bezawaryjności usługi, replikacji, backupowania i weryfikowania poprawności backupów.
- Sieciowiec - Tutaj potrzebna jest znajomość teorii i praktyki działania sieci lokalnych i rozległych, przeciętna znajomość systemów *NIX'owych i bardzo dobra znajomość systemów stosowanych na sprzęcie sieciowym, takim jak Cisco, Juniper, Brocade, MikroTik, etc. O ile proste sieci LAN jesteś w stanie ogarnąć na domowym labie o tyle kwestia kosztów związanych z dorwaniem się do urządzeń o których mowa bądź zwyczajna możliwość zbudowania sieci choć trochę przypominającej prawdziwą to już coś ciężkiego do przeskoczenia i trzeba byłoby uderzać na jakiś staż bądź praktykę do firmy zajmującej się tematem, choćby lokalnego ISP.
- Administrator storage - Średnia znajomość sieci, bardzo dobre obeznanie w temacie systemowym (systemy plików, ich mocne i słabe strony, technologie przechowywania i udostępniania danych takie jak CIFS, NFS, iSCSI, FibreChannel, etc.), umiejętność planowania infrastruktury sieci pod to, znajomość sprzętu (macierze, dyski, kontrolery HBA/RAID), pojęcie o rozproszonych systemach plików (GlusterFS, Ceph, GFS).
- Administrator systemów wirtualizacji - Bardzo dobra znajomość systemu, rozeznanie w sprzęcie (wsparcie dla VT-x, VT-d, IOSRV, offloading na kartach sieciowych, kontrolery RAID, etc.), średnia znajomość sieci by jakoś wirtualki potrafiły gadać ze sobą i ze światem, dodatkowo backup, weryfikacja poprawności backupu, protokoły sieciowe do backupu wykorzystywane, systemy wirtualizacji (KVM, XEN, ESXi, OpenVZ ( xD ), LXC, docker, OpenStack). Do tego zapewne jakieś narzędzia do automatycznej konfiguracji i zarządzania grupami hostów (Puppet, Ansible, Chef, Salt).
- Administrator aplikacji - trochę szerokie pojęcie, ogólnie sprowadza się ono do mistrzowskiej znajomości zagadnień konkretnych aplikacji bądź frameworków programistycznych, czyli planowania i przygotowywania np. środowisk pod aplikacje napisane w Django bądź Ruby on Rails, z uwzględnieniem bajerów takich jak HA (wysoka dostępność), load balancing, zabezpieczanie aplikacji od strony serwera.
- Administrator pocztowy - bardzo dobra znajomość systemu i całego konceptu poczty elektronicznej. Konfigurowanie serwerów w sposób w który będą na tyle bezpieczne że poczta do nich przychodząca nie będzie wpadać w łapy niepowołanych osób, pilnowanie by serwer nie przyjmował poczty której nie powinien bądź zwyczajnie nie chce, konfigurowanie serwerów tak by poczta przez nie wysyłana nie była klasyfikowana jako spam, etc. Dodatkowo podstawowa znajomość sieci sporo ułatwi.
Na koniec zostawiłem perełkę:
- Administrator hostingu współdzielonego - gratulacje, właśnie stałeś się wszystkim z powyższych. Będziesz babrał się w każdej z wymienionych dziedzin (ew. poza siecią), będziesz zasypywany milionami problemów użytkowników końcowych które to problemy niekiedy bywają tak absurdalne że zaczynasz rozważać zmianę kariery na magazyniera bądź sprzątaczkę,
Z systemów którymi się zainteresować sugerowałbym w pierwszej kolejności Red Hat'a przy użyciu CentOSa, jako że jest on swego rodzaju enterprise standardem w branży, szczególnie na zachodzie. Sporą część rynku mają też Debian i Ubuntu, a w bardziej wyspecjalizowanych możesz spotkać np. Gentoo, które przy okazji jest niesamowicie rozwijające z racji stojącej za nim filozofii.
Popularne w zastosowaniach enterprise są też SLESy, czyli SUSE Linux Enterprise Server.
Dodatkowo potrzebna jest bardzo dobra znajomość języka angielskiego, który jest standardem w branży oraz w którym jest napisane 99.99% dokumentacji, umiejętność logicznego myślenia i łączenia wątków oraz zwyczajne zacięcie do szukania rozwiązań na własną rekę bądź w odmętach sieci.
IMHO pracę Admina trzeba zwyczajnie kochać, bo jeżeli podchodzi się do niej na zasadzie czysto zarobkowej to bardziej opłaca się zostać programistą, jako że tam mediana zarobków jest wyższa. Dodatkowo brak wrodzonej pasji może spowodować bardzo szybkie wypalenie, bo praca jest momentami niesamowicie stresująca i męcząca.
Na plus za to wychodzi to że sprawia ona też masę satysfakcji, swoje maszyny zaczynasz traktować jak własne dzieci, przyglądasz się każdemu etapowi ich życia i błogosławisz każdą chwilę świetego spokoju ;P Bywa tak że cały dzień nie wiesz w co ręce włożyć, a bywa tak że jak wszystko jest już fajnie postawione i daje sobie radę samo, wtedy zazwyczaj przyglądasz się logom, badasz nowinki w świecie IT, zajmujesz się tematami które cię interesują i rozwijają, a gdy zajdzie potrzeba rzucasz wszystko by łatać jakąś nową mega podatność bądź ratować świat po awarii macierzy. Dodatkowo można popaść w paranoję, gdyż z czasem każdy otwarty port sieciowy bądź usługę zaczynasz traktować jak potencjalną katastrofę bezpieczeństwa.
Nie mam zbyt wiele doświadczenia, bo jeszcze jestem [s]piękny[/s] i młody, więc dopiero 4 lata siedzę na tym stanowisku, studiów na kierunku jeszcze nie skończyłem i nie zapowiada się bym szybko się do tego zebrał, zwyczajnie od liceum przedkładałem interakcje z komputerami ponad interakcje z ludźmi i tak mi zostało ;) Osobiście zajmowałem się do niedawna po równo hostingami współdzielonymi jak i wirtualizacją, teraz z dużo większym naciskiem na wirtualizację (na całe szczęście) i każdy dzień uświadamia mi jak wiele jeszcze przede mną ;)
Mamy tu paru bardziej zaawansowanych zarówno w stażu pracy jak i wieku adminów, więc myślę że też dorzucą swoje trzy grosze.
IMHO na początek skoro już masz wirtualkę to postaw sobie na niej kilka popularnych usług, takich jak serwer WWW, środowisko dla jakiegoś języka programowania np. PHP, wgraj jaką aplikację z tego korzystającą, dorzuć serwer SMTP, serwer POP3/IMAP, napisz jakiś firewall, dorzuć do tego bazę danych, coś do backupu i monitoringu. Potem spójrz na to co stworzyłeś i zastanów się czy jest coś co możesz ulepszyć/przyśpieszyć/uczynić bezpieczniejszym/bardziej bezawaryjnym. Następnie poczytaj w sieci o bezpieczeństwie każdej z tych usług oraz o najlepszych praktykach i wprowadź je w życie. I zapętlić.
Ostatnio edytowany przez enether (2015-11-13 00:16:25)
Offline
To juz kolejny taki temat z rodzaju "Wyższość jednych świat nad drugimi". Nie można się tego nauczyć, bo każde środowisko jest inne. Bez zaplecza w postaci doświadczenia lub przygotowania ogólnego można co najwyżej ścierać kurz w serwerowni jeśli jest. Niema do wszystkiego jest potrzebna znajomość technologii sieciowych i to nie na zasadzie że wiem czym się różni RJ45 od RJ11. Poszukaj materiałów z CCNA i ćwiczeń. Potem podstawy teoretyczne systemów operacyjnych, baz danych, przechowywania danych, itp.
[quote=enether]IMHO na początek skoro już masz wirtualkę to postaw sobie na niej kilka popularnych usług, takich jak serwer WWW, środowisko dla jakiegoś języka programowania np. PHP, wgraj jaką aplikację z tego korzystającą, dorzuć serwer SMTP, serwer POP3/IMAP, napisz jakiś firewall, dorzuć do tego bazę danych, coś do backupu i monitoringu. Potem spójrz na to co stworzyłeś i zastanów się czy jest coś co możesz ulepszyć/przyśpieszyć/uczynić bezpieczniejszym/bardziej bezawaryjnym. Następnie poczytaj w sieci o bezpieczeństwie każdej z tych usług oraz o najlepszych praktykach i wprowadź je w życie. I zapętlić.[/quote]
Jaki serwer? Pod jakie obciążenia? Jaki jest IOPS? Firewall pod jaką sieć i co jest wystawione? Co jest na najbliższej brzegówce? Jaki POP3/IMAP? A co jeśli tutaj jest Lotus Domino? Backup ilu poziomowy? Jaka retencja?
Jeśli zrozumiesz istotę powyższych pytań to zrozumiesz jak błędne założenie masz o pracy administratora.
Jeśli jednak nie zauważysz to szybka podpowiedź, wywodzą się z podstaw teoretycznych i analizy danego zagadnienia. Nie stawiasz w firmie, korporacji, czy gdzie tam jeszcze ktoś pracuje "jakiegoś firewalla" tylko zaporę pod tę konkretną sieć, dla tych konkretnych usług, z istniejąca infrastrukturą, itp.
Offline
2368
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:27:07)
Offline
Wiedziałem, że będą odpowiedzi typu "jak się nie znacz do daj sobie spokój", ale na to byłem przygotowany. Ale właśnie o to chodzi jestem po studiach informatycznych ale nie ukierunkowały mnie one na tyle na ile bym chciał. Znam podstawy zagadnień sieci, baz danych, programowania czy storage. Ale to tylko suche podstawy. Chciałem od czegoś zacząć praktycznie i bardziej poważnie. Wielu z Was na pewno ma mnie za kretyna ostatniego ze porywam się z motyką na słońce ale każdy ma swoją opinie.
[quote=neo86]I o to tu chodzi jak podstaw nie znasz to z czym tu do ludzi?! Red Hat i BSD to w zawodzie naprawdę dobrego i wykwalifikowanego (a nie konowała) Administratora Linux to podstawa!
Myślę, że po byle kursikach niewiele się nauczysz. Najlepiej jest skończyć odpowiednią szkołę na odpowiednich kierunkach, odbyć staż pod okiem specjalisty a dopiero potem oferować się jako pełnoprawny Administrator Linux.
Mogę się oczywiście mylić ale nie po to ludzie chodzą na Polibudę (męczą się godzinami ucząc się, zaliczając wszelkie egzaminy, sesje itp) by potem ich byle ludzie po byle kursikach wygryzali którzy nie mają nawet pojęcia czym jest linux.[/quote]
No to tutaj Cie może zaskoczę ale "podstaw" według Ciebie Red Hat czy BSD przynajmniej ja na studiach nie miałem. I myślę, że to raczej zależy od uczelni. Dlatego też chcę poznawać te systemy skoro są one potrzebne do pracy. I nie twierdze, że jako samouk będę tak samo wartościowy jak ludzie po Polibudzie. Ale czy nie mogę spróbować?
[quote=qluk]To juz kolejny taki temat z rodzaju "Wyższość jednych świat nad drugimi". Nie można się tego nauczyć, bo każde środowisko jest inne. Bez zaplecza w postaci doświadczenia lub przygotowania ogólnego można co najwyżej ścierać kurz w serwerowni jeśli jest. Niema do wszystkiego jest potrzebna znajomość technologii sieciowych i to nie na zasadzie że wiem czym się różni RJ45 od RJ11. Poszukaj materiałów z CCNA i ćwiczeń. Potem podstawy teoretyczne systemów operacyjnych, baz danych, przechowywania danych, itp.
enether napisał(-a):
IMHO na początek skoro już masz wirtualkę to postaw sobie na niej kilka popularnych usług, takich jak serwer WWW, środowisko dla jakiegoś języka programowania np. PHP, wgraj jaką aplikację z tego korzystającą, dorzuć serwer SMTP, serwer POP3/IMAP, napisz jakiś firewall, dorzuć do tego bazę danych, coś do backupu i monitoringu. Potem spójrz na to co stworzyłeś i zastanów się czy jest coś co możesz ulepszyć/przyśpieszyć/uczynić bezpieczniejszym/bardziej bezawaryjnym. Następnie poczytaj w sieci o bezpieczeństwie każdej z tych usług oraz o najlepszych praktykach i wprowadź je w życie. I zapętlić.
Jaki serwer? Pod jakie obciążenia? Jaki jest IOPS? Firewall pod jaką sieć i co jest wystawione? Co jest na najbliższej brzegówce? Jaki POP3/IMAP? A co jeśli tutaj jest Lotus Domino? Backup ilu poziomowy? Jaka retencja?
Jeśli zrozumiesz istotę powyższych pytań to zrozumiesz jak błędne założenie masz o pracy administratora.
Jeśli jednak nie zauważysz to szybka podpowiedź, wywodzą się z podstaw teoretycznych i analizy danego zagadnienia. Nie stawiasz w firmie, korporacji, czy gdzie tam jeszcze ktoś pracuje "jakiegoś firewalla" tylko zaporę pod tę konkretną sieć, dla tych konkretnych usług, z istniejąca infrastrukturą, itp.[/quote]
Rozumiem, że patrzysz na to bardzo szeroko ale od czegoś trzeba zacząć, Ty od razu wszystko wiedziałeś i dostałeś pod opiekę serwerownie tak? Pisałem wyraźnie, że jestem początkujący w tej kwesti ale interesje mnie to i chciał bym nauczyć się czegoś nowego. Chciał bym informacje od czego warto zacząć a nie udowadniać mi, że nie nadaję się do tego.
[quote=uzytkownikubunt]Przecież enether nie napisał, że po postawieniu "jakiegoś firewalla" autor tematu zostanie zawodowcem. To tylko pewne ćwiczenie na początek. Dzięki temu można dowiedzieć się co to jest iptables, pakiet IP (chociaż można to też praktycznie poznać od strony programisty C wypełniając strukturę danych ;) ). Potem jak już się zrobi kilka prostych rzeczy można przejść do teorii (czuje się wtedy lepiej pojęcia) i... znów praktyki, ale tym razem już będąc bardziej świadomym i tym razem robiąc to lepiej.[/quote]
Mnie zawsze najlepiej się uczyło takich spraw właśnie praktycznie. Przeczytanie jak ma działać np iptables niby prosta sprawa ale jak robiłem to w praktyce trochę to było inaczej ale dało rade to ogarnąć na razie na tyle ile potrzebowałem.
@[b]enether[/b] Wyczerpująca i pełna ciekawych informacji wypowiedź, super, dzięki bardzo!! :)
Offline
[quote=neo86]Specem nie jestem to od razu się przyznam ale zawsze wydawało mi się, że by być Administratorem Linux w formie to trzeba mieć jakieś wykształcenie. Fakt kursy mogą być ale w 2-3 tygodnie a nawet w pół roku tego wszystkiego biegle nie ogarniesz by być naprawdę dobrym Adminem.
Tak poza tym to z tego co zauważyłem na takim stanowisku dobrze jest poznać kilka popularnych dystrybucji bo w każdej firmie mogą różnych używać. Do tych najpopularniejszych to Red Hat, Slackware, SuSe oraz oczywiście Debian (od Debiana dużo Ci doradzi Mati75 oraz Ethanak). Bywają czasem firmy co wolą Unixa czyli coś na bazie BSD (tu jako nauczyciela unixa bym Ci poradził z naszego forum Yampressa).
...[/quote]
Rada, nie masz o czymś pojęcia to się nie wypowiadaj.
Kursy to są głównie sieciowe np. Cisco itd. Chociaż mając znajomość interfejsów Cisco, przełączników Della już nie zaprogramujesz bo się lekko różnią. Teoria jest taka sama.
Doświadczenie i umiejętności to postawa pracy admina.
Pracując w dużym data center mogę powiedzieć tak:
1. Ludzie mają różne wymagania i różne podejścia.
2. Użytkownik końcowy to zło:
a) jak ma sprzęt apple to debil i lepiej nie wdawać się w dyskusje,
b) pkt. a + bycie "programistą" - on wie lepiej niż ty,
c) brak kompletnie myślenia to norma,
3. Dystrybucje na maszynach można podzielić na 3 grupy:
a) czysty Debian - czasem Ubuntu, ale to drugie naprawdę rzadko,
b) Redhat (Fedora, CentOS),
c) FreeBSD,
d) >>1% gentoo, pld, openbsd,
Offline
Nie bede duzo dywagowal ale akurat teraz na topie jest DevOps
Z twojego punktu widzenia uczylbym sie nastepujacych rzeczy:
1. Sieci (routing, bonding, tunning)
2. Monitoring (op5, incinga, nagios)
3. Automatyzacja (puppet, saltstack, spacewalk, cfengine)
4. Administracja ( tunning, ipa, cfengine, wirtualizacja, tworzenie paczek)
Pozdrawiam
Offline
[quote=mati75]d) >>1% gentoo, pld, openbsd,[/quote]
Chyba <<1% ;)
Moje zdanie: Naucz się administracji GNU/Linuksem a nie daną dystrybucją. Ja nadal jak siadam do CentOSa i mam się pobawić yumem (coś bardziej skomplikowanego niż install) to czytam manuala bo i tak nie sposób zapamiętać wszystkich przełączników od menadżera pakietów w Debianie, RedHacie, Gentoo, Solarisie i innych systemach więc i tak z mana będziesz korzystał, dodatkowo (chyba nikt o tym nie wspomniał) naucz się pisać skrypty. Bash, Perl, może Python. To się przydaje i znacznie przyśpiesza pracę i niweluje błędy.
Ja aktualnie pracuje w zespole Monitoringu IT i zajmuje się, poza tonom skryptologii, narzędziami monitoringu, administracją Linuksami oraz innymi *NIXami a także Syslogami w każdej postaci.
Jak zaczynałem pracę nawet nie przypuszczałem, że zarządzanie logami tyle będzie mi zajmowało... a szykuję się, że tylko tym będę się zajmował :)
Offline
[quote=uzytkownikubunt]Przecież enether nie napisał, że po postawieniu "jakiegoś firewalla" autor tematu zostanie zawodowcem. To tylko pewne ćwiczenie na początek. Dzięki temu można dowiedzieć się co to jest iptables, pakiet IP (chociaż można to też praktycznie poznać od strony programisty C wypełniając strukturę danych ;) ). Potem jak już się zrobi kilka prostych rzeczy można przejść do teorii (czuje się wtedy lepiej pojęcia) i... znów praktyki, ale tym razem już będąc bardziej świadomym i tym razem robiąc to lepiej.[/quote]
No i super kilka polityk typu DROP zrobi kilka REJECT i poczyta o iptables i zostanie zatrudniony gdzies i dostanie czy to PfSensa z PacketFilterem albo Vyatta i ma się popłakać bo to działa na innych zasadach? Jak pozna najpierw warstwy ISO/OSI, nastepnie metody filtrowania i analizy na poszczególnej warstwie będzie w stanie poradzić sobie z dowolnym FW mając do dyspozycji podręcznik administratora danego rozwiązania. Przeciez gdybym ja miał na pamięć znać poszczególne komendy i ich kombinację dla całego sprzętu z którym mam styczność to bym wyglądał tak:
[img]http://cdn2.thumbs.common.smcloud.net/common/8/6/s/862687Rebw.jpg/r-0,500-n-862687Rebw.jpg[/img]
[quote=TheBocios]Rozumiem, że patrzysz na to bardzo szeroko ale od czegoś trzeba zacząć, Ty od razu wszystko wiedziałeś i dostałeś pod opiekę serwerownie tak? Pisałem wyraźnie, że jestem początkujący w tej kwesti ale interesje mnie to i chciał bym nauczyć się czegoś nowego. Chciał bym informacje od czego warto zacząć a nie udowadniać mi, że nie nadaję się do tego.[/quote]
To oznacza że nic nie rozumiesz. Odpowiedź na pytanie brzmi tak. Odesłałem do kursów CCNA bo zawierają dużo z samej teorii, plus mają jakieś mniej lub bardziej realne przykłady i zadania do rozpatrzenia w tym "problemówki". Czyli masz określone środowisko ze sprzętem i konfiguracjami a problem leży że któreś pakiety nie docierają tam gdzie należy. Wystarczy pominąć zbędne zapamiętywanie mechanizmów typowych dla IOS'a i masz bardzo dobrą podstawę z technologii sieci.
Więc zreflektuj się ze swoją postawą chyba że oczekujesz odpowiedzi "wizjonerskich" lub typu "wydaje mi się że jak się nauczysz tego i tego to jesteś takim UberAdminem że hoho". Chyba że zależy Ci na byciu Adminem pokroju części adminów środowiska homogenicznego Windowsa gdzie wychodzi się z założenia że jeśli nie wyskakują komunikaty naprawiające i admin musi klikać "napraw to wg. procedury 1", a jeśli jest inaczej to dzwonimy po support to proszę bardzo możesz uczyć się "aplikacji".
Jeszcze jedna ważna cecha admina to umiejętność czytania ze zrozumieniem i analizy trendów.
P.S. I tutaj wydaje mi się że jest problem bo nigdzie nie napisałem że ktoś się nie nadaje. Takie coś byś mógł ewentualnie usłyszeć gdybyś starał się o prace w zespole i byś zaprezentował "umiejętność obsługi aplikacji". Jak poznasz podstawy i teorie to można przejść dopiero do warstwy aplikacji.
Offline
2370
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:27:09)
Offline
To się nauczy złych praktyk, jak będzie pytanie "jak zostać elektrykiem?" to najpierw odeślemy do tablicy żeby sobie po przyłączał kilka kabelków może jakąś WRP? Czemu w IT większość uważa że najlepiej zacząć od praktyki, a teorie jakoś się dorobi.
Offline
2371
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:27:10)
Offline
[quote=qluk]To się nauczy złych praktyk, jak będzie pytanie "jak zostać elektrykiem?" to najpierw odeślemy do tablicy żeby sobie po przyłączał kilka kabelków może jakąś WRP? Czemu w IT większość uważa że najlepiej zacząć od praktyki, a teorie jakoś się dorobi.[/quote]
Oj tam, oj tam.
Jeżeli ktoś nie widział na oczy komputera, to nie zacznie kariery w IT.
Jeśli natomiast ktoś widział i używał komputera, na którym był jakiś system operacyjny, to i tak najpierw łyknął praktyki, a dopiero potem teorii.
Więc to nie jest uważanie, tylko normalna droga do IT, zawsze ten pierwszy poznany system jest punktem odniesienia do następnych.
Katastrofa jest wtedy, kiedy na tym pierwszym systemie nie uda się zaobserwować logiki działania systemu operacyjnego, która w różnych punktach jest wspólna dla wszystkich systemów.
Dlatego wielu informatyków, którzy znają tylko Windows, nie potrafi zrozumieć sposobu działania i konfigurowania Debiana, bo tam nie ma okienek znanych z XP.
Sam znam takich pacjentów, nawet jednego, który w TB nie umie skonfigurować konta ani nawet wysłać maila, bo on zna tylko Outlooka, chociaż licencjat jakoś skończył. ;)
Offline
Czemu w IT większość uważa że najlepiej zacząć od praktyki, a teorie jakoś się dorobi.[/quote]
Z prostego powodu — bo IT to abstrakcja. Myślisz, że widzisz cycki 3D na ekranie, a tak naprawdę ich tam nie ma, zajrzyj za monitor. xD Idąc dalej, jeśli coś schrzanisz, to wciskasz ctrl+z i poprawiasz. Nie chce ci się czegoś robić, to robisz na skróty ctrl+c i ctrl+v. Spróbuj na stole operacyjnym dać ctrl+z, albo ctrl+c i ctrl+v. xD Jak ja instalowałem po raz pierwszy swojego linuxa i chciałem go zaszyfrować, to spędziłem naprawdę sporo godzin w instalatorze, tylko dlatego, że co chwila formatowałem dysk. Format był z różnych powodów, głównie bo o czymś zapominałem (zaszywanie narzędzi w brzuchu pacjenta też się zdarza) ale chciałem generalnie wypracować sobie odpowiadające mi ustawienie. Obecnie szyfrowanie dla mnie to jest pikuś, nigdy się tego nie uczyłem, a jestem w stanie zreprodukować wszystkie kroki zaawansowanego procesu instalacyjnego. Biorąc wspomniany przykład z chirurgią, to pewnie bym popełnił holokaust ale w końcu bym dokonał przełomu w medycynie, tak jak to robili niemcy podczas 2 wojny. Jeśli masz niewyczerpane zasoby, a tak jest w IT, to dużo lepiej jest uczyć się praktycznie. Nawet jak coś schrzanisz, to się i tak czegoś nauczysz, no i nie zamkną cię za to, a już na pewno z tego powodu nie umrzesz. xD
Offline
Wtrącając się do powyższej wypowiedzi. W IT zawsze można przywrócić backup/snapshot, na stole operacyjnym tak średnio bym powiedział.
Offline
2372
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:27:12)
Offline
[quote=drag_op]Wtrącając się do powyższej wypowiedzi. W IT zawsze można przywrócić backup/snapshot, na stole operacyjnym tak średnio bym powiedział.[/quote]
W IT zawsze można zajrzeć do helpa czy mana, a na stole operacyjnym? Doktorze, pacjent schodzi — spokojnie siostro lookne na "man skull" i "man brain" i zaraz przetestuje kilka przykładów, które znalazłem na necie, coś na pewno zadziała. A tak w ogóle to zrobie fotkę moim nowym fonem i wrzucę ją do google search, może znajdzie podobne i powie mi wtf, bo kompletnie nie mam pojęcia co robić. xD
@uzytkownikubunt, dlatego jest środowisko produkcyjne i testowe. W warunkach realnych bardzo ciężko o taki schemat, a nawet jeśli już występuje, to uszkodzenie środowiska testowego kosztuje. W IT koszt ponownego odtworzenia całego środowiska testowego jest bliski 0, przynajmniej jeśli chodzi o zasoby. Najwyżej znów będziemy musieli przechodzić przez proces instalacyjny apache+mysql+wordpress. xD
Wyobraźcie co by się działo w IT, gdyby zlikwidować backup. :]
Ostatnio edytowany przez morfik (2015-11-14 00:41:35)
Offline
@morfik:
To zależy gdzie i przy czym się pracuje - jak robiłbyś aplikację dla banku i przez Twój błąd coś poważniejszego wyciekło to już śmiesznie by nie było. Tak samo w przypadku oprogramowania odpowiadającego za sprzęt na tym stole operacyjnym, tam też nie ma miejsca na błędy, bo kończą się tak jak w tym przypadku:
https://en.wikipedia.org/wiki/Therac-25
A czemu w IT ludzie wolą praktykę od teorii? Bo realnie 50-90% teorii (w zależności od gałęzi IT) albo nie ma zastosowania w [b]realnej pracy[/b], albo ma wpływ tylko na sytuacje skrajne. Mówię to z własnego doświadczenia programisty - przykładowo, na studiach uczy się zwykle na C lub C++ aby to programiści rozumieli czym jest wskaźnik, jak działa zarządzanie pamięcią itd. A w pracy wygląda to tak że 90% softu dzisiaj powstaje na: C#/Java/JavaScript/Python i innych językach które o zarządzanie pamięcią dbają w dużej mierze same (jak efektywnie, to inna sprawa) i dopóki ktoś nie stworzy aplikacji potrzebującej dużej ilości RAM'u, to nawet teoria o działaniu garbage colectorów może mu nie być [b]w praktyce[/b] potrzebna... Patrząc dalej, jak ktoś miał podstawy programowania niskopoziomowego, jaka jest szansa że w [b]średniej klasy firmie IT[/b] dadzą mu coś do napisania w assemblerze (gdzie przyda się wiele teorii)? Przykłady można mnożyć - jeszcze inna sprawa to sposób nauczania teorii na polskich uczelniach która potrafi zniechęcić do wszystkiego... ale to już wynika z podejścia prowadzących niestety.
@neo86:
Mogę się oczywiście mylić ale nie po to ludzie chodzą na Polibudę (męczą się godzinami ucząc się, zaliczając wszelkie egzaminy, sesje itp) by potem ich byle ludzie po byle kursikach wygryzali którzy nie mają nawet pojęcia czym jest linux.[/quote]
Zdradzę Ci jak to wygląda realnie w przypadku programowania (podejrzewam że w przypadku adminki jest podobnie):
1. 80% firm w Polsce (a raczej działów HR w tych firmach) wymaga "papira" żeś jest inż. albo mgr inż. - to jest wyłącznie widzi misie, zapożyczone jeszcze z lat komuny i powoli odchodzi do lamusa
2. Większość ludzi idzie na studia bo usłyszą w TVN że ludzie z wykształceniem informatycznym zarabiają 6 i więcej koła miesięcznie (oczywiście o tym że takie pieniądze to są tylko w niektóych gałęziach IT, jak ktoś ma lata doświadczenia i do tego umie negocjować - media już nie wspomną :P )
3. Nadal promuje się idiotyczne podejście - nie skończyłeś studiów? To musisz być kretynem, bo każdy "wie" że człowiek dopiero na studiach mądrzeje ;]
4. Wiedzy praktycznej na studiach jest baaaaaaaaardzo mało - w zasadzie zwykle jej nie ma albo wygląda odwrotnie niż w realnej pracy, przykładowo nadal wielu prowadzących promuje wykonywanie projektów samemu, a w pracy 90% projektów robisz w kilka osób, co [b]znacząco[/b] zmienia postać rzeczy (i testuje tzw. umiejętności "miękkie")
Gdybym dzisiaj mógł się cofnąć w czasie, to nie wiem czy poszedł bym na studia, bo to co wpajali nam 5 lat, można się (przy dobrej samodyscyplinie) samemu nauczyć w rok, może dwa.
W branżach ścisłych, generalnie najbardziej liczy się praktyka i doświadczenie - jak w normalnej firmie (czyli jednej z tych 20% firm w Polsce) dostaną CV od dwóch osób gdzie:
-jedna będzie miała wpisane kilka staży + np. prowadzenie własnych stron + technikum informatyczne
-a druga mgr inż. i zero doświadczenia
To na 90% wybiorą tą pierwszą.
Pozdrawiam.
Offline
Cóż... ja polecam osobiście praktykę, co prawda jestem jeszcze bardzo niedoświadczony i nieopierzony (jestem dopiero w Technikum w klasie maturalnej), ale mam już rok doświadczenia jako stażysta/DevOps i powiem tak, że z pewnością robiąc samodzielnie taski nauczyłem się masę nowych rzeczy, sama możliwość przebywania w gronie specjalistów (bo bardzo ogarnięty team mi się trafił) sprawiła, że banalne problemy rozwiązywały się albo po chwili (jeśli coś w googlach było łatwe do znalezienia) albo po szybkiej interwencji kogoś kto był koło mnie i kogo mogłem zapytać 'co jest pinć'
co prawda brakuje mi baardzo teorii (bez tego się niestety nie da swobodnie pracować), ale powoli uzupełniam wiedzę idąc od wyższych warstw abstrakcji niżej ;) Jeszcze rok temu moje umiejętności w obsłudze terminala, CentOSa, nawet głupiego gita były co najmniej mierne, a pierwsze moje devboxy na Centosie niesamowicie mnie wkurzały, bo WebUI mi się nie, a przecież wystarczy przestawić tryb Selinuxa żeby móc pracować (podkreślam, że to był devbox)
Jeśli chodzi o pytanie:
1. Jakiego Linuxa poznawać:
Imo warto ogarniać Debiana(przekłada się ta znajomość bezpośrednio na ubuntu) i CentOSa(to samo tyle że do RedHata) w zasadzie całe różnice zazwyczaj sprowadzają się do położenia logów, nazw bianarek (np httpd w CentOS vs apache2 w Debian) i obsługi menedżera pakietów (yum, apt-get, dnf z czasem). Znając ten zestaw niewiele jest cię w stanie zaskoczyć, a nawet jak wejdzie coś nowego to zazwyczaj ciężkie 5 minut googli rozwikła zagadaki ;)
2. A tematy do ogarnięcia, no cóż... ;) Koledzy na forum są dużo bardziej doświadczeni i pewnie się uśmiechną, ale dla mnie największe problemy czasem sprawiają rzeczy najprostsze ;P Cóż warto widzieć imo:
-jak konfigurować firewall (via iptables i/lub firewalld)
-jak używać openssh (tworzenie własnych CA, generowanie własnoręcznie podpisanych certyfikatów, etc.
-narzędzia serwująco-proxujące, w postaci Apache, Nginx, HAproxy, prędzej czy później będziesz potrzebował albo proxy http np do terminacji SSLa(wymogi bezpieczeństwa przy audytach np.), czasem przyda ci się nawet terminacja w obie strony (klient autoryzujący się certem)
-szeroko pojęte bezpieczeństwo danych, czyli że nie stawiamy apek na koncie roota, CA które używamy poza celami testowymi mają swojego odizolowanego od świata (najlepiej fizycznego, bez internetu gdzieś w otchłani serwerowni), czy nawet ustawienia sshd (np brak opcji logowania na roota i wyłaczone logowanie po haśle), długie hasła, keepass, szyfrowanie danych i poprawny ich backup
-wirtualizacja i konteneryzacja ;) - pobawić się kvmem, vboxem, vagrantem(cudowne narzędzie które szybko pokochasz gdy będziesz stawiać kolejne nowe środowiska testowe na vmkach i zamiast instalować każdorazowo system po prostu uruchomisz go z obrazu, obrazy możesz dozbrajać we własne skrypty, czy inną automatyzacja - tworzy wirtualki z przygotowanych szablonów, świetne ułatwienie podczas projektowania nowych rzeczy czy jakiś testów, sporo szablonów jest w sieci), poza tym dobrze jest wiedzieć czym jest KVM, Hyper-V i Vmware, a także czym jest docker i gdzie warto go stosować, a gdzie to jest przerost formy nad treścią
-jak używać curla, netstata, iotopa, gita, vima, crona i jeszcze paru zabawnie podstawowych narzędzi które nawet nie wiedziałeś jak mogą bardzo ułatwić ci pracę ;P
A w międzyczasie cóż... coś do skryptowania, teoria sieci i ciągłe poszerzanie wiedzy ;) materiałów do nauki na pewno ci nie zabraknie, a jak przestaniesz się bawić w domu, a zaczniesz w pracy, to przynajmniej na początku każdy dzień będzie niekończącym się poszukiwaniem odpowiedzi najpierw na poziomie 'czy problem był na stacku' a potem im bardziej złożony, tym bardziej teoretyczno-dokumentacyjny
Pozdro ;)
Offline
O kurcze maaaaaasa ciekawych i pomocnych informacji. Dziękuję Wam wszystkim! Jestem w długiej trasie i nie mogę się rozpisać (przeczytałem tylko posty na postoju) ale naprawdę dziękuje, że chciało Wam się poświęcić chwile na wypowiedź.
Jeszcze raz wielkie dzięki!
Offline
Cześć wszystkim,
Jako, że temat wydał mi się bardzo ciekawy a posiadam trochę doświadczenia w temacie to się wypowiem :)
Czego się uczyć:
1. Programowanie - bash, python (to takie minimum).
2. Configuration management - ansible, saltstack, puppet, chef (polecam skupić się na dwóch pierwszych).
3. Zgłębić terminy: TCP/IP, HTTP, SSL, FTP, SMTP itd. itp, jest tego trochę, generalnie różnego rodzaju protokoły przesyłania danych.
Czego się NIE uczyć:
1. Nie ucz sie konkretnej dystrybucji linuksa - Nie zawsze przyjdzie Ci pracować na samym debianie czy redhacie, jeśli opanujesz "ogólnie" linuxa to przestawienie się na dowolną dystrybucję jest kwestią paru minut, proszę was apt-get install a yum install to żadna różnica.
2. "Nie ucz się" nginx'a, apache, zabbix'a, postfix'a, mysql, postgresql - wykujesz na pamięć konfigurację, składnię? Bez sensu, postaw sobie te usługi i jak czegoś nie wiesz po prostu zajrzyj do dokumentacji (problem w tym, że trzeba wiedzieć czego szukać dlatego połóż nacisk na podstawy: HTTP, SMTP, SNMP).
Nikt normalny nie będzie wymagał od Ciebie na rozmowie rekrutacyjnej wyrecytowania po kolei opcji konfiguracyjnych nginx'a.
Postaw sobie w domu kilka wirtualek albo lepiej od razu zainteresuj się Dockerem.
Unikając logowania sie bezpośrednio na maszyny skonfiguruj sobie kilka usług, np haproxy -> kilka instancji nginx -> rabbitmq/redis -> postgresql do tego jenkins i jakiś monitoring np zabbix, napisz jakąś prostą web aplikację i sobie ją wystaw, dołóż kolejne 10 wirtualek i spraw że za pomocą jednego polecenia/ pusha w gicie zainstaluje się kilka dodatkowych web serverów, które dodadzą się do Load Balancera (haproxy).
Pamiętaj, że w dobie clouda nie ma rozróżnienia na administratora baz danych, storage, aplikacji, itd
EDIT: i jeszcze raz powtórzę, skup się na programowaniu, przyszłość administratora to umiejętność programowania (nie mylić ze skryptami)
Ostatnio edytowany przez grom992 (2015-11-14 10:12:48)
Offline
To zależy gdzie i przy czym się pracuje - jak robiłbyś aplikację dla banku i przez Twój błąd coś poważniejszego wyciekło to już śmiesznie by nie było.[/quote]
No tak, dlatego robisz te aplikację, testujesz, patrzysz błąd, to poprawiasz, wypuszczasz wersję alfa, beta, rc1...rc10 i w końcu idzie do banku. A z pacjentami to jak? To o czym napisałeś wyżej to właśnie by było operowanie "na żywym organizmie" ale w IT tego się nie robi z oczywistych powodów. W przypadku różnych zawodów nie tylko lekarza, nie da rady podejść do danej roboty tak jak podchodzi każdy człowiek w branży IT. xD A z kolei jakby przenieść warunki realne do tej sytuacji z programowaniem strony banku, czyli żadnego backupu, żadnych testów, czy wersji alfa, to wtedy raczej by wszyscy od nas wymagali co najmniej 20 certyfikatów, 10 kierunków studiów i 100 lat doświadczenia na tym stanowisku. xD Poza tym, zobacz co się dzieje, gdy te chronione dane już wylecą w świat. Czy kogoś się za to zamyka? Czy ktoś z tego powodu ginie? Nie, a zespół danego serwisu mówi ci — zmień se hasło bo mieliśmy wyciek. Poza tym poprawiliśmy już buga, więc "bez obaw", a najlepiej zmień wszędzie indziej gdzie miałeś takie samo hasło. xD
IT jako takiego nie można porównywać z innymi zawodami, bo tutaj środowisko wygląda zupełnie inaczej, a w nim panują odmienne zasady.Ostatnio edytowany przez morfik (2015-11-14 12:58:36)
Offline
2373
Ostatnio edytowany przez uzytkownikubunt (2016-12-01 01:27:13)
Offline
Time (s) | Query |
---|---|
0.00010 | SET CHARSET latin2 |
0.00004 | SET NAMES latin2 |
0.00134 | SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='18.189.170.227' WHERE u.id=1 |
0.00058 | REPLACE INTO punbb_online (user_id, ident, logged) VALUES(1, '18.189.170.227', 1732786076) |
0.00043 | SELECT * FROM punbb_online WHERE logged<1732785776 |
0.00052 | DELETE FROM punbb_online WHERE ident='54.36.148.217' |
0.00125 | SELECT topic_id FROM punbb_posts WHERE id=292933 |
0.00273 | SELECT id FROM punbb_posts WHERE topic_id=27892 ORDER BY posted |
0.00123 | SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=27892 AND t.moved_to IS NULL |
0.00005 | SELECT search_for, replace_with FROM punbb_censoring |
0.00379 | SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=27892 ORDER BY p.id LIMIT 0,25 |
0.00082 | UPDATE punbb_topics SET num_views=num_views+1 WHERE id=27892 |
Total query time: 0.01288 s |