CezarySobaniec - Poznań University of Technology · mount system_plików ......

39
Zarządzanie Systemami Rozproszonymi Skrypt do ćwiczeń laboratoryjnych Cezary Sobaniec v2.16 2013/04/22 Politechnika Poznańska Instytut Informatyki

Transcript of CezarySobaniec - Poznań University of Technology · mount system_plików ......

Page 1: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

Zarządzanie Systemami RozproszonymiSkrypt do ćwiczeń laboratoryjnych

Cezary Sobaniec

v2.16

2013/04/22

Politechnika PoznańskaInstytut Informatyki

Page 2: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

Spis treści

Wprowadzenie 3

1 NFS 51.1 Kon guracja klienta . . . . . . . . . . . . . . . . . . . . . . . 51.2 Kon guracja serwera . . . . . . . . . . . . . . . . . . . . . . . 7

1.2.1 Uruchomienie serwera . . . . . . . . . . . . . . . . . . . . 81.2.2 Rekon guracja . . . . . . . . . . . . . . . . . . . . . . 81.2.3 Grupy sieciowe . . . . . . . . . . . . . . . . . . . . . . 8

1.3 Mapowanie użytkowników . . . . . . . . . . . . . . . . . . . . . 91.3.1 Mapowanie statyczne . . . . . . . . . . . . . . . . . . . . 91.3.2 Mapowanie dynamiczne . . . . . . . . . . . . . . . . . . . 101.3.3 WebNFS . . . . . . . . . . . . . . . . . . . . . . . . . 10

1.4 Automonter . . . . . . . . . . . . . . . . . . . . . . . . . . 101.4.1 Zwiększanie dostępności . . . . . . . . . . . . . . . . . . . 111.4.2 Wielokrotne montowanie. . . . . . . . . . . . . . . . . . . 11

1.5 NFSv4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2 Pakiet Samba 142.1 Klient protokołu SMB/CIFS . . . . . . . . . . . . . . . . . . . . 142.2 Serwer protokołu SMB/CIFS . . . . . . . . . . . . . . . . . . . . 15

2.2.1 Uruchomienie . . . . . . . . . . . . . . . . . . . . . . . 152.2.2 Kompatybilność systemów Unix/Windows . . . . . . . . . . . . 162.2.3 Kontrola dostępu. . . . . . . . . . . . . . . . . . . . . . 162.2.4 Monitorowanie serwera . . . . . . . . . . . . . . . . . . . 172.2.5 Program administracyjny Swat . . . . . . . . . . . . . . . . . 17

2.3 Kontroler domeny . . . . . . . . . . . . . . . . . . . . . . . . 172.4 PakietWinbind . . . . . . . . . . . . . . . . . . . . . . . . . 19

2.4.1 Kon guracja . . . . . . . . . . . . . . . . . . . . . . . 192.4.2 Katalogi domowe użytkowników uniksowych . . . . . . . . . . . 21

2.5 Synchronizacja haseł . . . . . . . . . . . . . . . . . . . . . . . 222.6 Moduły VFS . . . . . . . . . . . . . . . . . . . . . . . . . . 22

2.6.1 Moduł full_audit . . . . . . . . . . . . . . . . . . . . . . 222.6.2 Moduł recycle . . . . . . . . . . . . . . . . . . . . . . . 22

Page 3: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

Spis treści 2

3 Systemy plików 233.1 Interfejs loop . . . . . . . . . . . . . . . . . . . . . . . . . . 233.2 Przegląd wybranych systemów plików . . . . . . . . . . . . . . . . . 23

3.2.1 NTFS . . . . . . . . . . . . . . . . . . . . . . . . . . 233.2.2 SquashFS . . . . . . . . . . . . . . . . . . . . . . . . 24

3.3 Rozszerzone atrybuty, metadane. . . . . . . . . . . . . . . . . . . 243.3.1 xattr . . . . . . . . . . . . . . . . . . . . . . . . . . 243.3.2 NTFS . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3.4 Zmiana rozmiaru systemu plików . . . . . . . . . . . . . . . . . . 253.5 Systemy plików w pamięci . . . . . . . . . . . . . . . . . . . . . 253.6 UnionFS . . . . . . . . . . . . . . . . . . . . . . . . . . . 263.7 Logical Volume Manager. . . . . . . . . . . . . . . . . . . . . . 27

3.7.1 HOWTO. . . . . . . . . . . . . . . . . . . . . . . . . 273.7.2 Funkcje zaawansowane . . . . . . . . . . . . . . . . . . . 273.7.3 Migracja grupy woluminów do innego systemu . . . . . . . . . . . 283.7.4 YaST . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3.8 Btrfs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293.8.1 Podstawy . . . . . . . . . . . . . . . . . . . . . . . . 293.8.2 System plików na wielu urządzeniach . . . . . . . . . . . . . . 293.8.3 Konwersja z ext3/ext4 . . . . . . . . . . . . . . . . . . . . 303.8.4 Snapper . . . . . . . . . . . . . . . . . . . . . . . . . 30

4 Storage 324.1 Dyski. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324.2 iSCSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

4.2.1 Target . . . . . . . . . . . . . . . . . . . . . . . . . . 324.2.2 Initiator . . . . . . . . . . . . . . . . . . . . . . . . . 33

4.3 FreeNAS . . . . . . . . . . . . . . . . . . . . . . . . . . . 344.4 OpenFiler . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

Skorowidz 36

Bibliogra a 38

Page 4: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

Wprowadzenie

Środowisko do ćwiczeń

1. Ćwiczenia wykonywane są w większości w ramach wirtualnychmaszyn przygotowanych dlanadzorcy VirtualBox. Gotowy do zaimportowania obraz maszyny wirtualnej jest dostępnypod adresem http://lindev.cs.put.poznan.pl/ZSR/.

2. Maszyna wirtualna ma skon gurowany interfejs sieciowy w trybie mostkowania (bridgedadapter), co umożliwia bezpośrednią komunikację międzymaszynami wirtualnymi poszcze-gólnych studentów.

3. Domyślne hasło na wszystkie konta brzmi asdf.

4. Wszystkie ćwiczenia przeprowadzone zostaływ systemie Linux, dystrybucja openSUSE,wer-sja 12.2. Przedstawione rozwiązania oraz sposoby ich kon guracji są jednak w większościniezależne od dystrybucji i mogą być bez przeszkód zastosowanew innychwersjach systemuLinux a często również i w innych systemach uniksopodobnych, wykorzystujących oprogra-mowanie Open Source.

Konwencje użyte w skrypcie

1. Adresy IP z podsieci 192.168.0.0/16 są przykładami adresów publicznych. Adresy z podsieci10.0.0.0/8 są przykładami adresów prywatnych.

2. Komendy wykonywane w linii poleceń są pogrubione i poprzedzone znakiem zachęty „#”.Wyniki produkowane przez komendę wypisywane są bez pogrubienia, np.:

# lsa.txt b.txt c.txt

Jeżeli treść komendy niemieści się w jednej linijce, to jest kontynuowana w następnej a liniakończy się znakiem „\”, np.:

# cp /usr/local/share/texmf/fonts/tfm/public/bera/*.tfm \> /usr/share/texmf/fonts/tfm/public/bera

Znak zachęty może być poprzedzony dodatkowym opisem wskazującym na jakim serwerzeakcja ma być wykonana, np.:

PDC# smbpasswd -w

3. Nazwy plików oraz katalogów zapisywane są w tekście następująco: /usr/bin/qaz.

4. Nazwy komend (programów) zapisywane są jako: slapadd.

5. Odwołania do stron standardowej pomocy systemowej (man) zapisywane są jako: nfs(5).

Page 5: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

Wprowadzenie 4

Liczba w nawiasie oznacza nr sekcji pomocy.

6. Inne istotne nazwy wyróżnione są w tekście następująco: moduł pam_mount.

7. Kombinacje klawiszy skrótów zapisywane są jako: Ctrl-Alt-Del .

Page 6: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

1NFS

Network File System to rozproszony system plików stworzony przez rmę Sun Microsystems.

1.1 Kon guracja klienta

Zanim klient będzie w stanie odwołać się do zasobów zdalnego systemu, musi poznać listę udo-stępnianych zasobów. Może to wykonać za pomocą komendy showmount(8):

# showmount -e localhostmount clntudp_create: RPC: Program not registered# showmount -e siriusExport list for sirius:/home lab1,lab2,lab3

Przełącznik -e (ang. export) pobiera listę zasobów (katalogów) ze wskazanego komputera czyli ka-talogów eksportowanych przez ten system. W powyższym przypadku komputer klienta nie udo-stępnia żadnego katalogu, bo nie został uruchomiony jeszcze serwer NFS. Implementacja serweraNFS jest oparta na mechanizmie zdalnych wywołań procedur RPC (ang. Remote Procedure Call), akomunikat pochodzi od usługi rpcbind(8)wskazując, że niema zarejestrowanejwymaganej usługiRPC. Komputer sirius udostępnia katalog /home i udostępnia go komputerom lab1, lab2, lab3.

