wprowadzenie-UNIX.pdf

(451 KB) Pobierz
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
Podstawowe operacje na konsoli
Systemy uniksowe zazwyczaj startują domyślnie do konsoli
tekstowej, choć w niektórych dystrybucjach GNU/Linuksa
przeznaczonych do użytku domowego może od razu uruchamiać
się środowisko graficzne. W takim przypadku należy albo
przełączyć się na konsolę tekstową wciskając Ctrl-Alt-F1, lub
uruchomić aplikację emulatora terminala, np. Gnome Terminal,
Konsola KDE, XTerm lub ATerm. Użytkownicy Mac OS X nie
mają dostępu do prawdziwej konsoli tekstowej, zmuszeni są
więc uruchomić program Terminal.
Linux dostarcza standardowo siedem wirtualnych konsoli
tekstowych i trzy graficzne. Do przełączania się między nimi
używamy kombinacji klawiszy Ctrl-Alt-F1/F2/F3/... - przy czym
konsole 1-6 to konsole tekstowe, 7-9 – graficzne. Liczba konsoli
może zostać zmieniona przez administratora. Po zalogowaniu
się (podanie nazwy użytkownika i hasła) powinien pojawić się
znak zachęty. W przypadku zwyczajnego użytkownika ma on
postać symbolu $, w przypadku użytkownika root
(administrator) – symbolu #. (Często w GNU/Linuksie bywa
poprzedzony nazwą użytkownika i aktualnym katalogiem – nie
jest to jednak reguła). Standardowa powłoka bash posiada
historię poleceń, można więc przy użyciu klawiszy kursora
wybierać spośród poprzednio wprowadzonych rozkazów.
Struktura katalogów
W uniksach cały system plików widoczny jest w postaci
katalogów umieszczonych w wirtualnym katalogu “/”.
Znajdziemy tu takie katalogi jak:
/bin – zawierający podstawowe polecenia konsoli
/etc – zawierający pliki konfiguracyjne systemu
/dev – zawierający pliki urządzeń
/lib – zawierający podstawowe biblioteki systemowe
/tmp – zawierający pliki systemowe
/usr – zawierający pliki i programy przeznaczone dla
użytkowników, w niektórych systemach umieszczane są
wewnątrz niego także katalogi domowe użytkowników.
/var – zawierający m.in. logi systemowe oraz pliki używane
przez tzw. daemony, czyli aplikacje realizujące usługi systemowe
(obsługa poczty, drukarki)
/tmp – katalog plików tymczasowych
W Linuksie znajdziemy także:
/root – katalog domowy administratora
/sbin – polecenia przeznaczone do użytku administratora
/proc – wirtualny katalog zawierający wirtualne pliki z
informacjami o stanie systemu i komputera
/boot – zawierający m. in. informacje dla programu
uruchamiającego jądro (LILO, Grub)
/home – katalog zawierający katalogi domowe użytkowników
Katalog /usr zawiera podobną strukturę jak / - znajdziemy w
nim katalogi /
usr/bin, /usr/lib, /usr/etc itp. Zazwyczaj w podkatalogach /
umieszcza się najważniejsze
dla funkcjonowania systemu programy i aplikacje, a w
podkatalogach /usr – pozostałe.
Pomoc systemowa
Praktycznie każde polecenie posiada opcję - -help, wyświetlającą
informacje o składni i dostępnych opcjach, np.:
$ ls --help
Dla większości poleceń istnieją tzw. strony podręcznika
systemowego. Napisanie:
$ man polecenie
powinno wyświetlić stronę podręcznika na temat danego
polecenia. Należy jednakże zdawać sobie sprawę, że w
podręczniku znajdują się także np. opisy poleceń języka C czy
opisy funkcji systemowych. Rozróżnia się wtedy polecenia po
numerach rozdziału, pisząc:
$ man nr_rozdziału polecenie
Krótkie informacje o danym poleceniu możemy uzyskać pisząc:
$ man polecenie
Informacje o poleceniach zawierających w nazwie jakiś ciąg
znaków dostaniemy pisząc:
$ apropos ciąg_znaków
Najbardziej szczegółowe informacje znajdziemy na tzw.
stronach info. Wystarczy napisać:
$ info polecenie
by dowiedzieć się więcej o danym poleceniu. (bardziej
szczegółowo niż polecenie man). Aby opuścić przeglądarkę
manuali lub stron info, wystarczy wcisnąć q.
Polecenia związane z plikami i katalogami
Jeśli przy znaku zachęty nie pojawia się informacja o aktualnym
katalogu, możemy jego nazwę wyświetlić pisząc:
$ pwd
Do zmiany aktualnego katalogu służy polecenie cd o składni:
$ cd nazwa_katalogu
Warto pamiętać, że w powłoce bash (tcsh) wciśnięcie tabulatora
dokańcza nazwy plików. Pozwala to na szybsze wydawanie
poleceń.
Jeśli nie podamy parametru, polecenie cd przeniesie nas do
naszego katalogu domowego. Jeśli chcemy przejść do katalogu
nadrzędnego, napiszemy:
$ cd ..
Jeśli chcemy wydrukować (wylistować) zawartość danego
katalogu, piszemy po prostu:
$ ls nazwa_katalogu
Jeśli pominiemy nazwę, ls wylistuje zawartość katalogu
bieżącego. Polecenie to ma
wiele parametrów, wśród najważniejszych warto wymienić:
-a pokazuje wszystkie pliki, także “ukryte” (tzn. o nazwach
rozpoczynających się od kropki)
-l drukuje szczegółowe informacje o plikach (właściciel, prawa,
daty modyfikacji, rozmiar)
Opcje z jednym minusem i jedną literą można łączyć - “ ls -a
-l ” odpowiada “ ls -al ”.
Ciekawą opcją jest --color – jeśli dana wersja ls to obsługuje,
różne rodzaje plików są odpowiednio kolorowane (inaczej
katalogi, inaczej pliki zwykłe, wykonywalne, multimedialne,
etc.).
Do usuwania plików służy polecenie rm:
$ rm nazwa_pliku
Zamiast nazwy pliku można zastosować symbole * i ?, Wówczas
warto wymusić potwierdzanie usuwania każdego pliku:
$ rm -i abc*
Do usuwania pustych katalogów służy polecenie rmdir:
$ rmdir nazwa_katalogu
Jeśli katalog zawiera pliki lub katalogi – nie zostanie w takiej
sytuacji usunięty. Do usuwania katalogów wraz z zawartością,
stosujemy odpowiednie opcje polecenia rm:
$ rm -rf nazwa_katalogu
Jeśli chcemy założyć nowy katalog, korzystamy z polecenia
mkdir:
$ mkdir nazwa_katalogu
Jeśli chcemy utworzyć scieżkę katalogów (kolejnych kilka),
stosujemy opcję -p:
$ mkdir -p raz/dwa/trzy/cztery
Możemy także podać uprawnienia do tworzonego katalogu:
$ mkdir katalog -m 770
Zostanie utworzony katalog z uprawnieniami odczytu, zapisu i
wykonywania dla właściciela i grupy oraz bez uprawnień dla
pozostałych użytkowników.
Jeśli chcemy przenieść plik do innego katalogu, wykorzystujemy
polecenie mv:
$ mv plik katalog
Podobnie postępujemy, gdy zmieniamy nazwę pliku:
$ mv stara_nazwa nowa_nazwa
Jeśli plik nowa_nazwa istnieje – zostanie nadpisany bez
ostrzeżenia. Ostrzeżenia można włączyć opcją -i. Innym
rozwiązaniem jest tworzenie kopii zapasowej nadpisywanego
pliku. Polecenie:
$ mv -b jeden dwa
Zgłoś jeśli naruszono regulamin