Polecenia w Linuksie

Marek Szydełko
20.08.2015

W systemach uniksowych polecenia są wpisywane znacznie częściej niż w systemach z rodziny Microsoft Windows. O ile twórcy Windowsów najchętniej zrezygnowaliby z funkcji pisanych systemu (poleceń), o tyle twórcy systemów uniksowych zawsze pozostaną przy trybach tekstowych. Wszystko odnosi się do kontroli nad komputerem czy systemem.

Poleceń warto nauczyć się choćby dla radzenia sobie w razie awarii grafiki, gdzie jedyną drogą do naprawienia usterki może okazać się tryb tekstowy. Ponadto znając polecenia możemy uzyskać całkowitą kontrolę nad systemem operacyjnym, której nakładki graficzne nam nie umożliwią.
Jeżeli nawet używasz systemu wyłącznie do pracy (np. jako redaktor czy grafik) lub używasz jedynie konkretnych programów to i tak polecenia mogą okazać się przydatne. Może nawet zechcesz poznać Linuksa bliżej.
Gdzie wpisywać polecenia?
Są dwa tryby pracy systemu: tekstowy i graficzny. Pierwszy to taki, który zaczyna się od wpisania loginu i hasła. Następnie widzimy znak zachęty oznaczający gotowość do przyjmowania poleceń.
Tryb graficzny jest wywoływany z trybu tekstowego. Zwykle towarzyszą mu nakładki graficzne. Tryb graficzny ma określoną rozdzielczość i odświeżanie. W Linuksie spotkamy się z popularnym XFree86 lub X.Org (oparte o X11) - są to implementacje trybu graficznego (ang. X Window System). Ze względu na problemy z licencją coraz częściej będziemy się spotykać z X.Org.
Nakładki (środowiska) graficzne, tj. KDE, GNOME, FluxBox i inne również dają nam możliwość wpisywania poleceń. Do tego służą terminale działające w trybie graficznym. Popularniejsze terminale to aterm, xterm, eterm, a także Gnome Terminal itp. Oprócz terminali możliwe jest tworzenie ikon programów, lub użycie opcji uruchom (wykonaj polecenie). Istnieje również możliwość wyjścia z trybu graficznego z pozostawieniem trybu tekstowego. Najczęściej jednak w trybie graficznym używa się terminali.
Przed znakiem zachęty...
Standardowo przed znakiem zachęty występują pewne informacje.
Przykładowo:
login@domena: /usr/bin$

lub

