systemy operacyjne cw 05 linux dyski

background image

Ćwiczenie 5

Temat:

Obsługa dysków,
archiwizacja danych
i zadania cykliczne

Cel ćwiczenia:

Celem ćwiczenia jest zapoznanie studenta ze mechanizmem obsługi dysków

twardych w systemie Linux, a w szczególności z tworzeniem partycji,

formatowaniem systemu plików oraz montowaniem partycji. Student w trakcie

ćwiczenia zapozna się także z metodami archiwizacji danych, metodami

synchronizacji katalogów, a także nauczy się uruchamiania programów

cyklicznie w określonym czasie według zaplanowanego harmonogramu.

background image

66

Obsługa dysków, archiwizacja danych i zadania cykliczne

Dyski w systemie Linux

Dyski w systemie Linux tak jak inne urządzenia reprezentowane są przez odpowiednie pliki w

katalogu /dev. Nazwa dysku w systemie Linux składa się z trzech członów. Na nazwę składają

się:

• interfejs dysku, np:

o hd – dla dysków z interfejsem ATA

o sd – dla dysków z interfejsem serial ATA (SATA)

• litera reprezentująca kolejny dysk, np.: a, b, c

• cyfra reprezentująca kolejne partycje dysku, np.: 1,2,3

Tak więc pierwszy dysk (cały dysk, niezależnie od partycji) o interfejsie sata będzie

reprezentowany przez plik:

/dev/sda

Natomiast pierwsza partycja tego dysku będzie reprezentowana przez plik:

/dev/sda1

Drugi dysk o interfejsie sata będzie reprezentowany przez plik:

/dev/sdb

a jego pierwsza partycja reprezentowana będzie przez plik:

/dev/sdb1

Napędy optyczne najczęściej reprezentowane są przez pliki które posiadają w nazwie „cd”,

np:

/dev/cdrom

/dev/acd0

natomiast wszelkie urządzenia magazynujące (dyski usb, pendrive) najczęściej są

rozpoznawane jako kolejne dyski twarde, np.: sdc1, sdd1 itd. Każdorazowe podłączenie

każdego urządzenia USB jest zapisywane w pliku logów:

/var/log/messages

background image

67

Obsługa dysków, archiwizacja danych i zadania cykliczne

Wyświetlając kilka ostatnich linii tego pliku, np. za pomocą polecenia tail:

tail -n 5 /var/log/messages

można upewnić się, jaki plik będzie reprezentował urządzenie w systemie:

UWAGA! Powyższa nomenklatura dotycząca nazewnictwa dysków twardych jest prawidłowa

w większości systemów Linux. Istnieją jednak dystrybucje, w których nazewnictwo różni się

od wyżej przedstawionych przykładów.

Edycja tablicy partycji

Najpopularniejszym programem do edycji tablicy partycji dysku twardego dostępnym

w większości dystrybucji systemu Linux jest program fdisk. Program pozawala na tworzenie

partycji (podstawowych i rozszerzonych) oraz przypisywanie im różnych parametrów, takich

jak informacja o systemie plików danej partycji czy informacja o tym, że dana partycja jest

partycją rozruchową. W celu sprawdzenia dostępności programu fdisk oraz jego wersji

wydać należy polecenie:

fdisk -v

Program fdisk działa w dwóch trybach. Z pewnymi flagami jego działanie kończy się po

wywołaniu jednego polecenia, natomiast wywołane bez flag, a jedynie ze ścieżką do dysku

uruchamia program w trybie interaktywnego menu. Aby wyświetlić tablicę partycji

pierwszego dysku twardego (tego na którym zainstalowany jest system) wydać należy

polecenie:

fdisk -l /dev/sda

Jest to przykład, w którym program kończy działanie w linii komend, poprzestając na

wyświetleniu danych o dysku i partycjach:

background image

68

Tworzenie nowej partycji oraz wybór rodzaju partycji

Aby uruchomić program w trybie interaktywnym wydać należy polecenie:

fdisk /dev/sdb