Klient systemu NFS jest wbudowany w jądro systemu operacyjnego. Uzyskanie dostępu dozdalnego katalogu wymaga dołączenia zdalnego systemu plików analogicznie do tego, jak wyko-nywane jest to lokalnie. Montowanie katalogu wymaga użycia komendy mount(8):

mount system_plików katalog_docelowy

Przykładem zastosowania komendy mount jest dołączenie systemu plików z PenDrive’a lub napęduCD:

# mount /dev/sr0 /mnt

Katalog /mnt bardzo często wykorzystywany jest do tymczasowego dołączania systemów plików.Przetwarzanie plików w katalogu /mntmoże być realizowane w taki sam sposób jak innych plikówlokalnych.

Odłączenie systemuplików, zarówno lokalnego jak i zdalnego, wykonywane jest komendą umo-unt(8):

# umount /mnt

Page 7: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

1.1 Kon guracja klienta 6

Parametrem komendy może być zarówno nazwa katalogu jak i nazwa systemu plików. Katalogmusi być niewykorzystywany, tzn. żaden proces nie może mieć otwartego pliku z podkatalogówtego katalogu i żaden proces nie może mieć skojarzonego żadnego z podkatalogów jako swojegokatalogu bieżącego. W przypadku zablokowania katalogu można zidenty kować blokujące pro-cesy:

# umount /mntumount.nfs: /mnt: device is busy# fuser /mnt/mnt: 19868c

Wartość wyświetlana komendą fuser(1) jest identy katorem procesu z dodatkowym opisem, np.c (ang. current directory) oznacza, że proces ten wykorzystuje katalog jako katalog roboczy. Tą samąinformację możemy uzyskać korzystając z komendy lsof(8):

# lsof +D /mntCOMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEbash 19868 root cwd DIR 0,21 4096 688536150 /mnt

Dołączając system plików można wskazać jakiego jest typu. System Linux obsługuje m.in. nastę-pujące systemy plików:

ext4 (obecnie) standardowy system plików systemu Linuxvfat system plików FAT z obsługą długich nazw plikówntfs system plików NTFS z Windows NT/200x/XPiso9660 system plików z dysków CDnfs sieciowy system plików NFScifs system plików SMB (zobacz opis pakietu Samba)reiserfs system plików ReiserFSbtrfs B-tree File Systemxfs system plików XFS

Dołączenie systemu plików z PenDrive’a formatowanego w systemie Windows można więcwykonać następująco:

# mount -t vfat /dev/sdb1 /mnt

W przypadku systemu NFS identy kacja systemu plików wymaga wskazania zdalnego serwera ikatalogu na tym serwerze. Dołączenie katalogu /home z systemu sirius można więc zrealizowaćnastępująco:

# mount -t nfs sirius:/home /mnt

Dołączanie systemów plików może być parametryzowane dodatkowymi opcjami de niowanymiprzełącznikiem -o. Oto krótka lista ważniejszych opcji montowania:

ro tryb tylko do odczytuatime włącznie aktualizacji daty ostatniego dostępudev włączenie interpretacji plików specjalnych reprezentujących urządzeniaexec zezwolenie na wykonywanie programówsuid włączenie interpretacji bitów SUID i SGIDsync synchroniczne wykonywanie operacji dostępuasync asynchroniczne wykonywanie operacji dostępuremount zmiana parametrów montowania

Page 8: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

1.2 Kon guracja serwera 7

Niektóre opcje występują również w wersjach negujących ich działanie z dodatkowym pre k-sem no, np. noatime, nodev, noexec, nosuid. Dołączenie zdalnego systemu plików w trybie tylko doodczytu można więc wykonać następująco:

# mount -o ro sirius:/home /mnt

W przykładzie pominięto specy kację typu systemu plików, gdyż wynika ona bezpośrednio z for-matu reprezentacji urządzenia (nazwa_komputera:katalog).

System plików NFS obsługuje wiele dodatkowych opcji montowania systemu plików. Pełnąlistę można znaleźć na stronie pomocy systemowej nfs(5). Oto ważniejsze z nich:

hard nieprzerwane odwoływanie się do serwera w przypadku awariisoft sygnalizacja błędu na poziomie aplikacji w przypadku awarii serweraintr umożliwia przerwanie operacji wejścia/wyjścia poprzez sygnał w

przypadku montowania miękkiego (opcja soft)tcp połączenie z serwerem za pośrednictwem protokołu TCPrsize=n rozmiar bufora odczytu z serwera NFSwsize=n rozmiar bufora zapisu z serwera NFStimeo=n czas oczekiwania na odpowiedź przed retransmisją żądaniaretrans=n maksymalna liczba retransmisji przed zgłoszeniem błędu w trybie

softacreqmin=n minimalny czas przechowywania informacji o plikach zwykłychwpa-

mięci podręcznejacreqmax=n maksymalny czas przechowywania informacji o plikach zwykłych w

pamięci podręcznejacdirmin=n minimalny czas przechowywania informacji o katalogach w pamięci

podręcznejacdirmax=n maksymalny czas przechowywania informacji o katalogach w pa-

mięci podręcznejnoac całkowite wyłączenie pamięci podręcznej dla atrybutów plików

1.2 Kon guracja serwera

Kon guracja serwera jest bardzo prosta iwymagamody kacji pliku kon guracyjnego /etc/exports(5).Plik ten zawiera listę katalogów, które będą udostępniane innym systemom. Oto przykład takiegopliku:

/home lab1(rw)

Po nazwie katalogu znajduje się lista komputerów, które będą miały prawo odwoływania się dotego katalogu. W nawiasach znajdują się dodatkowe opcje eksportowania takiego katalogu. Listakomputerów może zawierać nazwy w postaci domenowej (również z użyciem znaków uogólniają-cych), adresy IP komputerów (i adresy sieci), odwołania do grup sieciowych. Oto przykład bardziejrozbudowanej kon guracji:

/home *.cs.put.poznan.pl(ro) lab?.cs.put.poznan.pl(rw)/usr 192.168.0.0/255.255.255.0(async,rw)/export @lab

Page 9: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

1.2 Kon guracja serwera 8

Wprzykładzie katalog /home został udostępnionywszystkim komputerom z domeny cs.put.poznan.pl do odczytu i wszystkim komputerom o nazwach zaczynających się od lab z tej samej domeny wtrybie do zapisu. Katalog /usr jest udostępnianywszystkimkomputeromoadresach od192.168.0.1do 192.168.0.254 w trybie asynchronicznym. Katalog /export udostępniany jest wszystkim kom-puterom z grupy sieciowej lab (zobacz dalej). Szczegółowy opis dostępnych opcji można znaleźćna stronie pomocy systemowej exports(5).

1.2.1 Uruchomienie serwerawymaga wystartowania odpowiednich procesów usługowych. System NFS implementowany jestpoprzez 2 protokoły (mountd i nfs), stąd 2 programy usługowe. Po uruchomieniu pierwszego znich:

# rpc.mountd

będzie możliwe odpytanie serwera o listę dostępnych zasobów:

# showmount -eExport list for localhost:/export @lab/home lab?.cs.put.poznan.pl,*.cs.put.poznan.pl/usr 192.168.0.0/255.255.255.0

Próba dołączenia systemu plików skończy się jednak zawieszeniem operacji mount. Do poprawnejpracy niezbędny jest drugi proces usługowy:

# rpc.nfsd

odpowiedzialny za właściwy dostęp do danych.

1.2.2 Rekon guracjaKażda zmiana wprowadzona do pliku /etc/exports wymaga powiadomienia procesów usługo-wych serwera NFS. Można to zrobić wysyłając sygnał HUP do obu procesów usługowych:

# ps -ax...# kill -HUP 2345 2456

Wartości 2345 i 2456 są identy katorami procesów rpc.mountd i rpc.nfsd. Można również wy-korzystać do tego celu polecenie pkill(1):

# pkill -HUP rpc.mountd# pkill -HUP rpc.nfsd

lub killall(1):

# killall -HUP rpc.mountd rpc.nfsd

1.2.3 Grupy siecioweOgraniczanie dostępu do katalogów na serwerze NFS może się odbywać w oparciu o grupy sie-ciowe. Grupa sieciowa kon gurowana jest w pliku /etc/netgroup(5) i składa się z trójek wartości:

(komputer, użytkownik, domena)

Page 10: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

1.3 Mapowanie użytkowników 9

