Przydatne polecenia: Różnice pomiędzy wersjami

(Utworzono nową stronę "Lista przydatnych poleceń i podstawowych informacji na temat poruszania się na shellu w MyDevil. === Prompt === Prompt na serwerach MyDevil jest w formacjie: [''logi...")
 
(Nie pokazano 9 wersji utworzonych przez 4 użytkowników)
Linia 3: Linia 3:
 
=== Prompt ===
 
=== Prompt ===
  
Prompt na serwerach MyDevil jest w formacjie: [''login''@''serwer'']:<''ścieżka''>$, gdzie:
+
Prompt na serwerach MyDevil jest w formacie: [''login''@''serwer'']:<''ścieżka''>$, gdzie:
 
* <code>login</code> - To nazwa użytkownika w systemie.
 
* <code>login</code> - To nazwa użytkownika w systemie.
 
* <code>serwer</code> - To serwer na którym się jest zalogowanym.
 
* <code>serwer</code> - To serwer na którym się jest zalogowanym.
* <code>ścieżka</code> - To aktualny folder w którym  
+
* <code>ścieżka</code> - To aktualny katalog w którym się znajdujemy.
* <code>$</code> - Znak zachęty., który informuje o możności wpisania polecnia.
+
* <code>$</code> - Znak zachęty., który informuje o możliwości wpisania polecenia.
  
Użytkownik adam zalogowany na serwerze s3.mydevil.net znajdujący się w folderze <code class="directory">~/domains/adam.usermd.net</code>. O tym czym jest <code class="directory">~</code> jest informacja poniżej.
+
Użytkownik adam zalogowany na serwerze s3.mydevil.net znajdujący się w katalogu <code class="directory">~/domains/adam.usermd.net</code>. O tym czym jest <code class="directory">~</code> jest informacja poniżej.
 
  [adam@s3]:<~/domains/adam.usermd.net>$
 
  [adam@s3]:<~/domains/adam.usermd.net>$
  
Linia 15: Linia 15:
  
 
Podstawowe katalogi:  
 
Podstawowe katalogi:  
* <code class="directory">/home/login</code> - Folder użytkownika o nicku login.
+
* <code class="directory">/home/login</code> - Katalog użytkownika o nicku login.
 
* <code class="directory">~</code> - Twój katalog użytkownika.
 
* <code class="directory">~</code> - Twój katalog użytkownika.
* <code class="directory">.</code> - Folder w którym się znajdujesz.
+
* <code class="directory">.</code> - Katalog w którym się znajdujesz.
* <code class="directory">..</code> - Folder którym znajduje się podfolder w którym jesteś.
+
* <code class="directory">..</code> - Katalog którym znajduje się podkatalog w którym jesteś.
* <code class="directory">~/domains</code> - Folder ze stworzonymi stronami WWW.
+
* <code class="directory">~/domains</code> - Katalog ze stworzonymi stronami WWW.
* <code class="directory">~/backups</code> - Folder z [[backup]]em.
+
* <code class="directory">~/backups</code> - Katalog z [[backup]]em.
* <code class="directory">~/repositories</code> - Folder z [[:Kategoria:Repozytoria|repozytoriami]].
+
* <code class="directory">~/repositories</code> - Katalog z [[:Kategoria:Repozytoria|repozytoriami]].
* <code class="directory">/tmp</code> - Folder tymczasowy, periodycznie czyszczony z zawartości.  
+
* <code class="directory">/tmp</code> - Katalog tymczasowy, periodycznie czyszczony z zawartości.  
  
 
Podstawowe polecenia:
 