W trybie interaktywnym użytkownik wybiera opcje programu za pomocą skrótów literowych.

Poniżej lista najważniejszych skrótów:

Skrót

Znaczenie:

a

dodaje informację, że partycja jest partycją rozruchową

d

usuwa partycję

l

wyświetla typy systemów plików

m

wyświetla menu pomocy

n

dodaje nową partycję

p

wyświetla tablicę partycji

q

wychodzi z programu bez zapisywania zmian

t

zmienia typ systemu plików

u

zmienia jednostki

v

sprawdza poprawność tablicy partycji

w

zapisuje zmiany na dysk

Tworzenie nowej partycji oraz wybór rodzaju partycji

Dyski mogą być podzielone na partycje podstawowe lub rozszerzone. Dysk może posiadać

tylko cztery partycje podstawowe lub trzy partycje podstawowe i jedną rozszerzoną. Jeśli

istnieje potrzeba podzielenia dysku na większą ilość partycji to można wydzielić je w

obszarze partycji rozszerzonej. Partycje wydzielone w obszarze partycji rozszerzonej noszą

nazwę partycji logicznych. Wybór rodzaju partycji dokonywany jest jako pierwsza czynność

podczas tworzenia nowej partycji za pomocą skrótu (n). Następnie program pyta o pierwszy

background image

69

Etykieta systemu plików

cylinder tworzonej partycji. Aby nie pozostawiać niezagospodarowanej przestrzeni najlepiej

zawsze używać wartości domyślnych (wciskając enter) dla pierwszego cylindra tworzonej

partycji. Ostatni cylinder tworzonej partycji może zostać określony za pomocą jawnego

wskazania numeru cylindra, lub za pomocą rozmiaru tworzonej partycji (określając za

pomocą znaku „+”, np. +50G, gdzie symbole to odpowiednio: K-kilo, M-mega, G-giga).

Numery partycji od 1 do 4 zarezerwowane są dla partycji podstawowych lub rozszerzonych,

partycje logiczne są numerowane od wartości 5, nawet gdy w systemie istnieje tylko jedna

partycja rozszerzona. np:

Etykieta systemu plików

Każdej nowoutworzonej partycji należy przypisać etykietę systemu plików. Partycja po

utworzeniu posiada domyślną etykietę „Linux”. Etykietę systemu plików ustala się skrótem

(t), natomiast listę możliwych do ustawienia systemów wyświetlić można za pomocą skrótu

(l).

background image

70

Etykieta partycji rozruchowej

Etykieta partycji rozruchowej

Flaga partycji rozruchowej wskazuje iż z danej partycji może zostać uruchomiony system

operacyjny. Flaga partycji rozruchowej ustawiana jest z wykorzystaniem skrótu (a).

Zapisanie tablicy partycji

Do momentu zapisania tablicy partycji za pomocą skrótu (w) tablica partycji nie jest

modyfikowana, a wszystkie działania odbywają się tylko w pamięci programu. W każdej

chwili można opuścić program fdisk bez zapisywania zmian, za pomocą skrótu (q).

Tworzenie systemu plików

Podczas tworzenia tablicy partycji określana jest etykieta systemu plików, nie jest to jednak

tożsame ze stworzeniem systemu pliku. System plików to reguły umieszczania danych na

fizycznym nośniku, dotyczące w szczególności wielkości bloków i klastrów, a także sposobu

odnajdowania plików na dysku. Nośniki (dyski, płyty, pendrive itd.) składają się z bloków

danych, które mogą mieć wielkość będącą wielokrotnością jednego sektora, natomiast to

system operacyjny łączy te bloki w klastry.

System plików tworzy się za pomocą polecenia mkfs.X (make filesystem), gdzie w miejscu

litery X wybrać należy tworzony system plików, np.:

mkfs.ext2

mkfs.ext3

mkfs.ext4

mkfs.msdos

mkfs.ntfs *

mkfs.vfat

* Polecenie mkfs.ntfs dostępne jest w pakiecie ‘ntfsprogs’, który w niektórych dystrybucjach nie jest