Każda z tych wartości może być pominięta. Z punktu widzenia zastosowania grup sieciowych dokon guracji systemu NFS najważniejsza jest możliwość de niowania grup komputerów. Poniższyprzykład pokazuje de nicję grupy lab składającej się z komputerów lab1, lab2, lab3:

lab (lab1, , ) (lab2, , ) (lab3, , )

Wpliku kon guracyjnym /etc/exports odwołania do grup sieciowych poprzedzone są znakiem@:

/home @lab(rw,async)

1.3 Mapowanie użytkowników

Identy kacja użytkowników w systemie NFS odbywa się na podstawie ich identy katorów nu-merycznych. Oznacza to, że w przypadku niezgodności w kon guracji użytkowników pomiędzysystemami klienta i serwera może dojść do nieuprawnionego dostępu do danych. Z tego powoduw domyślnej kon guracji konto użytkownika root podlega mapowaniu na użytkownika o identy -katorze -2 (65534). Działanie to można kontrolować następującymi parametrami eksportowaniakatalogów:

root_squash włączenie mapowania użytkownika o identy katorze 0 (root) na użytkownika oidenty katorze -2 (nobody)

no_root_squash wyłączenie mapowania użytkownika 0

all_squash mapowanie wszystkich użytkowników na identy kator –2

anonuid=500 identy kator użytkownika anonimowego

anonguid=500 identy kator grupy użytkownika anonimowego

Poniższy przykład pokazuje kon gurację serwera NFS udostępniającego katalogi domowe użyt-kownikom systemów innych niż Unix:

/home/pc1 pc1(rw,all_squash,anonuid=1001,anongid=100)/home/pc2 pc2(rw,all_squash,anonuid=1002,anongid=100)/home/pc3 pc3(rw,all_squash,anonuid=1003,anongid=100)

Wprzykładzie użytkownik o identy katorze 1001 korzysta z komputera o nazwie pc1 i należydo grupy o identy katorze 100. Serwer NFS udostępnia jego katalog domowy tylko dla komputerapc1. Analogicznie użytkownicy 1002 i 1003 korzystają z komputerów pc2 i pc3.

1.3.1 Mapowanie statyczneSerwer może wprowadzić statyczną tabelę odwzorowań użytkowników z systemu klienta na użyt-kowników serwera. Wymaga to wyspecy kowania dodatkowej opcji w kon guracji, wskazującejna plik z odwzorowaniami:

/home lab1.cs.put.poznan.pl(rw,map_static=/etc/nfs.map)

Nazwaplikuwskazywanego opcjąmap_static jest dowolna. Zawartość (przykładowego) pliku /etc/nfs.map de niuje odwzorowania poszczególnych użytkowników:

uid 0-99 - # mapowanie do nobodyuid 100-500 1000 # mapowanie 100-500 na 1000-1400gid 0-49 - # mapowanie id grup 0-49 na -2gid 50-100 700 # mapowanie grup 50-100 na 700-750

Page 11: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

1.4 Automonter 10

1.3.2 Mapowanie dynamiczneWadą mapowania statycznego jest oczywiście jego statyczność. Rozwiązanie dynamiczne polegana uruchomieniu po stronie klienta dodatkowej usługi, której zadaniem jest udostępnianie infor-macji o odwzorowaniach identy katorów użytkowników na nazwy. W celu jej aktywacji należy postronie klienta uruchomić proces rpc.ugidd(8):

# rpc.ugidd

a do kon guracji serwera dopisać nową opcję:

/home *.cs.put.poznan.pl(rw,map_daemon)

1.3.3 WebNFSWebNFS to rozszerzenie standardowego protokołu NFS omożliwość pobierania plików za pośred-nictwem publicznego uchwytu do plików. Umożliwia to proste pobieranie plików np. przez prze-glądarki internetowe. Kon guracja wymaga wskazania głównego katalogu dla WebNFS i udostęp-nienia wybranych katalogów w zwykły sposób. Oto przykładowa kon guracja:

/test =public/test *.cs.put.poznan.pl(ro,all_squash,insecure)

W przeglądarce należy wpisać odpowiedni adres URL:

nfs://sirius.cs.put.poznan.pl/plik.txt

Przeglądarka Konqueror obsługuje rozszerzenie WebNFS.

1.4 Automonter

Dołączanie systemów plików może być automatyzowane za pomocą uzupełniającego oprogramo-wania uruchamianego po stronie klienta o nazwie automounter. Kon guracja automontera opierasię na głównympliku kon guracyjnym /etc/auto.master(5)orazna plikachuzupełniających /etc/auto.XXXXX. W pliku /etc/auto.master wskazywane są katalogi, które będą kontrolowane przezoprogramowanie automontera:

/home /etc/auto.home/a /etc/auto.a

Nazwa pliku pojawiająca się po nazwie katalogu wskazuje na szczegółowy plik kon guracyjny opi-sujący dany katalog. Uruchomienie usługi polega na wykonaniu komendy:

# automount /etc/auto.master

W fazie testów warto wykorzystać przełącznik -d komendy automount załączający tryb rejestracjiwykonywanych operacji.

Dane dla automontera mogą również pochodzić z systemu NIS (zobacz rozdział ??). Szczegó-łowy opis kon guracji znajduje się stronie pomocy systemowej autofs(5).

Działanie automontera sprowadza się do monitorowania odwołań do podkatalogów kontro-lowanego katalogu. W przypadku stwierdzenia odwołania do zde niowanego katalogu następujejego dołączenie, zgodnie ze wskazaniami z pliku kon guracyjnego. Poniższy przykład prezentujekon gurację z pliku /etc/auto.home:

user1 sirius:/home/user1user2 galio:/export/home/user2user3 -fstype=ext3,rw :/dev/sda4

Page 12: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

1.5 NFSv4 11

W pierwszej kolumnie znajdują się nazwy podkatalogów kon gurowanego katalogu. Druga ko-lumna (opcjonalna) zawiera dodatkowe opcje montowania systemu plików. Trzecia kolumna towskazanie na system plików. Zakładając powyższą kon gurację wykonanie komendy:

# ls /home/user1

spowoduje dołączenie zdalnego katalogu /home/user1 z systemu sirius. Katalog domowy użytkow-nika user3 dołączany jest z lokalnego systemu plików, co powoduje wykonanie przez automonterakomendy:

# mount -o rw -t ext3 /dev/sda4 /home/user3

W przypadku kon guracji katalogów domowych użytkowników, których pliki znajdują się w pod-katalogach jednego wspólnego katalogu, można zastosować zapis skrócony:

* sirius:/export/home/&

Znak * oznacza w tymmiejscu dowolny ciąg znaków, który zostanie następnie użyty wmiejscu wy-stąpienia znaku &. Odwołanie do katalogu /home/abc spowoduje więc próbę dołączania katalogu/export/home/abc z systemu sirius.

1.4.1 Zwiększanie dostępnościAutomonter umożliwia zwiększanie dostępności zdalnych katalogówpoprzez ich replikację. Zakła-dając, że serwery srv1 i srv2 udostępniają to samo oprogramowanie w katalogu /usr/local, możnarozważyć następującą kon gurację:

local srv1,srv2:/usr/local

Jeżeli te same dane rozlokowane są w różnych lokalizacjach, można użyć poniższego zapisu:

local srv1:/usr/local srv2:/opt/local

W przykładzie wskazano na dwa źródła dla podkatalogu local co oznacza, że niemożność dołą-czenia tego katalogu z systemu srv1 spowoduje dołączenie go z srv2. Ponieważ cała operacja będzieniewidoczna dla użytkownika, jedynym efektem tej kon guracji będzie zwiększona dostępnośćzdalnego katalogu. Mechanizm ten można połączyć z wykorzystaniem wzorca *:

* srv1:/home/& srv2:/home/&

W tym przypadku katalogi domowe będą pobierane z serwera srv1 lub z serwera srv2.

1.4.2 Wielokrotne montowanieIstnieje możliwość montowania jednocześnie wielu podkatalogów ze zdalnych serwerów. Otoprzykład takiej kon guracji:

bin /i586 srv1:/usr/bin /x86_64 srv2:/usr/bin

Katalog bin będzie w tym przypadku zawierał dwa podkatalogi i586 oraz x86_64, które będą do-łączane z serwerów srv1 i srv2.

1.5 NFSv4

1. Upewnij się, że jest zainstalowany pakiet nfs-kernel-server.

2. Przykładowa zawartość pliku /etc/exports w przypadku serwera NFSv4:

Page 13: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

1.5 NFSv4 12

/kat1 *(rw,fsid=0,no_subtree_check)

3. Kon guracja odwzorowań nazw użytkowników— plik /etc/idmapd.conf(5):

[General]Verbosity = 1Pipefs-Directory = /var/lib/nfs/rpc_pipefsDomain = cs.put.poznan.pl

[Mapping]Nobody-User = nobodyNobody-Group = nobody