Podstawowe polecenia:
* <code>cd</code> - Przejście do folderu domowego.
+
* <code>cd</code> - Przejście do katalogu domowego.
* <code>cd ścieżka_do_folderu</code> - Przejście do podanego folderu.
+
* <code>cd ścieżka_do_katalogu</code> - Przejście do podanego katalogu.
* <code>ls</code> - Wyświetlenie listy plików i folderów w aktualnym folderze.
+
* <code>ls</code> - Wyświetlenie listy plików i katalogów w aktualnym katalogu.
* <code>ls ścieżka_do_folderu</code> - Wyświetlnie listy plików i folderów w podanym folderze.
+
* <code>ls ścieżka_do_katalogu</code> - Wyświetlanie listy plików i katalogów w podanym katalogu.
* <code>mkdir nazwa_folderu</code> - Tworzenie folderu.
+
* <code>mkdir nazwa_katalogu</code> - Tworzenie katalogu.
* <code>cp ścieżka_do_pliku_lub_folderu ścieżka_do_pliku_lub_folderu</code> - Kopiowanie pliku lub folderu.
+
* <code>cp ścieżka_do_pliku_lub_katalogu ścieżka_do_pliku_lub_katalogu</code> - Kopiowanie pliku lub katalogu.
* <code>mv ścieżka_do_pliku_lub_folderu ścieżka_do_pliku_lub_folderu</code> - Przeniesienie pliku lub folderu.
+
* <code>mv ścieżka_do_pliku_lub_katalogu ścieżka_do_pliku_lub_katalogu</code> - Przeniesienie pliku lub katalogu.
* <code>rm ścieżka_do_pliku_lub_folderu</code> - Usunięcie wielu plików lub pustych folderów.
+
* <code>rm ścieżka_do_pliku_lub_katalogu</code> - Usunięcie wielu plików lub pustych katalogów.
* <code>rm -rf ścieżka_do_pliku_lub_folderu</code> - Usunięcie wielu plików lub folderów razem z podfolderami.
+
* <code>rm -rf ścieżka_do_pliku_lub_katalogu</code> - Usunięcie wielu plików lub katalogów razem z podkatalogami.
  
 
=== Archiwa ===
 
=== Archiwa ===
  
 
Wypakowywanie plików tar:
 
Wypakowywanie plików tar:
  tar xvf file.tar
+
  tar xvf archiwum.tar
  tar xvzf file.tar.gz
+
  tar xvzf archiwum.tar.gz
  tar xvzf file.tar.tgz
+
  tar xvzf archiwum.tar.tgz
  tar xvjf file.tar.bz2
+
  tar xvjf archiwum.tar.bz2
  tar xvjf file.tar.tbz2
+
  tar xvjf archiwum.tar.tbz2
 
+
 
Wypakowywanie pozostałych popularnych archiwów:
 
Wypakowywanie pozostałych popularnych archiwów:
  unzip file.zip
+
  unzip archiwum.zip
  gunzip file.gz
+
  gunzip archiwum.gz
  unrar x file.rar
+
  unrar x archiwum.rar
  bunzip2 file.bz2
+
  bunzip2 archiwum.bz2
  uncompress file.Z
+
  uncompress archiwum.Z
  7z x file.7z
+
  7z x archiwum.7z
 +
brotli -d archiwum.br
  
 
Pakowanie do pliku zip:
 
Pakowanie do pliku zip:
  zip -r archiwum.zip ścieżka_do_folderu
+
  zip -r archiwum.zip ścieżka_do_katalogu
 
Pakowanie do pliku tar.gz:
 
Pakowanie do pliku tar.gz:
  tar -zcvf archiwum.tar.gz ścieżka_do_folderu
+
  tar -zcvf archiwum.tar.gz ścieżka_do_katalogu
 +
 
 +
=== Procesy ===
 +
Każdy proces ma swój unikalny numer PID (process id).
 +
 
 +
Lista procesów:
 +
{{prompt}}ps aux
 +
{{output}}USER    PID %CPU %MEM    VSZ    RSS TT  STAT STARTED    TIME COMMAND
 +
root 22998  0,0  0,0  33964  11792  -  INs  25maj15  0:05,96 screen
 +
adam 85919  0,0  0,0  86476  6664  -  SN  13:56    0:00,14 sshd: adam@pts/38 (sshd)
 +
adam 82119  0,0  0,0  17688  5428 17  INs+  3cze15  0:00,09 -/usr/local/bin/bash
 +