domena: /usr/bin#
Oba przykłady różnia się jedną charakterystyczną rzeczą - ostatnim znakiem (przed znakiem zachęty).
Znak $ oznacza, że polecenia wpisuje użytkownik, natomiast # (ang. hash) oznacza administratora. Zarówno domena jak i katalog nie muszą być wyświetlane (zależy od ustawień w konfigu).
A teraz właściwa część artykułu, czyli...
Polecenia
Warto wiedzieć, że polecenia w systemach uniksowych to zwykłe programy, które można uruchomić w dowolnym katalogu (poprzez dowiązanie). Można napisać swoje własne programy i ich używać w taki sam sposób. Programy te nazywane są "poleceniami", ponieważ spełniają określone funkcje w systemie.
Inaczej - polecenie stanowi wywołanie programu (również z parametrami). Zatem np. polecenie cp plik1 /katalog/ oznacza użycie programu CP (copy) z parametrami określającymi plik źródłowy i miejsce gdzie ma zostać przekopiowany.
Przedstawione niżej polecenia stanowią podstawę pracy z systemem...
Polecenia wejścia i wyjścia
Polecenie we/wy
Opis
shutdown -r now / reboot
restart systemu (tylko superuser lub root)
shutdown -h now / halt
wyłączenie komputera (j/w.)
su użytkownik
zamiana użytkownika (ang. switch user)
login
zalogowanie się do nowej sesji
exit / logout
zakończenie zalogowanej sesji (jeśli to jedyna sesja - powoduje opuszczenie środowiska pracy i wywołanie okna logowania)
startx
rozpoczęcie pracy w środowisku graficznym X Window
kdm, gdm, xdm
dla managera logowania w trybie graficznym, odpowiednio KDE, GNOME i XFree86 (wywołanie managera nie oznacza wyboru środowiska graficznego)
Poruszania się i operacje na plikach
Polecenie
Opis
cd nazwa_katalogu
przejście do katalogu. Można wpisać pełną ścieżkę, np. cd /home/użytkowni/katalog lub będąc w katalogu użytkownika poprostu katalog. wpisanie samego cd powoduje przeniesienie do katalogu domowego /home/uzytkownik (ang. Come in Directory - [przypuszczalnie]).
mkdir nazwa_katalogu
tworzy katalog o podanej nazwie (ang. Make Directory)
rmdir nazwa_katalogu
usuwa katalog (ang. Remove Directory)
cp plik katalog
kopiuje plik do podanego katalogu (ang. Copy). Aby skopiować cały katalog musimy użyć opcji -r, czyli cp -r katalog inny_katalog
mv plik katalog
przenosi plik do podanego katalogu (ang. Move) lub zmienia nazwę pliku. Aby zmienić nazwę pliku należy wpisać mv nazwa_pliku nowa_nazwa.
rm plik
usuwa plik o podanej nazwie (ang. Remove), aby usunąć katalog wraz z zawartością należy użyć opcji -r
touch nazwa_pliku
tworzy plik o podanej nazwie (lub dla ambitnych - zmienia czas pliku). Plik można edytować dowolnym edytorem i nadać mu odpowiednie prawa i atrybuty
pwd
podaje ścieżkę obecnego katalogu
ls
pokazuje listę plików znajdujących się w danym katalogu (ang. List). Działanie podobne do dir w DOSie. Szczegółowe opisano tę opcję w innym artykule
ln -s /.../katalog/plik nazwa
wykonuje dowiązanie symboliczne (ang. Link), od tej pory plik będzie można wykonywać (wywoływać) poleceniem ./nazwa, przydatne gdy instalujemy program ze źródeł i chcemy zrobić do niego skrót
whereis nazwa_pliku
poszukuje plików źródłowych, binarnych lub stron podręcznika (ang. manual), z ang. Where is? - dosł. Gdzie jest?
Jeżeli chodzi o katalogi można podawać je w różnej postaci. Już wcześniej podawana pełna ścieżka, ma postać np. cp /home/me/my_file /usr/bin. Aby cofnąć się o jeden katalog możemy posłużyć się kropkami, np. cp ../file_name /home/me/ - spowoduje to skopiowanie pliku z katalogu, znajdującego się przed aktualnym katalogiem. Można cofać się o kilka katalogów, np. ../../../file.
- pamiętaj, że pierwszy "/" oznacza - root (ang. Root - korzeń) - jest to pierwszy podstawowy katalog w systemie (główna partycja).
Procesy
Polecenie
Opis
ps
wyświetla stan procesów
ps -x
wyświetla aktualne procesy użytkownika
kill nr_pid
kończy proces, nr_pid jest wyświetlany w pierwszej kolumnie po wywołaniu polecenia ps
Uzyskiwanie informacji
Polecenie
Opis
man nazwa_polecenia
wyświetla stronę podręcznika programu (o ile taka istnieje)
uname -a
wyświetla informacje: nazwa jądra systemu, sieciowa nazwa systemu, numer kernela, wersja jądra, architektura i nazwa systemu
who
wyświetla informacje o użytkowniku (z ang. kto)
finger
rozbudowane who, (z ang. palec, dotykać palcem)
who am I
wyświetla informacje o aktualnym użytkowniku w danej sesji
file plik
wyświetla informacje o pliku (tj. kodowanie, rodzaj pliku)
df
informacje o stanie dysku twardego (zużycie miejsca), jednostki można określić np. -m - Megabajty, -k - kilobajty
du
wielkość pliku lub katalogu (określenia j/w.)
Rozpakowywanie plików i instalacja oprogramowania
Polecenie
Opis
tar -xvf nazwa.tar
rozpakowuje plik tar
tar -xvzf nazwa.tar.gz
rozpakowuje plik skompresowany w postaci tar.gz
tar -xvjf nazwa.tar.bz2
rozpakowuje plik skompresowany w postaci bzip2
rpm -ivh nazwa.rpm
instalacja pakietu rpm (RedHat, Fedora itp.)
rpm -e nazwa.rpm
odinstalowanie pakietu rpm (j/w.)
dpkg -opcja nazwa.deb
operacje na paczkach debiana, opcje:
    -i - instalacja,
    -r - usunięcie
sh plik_binarny
uruchomienie aplikacji binarnej (plik może mieć rozszerzenie *.run)
Aby zainstalować dany program, który został rozpakowany należy wykonać polecenia w tej kolejności (w katalogu gdzie został rozpakowany): ./configure, make, make install.
Użytkownicy niektórych dystrybucji mają spore ułatwienia, np. w Debianie, żeby zainstalować jakiś pakiet można użyć polecenia: apt-get install nazwa_pakietu (aby odnaleźć pakiet można posłużyć się poleceniem: apt-cache search fraza_do_wyszukania).
Aby dowiedzieć się więcej o podanych poleceniach (rzecz jasna nie wszystkie opcje zostały wypisane!) zapoznaj się z podręcznikiem (man nazwa_polecenia).

Zgłoś swój pomysł na artykuł

Więcej w tym dziale Zobacz wszystkie