Odwzorowania nazwużytkownikówmuszą być skon gurowane zarówno po stronie serwerajak i klienta.

4. Uruchomienie usługi idmapd (po stronie serwera i klienta):

# mount -t rpc_pipefs rpc_pipefs /var/lib/nfs/rpc_pipefs# rpc.idmapd

lub w wersji ostatecznej po stronie klienta:

# service nfs start

5. Uruchomienie serwera NFS:

# rpc.mountd# rpc.nfsd# rpc.statd

lub korzystając ze standardowego skryptu startowego:

# service nfsserver start

6. Montowanie:

# mount -t nfs4 srv:/ /mnt

7. Monitorowanie nfsstat.

8. Rekon guracja serwera jest możliwa z użyciem komendy exportfs(8):

# exportfs -r

Powyższe polecenie umożliwia również dynamiczne dodawanie i usuwanie katalogów prze-znaczonych do udostępnienia, co ilustruje poniższy przykład:

# exportfs <== działa analogicznie do showmount -e/usr 192.168.0.0/255.255.255.0/home *.cs.put.poznan.pl/home lab?.cs.put.poznan.pl# exportfs -u ’*.cs.put.poznan.pl:/home’# exportfs -v/usr 192.168.0.0/255.255.255.0(rw,async,wdelay,root_squash)# exportfs -o ro lab1.cs.put.poznan.pl:/home# exportfs -v/usr 192.168.0.0/255.255.255.0(rw,async,wdelay,root_squash)/home lab1.cs.put.poznan.pl(ro,async,wdelay,root_squash)

Przełącznik -u umożliwia usuwanie katalogu z listy udostępnianych katalogów. Przełącznik-v włącza wyświetlanie dodatkowych informacji (np. opcji eksportowania katalogu). Prze-łącznik -o powoduje ustawienie opcji eksportowanego katalogu.

9. Udostępnianie kilku różnych katalogów:

Page 14: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

1.5 NFSv4 13

/kat1 *(rw,fsid=0,no_subtree_check)/kat1/ext1 *(rw,nohide,no_subtree_check)/kat1/ext2 *(rw,nohide,no_subtree_check)

Montowanie zewnętrznych katalogów do katalogu eksportowanego na serwerze:

# mount --bind /usr/local /kat1/ext1# mount --bind /images /kat1/ext2

Montowanie katalogu po stronie klienta:

# mount -t nfs4 srv:/ext1 /mnt# mount -t nfs4 srv:/ext2 /mnt2

10. Kon guracja usługi automontera: dodatkowa opcja -fstype=nfs4.

11. Eksportowanie katalogów jednocześnie w trybie NFSv4 i NFSv3.

12. NFSv3/NFSv4 a ACL.

DokumentacjaStronypomocy systemowej: mount(8), nfs(5), autofs(5), autofs(8), automount(8), auto.master(5).

Inne:

• http://www.novell.com/coolsolutions/feature/17581.html

Zadania1. Dołącz wybrany system plików z dyskietki lub CD-ROMu do katalogu /mnt.

2. Dołącz wybrany system plików NFS do katalogu /mnt.

3. Skon guruj serwer NFS udostępniając przykładowy katalog, np. /test. Udostępnij katalogw trybie do odczytu, a następnie do zapisu dla wybranych komputerów. Zwery kuj możli-wość zapisu w katalogu zdalnym z poziomu użytkownika root i zwykłego użytkownika.

4. Sprawdź odporność klienta systemuNFS na przejściowe awarie serwera. W tym celu zatrzy-maj na chwilę działanie procesów serwera NFS.

5. Sprawdź różnicę między trybami pracy dołączania zdalnego katalogu: hard, soft i połącze-nie hard,intr.

6. Sprawdź działanie pamięci podręcznej po stronie klienta NFS. W tym celu jednocześnie wy-świetlaj zawartość katalogu po stronie klienta i zmieniaj ją po stronie serwera. Ćwiczeniewykonaj również po całkowitym wyłączeniu mechanizmu pamięci podręcznej dla metada-nych (opcja noac).

7. Skon guruj serwer NFS do pracy w trybie statycznego mapowania użytkownika ze stacjiroboczej o identy katorze 1500 na użytkownika o tej samej nazwie i identy katorze 1600po stronie serwera. Zastosuj mapowanie statyczne i dynamiczne.

8. Sprawdź bieżącą kon gurację katalogów automontera: /a/local, /a/mail.

9. Skon guruj oprogramowanie automontera tak, aby umożliwiało dołączanie systemów pli-ków z napędów CD-ROM i zdalnego katalogu poprzez system plików NFS.

10. Sprawdź możliwość zwiększania niezawodności dostępu do replikowanych danych poprzezodpowiednią kon gurację automontera.

Page 15: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

2Pakiet Samba

2.1 Klient protokołu SMB/CIFS

1. Wyświetlenie zasobów w otoczeniu sieciowym komendą findsmb(1):

# findsmbIP ADDR NETBIOS NAME WORKGROUP/OS/VERSION-------------------------------------------------------------------192.168.0.45 GALIO [MYGROUP] [Windows 5.0] [Windows 2000]192.168.0.1 SIRIUS +[MYGROUP] [Unix] [Samba 3.5.4]

oraz komendą smbtree(1):

# smbtree -bEnter root’s password:MYDOMAIN

\\galio Samba Server\\galio\pub\\galio\IPC$ IPC Service (Samba Server)

# smbtree -b -U student

2. Testowanie nazw wymaga uruchomienia serwera nazw protokołu NetBIOS:

# service nmb start

3. Odpytywanie nazw nmblookup(1):

# nmblookup galioquerying galio on 192.168.0.255192.168.0.1 galio<00>

4. Wyświetlanie listy zasobów zdalnego systemu:

# smbclient -L galioadded interface ip=192.168.0.1 bcast=192.168.0.255 nmask=255.255.255.0Password: ********Domain=[MYDOMAIN] OS=[Unix] Server=[Samba 3.5.6]

Sharename Type Comment--------- ---- -------IPC$ IPC IPC Service (Samba 3.5.6)ADMIN$ Disk IPC Service (Samba 3.5.6)

Page 16: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

2.2 Serwer protokołu SMB/CIFS 15

hp Printer HP LaserJet 5MP Postscriptpub Disk Katalog testowy

Server Comment--------- -------DCS-CSL Samba 3.5.6

Workgroup Master--------- -------MYDOMAIN

5. Operacje na zdalnym zasobie:

# smbclient //galio/pub -U wojtekEnter wojtek’s password:Domain=[MYDOMAIN] OS=[Unix] Server=[Samba 3.5.6]smb: \> help...smb: \> ls...

a) Pobierz wybrany plik ze zdalnego katalogub) Wstaw nowy plik z lokalnego systemuc) Załóż nowy katalogd) Przetestuj obsługę polskich liter w nazwach plików i katalogów

6. Przetestuj obsługę zdalnego katalogu w przeglądarce Konqueror wpisując odpowiedni adresURI, np.:

smb://galio/pub

7. Podmontuj zdalny katalog do lokalnego systemu plików:

# mount -t cifs -o username=wojtek //galio/pub /mnt

8. Zapoznaj się z programem smb4k(1).

2.2 Serwer protokołu SMB/CIFS

2.2.1 Uruchomienie1. Przygotuj prosty plik kon guracyjny serwera /etc/samba/smb.conf(5):

[global]workgroup = MYGROUPpassdb backend = smbpasswdserver string = Serwer testowy

[abc]path = /tmp/abcwritable = yesbrowsable = yes

2. Uruchom serwer:

# service smb start

3. Ustaw hasło dla protokołu SMB/CIFS dla użytkownika komendą smbpasswd(8):

Page 17: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

2.2 Serwer protokołu SMB/CIFS 16

# smbpasswd -a wojtek

lub komendą pdbedit(8):

# pdbedit -a wojtek

Hasła są zapisywane do pliku /etc/samba/smbpasswd lub do pliku /etc/samba/passdb.tdb,gdy opcja passdb backendma wartość tdbsam.

4. Odwołaj się do zasobu programem smbclient testując możliwość zapisu w zdalnym kata-logu.

2.2.2 Kompatybilność systemów Unix/Windows1. Przetestuj obsługę rozróżnieniamałych/wielkich liter tworząc po stronie systemuUnix pliki:

a.txtA.txt

z różną zawartością. Sprawdź dostępność tych plików poprzez protokół SMB/CIFS.

2. Przetestuj obsługę atrybutu ukryty tworząc po stronie systemu Unix plik zaczynający się odkropki. Dodaj do kon guracji zasobu parametr hide files:

[abc]path = /tmp/abchide files = /*.tmp/q*/

Inne opcje tego typu: hide special files, hide unreadable, hide unwritable files.

