Linux jest kręgosłupem internetu. Napędza prawie 97% najważniejszych serwerów internetowych na świecie. I 55,9% profesjonalnych programistów opiera się na Linuxie do swoich potrzeb programistycznych.
Jednak Linux ma jedynie 2,68% udziału w rynku komputerów stacjonarnych. Dlaczego ta różnica?
Głównym celem systemu Linux nigdy nie był jego interfejs użytkownika. Został zaprojektowany tak, aby zapewnić pełną kontrolę nad systemem operacyjnym za pomocą linii poleceń.
To może sprawić, że Linux wydaje się być zastraszający dla początkujących — A tysiące dostępnych poleceń tylko to utrudniają.
W tym artykule omówimy sto najbardziej przydatnych poleceń Linuxa. Poznanie choćby kilku z nich może pomóc zwiększyć Twoją produktywność jako użytkownika Linuxa. Zanurzmy się w temat!
Linux
Linux odnosi się do zbioru otwartoźródłowych Systemów Operacyjnych (OS). Nie ma jednego systemu Linux. Zamiast tego, użytkownicy mogą wybierać spośród szerokiej grupy dystrybucji Linuxa, które oferują różne doświadczenia.
Czytaj więcejCzym są polecenia Linuxa?
Polecenia Linux pozwalają kontrolować Twój system za pomocą interfejsu wiersza poleceń (CLI) zamiast używania myszy lub trackpada. Są to instrukcje tekstowe wprowadzane do terminala, które dokładnie informują Twój system, co ma zrobić.
Polecenia, które wpisujesz w terminalu Linuxa, uwzględniają wielkość liter i mają składnię typu “command -options arguments
“. Możesz je łączyć dla złożonych zadań, używając potoków i przekierowań.
Kilka ważnych informacji o komendach Linux:
- Są wrażliwe na wielkość liter; na przykład “
ls
” i “LS
” oznaczają różne rzeczy. - Podążają za określoną składnią jak “
komenda -opcje argumenty
.” - Mogą być łączone dla złożonych operacji używając potoków i przekierowania.
- Dają Ci precyzyjną kontrolę nad systemem, której trudno osiągnąć za pomocą interfejsów graficznych.
- Pozwalają na automatyzację zadań przez skrypty powłoki i przetwarzanie wsadowe.
- Mogą być używane do dostępu do zasobów systemowych takich jak system plików, sieć, pamięć i procesor.
- Stanowią podstawę interakcji z serwerami Linux i systemami operacyjnymi.
Jeśli jesteś programistą, który dopiero uczy się programować, możesz zacząć ćwiczyć swoje polecenia Linux bez opuszczania Windows, korzystając z Podsystemu Windows dla Linuxa. Pozwala to uruchomić Linuxa wewnątrz Windows bez konieczności używania dwóch systemów operacyjnych i cieszyć się najlepszymi cechami obu systemów.
100 Najbardziej Przydatnych Poleceń Linux
Teraz, gdy masz podstawowe rozumienie tego, czym są polecenia Linux, zanurzmy się w sto najczęściej używanych poleceń Linux.
Zorganizowaliśmy je według kategorii, aby obejmować obszary takie jak zarządzanie plikami, monitorowanie systemu, operacje sieciowe, administracja użytkownikami i więcej.
Polecenia Zarządzania Plikami w Linuxie
Zarządzanie plikami to powszechne zadanie w wierszu poleceń Linuxa. Oto niezbędne polecenia dotyczące plików:
1. ls – Wyświetl zawartość katalogu
Komenda ls
jest jedną z najczęściej używanych poleceń w Linuxie. Wyświetla zawartość katalogu, pokazując wszystkie pliki i podkatalogi, które się w nim znajdują.
Bez żadnych opcji lub argumentów, ls
wyświetli zawartość bieżącego katalogu roboczego. Możesz podać nazwę ścieżki, aby wyświetlić pliki i foldery w tej lokalizacji.
Składnia:
ls [opcje] [katalog] |
Niektóre z najbardziej przydatnych opcji ls
to:
-l
– Wyświetl wyniki w długim formacie, pokazując dodatkowe szczegóły takie jak uprawnienia, własność, rozmiar i data modyfikacji dla każdego pliku i katalogu.-a
– Pokaż ukryte pliki i katalogi, które zaczynają się od . oprócz elementów nieukrytych.-R
– Rekursywnie wylistuj wszystkie zawartości podkatalogów, schodząc do folderów potomnych bez ograniczeń.-S
– Sortuj wyniki według rozmiaru pliku, od największego.-t
– Sortuj według znacznika czasu, najnowsze najpierw.
Przykład:
ls -l /home/user/documents |
To wylistuje zawartość folderu „dokumenty” w długim formacie.
Przykładowe wyniki:
razem 824 -rwxrwx--- 1 użytkownik użytkownik 8389 lip 12 08:53 report.pdf -rw-r--r-- 1 użytkownik użytkownik 10231 cze 30 16:32 presentation.pptx drwxr-xr-x 2 użytkownik użytkownik 4096 maj 11 09:21 images -rw-rw-r-- 1 użytkownik użytkownik 453 kwi 18 13:32 todo.txt |
Ten wynik pokazuje szczegółową listę z uprawnieniami, rozmiarem, właścicielem i znacznikiem czasu dla każdego pliku i katalogu. Długi format listy dostarczony przez opcję -l
dostarcza przydatnych informacji o pliku na pierwszy rzut oka.
Polecenie ls
daje ci elastyczną kontrolę nad wyświetlaniem zawartości katalogów. To jedno z poleceń, z których będziesz często korzystać, pracując na Linuxie.
2. cd – Zmień Katalog
Polecenie cd
służy do nawigowania między katalogami. Pozwala na przeniesienie bieżącego katalogu roboczego do nowej lokalizacji w systemie plików.
Kiedy uruchamiasz polecenie cd
samo w sobie, przeniesie Cię do katalogu domowego. Możesz również podać konkretną ścieżkę, aby zmienić. Na przykład:
cd /usr/local
– Zmienia na katalog /usr/local.cd ..
– Przechodzi o jeden poziom wyżej do katalogu nadrzędnego.cd ~/pictures
– Zmienia na folder pictures w twoim katalogu domowym.
Składnia:
cd [directory]
Przykład:
cd /home/user/documents
To zmieni katalog roboczy na folder „documents” w lokalizacji /home/user. Użycie cd
jest niezbędne, aby móc wygodnie uzyskiwać dostęp do plików i pracować z nimi w różnych lokalizacjach.
3. mkdir – Utwórz Nowy Katalog
Polecenie mkdir
pozwala na utworzenie nowego folderu. Wystarczy podać nazwę tworzonego katalogu.
Składnia:
mkdir [options] <directory>
To utworzy katalog o nazwie „newproject” w bieżącym katalogu roboczym.
Kilka przydatnych opcji mkdir
:
-p
– Tworzy rekursywnie potrzebne katalogi nadrzędne.-v
– Szczegółowe informacje o tworzonych katalogach.
Przykład:
mkdir -v ~/project/code
To utworzy podkatalog „code” w „project” w folderze domowym użytkownika, z rozbudowanym wynikiem pokazującym tworzenie katalogu.
4. rmdir – Usuń Katalog
Aby usunąć pusty katalog, użyj polecenia rmdir
. Zauważ, że rmdir
może usuwać tylko puste katalogi – będziemy potrzebować polecenia rm do usunięcia tych niepustych.
Składnia:
rmdir [options] <directory>
Niektóre opcje dla rmdir to:
-v
– Szczegółowe informacje podczas usuwania katalogów.-p
– Usuń rekursywnie katalogi nadrzędne w razie potrzeby.
Przykład:
rmdir -v ~/project/code
To usunie podkatalog „code” w „project”, jednocześnie pokazując szczegółowe informacje.
5. touch – Utwórz Nowy Pusty Plik
Polecenie touch
jest używane do natychmiastowego utworzenia nowego pustego pliku. Jest to przydatne, gdy potrzebujesz pustego pliku, który później wypełnisz danymi.
Podstawowa składnia polecenia touch to:
touch [options] filename
Kilka przydatnych opcji dla touch to:
-c
– Nie twórz pliku, jeśli już istnieje. Pozwala to uniknąć przypadkowego nadpisania istniejących plików.-m
– Zamiast tworzyć nowy plik, aktualizuj znacznik czasu w istniejącym pliku. Można to wykorzystać do zmiany czasu modyfikacji.
Na przykład:
touch /home/user/newfile.txt
Powyższe polecenie tworzy nowy, pusty plik o nazwie „newfile.txt” w katalogu użytkownika /home/user. Jeśli plik newfile.txt już istnieje, zostaną zaktualizowane czasy dostępu i modyfikacji tego pliku.
6. cp – Kopiowanie Plików i Katalogów
Polecenie cp
kopiuje pliki lub katalogi z jednego miejsca do drugiego. Wymaga podania ścieżki źródłowej i miejsca docelowego.
Podstawowa składnia cp to:
cp [opcje] źródło cel
Kilka przydatnych opcji cp:
-r
– Kopiuj katalogi rekursywnie, schodząc do katalogów podrzędnych, aby skopiować również ich zawartość. Niezbędne podczas kopiowania katalogów.-i
– Pytaj przed nadpisaniem jakichkolwiek istniejących plików w miejscu docelowym. Zapobiega przypadkowemu nadpisaniu danych.-v
– Wyświetlaj szczegółowe informacje wyjściowe pokazujące szczegóły każdego kopiowanego pliku. Pomocne, aby dokładnie potwierdzić, co zostało skopiowane.
Na przykład:
cp -r /home/user/documents /backups/
To rekurencyjnie skopiuje katalog /home/user/documents oraz wszystkie jego zawartości do katalogu /backups/. Opcja -r
jest potrzebna do kopiowania katalogów.
Polecenie cp
jest jednym z najczęściej używanych narzędzi do zarządzania plikami, służących do kopiowania plików i katalogów w systemie Linux. Będziesz często korzystać z tego polecenia.
7. mv – Przenieś lub Zmień Nazwę Plików i Katalogów
Polecenie mv
służy do przenoszenia plików lub katalogów w inne miejsce lub zmiany ich nazwy. W przeciwieństwie do kopiowania, pliki z lokalizacji źródłowej są usuwane po przeniesieniu do miejsca docelowego.
Możesz również użyć polecenia mv
, aby zmienić nazwy plików, ponieważ wystarczy zmienić ścieżki źródłowe i docelowe na starą i nową nazwę.
Składnia mv to:
mv [options] source destination
Przydatne opcje mv:
-i
– Pytanie przed zastąpieniem jakichkolwiek istniejących plików w lokalizacji docelowej. Zapobiega to przypadkowemu nadpisaniu danych.-v
– Generuje szczegółowe informacje wyjściowe pokazujące każdy plik lub katalog w trakcie przenoszenia. Jest to pomocne do potwierdzenia, co dokładnie zostało przeniesione.
Na przykład:
mv ~/folder1 /tmp/folder1
Powyższe przeniesie folder1 z katalogu domowego (~) do katalogu /tmp/. Spójrzmy na kolejny przykład użycia komendy mv
do zmiany nazw plików.
mv folder1 folder2
Tutaj, “folder1” jest zmieniany na “folder2.“
8. rm – Usuń Pliki i Katalogi
Polecenie rm
usuwa pliki i katalogi. Zachowaj ostrożność, ponieważ usunięte pliki i katalogi nie mogą być odzyskane.
Składnia jest następująca:
rm [options] name
Przydatne opcje rm:
-r
– Rekurencyjne usuwanie katalogów, w tym wszystkich zawartości w nich zawartych. Jest to konieczne podczas usuwania katalogów.-f
– Wymuszenie usunięcia i stłumienie wszystkich monitów potwierdzających. Jest to niebezpieczne polecenie, ponieważ usunięte pliki nie mogą być odzyskane!-i
– Żądaj potwierdzenia przed usunięciem każdego pliku lub katalogu, co zapewnia ochronę przed przypadkowym usunięciem.
Na przykład:
rm -rf temp
Ta komenda rekursywnie usuwa katalog „temp” oraz wszystkie jego zawartości bez pytania o potwierdzenie (-f
nadpisuje potwierdzenia).
Uwaga: Komenda rm
trwale usuwa pliki i foldery, dlatego używaj jej z dużą ostrożnością. Jeśli użyjesz jej z uprawnieniami sudo, możesz również całkowicie usunąć katalog główny, co spowoduje, że Linux nie będzie już działał po ponownym uruchomieniu komputera.
9. find – Wyszukaj pliki w hierarchii katalogów
Polecenie find
przeszukuje rekursywnie katalogi w poszukiwaniu plików odpowiadających danym kryteriom.
Podstawowa składnia find to:
find [ścieżka] [kryteria]
Kilka przydatnych opcji kryteriów dla find to:
-type f
– Wyszukaj tylko normalne pliki, pomijając katalogi.-mtime +30
– Wyszukaj pliki zmodyfikowane ponad 30 dni temu.-user jane
– Wyszukaj pliki należące do użytkownika “jane”.
Na przykład:
find . -type f -mtime +30
To znajdzie wszystkie zwykłe pliki starsze niż 30 dni w bieżącym katalogu (oznaczonym kropką).
Polecenie find umożliwia wyszukiwanie plików na podstawie różnych zaawansowanych warunków, takich jak nazwa, rozmiar, uprawnienia, znaczniki czasu, własność i inne.
10. du – Szacowanie Wykorzystania Miejsca przez Pliki
Polecenie du
mierzy użycie miejsca na pliki dla danego katalogu. Gdy używane bez opcji, pokazuje użycie dysku dla bieżącego katalogu roboczego.
Składnia dla du to:
du [options] [path]
Przydatne opcje du:
-h
– Wyświetl rozmiary plików w formacie zrozumiałym dla człowieka, jak K dla Kilobajtów, a nie tylko liczba bajtów. Łatwiejsze do analizy.-s
– Pokaż tylko całkowity rozmiar katalogu, zamiast wymieniać każdy podkatalog i plik. Dobrze dla podsumowania.-a
– Pokaż rozmiary poszczególnych plików oprócz sum. Pomaga zidentyfikować duże pliki.
Na przykład:
du -sh pictures
To wydrukuje ludzko czytelny rozmiar całkowity dla katalogu „pictures”.
Polecenie du
jest przydatne do analizowania użycia dysku dla drzewa katalogów i identyfikowania plików zajmujących nadmierną przestrzeń.
Wyszukiwanie i Filtracja Poleceń w Linuxie
Teraz przeanalizujmy polecenia, które pozwalają przeszukiwać, filtrować i manipulować tekstem bezpośrednio z linii poleceń Linuxa.
11. grep – Wyszukiwanie Tekstu za Pomocą Wzorców
Polecenie grep
jest używane do wyszukiwania wzorców tekstowych w plikach lub wynikach. Wyświetla wszystkie linie, które pasują do podanego wyrażenia regularnego. grep
jest niezwykle potężne do wyszukiwania, filtrowania i dopasowywania wzorców w systemie Linux.
Oto podstawowa składnia:
grep [opcje] wzorzec [pliki]
Na przykład:
grep -i "error" /var/log/syslog
To przeszukuje plik syslog pod kątem słowa „błąd”, ignorując wielkość liter.
Kilka przydatnych opcji grep:
-i
– Ignoruj rozróżnienia wielkości liter w wzorach-R
– Rekurencyjnie przeszukuj podkatalogi-c
– Wydrukuj tylko liczbę pasujących linii-v
– Odwróć dopasowanie, wydrukuj linie niepasujące
grep
pozwala szybko wyszukiwać pliki i wyniki dla słów kluczowych lub wzorców. Jest nieoceniony podczas analizowania logów, przeszukiwania kodu źródłowego, dopasowywania wyrażeń regularnych oraz ekstrahowania danych.
12. awk – Język Skanowania i Przetwarzania Wzorców
Polecenie awk
umożliwia bardziej zaawansowane przetwarzanie tekstu na podstawie określonych wzorców i działań. Działa na zasadzie linia po linii, dzieląc każdą linię na pola.
Składnia awk to:
awk 'pattern { action }' input-file
Na przykład:
awk '/error/ {print $1}' /var/log/syslog
Wydrukuje pierwsze pole każdej linii zawierającej „error.” awk
może również korzystać ze zmiennych wbudowanych takich jak NR
(liczba rekordów) i NF
(liczba pól).
Zaawansowane możliwości awk obejmują:
- Obliczenia matematyczne na polach
- Warunki logiczne
- Wbudowane funkcje do manipulacji ciągami, liczbami i datami
- Kontrola formatowania wyników
To sprawia, że awk nadaje się do ekstrakcji danych, raportowania i transformacji wyjścia tekstowego. awk
jest niezwykle potężny, ponieważ jest niezależnym językiem programowania, co daje dużą kontrolę jako polecenie Linuxa.
13. sed – Stream Editor do filtrowania i przekształcania tekstu
Polecenie sed
pozwala na filtrowanie i transformację tekstu. Może wykonywać operacje takie jak wyszukiwanie/zamiana, usuwanie, transpozycja i inne. Jednakże, w przeciwieństwie do awk
, sed
został zaprojektowany do edycji linii na zasadzie instrukcji dla każdej linii.
Oto podstawowa składnia:
sed options 'commands' input-file
Na przykład:
sed 's/foo/bar/' file.txt
To zastępuje „foo” przez „bar” w pliku file.txt.
Kilka użytecznych poleceń sed:
s
– Wyszukaj i zamień tekst/pattern/d
– Usuń linie pasujące do wzorca10,20d
– Usuń linie od 10 do 201,3!d
– Usuń wszystko oprócz linii 1-3
sed
jest idealny do zadań takich jak masowa zamiana tekstu, selektywne usuwanie linii oraz innych operacji edycji strumienia tekstu.
14. sort – Sortuj Linie Plików Tekstowych
Kiedy pracujesz z dużą ilością tekstu lub danych, a nawet dużymi wynikami z innych poleceń, sortowanie jest świetnym sposobem, aby uporządkować te informacje. Polecenie sort
posortuje wiersze pliku tekstowego alfabetycznie lub numerycznie.
Podstawowa składnia sortowania:
sort [opcje] [plik]
Przydatne opcje sortowania:
-n
– Sortuj numerycznie zamiast alfabetycznie-r
– Odwróć kolejność sortowania-k
– Sortuj na podstawie określonego pola lub kolumny
Na przykład:
sort -n grades.txt
To numerycznie sortuje zawartość pliku grades.txt. sort
jest przydatne do porządkowania zawartości plików dla bardziej czytelnego wyniku lub analizy.
15. uniq – Raportuj lub Pomijaj Powtarzające Się Linie
Polecenie uniq
filtruje duplikaty sąsiadujących linii z danych wejściowych. Jest to często używane w połączeniu z sortowaniem.
Podstawowa składnia:
uniq [opcje] [wejście]
Opcje:
-c
– Oznacz unikalne linie liczbą wystąpień.-d
– Pokaż tylko zduplikowane linie, nie unikalne.
Na przykład:
sort data.txt | uniq
To usunie wszystkie zduplikowane linie w data.txt po sortowaniu. uniq
daje ci kontrolę nad filtrowaniem powtarzającego się tekstu.
16. diff – Porównaj Pliki Linia po Linii
Polecenie diff
porównuje dwa pliki linia po linii i wyświetla różnice. Jest często używane do pokazywania zmian między wersjami plików.
Składnia:
diff [opcje] plik1 plik2
Opcje:
-b
– Ignoruj zmiany w białych znakach.-B
– Pokaż różnice w linii, podświetlając zmiany.-u
– Wyświetl różnice z trzema liniami kontekstu.
Na przykład:
diff original.txt updated.txt
To zwróci linie różniące się między original.txt a updated.txt. diff
jest nieoceniony do porównywania wersji plików tekstowych i kodu źródłowego.
17. wc – Drukuj liczbę linii, słów i bajtów
Polecenie wc
(liczba słów) wyświetla liczbę linii, słów i bajtów w pliku.
Składnia:
wc [opcje] [plik]
Opcje:
-l
– Wyświetl tylko liczbę linii.-w
– Wyświetl tylko liczbę słów.-c
– Wyświetl tylko liczbę bajtów.
Na przykład:
wc report.txt
To polecenie wydrukuje liczbę linii, słów i bajtów w pliku report.txt.
Komendy przekierowań w Linuxie
Polecenia przekierowania są używane do kontrolowania źródeł wejścia i wyjścia w Linuxie, pozwalając na wysyłanie i dołączanie strumieni wyjściowych do plików, pobieranie wejścia z plików, łączenie wielu poleceń oraz dzielenie wyjścia na wiele miejsc docelowych.
18. > – Przekierowanie Standardowego Wyjścia
Operator > przekierowanie
przekierowuje strumień standardowego wyjścia z polecenia do pliku zamiast drukowania na terminalu. Wszelkie istniejące zawartości pliku zostaną nadpisane.
Na przykład:
ls -l /home > homelist.txt
To wykona ls -l
, aby wylistować zawartość katalogu /home.
Następnie, zamiast wyświetlać ten wynik w terminalu, symbol >
przechwytuje ten standardowy wynik i zapisuje go do pliku homelist.txt, zastępując wszelkie istniejące zawartości pliku.
Przekierowanie standardowego wyjścia jest pomocne przy zapisywaniu wyników poleceń do plików do przechowywania, debugowania lub łączenia poleceń.
19. >> – Dołącz Standardowe Wyjście
Operator >>
dołącza standardowe wyjście z polecenia do pliku bez nadpisywania istniejącej zawartości.
Na przykład:
tail /var/log/syslog >> logfile.txt
To dołączy ostatnie 10 linii pliku logu syslog na końcu pliku logfile.txt. W przeciwieństwie do >
, >>
dodaje wyjście bez wymazywania obecnej zawartości pliku logfile.txt.
Dodawanie jest pomocne w gromadzeniu wyników poleceń w jednym miejscu, bez utraty istniejących danych.
20. < – Przekieruj Standardowe Wejście
Operator przekierowania <
dostarcza zawartość pliku jako standardowe wejście do polecenia, zamiast pobierać dane wejściowe z klawiatury.
Na przykład:
wc -l < myfile.txt
To wysyła zawartość pliku myfile.txt jako dane wejściowe do polecenia wc, które będzie liczyć linie w tym pliku zamiast czekać na dane wejściowe z klawiatury.
Przekierowanie wejścia jest przydatne do przetwarzania wsadowego plików i automatyzacji przepływów pracy.
21. | – Przekazanie Wyniku Do Innego Polecenia
Operator |
przesyła wyjście z jednego polecenia jako wejście do innego polecenia, łącząc je ze sobą.
Na przykład:
ls -l | less
To przekazuje wynik polecenia ls -l
do komendy less, co umożliwia przewijanie listy plików.
Piping jest powszechnie używane do łączenia poleceń w taki sposób, że wyjście jednego jest wejściem dla innego. To pozwala budować skomplikowane operacje z mniejszych programów jednozadaniowych.
22. tee – Czytanie ze standardowego wejścia i zapisywanie do standardowego wyjścia oraz plików
Polecenie tee
dzieli standardowe wejście na dwa strumienie.
Zapisuje dane wejściowe na standardowe wyjście (pokazuje wynik głównego polecenia) jednocześnie zapisując kopię do pliku.
Na przykład:
cat file.txt | tee copy.txt
To wyświetla zawartość pliku file.txt w terminalu, jednocześnie zapisując ją do pliku copy.txt.
tee
różni się od przekierowania, gdzie nie widzisz wyniku dopóki nie otworzysz pliku, do którego przekierowano wyjście.
Polecenia Archiwizacji
Polecenia archiwizacyjne pozwalają na pakowanie wielu plików i katalogów do skompresowanych plików archiwum, co ułatwia przenoszenie i przechowywanie. Powszechne formaty archiwów w systemie Linux to .tar
, .gz
i .zip
.
23. tar – Przechowywanie i Wydobywanie Plików z Archiwum
Polecenie tar
pomaga pracować z plikami archiwum taśmowego (.tar). Umożliwia grupowanie wielu plików i katalogów w jeden skompresowany plik .tar.
Składnia:
tar [opcje] nazwa_pliku
Przydatne opcje tar:
-c
– Utwórz nowy plik archiwum .tar.-x
– Wyodrębnij pliki z archiwum .tar.-f
– Określ nazwę pliku archiwum zamiast stdin/stdout.-v
– Szczegółowe informacje wyświetlające zarchiwizowane pliki.-z
– Kompresuj lub dekompresuj archiwum za pomocą gzip.
Na przykład:
tar -cvzf images.tar.gz /home/user/images
To tworzy archiwum tar skompresowane gzip’em o nazwie images.tar.gz zawierające folder /home/user/images.
24. gzip – Kompresuj lub Rozszerzaj Pliki
Polecenie gzip kompresuje pliki za pomocą kodowania LZ77, aby zmniejszyć ich rozmiar do przechowywania lub transmisji. Przy użyciu gzip, pracujesz z plikami .gz.
Składnia:
gzip [opcje] nazwa_pliku
Przydatne opcje gzip:
-c
– Zapisz wynik na standardowe wyjście zamiast do pliku.-d
– Dekompresuj plik zamiast kompresować.-r
– Rekursywnie kompresuj katalogi.
Na przykład:
gzip -cr documents/
Powyższe polecenie rekurencyjnie kompresuje folder dokumentów i wyprowadza na stdout.
25. gunzip – Dekompresja Plików
Polecenie gunzip
jest używane do dekompresji plików .gz.
Składnia:
gunzip filename.gz
Przykład:
gunzip documents.tar.gz
Powyższe polecenie wyodrębni oryginalne, nieskompresowane zawartości pliku documents.tar.gz.
26. zip – Pakowanie i Kompresowanie Plików
Polecenie zip
tworzy archiwa .zip zawierające skompresowane zawartości plików.
Składnia:
zip [options] archive.zip filenames
Przydatne opcje zip:
-r
– Rekurencyjnie kompresuj katalog.-e
– Zaszyfruj zawartość za pomocą hasła.
Przykład:
zip -re images.zip pictures
To szyfruje i kompresuje folder ze zdjęciami do pliku images.zip.
27. unzip – Wyodrębnij pliki z archiwów ZIP
Podobnie do gunzip
, polecenie unzip
wypakowuje i dekompresuje pliki z archiwów .zip.
Składnia:
unzip archive.zip
Przykład:
unzip images.zip
Powyższe polecenie przykładowe wypakowuje wszystkie pliki z images.zip w bieżącym katalogu.
Polecenia Transferu Plików
Komendy transferu plików pozwalają przenosić pliki pomiędzy systemami poprzez sieć. Jest to przydatne do kopiowania plików na zdalne serwery lub pobierania treści z internetu.
28. scp – Bezpieczne Kopiowanie Plików Między Hostami
Polecenie scp
(secure copy) kopiuje pliki między hostami za pośrednictwem połączenia SSH. Wszystkie przesyłane dane są szyfrowane dla bezpieczeństwa.
Składnia scp kopiuje pliki ze ścieżki źródłowej do miejsca docelowego zdefiniowanego jako user@host:
scp source user@host:destination
Na przykład:
scp image.jpg user@server:/uploads/
To bezpiecznie kopiuje image.jpg do folderu /uploads na serwerze jako użytkownik.
scp
działa jak polecenie cp
, ale do transferu plików zdalnych. Wykorzystuje SSH (Secure Shell) do przesyłania danych, zapewniając szyfrowanie, aby żadne wrażliwe dane, takie jak hasła, nie były ujawniane w sieci. Uwierzytelnianie jest zwykle obsługiwane za pomocą kluczy SSH, chociaż mogą być również używane hasła. Pliki można kopiować zarówno do, jak i z zdalnych hostów.
29. rsync – Synchronizacja plików między hostami
Narzędzie rsync
synchronizuje pliki między dwoma lokalizacjami, minimalizując transfer danych za pomocą kodowania delta. Dzięki temu szybciej synchronizuje duże drzewa katalogów.
Składnia rsync synchronizuje źródło z miejscem docelowym:
rsync [options] source destination
Na przykład:
rsync -ahv ~/documents user@server:/backups/
Powyższe polecenie przykładowe synchronizuje rekursywnie folder dokumentów do server:/backups/, pokazując szczegółowe, czytelne dla człowieka wyniki.
Przydatne opcje rsync:
-a
– Tryb archiwizacji synchronizuje rekurencyjnie i zachowuje uprawnienia, czasy, itp.-h
– Wyświetlanie w formie czytelnej dla człowieka.-v
– Szczegółowe wyświetlanie.
rsync
jest idealny do synchronizacji plików i folderów z systemami zdalnymi oraz zachowania decentralizowanych kopii zapasowych i bezpieczeństwa.
30. sftp – Program Bezpiecznego Przesyłania Plików
Program sftp
umożliwia interaktywny transfer plików przez SSH, podobnie do zwykłego FTP, ale zaszyfrowany. Może przesyłać pliki do/z zdalnych systemów.
sftp łączy się z hostem, a następnie akceptuje polecenia takie jak:
sftp user@host
get remotefile localfile
put localfile remotefile
To pobiera remotefile
z serwera i kopiuje localfile
na zdalny host.
sftp
posiada interaktywną powłokę do nawigacji po zdalnych systemach plików, transferowania plików i katalogów oraz zarządzania uprawnieniami i właściwościami.
31. wget – Pobieranie plików z sieci
Narzędzie wget
pobiera pliki przez połączenia HTTP, HTTPS i FTP. Jest przydatne do pobierania zasobów internetowych bezpośrednio z terminala.
Na przykład:
wget https://example.com/file.iso
To pobiera obraz file.iso z serwera zdalnego.
Przydatne opcje wget:
-c
– Wznów przerwane pobieranie.-r
– Pobieraj rekursywnie.-O
– Zapisz do określonej nazwy pliku.
wget
jest idealny do skryptowania automatycznych pobierań i tworzenia kopii witryn internetowych.
32. curl – Przesyłanie Danych Z Serwera Lub Do Serwera
Polecenie curl
przesyła dane do lub z serwera sieciowego, korzystając z obsługiwanych protokołów. Obejmuje to REST, HTTP, FTP i inne.
Na przykład:
curl -L https://example.com
Powyższe polecenie pobiera dane z adresu URL HTTPS i je wyświetla.
Przydatne opcje curl:
-o
– Zapisz wynik do pliku.-I
– Pokaż tylko nagłówki odpowiedzi.-L
– Śledź przekierowania.
curl
jest zaprojektowany do programowego przesyłania danych przez sieci.
Polecenia Uprawnień Plików
Komendy uprawnień plików pozwalają modyfikować prawa dostępu dla użytkowników. Obejmuje to ustawianie uprawnień do odczytu/zapisu/wykonywania, zmianę właściciela oraz domyślne tryby plików.
33. chmod – Zmiana trybów plików lub uprawnień dostępu
Polecenie chmod
służy do zmiany uprawnień dostępu lub trybów plików i katalogów. Tryby uprawnień określają, kto może czytać, pisać lub wykonywać plik.
Na przykład:
chmod 755 file.txt
Istnieją trzy zestawy uprawnień—właściciel, grupa i publiczne. Uprawnienia są ustawiane przy użyciu numerycznych trybów od 0 do 7:
- 7 – czytaj, pisz i wykonuj.
- 6 – czytaj i pisz.
- 4 – tylko czytaj.
- 0 – brak uprawnień.
To ustawia uprawnienia właściciela na 7 (rwx), grupy na 5 (r-x) oraz publiczne na 5 (r-x). Możesz również odwoływać się do użytkowników i grup symbolicznie:
chmod g+w file.txt
Składnia g+w
dodaje uprawnienia do zapisu grupy do pliku.
Ustawienie odpowiednich uprawnień dla plików i katalogów jest kluczowe dla bezpieczeństwa Linuxa i kontroli dostępu. chmod
daje ci elastyczną kontrolę, aby skonfigurować uprawnienia dokładnie według potrzeb.
34. chown – Zmień właściciela pliku i grupę
Polecenie chown
zmienia właściciela pliku lub katalogu. Właścicielstwo ma dwa składniki – użytkownika, który jest właścicielem, oraz grupę, do której należy.
Na przykład:
chown john:developers file.txt
Powyższe polecenie przykładowe ustawi użytkownika właściciela na „john” oraz grupę właściciela na „developers”.
Tylko konto superużytkownika Root może używać chown
do zmiany właściciela pliku. Jest używane do naprawy problemów z uprawnieniami poprzez modyfikowanie właściciela i grupy według potrzeb.
35. umask – Ustaw Domyślne Uprawnienia Plików
Polecenie umask
kontroluje domyślne uprawnienia przyznawane nowo utworzonym plikom. Przyjmuje ono maskę oktalną jako dane wejściowe, która odejmuje od 666 dla plików i 777 dla katalogów.
Na przykład:
umask 007
Nowe pliki będą domyślnie miały uprawnienia 750 zamiast 666, a nowe katalogi 700 zamiast 777.
Ustawienie umask
pozwala skonfigurować domyślne uprawnienia do plików zamiast polegać na domyślnych ustawieniach systemowych. Polecenie umask
jest przydatne do ograniczania uprawnień do nowych plików bez konieczności ręcznego dodawania ograniczeń przez kogoś.
Komendy Zarządzania Procesami
Te polecenia pozwalają na przeglądanie, monitorowanie i kontrolowanie procesów działających w Twoim systemie Linux. Jest to przydatne do identyfikowania zużycia zasobów oraz zatrzymywania programów, które działają nieprawidłowo.
36. ps – Zgłoś Zrzut Aktualnych Procesów
Polecenie ps
wyświetla migawkę aktualnie działających procesów, w tym ich PID, TTY, stat, czas startu, itp.
Na przykład:
ps aux
Ten widok pokazuje każdy proces działający jako wszyscy użytkownicy z dodatkowymi szczegółami takimi jak użycie CPU i pamięci.
Kilka przydatnych opcji ps:
aux
– Pokaż procesy dla wszystkich użytkowników--forest
– Wyświetl drzewo procesów nadrzędnych/podrzędnych
ps
pozwala zobaczyć, co obecnie działa na twoim systemie.
37. top – Wyświetl Procesy Linux
Polecenie top
pokazuje informacje o procesach w systemie Linux w czasie rzeczywistym, w tym PID, użytkownika, % CPU, użycie pamięci, czas pracy i więcej. W przeciwieństwie do ps
, aktualizuje wyświetlanie dynamicznie, aby odzwierciedlać bieżące użycie.
Na przykład:
top -u mysql
Powyższe polecenie monitoruje procesy tylko dla użytkownika “mysql“. Jest to bardzo pomocne w identyfikacji programów intensywnie wykorzystujących zasoby.
38. htop – Interaktywny przegląd procesów
Polecenie htop
to interaktywny przegląd procesów zastępujący polecenie top. Wyświetla procesy systemowe wraz z wykresami użycia CPU/pamięci/swap, pozwala na sortowanie według kolumn, zamykanie programów i więcej.
Wystarczy, że wpiszesz htop
w linii poleceń, aby zobaczyć swoje procesy.
htop
ma rozbudowany interfejs użytkownika z elementami kolorystycznymi, przewijaniem i obsługą myszy dla łatwiejszej nawigacji w porównaniu do top. Doskonałe do badania procesów.
39. kill – Wyślij sygnał do procesu
Polecenie kill
wysyła sygnał do procesu, aby go zakończyć lub zabić. Sygnały umożliwiają łagodne zamknięcie, jeśli proces je obsługuje.
Na przykład:
kill -15 12345
Powyższe polecenie wysyła sygnał SIGTERM (15) w celu eleganckiego zatrzymania procesu o PID 12345.
40. pkill – Wyślij sygnał do procesu na podstawie nazwy
Polecenie pkill
zabija procesy według nazwy zamiast PID. Może to ułatwić sprawę niż szukanie najpierw PID.
Na przykład:
pkill -9 firefox
To zmusza do zatrzymania wszystkich procesów Firefox za pomocą SIGKILL (9). pkill
kieruje procesy poprzez dopasowanie nazwy, użytkownika i innych kryteriów zamiast PID.
41. nohup – Uruchom Polecenie Nieczułe na Rozłączenia
Polecenie nohup
uruchamia procesy odporne na rozłączenia, więc będą one kontynuować działanie, jeśli się wylogujesz lub zostaniesz rozłączony.
Na przykład:
nohup python script.py &
Powyższe polecenie przykładowe uruchomi script.py w tle, odłączone i odporne na zawieszenia. nohup
jest zazwyczaj używany do uruchamiania trwałych demonów i usług w tle.
Komendy Monitorowania Wydajności
Te polecenia dostarczają cenne statystyki wydajności systemu, które pomagają analizować wykorzystanie zasobów, identyfikować wąskie gardła i optymalizować efektywność.
42. vmstat – Raport Statystyk Pamięci Wirtualnej
Polecenie vmstat
wyświetla szczegółowe raporty dotyczące pamięci, przestrzeni wymiany, I/O oraz aktywności procesora. Obejmuje to metryki takie jak używana/wolna pamięć, zamiana wejścia/wyjścia, odczytane/zapisane bloki dysku oraz czas procesora spędzony na procesach/bezczynności.
Na przykład:
vmstat 5
Inne przydatne opcje vmstat:
-a
– Pokaż aktywną i nieaktywną pamięć-s
– Wyświetl liczniki zdarzeń i statystyki pamięci-S
– Wynik w KB zamiast w blokach5
– Wynik odświeżany co 5 sekund.
Przykład powyżej wypisuje dane dotyczące pamięci i CPU co 5 sekund, aż do przerwania, co jest przydatne do monitorowania wydajności systemu na żywo.
43. iostat – Raport statystyk CPU i I/O
Polecenie iostat
monitoruje i wyświetla wykorzystanie procesora oraz metryki I/O dysku. Obejmuje to obciążenie procesora, IOPS, przepustowość odczytu/zapisu i więcej.
Na przykład:
iostat -d -p sda 5
Kilka opcji iostat:
-c
– Wyświetl informacje o wykorzystaniu CPU-t
– Wydrukuj znacznik czasu dla każdego raportu-x
– Pokaż rozszerzone statystyki takie jak czasy obsługi i liczby oczekujących-d
– Pokaż szczegółowe statystyki na dysk/partycji zamiast łącznych sum-p
– Wyświetl statystyki dla określonych urządzeń dyskowych
To pokazuje szczegółowe statystyki I/O dla każdego urządzenia dla sda co 5 sekund.
iostat
pomaga analizować wydajność podsystemu dyskowego i identyfikować wąskie gardła sprzętowe.
44. free – Wyświetl ilość wolnej i używanej pamięci
Polecenie free
pokazuje łączną, wykorzystaną i wolną ilość pamięci fizycznej oraz pamięci wymiany w systemie. Daje to przegląd dostępnej pamięci.
Na przykład:
free -h
Kilka opcji dla polecenia free:
-b
– Wyświetl wyniki w bajtach-k
– Pokaż wyniki w KB zamiast domyślnych bajtów-m
– Pokaż wyniki w MB zamiast bajtów-h
– Drukuj statystyki w formacie czytelnym dla człowieka, takim jak GB, MB zamiast bajtów.
To wyświetla statystyki pamięci w formacie zrozumiałym dla człowieka (GB, MB, itd). Jest przydatne, gdy chcesz szybko uzyskać przegląd pojemności pamięci.
45. df – Raport Użycia Przestrzeni Dyskowej Systemu Plików
Polecenie df
wyświetla użycie miejsca na dysku dla systemów plików. Pokazuje nazwę systemu plików, całkowitą/używaną/dostępną przestrzeń oraz pojemność.
Na przykład:
df -h
Powyższe polecenie wyświetli wykorzystanie dysku w formacie czytelnym dla człowieka. Możesz również uruchomić je bez argumentów, aby uzyskać te same dane w rozmiarach bloków.
46. sar – Zbieraj i Raportuj Aktywność Systemową
Narzędzie sar
zbiera i rejestruje informacje o aktywności systemu dotyczące CPU, pamięci, I/O, sieci i więcej w czasie. Te dane mogą być analizowane w celu identyfikacji problemów z wydajnością.
Na przykład:
sar -u 5 60
Ta próbka używa CPU co 5 sekundy przez czas 60 próbek.
sar
dostarcza szczegółowe historyczne dane o wydajności systemu, których nie można uzyskać w narzędziach czasu rzeczywistego.
Polecenia Zarządzania Użytkownikami
Korzystając z systemów wielu użytkowników, możesz potrzebować poleceń, które pomogą Ci zarządzać użytkownikami i grupami dla kontroli dostępu i uprawnień. Omówmy te polecenia tutaj.
47. useradd – Utwórz Nowego Użytkownika
Polecenie useradd
tworzy nowe konto użytkownika oraz katalog domowy. Ustawia nowy UID użytkownika, grupę, Shell oraz inne domyślne wartości.
Na przykład:
useradd -m john
Przydatne opcje useradd:
-m
– Utwórz katalog domowy użytkownika.-g
– Określ grupę podstawową zamiast domyślnej.-s
– Ustaw powłokę logowania użytkownika.
Powyższe polecenie utworzy nowego użytkownika, „john,” z wygenerowanym UID i stworzonym folderem domowym w /home/john.
48. usermod – Modyfikuj konto użytkownika
Polecenie usermod
modyfikuje ustawienia istniejącego konta użytkownika. Może to zmienić nazwę użytkownika, katalog domowy, Shell, grupę, datę wygaśnięcia itp.
Na przykład:
usermod -aG developers john
Za pomocą tego polecenia dodajesz użytkownika john do dodatkowej grupy—„developers”. Parametr -a
dodaje do istniejącej listy grup, do których użytkownik jest dodawany.
49. userdel – Usuń Konto Użytkownika
Polecenie userdel
usuwa konto użytkownika, katalog domowy oraz spool poczty.
Na przykład:
userdel -rf john
Przydatne opcje userdel:
-r
– Usuń katalog domowy użytkownika i skrzynkę pocztową.-f
– Wymuś usunięcie nawet jeśli użytkownik jest jeszcze zalogowany.
To wymusza usunięcie użytkownika “john,” usuwając powiązane pliki.
Określenie opcji takich jak -r
i -f
z userdel
zapewnia całkowite usunięcie konta użytkownika, nawet jeśli użytkownik jest zalogowany lub ma aktywne procesy.
50. groupadd – Dodaj Grupę
Polecenie groupadd
tworzy nową grupę użytkowników. Grupy reprezentują zespoły lub role dla celów uprawnień.
Na przykład:
groupadd -r sysadmin
Przydatne opcje groupadd:
-r
– Utwórz grupę systemową używaną do podstawowych funkcji systemowych.-g
– Określ GID nowej grupy zamiast używania następnego dostępnego.
Powyższe polecenie tworzy nową grupę “sysadmin” z uprawnieniami systemowymi. Podczas tworzenia nowych grup, -r
lub -g
pomagają je poprawnie ustawić.
51. passwd – Aktualizacja Tokenów Uwierzytelniających Użytkownika
Polecenie passwd
ustawia lub aktualizuje hasło/tokeny uwierzytelniające użytkownika. Pozwala to na zmianę hasła logowania.
Na przykład:
passwd john
To zachęca użytkownika „john” do interaktywnego wprowadzenia nowego hasła. Jeśli zgubiłeś hasło do konta, możesz zalogować się do systemu Linux z uprawnieniami sudo lub su i zmienić hasło, korzystając z tej samej metody.
Komendy sieciowe
Te polecenia są używane do monitorowania połączeń, rozwiązywania problemów z siecią, routingu, wyszukiwań DNS oraz konfiguracji interfejsu.
52. ping – Wyślij żądanie ECHO ICMP do hostów sieciowych
Polecenie ping
weryfikuje połączenie z zdalnym hostem poprzez wysyłanie pakietów żądania echo ICMP i nasłuchiwanie odpowiedzi echo.
Na przykład:
ping google.com
PING google.com (142.251.42.78): 56 bajtów danych
64 bajty od 142.251.42.78: icmp_seq=0 ttl=112 time=8.590 ms
64 bajty od 142.251.42.78: icmp_seq=1 ttl=112 time=12.486 ms
64 bajty od 142.251.42.78: icmp_seq=2 ttl=112 time=12.085 ms
64 bajty od 142.251.42.78: icmp_seq=3 ttl=112 time=10.866 ms
--- Statystyki ping dla google.com ---
4 pakiety wysłane, 4 pakiety otrzymane, 0.0% utraty pakietów
czas podróży min/śr/max/odch = 8.590/11.007/12.486/1.518 ms
Przydatne opcje pingu:
-c [count]
– Ogranicz wysyłane pakiety.-i [interval]
– Czekaj interval sekund między pingami.
Za pomocą powyższego polecenia, pingujesz google.com i otrzymujesz statystyki dotyczące czasu podróży wskazujące na łączność i opóźnienia. Ogólnie, ping
jest używany do sprawdzenia, czy system, z którym próbujesz się połączyć, jest aktywny i połączony z siecią.
53. ifconfig – Konfiguracja Interfejsów Sieciowych
Polecenie ifconfig
wyświetla i konfiguruje ustawienia interfejsu sieciowego, w tym adres IP, maskę sieci, adres rozgłoszeniowy, MTU oraz fizyczny adres MAC.
Na przykład:
ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.0.2.15 netmask 255.255.255.0 broadcast 10.0.2.255
inet6 fe80::a00:27ff:fe1e:ef1d prefixlen 64 scopeid 0x20<link>
ether 08:00:27:1e:ef:1d txqueuelen 1000 (Ethernet)
RX packets 23955654 bytes 16426961213 (15.3 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 12432322 bytes 8710937057 (8.1 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Uruchomienie ifconfig
bez dodatkowych argumentów dostarczy listę wszystkich dostępnych interfejsów sieciowych do użycia, wraz z IP i dodatkowymi informacjami sieciowymi. ifconfig
może być również używany do ustawiania adresów, włączania/wyłączania interfejsów oraz zmiany opcji.
54. netstat – Statystyki sieciowe
Polecenie netstat
pokazuje połączenia sieciowe, tabele routingu, statystyki interfejsów, połączenia maskaradowe i członkostwa multicast.
Na przykład:
netstat -pt tcp
To polecenie wyświetli wszystkie aktywne połączenia TCP oraz procesy z nich korzystające.
55. ss – Statystyki Gniazd
Polecenie ss
wyświetla statystyki gniazd podobne do netstat. Może pokazać otwarte gniazda TCP i UDP, rozmiary buforów wysyłania/odbierania i więcej.
Na przykład:
ss -t -a
To wyświetla wszystkie otwarte gniazda TCP. Bardziej wydajne niż netstat
.
56. traceroute – Śledzenie trasy do hosta
Polecenie traceroute
drukuje trasę, jaką pakiety podążają do hosta sieciowego, pokazując każdy przystanek w drodze i czasy tranzytu. Przydatne do debugowania sieci.
Na przykład:
traceroute google.com
To śledzi ścieżkę do osiągnięcia google.com i wyświetla każdy przeskok sieciowy.
57. dig - DNS Lookup
Polecenie dig
wykonuje wyszukiwania DNS i zwraca informacje o rekordach DNS dla domeny.
Na przykład:
dig google.com
; <<>> DiG 9.10.6 <<>> google.com
;; global options: +cmd
;; Otrzymano odpowiedź:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60290
;; flagi: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; SEKCJA PSEUDO-OPT:
; EDNS: wersja: 0, flagi:; udp: 1280
;; SEKCJA PYTANIA:
;google.com. IN A
;; SEKCJA ODPOWIEDZI:
google.com. 220 IN A 142.251.42.78
;; Czas zapytania: 6 msec
;; SERWER: 2405:201:2:e17b::c0a8:1d01#53(2405:201:2:e17b::c0a8:1d01)
;; KIEDY: Środa, 15 listopada 01:36:16 IST 2023
;; ROZMIAR WIADOMOŚCI rcvd: 55
To wysyła zapytania do serwerów DNS w celu uzyskania rekordów związanych z google.com i wyświetla szczegóły.
58. nslookup – Interaktywne zapytania do serwerów nazw w Internecie
Polecenie nslookup
wysyła interaktywne zapytania do serwerów DNS, aby wykonać wyszukiwanie rozwiązań nazw lub wyświetlić rekordy DNS.
Wchodzi do interaktywnego shell, pozwalając na ręczne wyszukiwanie nazw hostów, odwracanie adresów IP, znajdowanie typów rekordów DNS i więcej.
Na przykład, niektóre typowe zastosowania nslookup. Wpisz nslookup w wierszu poleceń:
nslookup
Następnie ustalimy serwer DNS Google 8.8.8.8 do wyszukiwań.
> server 8.8.8.8
Teraz, zapytajmy o rekord A dla stackoverflow.com, aby znaleźć jego adres IP.
> set type=A
> stackoverflow.com
Server: 8.8.8.8
Address: 8.8.8.8#53
Nieautoryzowana odpowiedź:
Name: stackoverflow.com
Address: 104.18.32.7
Name: stackoverflow.com
Address: 172.64.155.249
Teraz znajdźmy rekordy MX dla github.com, aby zobaczyć jego serwery pocztowe.
> set type=MX
> github.com
Serwer: 8.8.8.8
Adres: 8.8.8.8#53
Odpowiedź nieautoryzowana:
github.com wymiennik pocztowy = 1 aspmx.l.google.com.
github.com wymiennik pocztowy = 5 alt1.aspmx.l.google.com.
github.com wymiennik pocztowy = 5 alt2.aspmx.l.google.com.
github.com wymiennik pocztowy = 10 alt3.aspmx.l.google.com.
github.com wymiennik pocztowy = 10 alt4.aspmx.l.google.com.
Interaktywne zapytania czynią nslookup
bardzo przydatnym do eksplorowania DNS i rozwiązywania problemów z rozpoznawaniem nazw.
59. iptables – Filtrowanie Pakietów IPv4 i NAT
Polecenie iptables
pozwala na konfigurację reguł zapory sieciowej Linux netfilter w celu filtrowania i przetwarzania pakietów sieciowych. Ustanawia polityki i reguły dotyczące sposobu, w jaki system będzie obsługiwał różne typy połączeń przychodzących i wychodzących oraz ruch sieciowy.
Na przykład:
iptables -A INPUT -s 192.168.1.10 -j DROP
Powyższe polecenie zablokuje wszystkie wejścia z IP 192.168.1.10.
iptables
zapewnia potężną kontrolę nad firewallem jądra Linuxa, umożliwiając zarządzanie trasowaniem, NAT, filtrowaniem pakietów i innymi formami kontroli ruchu. Jest kluczowym narzędziem do zabezpieczania serwerów Linux.
60. ip – Zarządzanie Urządzeniami Sieciowymi i Routingiem
Polecenie ip
pozwala zarządzać i monitorować różne działania związane z urządzeniami sieciowymi, takie jak przypisywanie adresów IP, konfigurowanie podsieci, wyświetlanie szczegółów połączenia oraz konfiguracja opcji routingu.
Na przykład:
ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 08:00:27:8a:5c:04 brd ff:ff:ff:ff:ff:ff
Powyższe polecenie pokazuje wszystkie interfejsy sieciowe, ich status oraz inne informacje.
To polecenie ma na celu zastąpienie ifconfig bardziej nowoczesnym zarządzaniem siecią Linux. ip
może kontrolować urządzenia sieciowe, tablice routingu oraz inne ustawienia stosu sieciowego.
Polecenia Zarządzania Pakietami
Menedżery pakietów umożliwiają łatwą instalację, aktualizację i usuwanie oprogramowania w dystrybucjach Linuxa. Popularne menedżery pakietów to APT
, YUM
, DNF
, Pacman
i Zypper
.
61. apt – Menedżer Pakietów Debian/Ubuntu
Polecenie apt
zarządza pakietami na systemach Debian/Ubuntu przy użyciu repozytorium APT. Umożliwia instalowanie, aktualizowanie i usuwanie pakietów.
Na przykład:
apt update
To polecenie pobiera najnowsze wersje pakietów i metadane z repozytoriów.
apt install nginx
Możesz zainstalować pakiet nginx z skonfigurowanych repozytoriów APT, używając powyższego polecenia.
apt upgrade
A ta komenda aktualizuje pakiety i zależności do nowszych wersji.
APT
ułatwia instalację oprogramowania poprzez pobieranie pakietów z repozytoriów.
62. pacman – Menedżer Pakietów Arch Linux
pacman
zarządza pakietami w Arch Linux z repozytorium Arch User Repository. Może instalować, aktualizować i usuwać pakiety.
Przykładowo:
pacman -S nmap
To instaluje pakiet nmap z konfigurowanych repozytoriów.
pacman -Syu
To synchronizuje z repozytoriami i aktualizuje wszystkie pakiety.
pacman
utrzymuje Arch Linux w aktualności i ułatwia zarządzanie pakietami.
63. dnf – Menadżer Pakietów Fedora
dnf
instaluje, aktualizuje i usuwa pakiety w dystrybucjach Fedora Linux, korzystając z pakietów RPM. Zastępuje Yum jako menedżer pakietów nowej generacji.
Na przykład:
dnf install util-linux
To instaluje pakiet util-linux.
dnf upgrade
To aktualizuje wszystkie zainstalowane pakiety do najnowszych wersji.
dnf
sprawia, że zarządzanie pakietami Fedora jest szybkie i wydajne.
64. yum – Menedżer Pakietów Red Hat
yum
zarządza pakietami w dystrybucjach Linux RHEL i CentOS, używając pakietów RPM. Pobiera z repozytoriów Yum, aby instalować i aktualizować.
Na przykład:
yum update
To aktualizuje wszystkie zainstalowane pakiety do najnowszych wersji.
yum install httpd
Powyższe polecenie instaluje pakiet Apache httpd. yum
był głównym menedżerem pakietów do aktualizacji dystrybucji Red Hat.
65. zypper – Menedżer Pakietów OpenSUSE
zypper
zarządza pakietami w SUSE/openSUSE Linux. Może dodawać repozytoria, wyszukiwać, instalować i aktualizować pakiety.
Na przykład:
zypper refresh
Komenda odświeżania dla zypper
odświeża metadane repozytorium z dodanych repozytoriów.
zypper install python
To instaluje pakiet Pythona z konfigurowanych repozytoriów. zypper
ułatwia zarządzanie pakietami w systemach SUSE/openSUSE.
66. flatpak – Menedżer Pakietów Aplikacji Flatpak
Komenda flatpak
pomaga zarządzać aplikacjami i środowiskami uruchomieniowymi Flatpak. flatpak
umożliwia dystrybucję aplikacji na pulpicie w trybie piaskownicy na różnych dystrybucjach Linuxa.
Na przykład:
flatpak install flathub org.libreoffice.LibreOffice
Na przykład, powyższe polecenie zainstaluje LibreOffice z repozytorium Flathub.
flatpak run org.libreoffice.LibreOffice
A ta uruchamia aplikację LibreOffice Flatpak w trybie piaskownicy. flatpak
dostarcza scentralizowane repozytorium aplikacji dla systemów Linux działających na różnych dystrybucjach, więc nie jesteś już ograniczony tylko do pakietów dostępnych w bibliotece pakietów konkretnej dystrybucji.
67. appimage – Menedżer Pakietów Aplikacji AppImage
AppImage
to samodzielne aplikacje, które działają na większości dystrybucji Linuxa. Komenda appimage uruchamia istniejące AppImages.
Na przykład:
chmod +x myapp.AppImage
./myapp.AppImage
To umożliwia bezpośrednie uruchamianie pliku binarnego AppImage.
AppImages
pozwalają na wdrażanie aplikacji bez instalacji na poziomie systemu. Można je traktować jak małe kontenery, które zawierają wszystkie pliki niezbędne do działania aplikacji bez zbyt wielu zewnętrznych zależności.
68. snap – Menedżer Pakietów Aplikacji Snappy
Polecenie snap
zarządza pakietami typu snap—konteneryzowane pakiety oprogramowania. Snaps aktualizują się automatycznie i działają na różnych dystrybucjach Linuxa, podobnie jak Flatpak.
Na przykład:
snap install vlc
To proste polecenie instaluje snap odtwarzacza multimedialnego VLC.
snap run vlc
Po instalacji, możesz użyć snap
, aby uruchomić pakiety zainstalowane za pomocą snap, korzystając z powyższego polecenia. Snaps izoluje aplikacje od bazowego systemu dla przenośności i umożliwia czystszą instalację.
Polecenia Informacji Systemowej
Te polecenia pozwalają wyświetlić szczegóły dotyczące sprzętu systemu Linux, jądra, dystrybucji, nazwy hosta, czasu pracy i więcej.
69. uname – Wydrukuj Informacje o Systemie
Polecenie uname
drukuje szczegółowe informacje o jądrze systemu Linux, architekturze sprzętowej, nazwie hosta i systemie operacyjnym. Obejmuje to numery wersji i informacje o maszynie.
Na przykład:
uname -a
Linux hostname 5.4.0-48-generic x86_64 GNU/Linux
uname
jest przydatne do odpytywania tych podstawowych szczegółów systemowych. Niektóre opcje obejmują:
-a
– Wydrukuj wszystkie dostępne informacje o systemie-r
– Wydrukuj tylko numer wydania jądra
Powyższe polecenie wydrukowało rozszerzone informacje o systemie, w tym nazwę/wersję jądra, architekturę sprzętową, nazwę hosta i system operacyjny.
uname -r
To wydrukuje tylko numer wydania jądra. Polecenie uname
pokazuje szczegóły dotyczące podstawowych komponentów systemu Linux.
70. hostname – Pokaż lub ustaw nazwę hosta systemu
Polecenie hostname
wyświetla lub ustawia identyfikator nazwy hosta dla Twojego systemu Linux w sieci. Bez argumentów wyświetla bieżącą nazwę hosta. Podanie nazwy zaktualizuje nazwę hosta.
Na przykład:
hostname
linuxserver
To wyświetla linuxserver — skonfigurowaną nazwę hosta systemu.
hostname UbuntuServer
hostnames
identyfikują systemy w sieci. hostname
pobiera lub konfiguruje nazwę identyfikującą twój system w sieci. Drugie polecenie pomaga zmienić lokalną nazwę hosta na UbuntuServer.
71. uptime – Jak długo system działa
Polecenie uptime
pokazuje, jak długo system Linux działa od ostatniego uruchomienia. Wyświetla czas działania i aktualny czas.
Uruchom poniższe polecenie, aby uzyskać dane dotyczące czasu działania systemu:
uptime
23:51:26 up 2 dni, 4:12, 1 użytkownik, średnie obciążenie: 0.00, 0.01, 0.05
To pokazuje czas działania systemu, wskazując jak długo system działa od ostatniego uruchomienia.
72. whoami – Drukuj aktywne ID użytkownika
Polecenie whoami
wyświetla efektywną nazwę użytkownika obecnie zalogowanego do systemu. Pokazuje poziom uprawnień, na którym działasz.
Wpisz polecenie w swoim terminalu, aby uzyskać ID:
whoami
john
To wydrukuje skuteczną nazwę użytkownika, jako którą zalogował się i działa obecny użytkownik. Jest to przydatne w skryptach lub diagnostyce do identyfikacji, jako jaki użytkownik są wykonywane działania.
73. id – Drukuj rzeczywiste i skuteczne identyfikatory użytkownika i grupy
Polecenie id
wyświetla szczegółowe informacje o użytkowniku i grupie dotyczące efektywnych identyfikatorów i nazw bieżącego użytkownika. Obejmuje to:
- Rzeczywiste ID użytkownika i nazwa.
- Skuteczne ID użytkownika i nazwa.
- Rzeczywiste ID grupy i nazwa.
- Skuteczne ID grupy i nazwa.
Aby użyć polecenia id, po prostu wpisz:
id
uid=1000(john) gid=1000(john) groups=1000(john),10(wheel),998(developers)
Polecenie id
wyświetla rzeczywiste i skuteczne identyfikatory użytkownika i grupy bieżącego użytkownika. id
pokazuje szczegóły użytkownika i grupy przydatne do określania uprawnień dostępu do plików.
74. lscpu – Wyświetl informacje o architekturze CPU
Polecenie lscpu
pokazuje szczegółowe informacje o architekturze CPU, w tym:
- Ilość rdzeni CPU
- Ilość gniazd
- Nazwa modelu
- Rozmiary pamięci podręcznej
- Częstotliwość CPU
- Rozmiary adresów
Aby użyć polecenia lscpu, po prostu wpisz:
lscpu
Architektura: x86_64
Tryby pracy procesora: 32-bit, 64-bit
Kolejność bajtów: Little Endian
Procesory CPU: 16
Lista aktywnych procesorów CPU: 0-15
lscpu
przedstawia architekturę CPU, taką jak liczba rdzeni, gniazda, nazwa modelu, pamięci podręczne i więcej.
75. lsblk – Lista Urządzeń Blokowych
Polecenie lsblk
wyświetla informacje o wszystkich dostępnych urządzeniach blokowych, w tym dyskach lokalnych, partycjach i woluminach logicznych. Wynik zawiera nazwy urządzeń, etykiety, rozmiary i punkty montowania.
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 1.8T 0 disk
|-sda1 8:1 0 512M 0 part /boot
|-sda2 8:2 0 16M 0 part
`-sda5 8:5 0 1.8T 0 part
`-lvm1 254:0 0 1.8T 0 lvm /
lsblk
wyświetla wszystkie urządzenia blokowe, w tym dyski, partycje i woluminy logiczne. Daje przegląd urządzeń przechowujących.
76. lsmod – Pokaż Status Modułów w Jądrze Linuxa
Polecenie lsmod
wyświetla obecnie załadowane moduły jądra, takie jak sterowniki urządzeń. Obejmuje to Networking, przechowywanie i inne moduły związane z sprzętem, używane przez jądro Linux do komunikacji z urządzeniami wewnętrznymi i zewnętrznymi.
lsmod
Moduł Rozmiar Używany przez
ipv6 406206 27
evdev 17700 0
crct10dif_pclmul 16384 1
crc32_pclmul 16384 0
ghash_clmulni_intel 16384 0
aesni_intel 399871 0
aes_x86_64 20274 1 aesni_intel
Jak możesz zauważyć, lista zawiera obecnie załadowane moduły jądra, takie jak sterowniki urządzeń. W tym przypadku, pokazuje użycie modułów sieciowych, wejściowych, kryptograficznych i szyfrujących.
77. dmesg – Drukuj lub kontroluj bufor pierścieniowy jądra
Polecenie dmesg
wypisuje komunikaty z bufora pierścieniowego jądra. Obejmuje to istotne zdarzenia systemowe rejestrowane przez jądro podczas uruchamiania i działania.
dmesg | grep -i error
[ 12.345678] Błąd odbierania grupowej odpowiedzi odczytu: -110
[ 23.456789] tplink_mdio 0000:03:00.0: Bezpośrednie ładowanie oprogramowania układowego dla tplink-mdio/leap_p8_v1_0.bin nie powiodło się z błędem -2
[ 40.567890] iwlwifi 0000:09:00.0: Bezpośrednie ładowanie oprogramowania układowego dla iwlwifi-ty-a0-gf-a0-59.ucode nie powiodło się z błędem -2
Wyszukiwanie “error” pokazuje problemy z ładowaniem określonego firmware. To wypisuje buforowane komunikaty dziennika jądra, w tym zdarzenia systemowe takie jak uruchamianie, błędy, ostrzeżenia itp.
Polecenia Administracji Systemem
Komendy administratora systemu pomagają uruchamiać programy jako inni użytkownicy, wyłączać lub restartować system oraz zarządzać systemami inicjacyjnymi i usługami.
78. sudo – Wykonaj Polecenie Jako Inny Użytkownik
Polecenie sudo
umożliwia uruchamianie poleceń jako inny użytkownik, zwykle jako superużytkownik. Po wprowadzeniu polecenia sudo
zostaniesz poproszony o wpisanie hasła w celu uwierzytelnienia.
To zapewnia podwyższony dostęp do zadań takich jak instalowanie pakietów, edytowanie plików systemowych, administrowanie usługami itp.
Na przykład:
sudo adduser bob
[sudo] password for john:
Użytkownik ‘bob’ został dodany do systemu.
To używa sudo
, aby stworzyć nowego użytkownika, ‘bob’. Zwykli użytkownicy zazwyczaj nie mogą dodawać użytkowników bez sudo
.
79. su – Zmiana identyfikatora użytkownika lub uzyskanie uprawnień superużytkownika
Polecenie su
pozwala na przełączenie się na inne konto użytkownika, w tym superużytkownika. Musisz podać hasło docelowego użytkownika, aby się uwierzytelnić. Umożliwia to bezpośredni dostęp do wykonywania poleceń w środowisku innego użytkownika.
Na przykład:
su bob
Hasło:
bob@linux:~$
Po wprowadzeniu hasła użytkownika bob, to polecenie zmienia bieżącego użytkownika na użytkownika ‘bob’. Wiersz poleceń Shell odzwierciedli nowego użytkownika.
80. shutdown – Wyłączanie lub Restartowanie Linuxa
Polecenie shutdown
planuje wyłączenie, zatrzymanie lub restart systemu po określonym czasie lub natychmiast. Jest wymagane do bezpiecznego restartowania lub wyłączania systemów Linux z wieloma użytkownikami.
Na przykład:
shutdown -r now
Broadcast message from root@linux Fri 2023-01-20 18:12:37 CST:
System zostanie teraz zrestartowany!
Ten proceder restartuje system natychmiastowo z ostrzeżeniem dla użytkowników.
81. reboot – Ponowne uruchomienie lub restart systemu
Komenda reboot
restartuje system operacyjny Linux, wylogowując wszystkich użytkowników i bezpiecznie restartując system. Synchronizuje dyski i zamyka system poprawnie przed ponownym uruchomieniem.
Na przykład:
reboot
Uruchamianie systemu ponownie.
To natychmiast uruchamia ponownie system operacyjny. reboot to prosta alternatywa dla polecenia shutdown -r
.
82. systemctl – Kontroluj systemd System i Menadżera Usług
Polecenie systemctl
pozwala na zarządzanie usługami systemd, takimi jak uruchamianie, zatrzymywanie, restartowanie lub przeładowywanie ich. Systemd
to nowy system inicjalizacji używany w większości nowoczesnych dystrybucji Linuxa, zastępujący SysV init.
Na przykład:
systemctl start apache2
==== UWIERZYTELNIONO DLA org.freedesktop.systemd1.manage-units ===
Wymagane jest uwierzytelnienie, aby uruchomić 'apache2.service'.
Uwierzytelnianie jako: Nazwa Użytkownika
Hasło:
==== UWIERZYTELNIENIE ZAKOŃCZONE ===
To uruchamia usługę apache2 po uwierzytelnieniu.
83. usługa – Uruchom Skrypt Inicjalizacyjny Systemu V
Polecenie service
uruchamia skrypty inicjalizacyjne Systemu V do sterowania usługami. Pozwala to na uruchamianie, zatrzymywanie, ponowne uruchamianie i przeładowywanie usług zarządzanych w ramach tradycyjnego SysV init.
Na przykład:
service iptables start
[ ok ] Uruchamianie iptables (przez systemctl): iptables.service.
Powyższe polecenie uruchamia usługę zapory sieciowej iptables
za pomocą jej skryptu inicjalizacyjnego SysV.
Inne polecenia Linux do wypróbowania
-
mount
– Montuj lub „dołącz” dyski do systemu. -
umount
– Odmontuj lub „usuń” dyski z systemu. -
xargs
– Tworzy i wykonuje polecenia dostarczone przez standardowe wejście. -
alias
– Twórz skróty dla długich lub skomplikowanych poleceń. -
jobs
– Wyświetla programy obecnie działające w tle. -
bg
– Wznów zatrzymany lub wstrzymany proces w tle. -
killall
– Zakończ procesy według nazwy programu, a nie PID. -
history
– Wyświetl wcześniej używane polecenia w bieżącej sesji terminala. -
man
– Dostęp do podręczników pomocy dla poleceń bezpośrednio w terminalu. -
screen
– Zarządzaj wieloma sesjami terminala z jednego okna. -
ssh
– Nawiązuj bezpieczne połączenia szyfrowane z zdalnymi serwerami. -
tcpdump
– Przechwytuj ruch sieciowy na podstawie określonych kryteriów. -
watch
– Powtarzaj polecenie w określonych odstępach czasu i wyróżniaj różnice w wyjściu. -
tmux
– Multiplekser terminala dla trwałych sesji i dzielenia. -
nc
– Otwórz połączenia TCP lub UDP do testowania i transferu danych. -
nmap
– Odkrywanie hostów, skanowanie portów, i identyfikacja systemów operacyjnych. -
strace
– Debuguj procesy przez śledzenie sygnałów i wywołań systemu operacyjnego.
7 kluczowych wskazówek dotyczących używania poleceń Linux
- Znaj swoją Shell: Bash, zsh, fish? Różne shelle mają unikalne funkcje. Wybierz ten, który najlepiej odpowiada Twoim potrzebom.
- Opanuj podstawowe narzędzia:
ls
,cat
,grep
,sed
,awk
, itd. stanowią rdzeń zestawu narzędzi Linuksa. - Trzymaj się połączeń rurkowych: Unikaj nadmiernego używania tymczasowych plików. Inteligentnie łącz programy.
- Sprawdzaj przed nadpisaniem: Zawsze dokładnie sprawdzaj przed nadpisaniem plików za pomocą
>
i>>
. - Śledź swoje procesy pracy: Dokumentuj skomplikowane polecenia i procesy pracy, aby móc je później wykorzystać lub udostępnić.
- Twórz własne narzędzia: Pisząc proste skrypty shellowe i aliasy dla często wykonywanych zadań.
- Zacznij bez
sudo
: Początkowo używaj standardowego konta użytkownika, aby zrozumieć uprawnienia.
I pamiętaj, aby ciągle testować nowe komendy na maszynach wirtualnych lub serwerach VPS, aby stały się one dla Ciebie drugą naturą, zanim zaczniesz używać ich na serwerach produkcyjnych.
Hosting VPS
Wirtualny Serwer Prywatny (VPS) to wirtualna platforma, która przechowuje dane. Wiele firm hostingowych oferuje plany hostingowe VPS, które zapewniają właścicielom stron dedykowaną, prywatną przestrzeń na współdzielonym serwerze.
Czytaj więcejLepszy Hosting Linux z DreamHost
Po opanowaniu podstawowych poleceń Linuxa, potrzebujesz również dostawcy hostingu i serwera, który da Ci pełną kontrolę, aby wykorzystać moc i elastyczność Linuxa.
To tutaj DreamHost się wyróżnia.
DreamHost zoptymalizowana infrastruktura Linux jest idealna do uruchamiania Twoich aplikacji, stron i usług:
- Szybki hosting na nowoczesnych serwerach Linux.
- Dostęp do Shell SSH dla kontroli z linii poleceń.
- Możliwość dostosowania wersji PHP, w tym PHP 8.0.
- Serwery internetowe Apache lub NGINX.
- Zarządzane bazy danych MySQL, PostgreSQL, Redis.
- Instalacje aplikacji takich jak WordPress i Drupal za jedno kliknięcie.
- Przyspieszone magazynowanie NVMe na SSD dla szybkości.
- Darmowe automatyczne odnawianie certyfikatu SSL Let’s Encrypt.
Eksperci DreamHost mogą pomóc Ci w pełni wykorzystać platformę Linux. Nasze serwery są starannie skonfigurowane pod kątem bezpieczeństwa, wydajności i niezawodności.
Uruchom swój kolejny projekt na platformie hostingowej Linux, której możesz zaufać. Zacznij z solidnym, skalowalnym hostingiem na DreamHost.com.