zainstalowany domyślnie i musi zostać doinstalowany.

background image

71

Zapisanie tablicy partycji

Każde z powyższych poleceń posiada różne flagi odpowiednie dla danego systemu plików. W

większości przypadków opcje domyślne są najbardziej odpowiednie. System pliku tworzy się

wywołując odpowiednie polecenie wraz ze wskazaniem na partycję, np.:

mkfs.ext3 /dev/sdb1

Zadanie 1 Dyski

Dołączyć do serwera nowy dysk twardy. Przygotować odpowiednio partycje nowego dysku

oraz utworzyć wybrane systemy plików:

1. Za pomocą menagera dysków twardych systemu VirtualBox utworzyć nowy dysk twardy

wg wzoru:

2. W ustawieniach maszyny wirtualnej dołączyć nowy dysk do systemu.

3. Za pomocą programu fdisk utworzyć na nowym dysku partycje wg wzoru (wszystkie

partycje mają rozmiar 50 GB, oprócz rozszerzonej, która zajmuje cały pozostały obszar):

background image

72

Zapisanie tablicy partycji

4. Utworzyć system plików dla partycji:

4.1. /dev/sdb1

4.2. /dev/sdb2

4.3. /dev/sdb5

Montowanie dysków twardych

W systemie Linux partycje dysków muszą posiadać tzw. punkt montowania. Partycja może

zostać zamontowana jako dowolny katalog. Do montowania urządzeń służyć powinien

katalog /mnt, jednak nic nie stoi na przeszkodzie, aby partycja zamontowana została w

innym katalogu. Montowanie nośników (dyski twarde, napędy optyczne, pamięci flash)

odbywa się za pomocą polecenia mount, według składni:

mount -t SystemPlikow /dev/partycja /mnt/katalog

W systemie Linux można zamontować nośniki zapisane w różnych systemach plików. Aby

zobaczyć szczegółową listę obsługiwanych systemów plików należy otworzyć podręcznik dla

polecenia mount (sekcja flagi „-t”): man mount. Polecenie mount uruchomione bez żadnych

parametrów wyświetla wszystkie aktualnie zamontowane systemy plików wraz z katalogami

w których zostały zamontowane.

Poleceniem odwrotnym do montowania jest polecenie umount, które odłącza system

plików od wskazanej lokalizacji (tutaj wystarczy podać już tylko katalog pod którym dany

system plików jest zamontowany – patrz przykład poniżej).

Przykład

Aby zamontować partycję sdc4 w katalogu /mnt/dysk_4, której typ systemu plików to fat32,

wydać należy polecenie:

mount -t vfat /dev/sdc4 /mnt/dysk_4

Natomiast, aby odłączyć zamontowaną w powyższym poleceniu partycję użyć należy

polecenia:

umount /mnt/dysk_4

background image

73

Zapisanie tablicy partycji

UWAGA! Aby zamontować partycję z systemem plików ntfs z możliwością zapisu użyć

należy sterownika ntfs-3g. W zależności od dystrybucji, fraza „ntfs-3g” może być programem

montującym:

ntfs-3g /dev/sda5 /mnt/windows

lub typem systemu plików:

mount –t ntfs-3g /dev/sda5 /mnt/windows

Aby zamontować system plików ntfs tylko do odczytu użyć można polecenia:

mount –t ntfs /dev/sda5 /mnt/windows

Partycja zamontowana za pomocą polecenia mount jest dostępna tylko do momentu

ponownego uruchomienia systemu lub do momentu odłączenia za pomocą polecenia

umount. Aby partycja była montowana w systemie za każdym razem, gdy uruchamiany jest

system należy dokonać odpowiednich wpisów w pliku fstab.

Plik fstab

Urządzenie oraz ich punkty montowania mogą być definiowane w pliku konfiguracyjnym

fstab (file system table – tablica systemów plików), który znajduje się w katalogu etc:

/etc/fstab

Plik ten ma układ tabelaryczny. W poszczególnych kolumnach określa się parametry