3. Sprawdź mapowanie atrybutu archive. Opcje kontrolujące mapowanie: map archive, mapreadonly, map system.

4. Przetestuj możliwość składowania atrybutów systemu DOS jako rozszerzonego atrybutu wsystemie Unix. Wymaga to dodania globalnej opcji kon guracyjnej:

store dos attributes = yes

Po podłączeniu do serwera atrybuty można ustawiać komendą setmode, np.:

smb: \> setmode test.txt +h

5. Opcje kontrolowania praw dostępu do nowotworzonych plików/katalogów:

create mask = 0700directory mask = 0770force create mode = 0660force directory mode = 0660force user = wojtekforce group = staff

2.2.3 Kontrola dostępu1. Przetestuj mechanizmy ograniczania dostępu do zasobu:

[abc]path = /tmp/abchosts allow = 192.168.0.2 \

10.0.0.0/255.255.255.0 \@staff

hosts deny = ALLvalid users = wojtek, basiainvalid users = root

Page 18: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

2.3 Kontroler domeny 17

read list = wojtekwrite list = basia

2. Ukrywanie plików:

veto files = /*.bak/.*/

2.2.4 Monitorowanie serwera1. Przetestuj działanie programu smbstatus(1) z przełącznikami -b, -d, -p.

2. Przetestuj działanie komendy net(8):

# net status sessionsPID Username Group Machine-------------------------------------------------------------------------8874 inf12345 students lab-43-3 (::ffff:150.254.131.104)8930 inf54321 students lab-43-2 (::ffff:150.254.131.103)

3. Sprawdź poprawność kon guracji programem testparm(1).

2.2.5 Program administracyjny SwatProgram swat jest serweremusługiWWWumożliwiającymgra czne zarządzanie serweremSamba.Uruchomienie usługi wymaga dodania odpowiednich zapisów do kon guracji serwerów inetd lubxinetd. W przypadku serwera inetd należy dodać następującą linię do pliku /etc/inetd.conf:

swat stream tcp nowait.400 root /usr/sbin/swat swat

Wprzypadku serwera xinetd należy dodać plik kon guracyjny /etc/xinetd.d/swat z następującązawartością:

service swat{

socket_type = streamprotocol = tcpwait = nouser = rootserver = /usr/sbin/swatonly_from = 127.0.0.1log_on_failure += USERIDdisable = no

}

Po rekon guracji należy poinformować serwery o zmianie wykonując jedną z komend:

# service inetd reload# service xinetd reload

Dostęp do aplikacji swat jest możliwy poprzez przeglądarkę pod adresem http://localhost:901/.

2.3 Kontroler domeny

W poniższym opisie „PDC” oznacza kontroler domeny a „WS” stację roboczą.

1. PDC: Przygotuj kon gurację kontrolera domeny:

[global]workgroup = MYDOMAIN

Page 19: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

2.3 Kontroler domeny 18

security = userpassdb backend = smbpasswd

os level = 33local master = yespreferred master = yes

domain logons = yesdomain master = yeslogon script = login.batlogon path = \\%L\%U\WinProfilelogon drive = Q:

[netlogon]path = /var/lib/samba/netlogoncomment = Skrypty logowaniawritable = no

[homes]comment = Katalogi domowebrowseable = nowritable = yes

Nowa kon guracja wymaga restartu usług nmb i smb.

2. PDC: Założenie konta maszynowego dla każdej stacji roboczej, która będzie dołączana dodomeny. Konto maszynowe ma taką nazwę jak nazwa komputera z dodanym znakiem „$”na końcu:

# useradd ’galio$’

3. PDC:Ustawienie hasła dla administratora sieci SMB/CIFS na kontrolerze domeny czyli użyt-kownika, który ma prawo mody kować plik z hasłami:

# pdbedit -a root

4. WS: Dodanie stacji roboczych Windows do domeny wymaga wpisania nazwy domeny wustawieniach nazwy komputera i uwierzytelnienia kontem administratora domeny. Doda-nie komputera powoduje zainicjowanie hasła na koncie maszynowym.

Uwaga: Dodanie systemuWindows 7dodomenywymagawcześniejszego zaaplikowania drob-nej zmiany kon guracji w rejestrze. Odpowiednia mody kacja jest wskazana w pliku Win7_Samba3DomainMember.reg dołączonym do pakietu Samba (katalog /usr/share/doc/packages/samba/registry).

5. WS: Dodanie uniksowej stacji roboczej do domeny wymaga mody kacji pliku kon guracyj-nego smb.conf:

[global]workgroup = MYDOMAINsecurity = domain

Następnie należy wykonać komendę:

# net rpc join -U root

gdzie root jest administratorem sieci SMB/CIFS.

6. PDC: Założenie kont dla użytkowników. Każdy użytkownik musi mieć zde niowane za-równo konto uniksowe, jak i hasło dla protokołu SMB:

Page 20: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

2.4 Pakiet Winbind 19

# useradd -m wojtek# pdbedit -a wojtek

Przełącznik -m powoduje utworzenie katalogu domowego użytkownika.

7. WS: Założenie kont uniksowych dla użytkowników na stacji roboczej:

# useradd wojtek

8. PDC: Zde niowanie mapowania grup użytkowników na kontrolerze domeny:

# net groupmap add unixgroup=users ntgroup=”Domain Users” rid=513

Powyższa komenda spowoduje utworzenie grupy Domain Users, której członkami będą użyt-kownicy należący do uniksowej grupy users. Parametr rid=513 powoduje odwołanie do pre-de niowanej grupy. Inne prede niowane wartości RID (relative identi er) są podane w ta-beli 2.1. Aktualne odwzorowania grup można wyświetlić komendą list:

# net groupmap listDomain Users (S-1-5-21-3998994985-691964950-3499818267-513) -> users...

9. PDC: Przygotowanie skryptu startowego login.bat:

@echo offnet use X: \\galio\pubstart iexplore.exe

Skrypt do logowania powinien być poprawnym plikiem tekstowym dla systemówWindows(zakończenia linii). Plik taki można przygotować edytorem vim, po wykonaniu komendy:set fileformat=dos.

2.4 PakietWinbind

Pakiet Samba umożliwia bezpośrednie pobieranie informacji o użytkownikach z serwera PDC bezkonieczności tworzenia użytkowników w systemie Unix. Funkcjonalnie jest to rozwiązanie analo-giczne do systemów LDAP czy NIS.

Uwaga: Podczas kon guracji oprogramowania winbind trzeba wyłączyć usługę nscd (buforowanieinformacji katalogowych).

2.4.1 Kon guracjaKon guracja stacji roboczej, która ma być dołączona do kontrolera domeny wymaga wykonanianastępujących czynności:

1. Uzupełnij kon gurację w pliku smb.conf o ustawienia dla oprogramowania winbind:

[global]..idmap uid = 10000-20000idmap gid = 10000-20000winbind enum users = yeswinbind enum groups = yestemplate homedir = /home/%Utemplate shell = /bin/bash

gdzie %U oznacza nazwę użytkownika.

Page 21: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

2.4 Pakiet Winbind 20

Tab. 2.1: Wybrane prede niowane wartości RID

Nazwa RID Typ IstotnośćDomain Administrator 500 userDomain Guest 501 userDomain Admins 512 group krytycznaDomain Users 513 group krytycznaDomain Guests 514 group krytycznaDomain Computers 515 groupDomain Controllers 516 groupBuiltin Admins 544 aliasBuiltin Users 545 aliasBuiltin Guests 546 alias

2. Usuń lokalne konto uniksowe wojtek:

# userdel -r wojtek

3. Uruchom usługęWinbind:

# service winbind start

Poprawność pracy serwera winbind można sprawdzić programem wbinfo(1) pobierającyminformacje z tego serwera. Zakładając dołączenie do domeny MYDOMAIN:

# wbinfo -uMYDOMAIN\rootMYDOMAIN\wojtek# wbinfo -gMYDOMAIN\Domain Users

4. Zmody kujwskazania na źródła informacji o użytkownikachw systemiewpliku /etc/nsswitch.conf(5):

passwd: files winbindgroup: files winbind

Poprawność kon guracji przełącznika usług katalogowych (plik /etc/nsswitch.conf)możnasprawdzić wykonując komendę getent:

# getent passwd...MYDOMAIN\rootMYDOMAIN\wojtek

która powinna zwrócić listę wszystkich użytkowników: systemowych i pobranych z PDC.

5. Zmody kuj kon gurację modułów PAM:

auth sufficient pam_unix2.soauth required pam_winbind.so use_first_pass

Podczas logowania należy podać całą nazwę użytkownika, łącznie z domeną, np. MYDO-MAIN\wojtek.Odwoływanie się do użytkowników domenowych może być uproszczone poprzez przyjęciedomyślnej nazwy domeny przez oprogramowaniewinbind. Wymaga to ustawienia dodatko-wej opcji w sekcji [global]:

winbind use default domain = yes

Page 22: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

2.4 Pakiet Winbind 21

2.4.2 Katalogi domowe użytkowników uniksowych

2.4.2.1 Moduł pam_mkhomedir

Najprostszym rozwiązaniem jest tworzenie nowych katalogów domowych „w locie” z wykorzysta-niem modułu pam_mkhomedir. Kon guracja modułu wymaga dodania do odpowiedniego pliku zkatalogu /etc/pam.d zapisu:

session required pam_mkhomedir.so skel=/etc/skel umask=0022

Nowsze wydania pakietu modułu pam_winbind posiadają wbudowaną funkcjonalność tworzeniakatalogówdomowych. Wcelu jej aktywacji należy zmody kować plik /etc/security/pam_winbind.conf(5) ustawiając opcję:

mkhomedir = yes

Dodatkowo należy aktywować moduł PAM w trybie session:

session optional pam_winbind.so

Kon guracja w pliku pam_winbind.conf pozwala m.in. na wymuszenie przynależności do określo-nej grupy:

require_membership_of = MYDOMAIN\Staff

2.4.2.2 Moduł pam_mount

Katalogi domowe użytkowników mogą być automatycznie dołączane z kontrolera domeny za po-średnictwem modułu PAM o nazwie pam_mount. Wymaga go kon guracji odpowiedniego modułuPAM:

auth optional pam_mount.soauth sufficient pam_unix2.so use_first_passauth required pam_winbind.so use_first_pass

session required pam_unix2.sosession optional pam_mount.so

Moduł pam_mountwymaga również wskazania katalogów, które powinny zostać dołączone. Wska-zanie to jest zapisane w pliku /etc/security/pam_mount.conf.xml(5):

<volume fstype=”cifs”server=”server_name”path=”%(USER)”mountpoint=”/home/%(USER)” />

Działanie modułu można ograniczyć do wybranych użytkowników, np. członków grupy users, abyuniknąć m.in. dołączania katalogu domowego użytkownika root:

<volume pgrp=”users”fstype=”cifs”... />

W przypadku problemów można włączyć tryb diagnostyczny modułu dodając do pliku kon gura-cyjnego zapis:

<debug enable=”1” />

Uwaga: kon guracja modułu pam_mount wymaga stosowania skróconych nazw użytkownikówz pominięciem nazwy domeny, co wymaga dodania na stacji robczej poniższego wpisu do pliku

Page 23: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

2.6 Moduły VFS 22

smb.conf:

winbind use default domain = yes

2.5 Synchronizacja haseł

Moduł PAM pam_smbpass umożliwia synchronizację haseł uniksowych i SMB podczas zmiany ha-sła uniksowego (komendą passwd). Wymaga to aktywowania modułu w pliku PAM dla usługi pas-swd:

password required pam_unix2.sopassword optional pam_smbpass.so use_authtok

Dodatkowo migrację haseł uniksowych do haseł SMB można przeprowadzić dodając wpis:

auth optional pam_smbpass.so use_firstpass migrate

Synchronizację w drugą stronę zapewniają odpowiednie wpisy w pliku kon guracyjnym smb.conf:

unix password sync = yespam password change = yes

2.6 Moduły VFS

2.6.1 Moduł full_auditPrzykład kon guracji:

[example]path = /tmpwritable = yesvfs objects = full_auditfull_audit:prefix = %u|%Ifull_audit:success = open opendirfull_audit:failure = open opendirfull_audit:facility = LOCAL7full_audit:priority = ALERT

2.6.2 Moduł recyclePrzykład kon guracji:

[example]path = /tmpwritable = yesvfs objects = recycle

Po usunięciu pliku tworzony jest podkatalog .recycle.

Page 24: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

3Systemy plików

3.1 Interfejs loop

Utworzenie systemu plików w pliku:

# dd if=/dev/zero of=disk.img bs=4k count=2560# losetup /dev/loop0 disk.img# losetup -a/dev/loop0: [0804]:2384574 (/home/student/disk.img)# mkfs.ext4 /dev/loop0mke2fs 1.41.14 (22-Dec-2010)Filesystem label=OS type: LinuxBlock size=1024 (log=0)# mount /dev/loop0 /mnt# ls /mntlost+found# df -h /mnt# umount /mnt# losetup -d /dev/loop0

Można posługiwać się urządzeniami loop pośrednio:

# mkfs.ext4 -F disk.imgmke2fs 1.41.14 (22-Dec-2010)...# mount -o loop disk.img /mnt

3.2 Przegląd wybranych systemów plików

3.2.1 NTFS# losetup /dev/loop0 disk.img# mkfs.ntfs /dev/loop0# mount -t ntfs /dev/loop0 /mnt# touch /mnt/test.txttouch: cannot touch ‘/mnt/test.txt’: Permission denied

Page 25: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

3.3 Rozszerzone atrybuty, metadane 24

Zastosowanie ntfs-3g:

# umount /mnt# mount -t ntfs-3g /dev/loop0 /mnt# touch /mnt/test.txt

Z poziomu zwykłego użytkownika:

# mkdir dir# ntfs-3g disk.img dir# ls dir# umount dir

3.2.2 SquashFSSquashFS to system plików tylko do odczytu z kompresją i deduplikacją. Przykład zastosowania:

# mksquashfs dir disk.img# mount -o loop disk.img /mnt

Zadania

1. Sprawdź działanie mechanizmu kompresji umieszczając w pakowanym katalogu duży pliktekstowy o powtarzającym się wzorcu.

2. Sprawdź obsługę dowiązań: symbolicznych i twardych. Zobacz jak na rozmiar wynikowegosystemu plików wpływają dodatkowe dowiązania. Do testów zastosuj plik o losowej zawar-tości lub wyłącz kompresję podczas tworzenia systemu plików:

# dd if=/dev/urandom of=out.dat bs=4k count=2560# mksquashfs dir disk.img -noD

3. Przetestuj działaniemechanizmu deduplikacji poprzez umieszczenie w katalogu 2 kopii tegosamego pliku.

3.3 Rozszerzone atrybuty, metadane

3.3.1 xattrPrzestrzenie nazw: system (ACL), security (SELinux), trusted, user (dowolne zastosowanie). Akty-wacja mechanizmu:

# mount -o user_xattr /dev/sda8 /mnt

Ustawienie atrybutu:

# setfattr -n user.atr1 -v 10 test.txt# getfattr -d test.txt# file: test.txtuser.atr1=”10”

Ograniczenia na rozmiar rozszerzonych atrybutów:

• ext2, ext3, ext4: pojedynczy blok dyskowy,

• XFS, ReiserFS: brak limitów,

• JFS: 255 bajtów na nazwę i 65535 na wartość.

Page 26: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

3.5 Systemy plików w pamięci 25

Więcej informacji można znaleźć na stronach pomocy systemowej: attr(5), setfattr(1), get-fattr(1). Zobacz również zalecenia odnośnie stosowania rozszerzonych atrybutów.

3.3.2 NTFSDodatkowe strumienie nazwane NTFS:

# ntfs-3g -o streams_interface=windows disk.img dir# echo ”hello” > dir/test.txt# echo ”hello2” > dir/test.txt:inny# ls dirtest.txt# cat dir/test.txthello# cat dir/test.txt:innyhello2# vi dir/test.txt:inny# rm dir/test.txt:inny

Strumienie w systemie Windows:

c:\tmp> echo ”hello” > test.txtc:\tmp> echo ”hello2” > test.txt:innyc:\tmp> more test.txtc:\tmp> more < test.txt:innyc:\tmp> streams test.txtStreams v1.56 - Enumerate alternate NTFS data streamsCopyright (C) 1999-2007 Mark RussinovichSysinternals - www.sysinternals.com

C:\tmp\test.txt::inny:$DATA 25

Program streams jest dostępny pod adresem http://live.sysinternals.com/ i opisany na stronach http://www.sysinternals.com/.

3.4 Zmiana rozmiaru systemu plików

1. Utwórz system plików w pliku, utwórz kilka plików w nim i odmontuj. Następnie powiększrozmiar pliku przechowującego system plików:

# dd if=/dev/zero of=disk.img oflag=append conv=notrunc bs=4k count=2560

2. Zmień rozmiar systemu plików:

# resize2fs disk.img

3. Po ponownym zamontowaniu sprawdź rozmiar systemu plików.

4. Wykonaj analogiczne ćwiczenie dla systemu plików ReiserFS.

5. Spróbuj zmniejszyć plik z systemem plików do rozmiaru 5 MB.

3.5 Systemy plikóww pamięci

1. System plików ramfs:

Page 27: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

3.6 UnionFS 26

# mount -t ramfs -o size=100m ramfs /mnt# df -h /mnt# dd if=/dev/zero of=/mnt/outCtrl-c