adam 18327  0,0  0,0  18740  2124 38  RN+  15:18    0:00,00 ps aux
 +
adam 85921  0,0  0,0  17688  5724 38  SNs  13:56    0:00,06 -bash (bash)
 +
adam 86079  0,0  0,0  25772  2884 39  SN+  13:56    0:00,01 screen -r
 +
adam 36518  0,0  0,0  24088  3404 42  INs+  3cze15  4:33,59 redis-server: redis-server *:0 (redis-server){{endoutput}}
 +
 
 +
Każdemu procesowi można wysłać 4 różne sygnały:
 +
* ''SIGTERM'' – poprawne zamknięcie procesu,
 +
* ''SIGKILL'' – unicestwienie procesu co może powodować utratę wszystkich zawartych w nim danych (nie ma możliwości przechwycenia tego sygnału przez proces),
 +
* ''SIGSTOP'' – zatrzymanie procesu bez utraty danych,
 +
* ''SIGCONT'' – ponowne uruchomienie zatrzymanego procesu.
 +
Domyślnie wysyłany jest sygnał SIGTERM, który powoduje bezpieczne zamknięcie procesu. Poprawnie napisany program potrafi przechwycić taki sygnał i odpowiednio go obsłużyć. Sygnały SIGKILL, SIGSTOP, SIGCONT są informacją dla jądra systemu, które musi podjąć odpowiednie kroki (program nie ma możliwości obsłużenia tych sygnałów). SIGKILL pozwala na usunięcie z systemu procesu, który uległ awarii i przestał odpowiadać, ale oznacza utratę wszystkich zawartych w nim informacji. Unicestwianiem procesu zajmuje się jądro systemu, które zwalnia wszystkie zajęte przez program zasoby. Sygnały wysyłane są za pomocą programu <code>kill ''PID''</code>
 +
 
 +
==== Przykłady ====
 +
 
 +
Zakończenie procesu 86079 - poprawne zamknięcie procesu:
 +
kill -TERM 86079 
 +
kill 86079
 +
Zabicie procesu 86079 - unicestwienie procesu co może powodować utratę wszystkich zawartych w nim danych:
 +
kill -KILL 86079
 +
kill -9 86079
 +
 
 +
[[Kategoria:Poradniki]]
 +
[[Kategoria:Podstawy]]

Aktualna wersja na dzień 00:59, 11 wrz 2019

Lista przydatnych poleceń i podstawowych informacji na temat poruszania się na shellu w MyDevil.

Prompt

Prompt na serwerach MyDevil jest w formacie: [login@serwer]:<ścieżka>$, gdzie:

  • login - To nazwa użytkownika w systemie.
  • serwer - To serwer na którym się jest zalogowanym.
  • ścieżka - To aktualny katalog w którym się znajdujemy.
  • $ - Znak zachęty., który informuje o możliwości wpisania polecenia.

Użytkownik adam zalogowany na serwerze s3.mydevil.net znajdujący się w katalogu ~/domains/adam.usermd.net. O tym czym jest ~ jest informacja poniżej.

[adam@s3]:<~/domains/adam.usermd.net>$

Poruszanie się po systemie

Podstawowe katalogi:

  • /home/login - Katalog użytkownika o nicku login.
  • ~ - Twój katalog użytkownika.
  • . - Katalog w którym się znajdujesz.
  • .. - Katalog którym znajduje się podkatalog w którym jesteś.
  • ~/domains - Katalog ze stworzonymi stronami WWW.
  • ~/backups - Katalog z backupem.
  • ~/repositories - Katalog z repozytoriami.
  • /tmp - Katalog tymczasowy, periodycznie czyszczony z zawartości.