montowanych systemów plików:

• Kolumna 1: definiuje ścieżkę do urządzenia, np. /dev/sda3,

• Kolumna 2: określa punkt montowania, np. /mnt/dysk3

• Kolumna 3: specyfikuje rodzaj systemu plików (np. ext3, vfat, ntfs, iso9660 )

• Kolumna 4: określa opcje montowania, definiowane po przecinku, najważniejsze z

nich poniżej:

o auto / noauto – określa czy dysk ma być montowany automatycznie

o ro / rw – tylko do odczytu / odczyt zapis

o defaults – montuje zasób z opcjami domyślnymi dla danego systemu plików

• Kolumna 5: parametr programu dump archiwizującego zasoby – jeśli wartoś 0,

program dump ignoruje ten zasób

background image

74

Zapisanie tablicy partycji

• Kolumna 6: kolejność sprawdzania partycji podczas włączania systemu w

poszukiwaniu błędów (główna partycja rozruchowa powinna mieć wartość 1, inne

partycje wartość 2 lub 0 – gdy nie powinny być sprawdzane w ogóle).

W celu zamontowania wszystkich zdefiniowanych w pliku fstab systemów plików wydać

należy polecenie:

mount -a

Polecenie to stosuje się w szczególności wtedy, gdy istnieją w pliku fstab systemy plików,

które nie są montowane automatycznie (noauto) lub gdy któryś z automatycznie

zamontowanych zasobów został ręcznie odmontowany (za pomocą polecenia umount).

Zadanie 2 Montowanie

1. Zamontować wg poniższego wzoru partycje, które zostały utworzone w poprzednim

zadaniu, ale tylko te, dla których utworzony został system plików. Opcje montowania

dobrać odpowiednio do systemu plików na partycji oraz odpowiedni do wytycznych w

tabeli.

Partycja

Punkt montowania

Opcje

/dev/sdb1

/mnt/winXP

Możliwość zapisu

/dev/sdb2

/mnt/backups

Możliwość zapisu

/dev/sdb5

/mnt/win98

Tylko odczyt

2. Na partycji sdb1 oraz sdb2 stworzyć testowe pliki tekstowe z dowolną zawartością.

Kopie bezpieczeństwa danych – archiwa i metody archiwizacji

System Linux udostępnia kilkanaście narzędzi służących archiwizowaniu danych i tworzeniu

kopii bezpieczeństwa. Nikogo nie trzeba przekonywać jak ważne są kopie bezpieczeństwa.

Zabezpieczać można dane (w znaczeniu: istotne pliki) poprzez tworzenie archiwów,

synchronizując katalogi itd. Można też mówić o tak zwanych „odzyskach”, gdzie tworzy się

background image

75

Tworzenie archiwów

kopię bezpieczeństwa całego, poprawnie skonfigurowanego systemu operacyjnego, tak aby

w przypadku awarii w łatwy sposób można było odzyskać działający system wraz ze

wszystkim działającymi na nim usługami.

Tworzenie archiwów

Najpopularniejszym programem do tworzenia archiwów w systemie Linux jest program tar.

Program umieszcza grupę plików w jednym archiwum. Program ma dodatkowo możliwość

kompresowania plików w archiwum. Do najważniejszych parametrów programu należą:

• -c – (create) tworzy archiwum (.tar)

• -f – (file) zezwala na określenie nazwy archiwum

• -v – (verbose) wypisanie archiwowanych plików

• -t – wypisanie na ekran plików w archiwum

• -u – (update) dołącza do archiwum tylko pliki nowsze niż ich te które znajdują się już

w archiwum

• -z – (zip) włącza kompresję programem gzip

• -j – włącza kompresję programem bzip2

• -x – (eXtract) wyodrębnia wymienione pliki

Przykład

Aby utworzyć skompresowane archiwum w którym znajdą się wszystkie pliki z katalogu /root
wydać należy polecenie:

tar –czvf backup.tgz /root/

aby rozpakować archiwum:

tar –xzvf backup.tgz

