Upload
trinhnhu
View
220
Download
0
Embed Size (px)
Citation preview
1. Linuks. W Linuksie twarde dyski oznaczone są w zależności od ich typu. Dla dysków w standardzie IDE przyjęto
oznaczenia:
standard IDE standard SATA, SCSI
hda sda pierwszy dysk w kanale podstawowym (primary master)
hdb sdb drugi dysk w kanale podstawowym (secondary master)
hdc sdc pierwszy dysk w kanale pomocniczym (primary slave)
hdd sdd drugi dysk w kanale pomocniczym (secondary slave)
Na każdym dysku mogą być maksymalnie 4 partycje podstawowe (np. dla dysku hda
oznaczane hda1, hda2, hda3, hda4). Zamiast partycji podstawowej możemy utworzyć partycję
rozszerzoną, a na niej dyski logiczne. Oznaczanie dysków logicznych rozpoczyna się zawsze
od numeru 5. Jeżeli w systemie jest tylko jedna partycja podstawowa (oznaczana hda1) oraz
partycja rozszerzona z dyskami logicznymi to uzyskują one oznaczenia hda1, hda5 itd.
Jeżeli Linux jest instalowany na komputerze jako kolejny system operacyjny, to na dysku
musimy wydzielić dla niego oddzielną partycję dla plików oraz dodatkową partycję wymiany
(traktowaną jako pamięć wirtualna). Typ i położenie partycji nie mają znaczenia.
W systemach pełniących rolę serwera instaluje się tylko jeden system operacyjny, zajmujący
całą przestrzeń dyskową podzieloną na więcej partycji ze względu na:
• bezpieczeństwo i łatwiejszą rozbudowę systemu (np. jeżeli partycja zostanie zapełniona
danymi, możemy do komputera dołączyć nowy dysk i podmontować go w miejsce starej
partycji),
• łatwiejsze tworzenie kopii zapasowych,
• ochronę partycji przed zapełnieniem przez dane użytkowników (np. jeżeli użytkownicy
zapełnią danymi partycję z ich folderami domowymi, to nie spowodują awarii całego
systemu).
Najczęściej wyodrębniane partycje przedstawiono w tab. 4.1.
Oznaczenie
partycji
Przeznaczenie partycji
/ partycja główna, gdzie zostanie zainstalowany system z jego
folderami i plikami
swap partycja wymiany
home foldery domowe użytkowników
var pliki ze zmiennymi i informacjami o zdarzeniach w systemie
opt. dodatkowe oprogramowanie
tmp na pliki tymczasowe
usr oprogramowanie użytkowe
Rozmiar partycji uzależniony jest od wybranej dystrybucji, przeznaczenia partycji oraz od
planowanego stopnia jej wykorzystania, partycja wymiany - dwukrotnie więcej niż rozmiar
pamięci RAM w komputerze.
1.1. Instalacja systemu
Nowoczesne dystrybucje Linuksa wyposażone są w programy ułatwiające ich zainstalowanie i
wstępne skonfigurowanie. Nie jest to czynność trudna, lecz wymaga ostrożności (można przez
nieuwagę usunąć wszystkie istniejące partycje z danymi) i czasu. Po instalacji możemy uzyskać
gotowy system wraz z oprogramowaniem użytkowym umożliwiającym wykonanie wszystkich
typowych zadań.
W dystrybucji Linuksa dostępne są dwa rodzaje instalatorów:
− w trybie tekstowym - metoda szybsza, ale trudniejsza,
− w trybie graficznym - metoda zalecana dla początkujących użytkowników.
Przed rozpoczęciem instalacji należy zaplanować jej przebieg oraz przygotować system. Po
włożeniu płyty do napędu CD/DVD i restarcie komputera automatycznie uruchamiany jest
program instalujący system. Zadaniem użytkownika jest wprowadzanie dodatkowych informacji
w czasie instalacji:
1. Wybór sposobu instalacji Install or upgrade en existing system pozwoli nam zainstalować lub
zaktualizować system w środowisku graficznym.
2. Test nośnika - pozwala sprawdzić, czy na płycie instalacyjnej nie ma błędów -jeżeli wcześniej
instalowano system z tej płyty, można ten krok pominąć.
3. Po zakończeniu lub pominięciu testowania nośnika, przechodzimy do instalacji.
4. Wybór języka, w jakim będzie przeprowadzona instalacja systemu.
5. Wybór ustawień klawiatury i myszy.
6. Konfiguracja urządzeń sieciowych, (aby edytować dane konfiguracyjne karty sieciowej,
należy wybrać przycisk Edytuj):
- sposób ustawienia karty sieciowej - dynamicznie (DHCP) lub statycznie,
- adres karty sieciowej,
- maska sieci,
- domyślna brama,
- nazwa hosta,
- adres serwerów DNS (primary, secondary, tertiary).
7. Wskazanie strefy czasowej.
8. Ustawienie hasła administratora - należy wprowadzić hasło, które będzie trudne do
odgadnięcia.
9. Podział dysku na partycje i wskazanie punktów montowania.
10. Instalacja menedżera startowego.
11. Wybór grup pakietów oraz poszczególnych pakietów - możemy je pozostawić bez zmian, a
potrzebne programy zainstalować później.
12. Kopiowanie plików.
Jeżeli instalacja systemu dobiegnie do końca, należy wyjąć płytę z napędu CD/DVD, a
następnie ponownie uruchomić komputer. Podczas pierwszego uruchomienia systemu musimy
skonfigurować system do pracy.
Wstępna konfiguracja systemu obejmuje:
1. Akceptację warunków licencji, na podstawie której korzystamy z systemu.
2. Utworzenie użytkownika systemu (korzystanie z konta administratora do zadań
niezwiązanych z administrowaniem systemem nie jest zalecane).
3. Ustawienie daty i czasu zegara.
4. Wysłanie profilu komputera do producenta oprogramowania.
Po wykonaniu czynności związanych z wstępną konfiguracją nasz system jest gotowy do pracy.
2. Wielodost ępny system operacyjny Linux
Linux jest systemem wielozadaniowym, co umożliwia mu równoczesne wykonywanie więcej
niż jednego procesu (proces jest to egzemplarz wykonywanego programu, posiadający własną
przestrzeń adresową). Za realizację wielozadaniowości odpowiedzialne jest jądro systemu
operacyjnego. Wielozadaniowość zapewniona jest między innymi przez program nazywany
planist ą, który realizuje algorytm szeregowania zadań w kolejce do przyznania czasu
procesora. Linux może wykorzystywać wiele procesorów. Gdy system ma mniej dostępnych
procesorów niż zadań do wykonania, czas działania procesora jest dzielony pomiędzy
wszystkie zadania.
Niektóre systemy wielozadaniowe, np. Linux, oferują wywłaszczanie, które polega na
przerwaniu wykonywania procesu, odebraniu mu procesora i przekazaniu sterowania do
planisty. W systemach bez wywłaszczania procesy muszą same dbać o sprawiedliwy podział
czasu procesora.
Lista uruchomionych procesów
Do wyświetlenia listy uruchomionych procesów używamy polecenia ps
Może go używać każdy użytkownik, ale wyświetlane będą tylko te procesy, których jest on
właścicielem.
Najważniejszą spośród wyświetlanych informacji jest identyfikator procesu PID. Pozostałe
pola oznaczają:
TTY - identyfikator konsoli, z której proces został uruchomiony,
TIME - czas procesora wykorzystany do tej pory,
CMD - polecenie, którym uruchomiono proces.
Administrator może wyświetlić listę procesów uruchomionych przez wszystkich użytkowników
za pomocą polecenia PS - A.
2.1. Zarządzanie procesami w systemie Linux
Linux jest systemem bardzo stabilnym, lecz również i w tym systemie proces może się zawiesić.
Czasami zachodzi konieczność usunięcia procesu działającego. Zwykły użytkownik może
usuwać tylko te procesy, których jest właścicielem. Administrator może usuwać wszystkie
procesy. Do usuwania procesów z systemu służy polecenie kill. Polecenie to musi otrzymać
jako argument identyfikator PID procesu. Usuwa ono proces w sposób bezpieczny (zamyka
otwarte pliki, zwalnia obszary pamięci). Jeżeli usunięcie procesu w ten sposób się nie uda, to
możemy wymusić jego zakończenie, dodając opcję -9, np. kill -9 2463.
Usuwanie procesów jest zabiegiem niebezpiecznym. Usunięcie ważnego procesu może
spowodować unieruchomienie całego systemu.
2.2. Wielodost ępność
Linux jest systemem wielodost ępnym. Oznacza to, że wielu użytkowników może jednocześnie
z niego korzystać. Każdy użytkownik ma przydzielone zasoby, np. pamięć, czas procesora,
miejsce na dysku, do których nikt oprócz niego nie ma dostępu, chyba że sam je udostępni.
Użytkownik jest niezależny i odizolowany od innych. O uprawnieniach do korzystania z
poszczególnych zasobów decyduje administrator systemu. Aby zalogować się do systemu,
możemy skorzystać z klawiatury przyłączonej do komputera lub sieci komputerowej. Po
zalogowaniu uzyskujemy dostęp do konsoli. W Linuksie zdefiniowanych jest wiele konsoli
tekstowych, na których mogą logować się różni użytkownicy. Aby zmienić konsolę, używamy
kombinacji klawiszy [Ctrl]+[Alt]+[Fn], np. [Ctrl]+[Alt]+[F1], aby przełączyć się na pierwszą
konsolę itd. Ograniczeniem darmowego środowiska graficznego XFree86 jest możliwość
uruchomienia tylko jeden raz. Oznacza to, że tylko jeden użytkownik może pracować w
środowisku graficznym. Środowisko graficzne jest dostępne na siódmej konsoli za pomocą
kombinacji [Ctrl]+[Alt]+[F7]. Aby sprawdzić, z jakiego konta w danym momencie korzystamy,
użyjemy polecenia whoami . Użytkownik może podejrzeć, kto w danym momencie jest
zalogowany do systemu za pomocą polecenia who
Użytkownicy mogą wysyłać do siebie komunikaty, korzystając z polecenia write . Po poleceniu
write należy wpisać nazwę użytkownika zalogowanego do systemu. Kończymy wpisywanie
tekstu wiadomości za pomocą kombinacji klawiszy [Ctrl]+[d].
Administrator czasami musi wysłać wiadomość do wszystkich zalogowanych użytkowników, np.
z prośbą o zakończenie pracy z powodu przerwy w pracy serwera. Do tego celu może użyć
polecenia wali (rys. 5.7). Komunikat otrzymany przez wszystkich użytkowników pokazany jest
na rysunku.
2.3. System plików systemu Linux
System plików to metoda przechowywania plików, zarządzania plikami, informacjami o tych
plikach, tak by dostęp do plików i danych w nich zgromadzonych był łatwy dla użytkownika
systemu. Linux potrafi obsługiwać wiele różnych systemów plików, w tym również te najbardziej
popularne:
ext3 - domyślny system plików w większości dystrybucji systemu Linux opartych najądrze
2.4 oraz nowszych. W starszych dystrybucjach można spotkać wersję ext2.
FAT - system plików używany w środowisku DOS/Windows,
NTFS - nowsza wersja systemu plików dla Windows (niektóre starsze dystrybucje mogą
mieć problemy, zwłaszcza z obsługą zapisu),
ISO9660 - stosowany na dyskach CD/DVD.
Podczas instalacji Linuksa tworzona jest struktura folderów na dysku lub dyskach
zainstalowanych w komputerze. Standardowe foldery tworzone podczas instalacji:
/ - folder główny,
/bin - przechowywane są w nim standardowe polecenia systemu Linux,
/dev - przechowywane są w nim pliki reprezentujące punkty dostępu do urządzeń
systemowych, np. napędów CD/DVD,
/etc - przechowywane są w nim administracyjne pliki konfiguracyjne,
/home - przechowywane są w nim foldery domowe poszczególnych użytkowników,
/mnt - zapewnia odpowiednią lokalizację do montowania urządzeń, takich jak zdalne systemy
plików oraz nośniki wymienne,
/ root - folder domowy administratora systemu,
/sbin - przechowywane są w nim polecenia służące do administrowania systemem oraz
uruchamiające procesy tzw. demonów {daemon),
/tmp - przechowywane są w nim pliki tymczasowe, wykorzystywane przez różne aplikacje,
/usr - przechowywane są w nim pliki dokumentacji systemu oraz większość programów
użytkownika,
/boot - przechowywane jest w nim jądro systemu,
/var - przechowywane są w nim foldery danych różnych aplikacji, w szczególności takich jak
serwer FTP (folder /var/ftp) czy serwer WWW (folder /var/www).
System plików w Linuksie możemy traktować jak pojedyncze drzewo. Jeżeli dołączymy do
systemu plików jakiś dodatkowy nośnik danych, np. dyskietkę, dysk CD/DVD lub pamięć flash,
to system plików tego urządzenia zostanie doczepiony do systemu głównego. Miejsce
doczepienia nazywane jest punktem montowania (mount point). Jako punkt montowania
można wybrać dowolny folder w głównym systemie plików (jeżeli w folderze są dane, to zostaną
one przesłonięte przez zawartość nośnika). Zwykle do montowania nośników używa się
folderów /mnt i /media .
Aby zamontować system plików z dyskietki, użyjemy polecenia:
mount -t msdos /dev/fd0 /mnt/floppy
Opcja –t w poleceniu oznacza, że podamy typ systemu plików na nośniku. Najczęściej używane
to:
msdos - system FAT 12 (dyskietka),
vfat - system FAT,
ntfs - system NTFS, iso9660 - płyta CD/DVD.
Pierwszy parametr oznacza identyfikator urządzenia, np.:
/dev/fd0 - pierwsza stacja dyskietek,
/dev/cdrom - napęd CD/DVD,
/dev/hda1 - pierwsza partycja na dysku ATA (kontroler podstawowy),
/dev/sda1 - pierwsza partycja na dysku SCSI, SATA lub pamięci flash.
Drugi parametr określa punkt montowania. Aby odmontować system plików, użyjemy polecenia:
mount /dev/fd0
Zamiast identyfikatora urządzenia można podać również punkt montowania, np.
umount /mnt/floppy.
Uwaga
Nie można odmontować systemu plików aktualnie używanego. Aby wyświetlić informacje o
wszystkich zamontowanych systemach plików, użyjemy polecenia df
Lista zamontowanych systemów plików
3. Podstawowe operacje systemu Linux
Linux umożliwia pracę w środowisku graficznym lub tekstowym. Środowisko graficzne jest
wygodne dla użytkownika, lecz wymaga więcej zasobów komputera, np. pamięci. W środowisku
tekstowym możemy wykonać wszystkie czynności związane z administracją komputerem, bez
konieczności uruchamiania środowiska graficznego. Zaletą środowiska tekstowego jest
szybkość działania oraz małe wymagania sprzętowe.
3.1. Uzyskiwanie pomocy systemowej
Liczba poleceń w Linuksie jest bardzo duża. Ponadto większość poleceń zawiera mnóstwo
dodatkowych opcji, niejednokrotnie mających duży wpływ na polecenia. Linux dysponuje
systemem pomocy, która dostępna jest dla każdego użytkownika podczas pracy. Opis
większości poleceń systemu dostępny jest w postaci elektronicznego podr ęcznika {manuał).
Aby skorzystać z oferowanej pomocy, wydajemy polecenie man, np. aby wyświetlić pomoc dla
polecenia kill wydamy polecenie man kill
Opisy poszczególnych poleceń mogą być bardzo długie i zawierać przykłady korzystania z
poleceń i opcji. Do przewijania tekstu wykorzystujemy klawisze sterowania kursorem. Aby
zakończyć przeglądanie podręcznika, należy nacisnąć klawisz [q] .
3.2. Ułatwienia i zasady korzystania z konsoli
Wielkość liter we wpisywanych nazwach poleceń, parametrach (przełącznikach) poleceń,
nazwach plików, parametrach folderów ma znaczenie, np. PLIK.TXT, plik.t \ t. pLiK.TXt - to
trzy różne pliki. Polecenia wpisujemy zawsze małymi literami, np. ls jest poleceniem listującym
zawartość folderu, natomiast polecenie LS - nie istnieje.
Polecenia Linuksa, zwłaszcza zawierające opcje, mogą być bardzo długie. Aby ułatwić sobie ich
wprowadzanie, warto nauczyć się posługiwania historią poleceń. Powłoka Linuksa przechowuje
listę ostatnio używanych poleceń. Aby przywołać ostatnio wydane polecenie, należy wciskać
klawisze sterowania kursorem. Powłoka Linuksa dysponuje funkcją automatycznego
uzupełniania poleceń. Jeżeli początkowa część polecenia jest unikatowa i system może
jednoznacznie określić, co chcemy wpisać, wystarczy użyć klawisza [Tab], aby system dopisał
resztę. Zasada ta dotyczy również nazw plików i folderów. Aby przerwać działanie polecenia,
używamy kombinacji klawiszy [Ctrl]+[C].
3.3. Znaki globalne
W Linuksie występują specjalne znaki zastępujące inne. Tak jak w systemie Windows, znak „*"
reprezentuje zero lub więcej znaków, natomiast „?" reprezentuje dokładnie jeden znak. Oprócz
tego możemy również skorzystać z dodatkowych symboli:
[abcde] - reprezentuje dokładnie jeden z wymienionych znaków,
[ a-e ] - reprezentuje dokładnie jeden znak z przedziału,
[ ! abcde ] - reprezentuje dowolny niewymieniony znak,
[ ! a-e ] - reprezentuje dowolny znak nienależący do przedziału,
{ala, kot, mysz} - reprezentuje dowolny z wymienionych ciągów.
3.4. Zarządzanie plikami i folderami
Do wygodnego zarządzania plikami i folderami wykorzystać możemy programy narzędziowe,
np. Midnight Commander lub środowisko graficzne. Oprócz tego dysponujemy poleceniami
umożliwiającymi wykonanie wszystkich zadań z poziomu konsoli. Najczęściej używane
polecenia do zarządzania plikami:
mkdir tworzy folder, np. mkdir uczeń,
rmdir usuwa pusty folder, np. rmdir /uczeń, (sprawdź w pomocy, jak usunąć niepusty
folder),
cp kopiuje pliki, np. cp /home/uczenl/plik.txt /home/uczen2/,
mv przenosi pliki, np. mv /home/uczenl/plik.txt /home/uczen2,
rm usuwa pliki, np. rm stare. txt,
cd zmienia aktualny folder roboczy, np. cd /,
pwd wyświetla ścieżkę aktualnego folderu roboczego,
Is listuje pliki z folderu, np. ls, najczęściej używać będziemy z opcją –la (sprawdź w
pomocy, co to zmieni w działaniu polecenia),
find wyszukuje np. f ind /muzyka —name uczeń,
touch tworzy plik tekstowy, np. touch plik. txt,
In tworzy nowe dowiązanie do pliku, np. In -s link,
rename umożliwia zmianę nazwy pliku,
cat wyświetla zawartość pliku tekstowego.
Większość z powyższych poleceń działa analogicznie jak w systemie Windows. Omówienia
wymagają jednak polecenia find i ln .
3.5. Wyszukiwanie plików Polecenie find służy do wyszukiwania plików. Jeżeli chcemy znaleźć plik tekst.txt w folderze
/home/student wystarczy napisać:
find /home/student -name tekst.txt.
Pierwszy argument oznacza przeszukiwany folder wraz z podfolderami, drugi parametr określa
warunek, np. -name oznacza, że chcemy szukać pliku o określonej nazwie. Polecenie find
akceptuje również nazwy plików określone za pomocą znaków globalnych, np.
find /home/uczen -name *.bat
3.6. Dowi ązania do plików
Linux przechowuje informacje o zbiorach, np. plikach lub katalogach, w strukturach nazywanych
i-węzłami (i-mode). Każdy plik ma 1 węzeł. Identyfikacja pliku odbywa się na podstawie jego
numeru, unikatowego w obrębie danego systemu plików. Człowiek woli posługiwać się nazwami
plików, które również są skojarzone z odpowiednimi i-węzłami . Dowiązania (links) umożliwiają
odwoływanie się do jednego pliku za pomocą różnych nazw, pozwalają również na
umieszczenie jednego pliku w wielu miejscach w strukturze plików.
Dowiązania dzielą się na twarde (hard links) i symboliczne (symbolic links). Dowi ązanie
twarde jest to referencja wskazująca konkretny, istniejący wcześniej i-węzeł w obrębie tej
samej partycji (systemu plików). Dla systemu operacyjnego dowiązanie takie jest po prostu
dodatkową nazwą wskazywanego obiektu. Plik, mający n dowiązań ma też n nazw. Aby
skasować obiekt w systemie plików, trzeba usunąć wszystkie odwołujące się do niego
dowiązania.
Do tworzenia dowiązań twardych służy polecenie: ln cel_dowi ązania dowi ązanie
gdzie:
cel_dowi ązania - plik, do którego chcemy zrobić dowiązanie
dowi ązanie - dodatkowa nazwa pliku, równoprawna z wcześniej utworzonymi nazwami.
Przykład
In /home/uczen/plik.txt /root/plik_ucznia.txt
Dowi ązanie symboliczne to skojarzenie nowej nazwy z istniejącą wcześniej nazwą zbioru (nie
bezpośrednio z i-węzłem). Dowiązanie symboliczne wskazuje na nazwę pliku lub katalogu,
która dopiero wskazuje na i-węzeł. Odpowiednikiem dowiązania symbolicznego w systemie
Windows jest skrót.
Dowiązania symboliczne tworzy się analogicznie, jak dowiązania twarde, tylko dodając do
polecenia ln parametr -s, np. ln -s /home/uczen/plik.txt /root/plik_ucznia.txt
Dowiązania kasujemy tak jak pliki. Przykłady użycia poleceń związanych z tworzeniem i
usuwaniem dowiązań pokazano na rysunku.
3.7. Błędy zwi ązane z dowi ązaniami
Dowiązanie twarde wskazuje na miejsce na dysku. Jeżeli plik skasujemy i w jego miejscu
umieścimy inny plik, to nasze dowiązanie będzie wskazywało na to samo miejsce, ale zupełnie
inny plik.
Dowiązanie symboliczne jest związane z nazwą pliku. Na rysunku pokazano dowiązanie
symboliczne link_s utworzone do pliku plik.txt. Jeżeli skasujemy plik.txt , do którego prowadzi
dowiązanie, to system wyświetli błąd. Dowiązanie istnieje, ale prowadzi do nieistniejącego pliku.
Jeżeli utworzymy plik o takiej samej nazwie, to dowiązanie będzie wskazywać nowy plik, mimo
że jego zawartość może być zupełnie inna.
3.8. Ścieżki dost ępu
Podobnie jak w systemie Windows, w Linuksie do odnajdywania zbiorów na dysku posługujemy
się ścieżkami dost ępu. Ścieżki mogą być bezwzględne lub względne.
Bezwzgl ędna ścieżka dostępu rozpoczyna się od folderu głównego, pierwszym znakiem
ścieżki bezwzględnej jest ukośnik /.
Względna ścieżka dostępu przedstawia lokalizację pliku lub folderu względem folderu
bieżącego. Jeśli ścieżka dostępu nie rozpoczyna się ukośnikiem, jest ścieżką względną. Aby z
folderu bieżącego przejść niżej w strukturze drzewa, wystarczy wpisać ścieżkę, rozpoczynając
od nazwy następnego folderu.
Foldery bardzo często wykorzystywane przez użytkowników Linuksa posiadają specjalne
oznaczenia umożliwiające szybkie przemieszczanie się pomiędzy nimi. Lokalizacja tych
folderów jest zawsze określona w systemie:
/ - folder główny,
~ - folder domowy użytkownika,
. - folder bieżący,
. . - folder bezpośrednio nadrzędny.
Symboli tych możemy używać w ścieżkach dostępu, np. cp ~/skrypty/konta.bat /root
3.9. Uprawnienia do plików i folderów
Każdy użytkownik niebędący administratorem Linuksa ma dostęp tylko do niektórych plików.
Dzięki temu nikt nie może np. zmodyfikować plików należących do innego użytkownika. Do
każdego pliku jest przypisany identyfikator wła ściciela u (user) - użytkownika, który stworzył
ten plik, oraz grupy g (group) - czyli zbioru użytkowników, którzy mają do tego pliku
uprawnienia, w przeciwieństwie do pozostałych o (others).
Istnieją trzy podstawowe prawa dostępu do pliku: r - prawo do odczytu, w - prawo do zapisu, x
- prawo do uruchomienia, jeśli plik jest programem. Prawa te są nadawane niezależnie
właścicielowi pliku, grupie, do której plik należy, i pozostałym użytkownikom. Aby dowiedzieć
się, jakie uprawnienia są ustawione dla poszczególnych plików, używa się komendy ls -l. Każdy
plik i folder w systemie Linux posiada 10 bitów protekcji w formacie drwxrwxrwx , gdzie:
bit 1 identyfikacja rodzaju pliku (d - folder, — plik, l - link do pliku),
bity 2-4 uprawnienia właściciela pliku,
bity 5-7 uprawnienia grupy, do której należy właściciel,
bity 8-10 uprawnienia pozostałych użytkowników.
Litera oznacza ustawione uprawnienie, kreska brak uprawnienia.
Administrowanie uprawnieniami możliwe jest w oparciu o polecenie chmod , np. chmod ugo+w
plik.txt powoduje dodanie (+) prawa do zapisu w (write) dla pliku o nazwie plik. txt właścicielowi
u (user), użytkownikom należącym do tej samej grupy, co właściciel pliku g (group) oraz
dodanie prawa do zapisu pliku wszystkim pozostałym użytkownikom o (others).
Każde z praw dostępu ma przypisany odpowiedni parametr cyfrowy:
r prawo do odczytu 4 (100)
w prawo do zapisu 2 (010)
x prawo do uruchomienia 1 (001)
- brak praw dostępu 0 (000)
Dodając do siebie odpowiednie parametry, zestaw trzech praw możemy przedstawić za
pomocą jednej cyfry.
Oto kilka najczęściej spotykanych kombinacji
--- 0 brak praw r-- 4 prawo do zapisu rw- 6 prawo do zapisu i odczytu rwx 7 prawo do zapisu, odczytu i uruchomienia
r-x 5 prawo do odczytu i uruchomienia --x 1 prawo do uruchomienia
Do zmiany uprawnień możemy wykorzystać również polecenie chmod oraz uprawnień
zapisanych jako 3-cyfrowa liczba. Cyfry od lewej oznaczają uprawnienia dla właściciela, grupy i
pozostałych użytkowników. Aby ustawić uprawnienia, należy wydać polecenie np. chmod 750
plik.txt
Przypisane zostaną uprawnienia 7 dla właściciela (rwx), 5 dla grupy (r-x), 0 dla pozostałych
użytkowników (---).
3.10. Właściciele zbiorów
Właścicielem każdego pliku i folderu jest użytkownik i grupa użytkowników. Przenieść własność
zbioru na innego użytkownika może tylko administrator. Do zmiany właściciela używamy
polecenia, którego składnia jest następująca
chown u żytkownik: grupa plik
Zmiana właściciela zbioru może spowodować zmianę uprawnień przypisanych użytkownikom
do danego zbioru.
3.11. Przekierowanie strumienia danych
Każdy uruchomiony w Linuksie proces pobiera skądś dane, gdzieś wysyła wyniki swojego
działania i komunikaty o błędach. Dane przesyłane są między urządzeniami w postaci
strumieni. Strumienie danych przypisane każdemu procesowi są pokazane na rysunku
stdin {standard inpui), czyli standardowe wejście, z którego proces pobiera dane (domyślnie
jest to klawiatura),
stdout {standard otupuf) to standardowe wyjście, z którego wysyłany jest wynik działania
procesu (domyślnie jest to ekran),
stderr {standard error) to standardowe wyjście błędów, gdzie trafiają wszystkie komunikaty o
błędach (domyślnie ekran).
Linux wszystkie urządzenia traktuje jak pliki, niezależnie od tego, czy to jest plik, folder,
urządzenie blokowe (klawiatura, ekran), czy strumień. Powłoka Linuksa identyfikuje je za
pomocą przyporządkowanych im liczb całkowitych, tak zwanych deskryptorów plików:
0 to plik, z którego proces pobiera dane (stdin),
1 to plik, do którego proces zapisuje wyniki swojego działania (stdout),
2 to plik, do którego trafiają komunikaty o błędach (stderr),
Za pomocą operatorów przypisania można manipulować strumieniami, poprzez przypisanie
deskryptorów: 0, 1, 2 innym plikom, niż tym, które reprezentują klawiaturę i ekran.
Standardowe wejście i wyjście (strumienie danych) możemy przekierować. Do tego celu
przygotowano trzy operatory:
− znak „<" umożliwia przekierowanie zawartości pliku do standardowego wyjścia,
np. more < plik ,
− znak „>" umożliwia przekierowanie strumienia danych ze standardowego wyjścia do
pliku; jeżeli plik istnieje, to jego poprzednia zawartość zostaje usunięta, np. ls > plik ,
− znaki „ >> " umożliwiają przekierowanie strumienia danych ze standardowego wyjścia
do pliku; jeżeli plik istnieje, to nowe dane zostają dopisane na końcu pliku.
3.12. Przełączanie standardowego wej ścia
Jako standardowe wejścia można zamiast klawiatury użyć pliku: < plik
Przykład
Najpierw stwórzmy plik lista o następującej zawartości:
slackaware
redhat
debian
caldera
Użyjemy polecenia sort, dla którego standardowym wejściem będzie nasz plik.
sort < lista
Wynikiem będzie wyświetlenie na ekranie posortowanej zawartości pliku lista:
caldera
debian
redhat
slackware
3.13. Przełączanie standardowego wyj ścia
Wynik jakiegoś polecenia można wysłać do pliku, a nie na ekran. Do tego celu używa się
operatora: > plik np. ls -la /usr/bin > -/wynik
Rezultat działania polecenia ls -la /usr/bin trafi do pliku o nazwie wynik , jeśli wcześniej nie
istniał plik o takiej samej nazwie, to zostanie utworzony, jeśli istniał, cała jego poprzednia
zawartość zostanie nadpisana.
Jeśli chcemy, aby dane wyjściowe dopisywane były na końcu pliku, bez wymazywania jego
wcześniejszej zawartości, stosujemy operator P: » plik np. free -m » -/wynik
Wynik polecenia free -m (pokazuje wykorzystanie pamięci RAM i swap) zostanie dopisany na
końcu pliku wynik , nie naruszając jego wcześniejszej zawartości.
3.14. Potokowanie strumienia danych
Zastosowanie znaku | pozwala na łączenie wyjścia jednego polecenia z wejściem innego.
Dane wygenerowane za pomocą pierwszego polecenia, przekazane zostaną na wejście
następnego polecenia i po przetworzeniu przekazane na wejście kolejnego lub na ekran. Tego
typu przetwarzanie danych nazywane jest potokiem. Polecenia często wykorzystywane w
potokach:
more - służy do przeglądania tekstu strona po stronie, jeden ekran na raz, przewijanie stron
możliwe tylko „do przodu", np. ls —la | more ,
less - podobnie jak more , ale przewijanie stron możliwe w obu kierunkach, np. ls -la | less ,
cat - polecenie wyświetla na ekranie zawartość pliku tekstowego, np. cat / etc/passwd | less ,
grep - przeszukuje wskazany strumień danych, szukając linii zawierających ciąg znaków
pasujących do podanego wzorca, cat /etc/passwd | grep ucze ń
wc — wypisuje liczbę bajtów, słów lub linii w plikach, np. ls -la | wc -l .
4. Archiwizacja zbiorów
Podstawowym narzędziem do obsługi archiwów w Linuksie jest program tar. Normalnie tar
tworzy nieskompresowane archiwum. W archiwum może znajdować się wiele plików i folderów.
Program tar domyślnie tworzy archiwum rekurencyjnie (z podfolderami), umieszczając w nim
wszystko, co znajdzie we wskazanym folderze (w tym pliki i foldery ukryte).
Składnia polecenia tar jest następująca: tar opcje nazwa_archiwum plik
Najczęściej używane opcje to: c - tworzenie archiwum, v - podczas przetwarzania archiwum
wyświetlane będą nazwy zbiorów, f - użycie wskazanego pliku jako archiwum, x -
wyodrębnienie zbiorów z archiwum.
5. Kompresja zbiorów
Istnieje wiele programów wykonujących kompresję zbiorów w Linuksie. Najczęściej używanym
jest program gzip. Przykład użycia programu gzip do kompresji pliku pokazany jest na rysunku.
Zwróć uwagę, że podczas kompresji plik oryginalny jest usuwany z systemu.
Skompresowany plik archiwum otrzymał nazwę arch.tar.gz (czasami stosuje się skrócony zapis
tgz ). W takiej postaci rozpro¬wadzanych jest wiele programów przeznaczonych dla Linuksa
Kompresji możemy poddać pliki lub całe foldery wraz z podfolderami. Podczas kompresji
folderu każdy plik kompresowany jest oddzielnie.
W Linuksie tar może dokonać dodatkowej kompresji utworzonego archiwum, korzystając z
programu gzip, w takim przypadku należy użyć dodatkowej opcji -z.
Przykład użycia polecenia tworzącego skompresowane archiwum za pomocą programu tar
tar -czvf arch.tgz folder
Do dekompresji użyjemy polecenia tar -xzvf arch.tgz rozpakowane