2. System plików tmpfs:

# mount -t tmpfs -o size=100m none /mnt# df -h /mnt# dd if=/dev/zero of=/mnt/out# umount /mnt# mount -t tmpfs -o size=150% none /mnt# df -h /mnt

3.6 UnionFS

A w zasadzie UnionFS-FUSE.

1. Stwórz katalogi /tmp/ro1, /tmp/ro2, /tmp/rw oraz /tmp/union. Katalogi /tmp/ro1 i /tmp/ro2 będą zawierać dane, które nie będąmody kowane i które będą dostępne poprzez katalog/tmp/union. Mody kacje mają tra ać do katalogu /tmp/rw. W katalogach stwórz po kilkaprzykładowych plików z różną zawartością, np.:

/tmp├── ro1│ ├── a.txt│ ├── b.txt│ └── c.txt├── ro2│ ├── b.txt│ └── d.txt└── rw

├── c.txt└── e.txt

2. Podmontuj wszystkie katalogi źródłowe do /tmp/union:

# unionfs /tmp/rw=RW:/tmp/ro2=RO:/tmp/ro1=RO /tmp/union

i sprawdź zawartości poszczególnych plików. Przetestuj możliwość tworzenia nowych pli-ków i mody kacji istniejących.

3. Podmontuj wszystkie katalogi źródłowe z opcją cow (ang. copy on write) i ponownie przete-stuj możliwość mody kacji plików:

# unionfs -o cow /tmp/rw=RW:/tmp/ro2=RO:/tmp/ro1=RO /tmp/union

4. Przetestuj zachowanie systemu plików po usunięciu pliku z niemody kowalnej części:

# rm /tmp/union/c.txt# ls -la /tmp/union# tree -a /tmp/{rw,ro*}

Ćwiczenie wykonaj dla systemu plików montowanego z i bez opcji cow.

5. Przetestuj mody kacje przeprowadzane na systemie plików łączącym kilka mody kowal-nych systemów plików:

# unionfs /tmp/rw2=RW:/tmp/rw=RW:/tmp/ro1=RO /tmp/union

Page 28: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

3.7 Logical Volume Manager 27

6. Stwórz system plików w pliku zawierający kopię katalogu /etc zapisaną w systemie plikówsquashfs. Udostępnij ją w poprzez unionfs w taki sposób, aby zmiany tra ały do systemuplików w pamięci.

3.7 Logical VolumeManager

Pojęcia: zyczny wolumin (ang. physical volume), logiczny wolumin (ang. logical volume), grupa wo-luminów (ang. volume group), zyczny obszar/blok (ang. physical extent).

3.7.1 HOWTO1. Utwórz 3 nowe dyski wirtualne o rozmiarach 1 GB i podłącz je do kontrolera SATA.

2. Załóż partycje podstawowe typu LVM na wszystkich dyskach.

3. Utwórz zyczne woluminy komendą pvcreate(8):

# pvcreate /dev/sdb1 /dev/sdc1 /dev/sdd1

4. Utwórz komendą vgcreate(8) grupę woluminów o nazwie vg0, korzystającą z obu dysków:

# vgcreate vg0 /dev/sdb1 /dev/sdc1

a następnie sprawdź ich istnienie komendami vgs(8) i vgdisplay(8).

# vgsVG #PV #LV #SN Attr VSize VFreevg0 2 0 0 wz--n- 1.98G 1.98G

# vgdisplay vg0...

5. Utwórz logiczny wolumin dane za pomocą komendy lvcreate(8):

# lvcreate -L 64M -n dane vg0

6. Utwórz komendą mkfs.ext3(8) system plików na woluminie dane i zamontuj go:

# mkfs.ext3 /dev/vg0/dane# mount /dev/vg0/dane /mnt

7. Zwiększ rozmiar woluminu logicznego (komenda lvextend(8)):

# lvextend -L+64M /dev/vg0/dane# resize2fs /dev/vg0/dane

Wykonaj operację odwrotną.

3.7.2 Funkcje zaawansowane1. Przetestuj dodawanie nowych dysków (komenda vgextend(8)) i usuwanie nieużywanych z

grupy (komenda vgreduce(8)):

# vgextend vg0 /dev/sdd1# vgreduce vg0 /dev/sdc1

2. Migawki

# lvcreate -L 64M -s -n dane_snap /dev/vg0/dane# mount /dev/vg0/dane_snap /mnt2

Migawka tylko do odczytu:

Page 29: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

3.7 Logical Volume Manager 28

# lvcreate -L 64M -s -n dane_snap -p r /dev/vg0/dane

3. RAID0

# lvcreate -i 2 -L 64M -n raid0 vg0

Zwróć uwagę na liczbę obszarów (PE), które zajmuje tak utworzony wolumin logiczny (ko-menda pvdisplay).

4. RAID1

# lvcreate -m1 --mirrorlog core -L 64M -n raid1 vg0

Posiadając 3 dyski można utworzyć trwały log:

# lvcreate -m1 -L 64M -n raid1 vg0

5. Przenoszeniewoluminów logicznychpomiędzy zycznymiwoluminami (komenda pvmove(8)):

# pvdisplay /dev/sdb1...

Total PE 254Free PE 240Allocated PE 14

...# pvmove -v -n dane /dev/sdb1 /dev/sdc1# pvdisplay /dev/sdb1...

Total PE 254Free PE 254Allocated PE 0

...# pvmove -v /dev/sdc1 su

3.7.3 Migracja grupy woluminów do innego systemu1. Odmontuj system plików logicznego woluminu.

2. Deaktywuj grupę woluminów komendą vgchange(8):

# vgchange -a n vg0

3. Eksportuj (uczyń niewidoczną w systemie) grupę woluminów komendą vgexport(8):

# vgexport vg0

4. Skopiuj wirtualne dyski do drugiego systemu.

5. Importuj zyczne woluminy w nowym systemie komendą vgimport(8):

# vgimport vg0

6. Aktywuj grupę woluminów:

# vgchange -a y vg0

7. Zamontuj system plików.

3.7.4 YaST# yast disk# yast lvm_config

Page 30: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

3.8 Btrfs 29

Materiały

Więcej informacji na temat LVMmożna znaleźć w [LVM08] oraz na stronach pomocy systemowej:lvm(8).

3.8 Btrfs

3.8.1 Podstawy1. Założenie systemu plików:

# dd if=/dev/zero of=disk.img bs=1k count=300k# losetup /dev/loop0 disk.img# mkfs.btrfs /dev/loop0

2. Woluminy wewnętrzne

# btrfs subvolume create /mnt/myvol# touch /mnt/myvol/test.txt

Montowanie

# umount /mnt# mount -o subvol=myvol /dev/loop0 /mnt# ls /mnt

3. Kopie migawkowe

# btrfs subvolume snapshot /mnt/myvol /mnt/myvol.save# umount /mnt# mount -o subvol=myvol /dev/loop0 /mnt

4. Usuwanie woluminów i kopii migawkowych:

# btrfs subvolume delete /mnt/myvol

3.8.2 System plików na wielu urządzeniach1. Tworzenie

# dd if=/dev/zero of=disk2.img bs=1k count=300k# losetup /dev/loop1 disk2.img# mkfs.btrfs /dev/loop0 /dev/loop1# mount /dev/loop0 /mnt# df -h /mnt# umount /mnt# mount /dev/loop1 /mnt

2. Dodawanie nowych partycji

# mkfs.btrfs /dev/loop0# mount /dev/loop0 /mnt# df -h /mnt# btrfs filesystem show

Nowa partycja:

# btrfs device add /dev/loop1 /mnt# df -h /mnt# btrfs filesystem show

Page 31: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

3.8 Btrfs 30

Równoważenie obciążenia:

# btrfs filesystem balance start /mnt# btrfs filesystem show

Usuwanie partycji:

# btrfs device delete /dev/loop1 /mnt

3.8.3 Konwersja z ext3/ext4# btrfs-convert /dev/loop0

3.8.3.1 Dokumentacja

Wiki

3.8.4 Snapper1. Instalacja pakietów snapper i yast2-snapper.

2. Utworzenie domyślnej kon guracji:

# snapper -c root create-config /# snapper list-configs

3. Lista kopii migawkowych:

# snapper list

4. Wprowadź testową zmianę kon guracji (włączenie SysReq):

# yast2 system_settings

5. Lista kopii migawkowych:Type | # | Pre # | Date | Cleanup | Description |-------+---+-------+---------------------------------+---------+----------------------+single | 0 | | | | current |pre | 1 | | Wed 30 Nov 2011 01:15:30 PM CET | number | yast system_settings |post | 2 | 1 | Wed 30 Nov 2011 01:16:03 PM CET | number | |

6. Lista zmian:

# snapper status 1..2c... /etc/sysctl.conf