Synchronizacja katalogów

Najpopularniejszym programem służącym do synchronizacji katalogów jest program rsync.

Program pozwala na kopiowanie katalogów w trybie przyrostowym, porównując i kopiując

background image

76

Tworzenie obrazu oraz odzyskiwanie systemu

tylko pliki nowe lub które uległy zmianie. Polecenia może działać w zakresie jednego systemu

plików, np. chcąc utworzyć kopię katalogu dokumenty:

rsync -avz --stats /root/dokumenty/ /home/backups/

gdzie flaga:

• -a - oznacza pracę w trybie archiwizacji, zachowując przy kopiowaniu wszystkie

atrybuty pliku (właściciela, prawa dostępu, datę utworzenia)

• -z – użycie kompresji danych w celu przespieszenia transferu plików (szczególnie

przydatne, gdy synchronizacja przebiega przez sieć)

• -v – tryb wyświetlania szczegółowych informacji

• --stats – wyświetlenie szczegółowych statystyk związanych z synchronizacją

Synchronizacja może odbywać się także z wykorzystaniem protokołu ssh. Składnia

polecenie przypomina wtedy kopiowanie za pomocą polecenia scp jednak z zachowaniem

funkcjonalności programu rsync, np:

rsync -avz -stats -e ssh user@host:/root/docs/ /home/backups

Powyższe polecenie kopiuje w trybie archiwizacji katalog docs ze zdalnego komputera do

katalogu backups na lokalnym komputerze.

Tworzenie obrazu oraz odzyskiwanie systemu

Popularnym programem do tworzenia obrazów całego systemu jest program partimage.

Program pozwala na sporządzenie obrazu całej partycji i zapisanie jej obrazu na innej

partycji. Tworzony obraz partycji jest dodatkowo kompresowany. Program pozwala na

tworzenie obrazu partycji lokalnego komputera na komputerze zdalnym. Program działa w

trybie pseudograficznym co znacznie ułatwia pracę.

background image

77

Demon cron

Zadanie 3 Kopie bezpieczeństwa

1. Utworzyć 3 dowolne pliki tekstowe w katalogu /mnt/backups/ (czyli w katalogu, gdzie w

poprzednim zadaniu została zamontowana partycja sdb2).

2. Utworzyć skompresowane archiwum tgz zawierające pliki utworzone w pkt.1

3. Za pomocą polecenia rsync zsynchronizować katalog /root/ ze zdalnego komutera do

katalogu /mnt/backups/

4. Za pomocą programu partimage stworzyć obraz partycji /dev/sdb1. Obraz partycji

zapisać w katalogu /mnt/backups/

Harmonogramowanie zadań: cron i at

Ważnym elementem każdego systemu jest harmonogramowanie zadań. Wykonywanie

określonych zadań cyklicznie lub z opóźnieniem (o określonej porze) znacznie ułatwia prace

administracyjne oraz automatyczne tworzenie kopii bezpieczeństwa.

Demon cron

Program cron pozwala na cykliczne uruchomianie zadań. Cykliczne zadania zdefiniowane

przez danego użytkownika wyświetlić można za pomocą polecenia:

crontab -l

natomiast edycji zadań cyklicznych za pomocą polecenia:

crontab -e

Edycja odbywa się na zasadzie edycji pliku konfiguracyjnego, który zorganizowany jest w

kolumnach, każda kolumna oddzielona jest znakiem spacji:

• kolumna 1: minuta (0-59)

• kolumna 2: godzina (0-23)

• kolumna 3: dzień miesiąca (1-31)

• kolumna 4: miesiąc (1-12)

background image

78

Przykład

• kolumna 5: dzień tygodnia (0-7, gdzie 0 i 7 oznaczają niedzielę)

• kolumna 6: polecenie do wykonania

W każdej kolumnie (oprócz kolumny 6) możne znaleźć się zakres liczbowy:

• * (symbol gwiazdki) oznaczający – każdą godzinę, minutę, miesiąc, dzień itd

