5 powodów, dla których warto zacząć korzystać z wiersza poleceń systemu Linux
Możesz używać Linuksa bez opanowania wiersza poleceń i grzebania w oknach terminali. Ale jeśli to zrobisz, stracisz prędkość, moc i precyzyjną kontrolę niskiego poziomu z wiersza poleceń.
O co tyle zamieszania?
Niektórzy przysięgają na to, inni na to. Mówimy o wierszu poleceń, tym czcigodnym interfejsie człowiek-komputer, który istnieje od ponad pięćdziesięciu lat i nadal nie będzie dostępny w najbliższym czasie. Nawet w dzisiejszym świecie eleganckich interfejsów graficznych i wygody korzystania z ekranu dotykowego jest miejsce na wiersz poleceń.
Kiedy pod koniec lat sześćdziesiątych i na początku siedemdziesiątych XX wieku rozwijano Unix, nie było czegoś takiego jak graficzny interfejs użytkownika (GUI) ani środowisko graficzne (DE). Pisanie na klawiaturze było jedyną grą w mieście. Jeśli chciałeś wchodzić w interakcję z komputerem, korzystałeś z klawiatury i nie zastanawiałeś się nad tym dwa razy.
Miało to konsekwencje projektowe. Ponieważ ograniczałeś się do pisania, każdy aspekt konfiguracji, działania i administrowania komputerem musiał być kontrolowany za pomocą poleceń. To samo dotyczyło Uniksa ponad pół wieku temu i nadal jest prawdziwe w przypadku Linuksa. Z wiersza poleceń możesz zrobić wszystko. Nic nie jest poza Twoim zasięgiem.
Dzisiaj, w swej istocie, Linux jest nadal systemem operacyjnym sterowanym za pomocą klawiatury. Można mieć kompletny system Linux działający bez środowiska graficznego, a wiele serwerów jest używanych w ten sposób. Na komputerze stacjonarnym oczywiście większość użytkowników ma DE.
Otwórz jednak okno terminala i uzyskaj pełny dostęp do wiersza poleceń, co oznacza, że masz dostęp do wszystkich poleceń systemu Linux i wszystkich ustawień regulujących instalację systemu Linux.
1. Popraw swoje umiejętności administrowania systemem
Jeśli zamierzasz administrować systemami Linux, nawet okazjonalnie dla przyjaciół, rodziny i współpracowników, natkniesz się na wiele różnych dystrybucji, a także różne DE.
Korzystanie z wiersza poleceń pozwala zrobić to, czego nie można zrobić za pomocą GUI aplikacji lub samych ustawień DE. DE i aplikacje graficzne to warstwy abstrakcji pomiędzy tobą a Linuksem. Mogą istnieć narzędzia pomagające w administrowaniu instalacją Linuksa, ale nie będą one miały takiej dokładności, jak linia poleceń.
Polecenia systemu Linux mogą mieć dziesiątki opcji. Im bardziej skomplikowane polecenie, tym mniejsza szansa, że wszystkie te opcje zostaną odtworzone w narzędziu GUI. Ponadto każdy DE będzie miał własne aplikacje i własny sposób działania. Zamiast uczyć się interfejsu GUI dla wszystkich DE, łatwiej jest otworzyć okno terminala i wpisać uniwersalne polecenia Linuksa, które działają wszędzie. Jeśli istnieje narzędzie wiersza poleceń, które nie jest dołączone do konkretnej dystrybucji, możesz je szybko zainstalować.
Czasami wybór należy do Ciebie. Wiedza o tym, jak wykonywać czynności w wierszu poleceń, to jedyny sposób administrowania serwerem bezgłowym, na którym nie jest zainstalowany DE, lub maszyną zdalną, jeśli masz do niej dostęp tylko przez SSH.
2. Zwiększ wydajność
Polecenia systemu Linux mogą mieć wiele opcji. To właśnie czyni je precyzyjnymi. Wybierz opcje, które robią dokładnie to, czego potrzebujesz i właśnie to zostanie zrobione. Polecenia systemu Linux zostały zaprojektowane tak, aby ze sobą współdziałać. Mogą generować dane wyjściowe, które są akceptowane jako dane wejściowe przez inne polecenia.
Łączenie poleceń w ten sposób nazywa się rurociągami. To polecenie zwraca listę rozszerzeń plików w bieżącym katalogu i liczbę każdego innego typu. Linux nie ma do tego polecenia, ale można je łatwo połączyć, używając istniejących poleceń systemu Linux.
ls | rev | cut -d'.' -f1 | rev | sort | uniq -c | sort -r
ls wyświetla listę plików. Nazwy plików są podawane do polecenia rev, odwracając znaki w każdej nazwie. Polecenie wycinania obcina każdą nazwę po pierwszej znalezionej kropce, jeśli taka istnieje. Drugi obrót przywraca strunę do pierwotnej kolejności. To daje nam listę rozszerzeń. Lista jest posortowana, a uniq zlicza wystąpienia każdego unikalnego rozszerzenia pliku. Następnie lista jest ponownie sortowana w kolejności malejącej.
To wspaniale, ale jest wiele do zapamiętania. Zwłaszcza w przypadku poleceń, które mają wiele opcji.
Właśnie w tym pomagają aliasy. Alias umożliwia wybranie łatwej do zapamiętania nazwy niestandardowego polecenia, które wywołuje skomplikowaną linię poleceń. Aliasy również mogą przyjmować parametry. Jeśli twoja linia poleceń bardziej przypomina małą procedurę niż pojedynczą linię poleceń, możesz przekształcić ją w funkcję powłoki.
Jeśli potrzebujesz stałego zapisu danych wyjściowych, możesz przekierować dane wyjściowe do pliku zamiast do okna terminala. Dodanie „> file-count.txt” na końcu polecenia powoduje utworzenie pliku o nazwie file-count.txt zawierającego tekst, który miałby trafić do okna terminala.
ls | rev | cut -d'.' -f1 | rev | sort | uniq -c | sort -r > file-count.txt
Łączenie poleceń i rozdzielanie sekwencji poleceń znacznie poprawia wydajność, ponieważ mniej trzeba zapamiętywać i pisać.
3. Automatyzuj zadania
Kiedy sekwencje poleceń przewyższają funkcje powłoki, można je konwertować na skrypty i tworzyć całe programy w języku powłoki.
Nie ma ograniczeń co do tego, co możesz osiągnąć dzięki skryptom. Dowolne polecenie, którego można użyć w wierszu poleceń, może zostać użyte w skrypcie wraz z konstrukcjami języka powłoki, takimi jak testy i porównania, pętle i instrukcje case.
Zamiast tego można wykonać żmudne, powtarzalne zadania, uruchamiając skrypt. Jeśli skrypt wymaga działania o określonej godzinie lub z określoną częstotliwością, możesz ustawić jego automatyczne uruchamianie z wykorzystaniem systemowego timera.
4. Rozwiązywanie problemów
Rozwiązywanie problemów z komputerem jest niezwykle dobrze obsługiwane w wierszu poleceń systemu Linux. Takie postępowanie oznacza ominięcie zaciemniania GUI i bezpośredni kontakt z systemem.
Linux rejestruje wszelkiego rodzaju zdarzenia i procesy, w tym proces uruchamiania. Dostęp do wszystkich zdarzeń dziennika można uzyskać poprzez systemd journalctl.
Możesz zagłębić się w problemy sprzętowe za pomocą narzędzi takich jak lshw, lsblk i lscpu, a także sprawdzić problemy z systemem plików za pomocą fsck i problemy z uruchamianiem za pomocą GRUB-a.
sudo lshw
Problemy z siecią i DNS można zbadać za pomocą protokołu ip, dig, host i nslookup.
Problemy z wydajnością można zidentyfikować za pomocą top lub htop, iostat, vmstat i netstat.
5. Uzyskaj dostęp do systemów zdalnych
Możesz zalogować się do zdalnych komputerów z systemem Linux za pomocą połączeń SSH, uzyskując okno terminala na zdalnej maszynie, bezpośrednio na Twojej własnej, lokalnej maszynie. Za pomocą kluczy SSH możesz konfigurować bezpieczne połączenia bez hasła.
Jeśli wszystko, co musisz zrobić, to przesłać pliki, możesz użyć rsync do synchronizacji katalogów lub całych drzew katalogów tam i z powrotem między komputerem a komputerem zdalnym. Oczywiście możesz opakować te polecenia rsync w aliasy, funkcje powłoki lub skrypty i uruchamiać je automatycznie za pomocą systemowych liczników czasu.
Krzywa uczenia się jest tego warta. Zanurz się, ale trzymaj tempo. Nie musisz uczyć się wszystkiego od razu, ale każda zdobyta informacja staje się kolejnym atutem w twoim zestawie narzędzi dla Linuksa.
Nikt nigdy nie został dobrym mechanikiem bez podniesienia maski.