Zmiany w plikach:

# snapper diff 1..2--- /.snapshots/1/snapshot/etc/sysctl.conf 2011-11-30 01:10:43.355493753 +0100+++ /.snapshots/2/snapshot/etc/sysctl.conf 2011-11-30 01:16:00.019512185 +0100@@ -17,7 +17,7 @@# See sysctl.conf(5) and sysctl(8) for more information#####-kernel.sysrq = 0+kernel.sysrq = 1net.ipv4.ip_forward = 0net.ipv4.tcp_syncookies = 1net.ipv6.conf.all.forwarding = 0

7. Utworzenie swojej kopii migawkowej:

Page 32: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

3.8 Btrfs 31

# snapper create --description ”mój test”# snapper list

8. Przejrzyj katalog /.snapshots.

Page 33: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

4Storage

4.1 Dyski

1. Identy kacja dysków

/dev/disk/by-id/dev/disk/by-path/dev/disk/by-uuid

2. Etykiety

# e2label /dev/sdaX etykieta# tune2fs -L etykieta /dev/sdaX# mkswap -L etykieta /dev/sdaX# mount LABEL=etykieta /mnt

3. Plik /etc/fstab

/dev/sda3 /mnt ext4 noauto 0 0LABEL=etykieta /mnt ext4 noauto 0 0/dev/disk/by-id/scsi-SATA_ST3500418AS_9VMJX8KS-part1 /mnt ext4 noauto 0 0

4.2 iSCSI

Nomenklatura:

• serwer: target

• klient: initiator

4.2.1 Target1. Zainstaluj pakiet: tgt.

2. Przygotuj plik z obrazem dysku:

# dd if=/dev/zero of=/tmp/disk1.img bs=1M count=100

3. Uruchom oprogramowanie serwera:

Page 34: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

4.2 iSCSI 33

# service tgtd start

4. Stwórz nowy zasób:

# tgtadm --lld iscsi --mode target --op new --tid 1 \> --targetname iqn.2012-01.pl.put:disk1

5. Dodaj logical unit (LUN):

# tgtadm --lld iscsi --mode logicalunit --op new --tid 1 --lun 1 \> -b /tmp/disk1.img

6. Lista zasobów:

# tgtadm --lld iscsi --mode target --op show

7. Zezwolenie na dostęp z wybranych adresów IP:

# tgtadm --lld iscsi --mode target --op bind --tid 1 -I 192.168.1.0/24# tgtadm --lld iscsi --mode target --op bind --tid 1 -I ALL

8. Uwierzytelnianie (po wstępnym skon gurowaniu klienta):

a) lista uwierzytelnionych użytkowników:# tgtadm --lld iscsi --mode account --op show

b) nowy użytkownik:# tgtadm --lld iscsi --mode account --op new \> --user wojtek --password asdf

c) przypisanie użytkownika do zasobu:# tgtadm --lld iscsi --mode account --op bind --tid 1 --user wojtek

4.2.2 Initiator1. Zainstaluj pakiet open-iscsi.

2. Proces usługowy iscsid:

# service iscsid start

3. Discovery:

# iscsiadm -m discovery -t st -p 192.168.1.100192.168.1.100:3260,1 iqn.2012-01.pl.put:disk1

Lista zasobów (wcześniej odkrytych— katalog /etc/iscsi/nodes):

# iscsiadm -m node

Wyświetlenie kon guracji:

# iscsiadm -m node -T iqn.2012-01.pl.put:disk1node.name = iqn.2012-01.pl.put:disk1node.tpgt = 1node.startup = manual...

Opcjonalnie: pakiet isns (Internet Storage Naming Service ).

4. Login—powoduje utworzenie odpowiednich urządzeń:

# iscsiadm -m node -T iqn.2012-01.pl.put:disk1 --login

Wyświetlenie listy aktywnych sesji:

# iscsiadm -m session

Page 35: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

4.3 FreeNAS 34

5. Logout:

# iscsiadm -m node -T iqn.2012-01.pl.put:disk1 --logout

6. Lista dostępnych dysków:

# lsscsi[0:0:0:0] disk ATA ST9600225BQ 0001 /dev/sda[19:0:0:0] storage IET Controller 0001 -[19:0:0:1] disk IET VIRTUAL-DISK 0001 /dev/sdb

7. Przygotowanie systemu plików:

# fdisk /dev/sdb# mkfs.ext4 /dev/sdb1

8. Uwierzytelnianie wymaga uzupełnienia odpowiednich wpisów w pliku /etc/iscsid.conf:

node.session.auth.authmethod = CHAPnode.session.auth.username = wojteknode.session.auth.password = asdf

Więcej informacji: strona projektu http://www.open-iscsi.org, w szczególności README.

4.3 FreeNAS

1. Zainstaluj na maszynie wirtualnej FreeNAS pobierając obraz płyty instalacyjnej ze stronyhttp://sourceforge.net/projects/freenas/files/. Kon guracja maszyny powinna uwzględniać:

a) System operacyjny: FreeBSD w wersji 32-bitowej.b) Interfejs sieciowy powinien działać w trybie mostkowania.c) Dysk systemowy (ada0) powinien mieć rozmiar co najmniej 2 GB.d) Dyski z danymi (np. 2: ada1 i ada2) powinny mieć rozmiar co najmniej 4 GB.

2. Przejrzyj dokumentację projektu na stronach http://doc.freenas.org.

3. Zaloguj się do interfejsu zarządzającego pod adresem http://srvname i ustaw hasło dla admi-nistratora systemu (użytkownik admin). Następnie załóż nowe konto testowe w zakładceAccount.

4. Utwórz przykładowe wolumeny danych (zakładka Storage).

5. Załóż przykładowe wolumeny danych ZFS (ang. ZFS dataset).

6. Udostępnij wolumeny danych protokołami:

a) NFS (zakładka Sharing),b) CIFS (zakładka Sharing),c) rsync (zakładka Services),d) iSCSI (zakładka Services) — wymaga zde niowania: (device) extents, initiator, portal,

target oraz powiązań targets-extents.

Kon guracja poszczególnych podsystemów wymaga włączenia odpowiedniej usługi w za-kładce Services ▷ Control Services. Do udostępnionych woluminów odwołaj się następniekorzystając z odpowiedniego oprogramowania klienckiego.

Page 36: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

4.4 OpenFiler 35

4.4 OpenFiler

1. Zainstaluj OpenFiler pobierając obraz płyty instalacyjnej ze strony http://www.openfiler.com/community/download/.

2. Zaloguj się do interfejsu zarządzającego pod adresem https://srvname:446:

Username: openfilerPassword: password

3. Utwórz grupę wolumenów LVM a następnie przykładowe wolumeny danych.

4. Skon guruj grupy komputerów klienckich (zakładka System ▷ Network Access Con guration)oraz przykładowych użytkowników (zakładka Accounts).

5. Udostępnij wolumeny danych protokołami: NFS, CIFS, HTTP, rsync i iSCSI.

Page 37: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

Skorowidz

Aautomounter, 10

Bbtrfs, 29

Ggrupy sieciowe, 8

LLVM, 27

NNTFS, 25

Pplik kon guracyjny

attr, 25auto.master, 10exports, 7idmap.conf, 12netgroup, 8nsswitch.conf, 20pam_mount.conf.xml, 21pam_winbind.conf, 21smb.conf, 15

poleceniebtrfs, 29btrfs-convert, 30dd, 23, 25exportfs, 12findsmb, 14fuser, 6getfattr, 25killall, 8konqueror, 10losetup, 23lsof, 6

lvcreate, 27lvextend, 27mkfs.btrfs, 29mkfs.ext4, 23, 27mkfs.ntfs, 23mksquashfs, 24mount, 5net, 17nmblookup, 14pdbedit, 16pkill, 8pvcreate, 27pvmove, 28resize2fs, 25, 27rpcbind, 5rpc.ugidd, 10setfattr, 25showmount, 5smb4k, 15smbpasswd, 15smbstatus, 17smbtree, 14testparm, 17umount, 5unionfs, 26vgchange, 28vgcreate, 27vgdisplay, 27vgexport, 28vgextend, 27vgimport, 28vgreduce, 27vgs, 27wbinfo, 20

Page 38: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

Skorowidz 37

RRAID

RAID0, 28ramfs, 25

Ssnapper, 30SquashFS, 24

Ttmpfs, 26

UUnionFS, 26

WWebNFS, 10

Xxattr, 24

YYaST, 28

Page 39: CezarySobaniec - Poznań University of Technology · mount system_plików ... Przygotujprostyplikkonguracyjnyserwera /etc/samba/smb ... workgroup = MYGROUP passdb backend = smbpasswd

Bibliogra a

[LVM08] Red Hat, Inc. LVM Administrator’s Guide, May 2008.