• 1,3,5 – przykładowy wpis oznaczający wybrane godzinę, dzień lub miesiąc

• 2-5 – przykładowy zapis oznaczający zakres od 2 do 5

Przykład

Na przykład wpis w tablicy cron:

0,30 14-18 * 11,12 1-5 /root/bin/backup.sh 2>/dev/null

spowoduje, iż skrypt „backup.sh” (którego wszystkie standardowe błędy będą

przekierowywane do urządzenia null) będzie wykonywany w listopadzie i grudniu każdego

roku, od poniedziałku do piątku, zawsze o pełnej godzinie oraz 30 minut po każdej godzinie,

pomiędzy godziną 14 a 18.

Polecenie at

Polecenie at pozwala na uruchomienie polecenia o określonej godzinie. Program pozwala na

przyporządkowanie zadania, które ma zostać wykonane o określonej porze do

wyspecyfikowanej kolejki (flaga –q). Kolejki posiadają nazwy własne, np. „kol1”.

Najważniejsze polecenia programu at:

• -q nazwa kolejki

• -t data i czas wykonania, format: YYYYMMDDHHMM (bez odstępów i innych znaków)

• - f program do wykonania

Na przykład, aby zdefiniować wykonanie programu na dzień 01 kwietnia roku 2010, godzinę

13:15, a zadanie dodać do kolejki o nazwie ‘backups’ wydać należy polecenie:

at -q backups -t '201004011315' -f /root/make_backup.sh

background image

79

Polecenie at

Aby zobaczyć zaplanowane zadania, użyć należy polecenia (można wyspecyfikować

konkretną kolejkę):

atq -q backupy

Aby usunąć zaplanowane zadanie, użyć należy polecenia artm wraz z ID zadania (ID zadania

widoczne jest w liście zadań wyświetlonej za pomocą polecenia atq), np.:

atrm 3

Zadanie 4 Harmonogramowanie zadań

1. Stworzyć prosty skrypt „backups.sh”, który wykonuje archiwum plików katalogu /root/ i

zapisuje je w katalogu /home/

2. Za pomocą polecenia at zdefiniować wykonanie skryptu „backups.sh” po kilku minutach

po zdefiniowaniu. Sprawdzić poprawność działania zadania (sprawdzić czy powstało

archiwum)

3. Zdefiniować wykonanie cykliczne skryptu „backups.sh”, tak aby skrypt był uruchamiany

w każdą sobotę i niedzielę o godzinie 18.


Wyszukiwarka

Podobne podstrony:
systemy operacyjne cw 06 linux uzytkownicy grupy
systemy operacyjne cw 04 linux bash
systemy operacyjne cw 01 linux instalacja
systemy operacyjne cw 03 linux siec ssh pakiety
Systemy Operacyjne Ćw 2, UŁ WMiI, Ćwiczenia SYS OP, Ćw 2
Systemy operacyjne Sop 05 lab
Systemy operacyjne Praca kontrolna 1, Linux, płyty dvd, inne dvd, 2, Profesja, semestr 1
Systemy Operacyjne Ćw 2
systemy operacyjne cw 09 podstawy administracji cz2
systemy operacyjne cw 08 podstawy administracji cz1
quota, !!!Uczelnia, wsti, materialy, II SEM, systemy operacyjne linux
LINUX, SZKOLNE PLIKI-mega zbiory (od podstawówki do magisterki), Systemy operacyjne
Dyski twarde-woluminy, Szkoła, Systemy Operacyjnie i sieci komputerowe, systemy, semestr II
Opis systemów operacyjnych-Linux, Informatyka -all, INFORMATYKA-all
Prezentacja System operacyjny Linux
z1 SO na 28.05.11 w2 ze skryptami, Informatyka, SEMESTR IV, Systemu Operacujne
Dyski twarde-konspekt, Szkoła, Systemy Operacyjnie i sieci komputerowe, utk, semestr II
Porównanie systemów operacyjnych Windows i Linux, Studia, Informatyka, Informatyka, Informatyka

więcej podobnych podstron