Podstawowe polecenia:

  • cd - Przejście do katalogu domowego.
  • cd ścieżka_do_katalogu - Przejście do podanego katalogu.
  • ls - Wyświetlenie listy plików i katalogów w aktualnym katalogu.
  • ls ścieżka_do_katalogu - Wyświetlanie listy plików i katalogów w podanym katalogu.
  • mkdir nazwa_katalogu - Tworzenie katalogu.
  • cp ścieżka_do_pliku_lub_katalogu ścieżka_do_pliku_lub_katalogu - Kopiowanie pliku lub katalogu.
  • mv ścieżka_do_pliku_lub_katalogu ścieżka_do_pliku_lub_katalogu - Przeniesienie pliku lub katalogu.
  • rm ścieżka_do_pliku_lub_katalogu - Usunięcie wielu plików lub pustych katalogów.
  • rm -rf ścieżka_do_pliku_lub_katalogu - Usunięcie wielu plików lub katalogów razem z podkatalogami.

Archiwa

Wypakowywanie plików tar:

tar xvf archiwum.tar
tar xvzf archiwum.tar.gz
tar xvzf archiwum.tar.tgz
tar xvjf archiwum.tar.bz2
tar xvjf archiwum.tar.tbz2

Wypakowywanie pozostałych popularnych archiwów:

unzip archiwum.zip
gunzip archiwum.gz
unrar x archiwum.rar
bunzip2 archiwum.bz2
uncompress archiwum.Z
7z x archiwum.7z
brotli -d archiwum.br

Pakowanie do pliku zip:

zip -r archiwum.zip ścieżka_do_katalogu

Pakowanie do pliku tar.gz:

tar -zcvf archiwum.tar.gz ścieżka_do_katalogu

Procesy

Każdy proces ma swój unikalny numer PID (process id).

Lista procesów:

ps aux
USER    PID %CPU %MEM    VSZ    RSS TT  STAT STARTED     TIME COMMAND
root 22998  0,0  0,0  33964  11792  -  INs  25maj15  0:05,96 screen
adam 85919  0,0  0,0  86476   6664  -  SN   13:56    0:00,14 sshd: adam@pts/38 (sshd)
adam 82119  0,0  0,0  17688   5428 17  INs+  3cze15  0:00,09 -/usr/local/bin/bash
adam 18327  0,0  0,0  18740   2124 38  RN+  15:18    0:00,00 ps aux
adam 85921  0,0  0,0  17688   5724 38  SNs  13:56    0:00,06 -bash (bash)
adam 86079  0,0  0,0  25772   2884 39  SN+  13:56    0:00,01 screen -r
adam 36518  0,0  0,0  24088   3404 42  INs+  3cze15  4:33,59 redis-server: redis-server *:0 (redis-server)

Każdemu procesowi można wysłać 4 różne sygnały:

  • SIGTERM – poprawne zamknięcie procesu,
  • SIGKILL – unicestwienie procesu co może powodować utratę wszystkich zawartych w nim danych (nie ma możliwości przechwycenia tego sygnału przez proces),
  • SIGSTOP – zatrzymanie procesu bez utraty danych,
  • SIGCONT – ponowne uruchomienie zatrzymanego procesu.

Domyślnie wysyłany jest sygnał SIGTERM, który powoduje bezpieczne zamknięcie procesu. Poprawnie napisany program potrafi przechwycić taki sygnał i odpowiednio go obsłużyć. Sygnały SIGKILL, SIGSTOP, SIGCONT są informacją dla jądra systemu, które musi podjąć odpowiednie kroki (program nie ma możliwości obsłużenia tych sygnałów). SIGKILL pozwala na usunięcie z systemu procesu, który uległ awarii i przestał odpowiadać, ale oznacza utratę wszystkich zawartych w nim informacji. Unicestwianiem procesu zajmuje się jądro systemu, które zwalnia wszystkie zajęte przez program zasoby. Sygnały wysyłane są za pomocą programu kill PID

Przykłady

Zakończenie procesu 86079 - poprawne zamknięcie procesu:

kill -TERM 86079  
kill 86079 

Zabicie procesu 86079 - unicestwienie procesu co może powodować utratę wszystkich zawartych w nim danych:

kill -KILL 86079
kill -9 86079