Spis treści

Administrowanie kontami użytkowników i systemami plików

Prezes do asystenta:
Panie Grzesiu, proszę przegrać naszym partnerom wyniki za kwiecień, oni zaraz podejdą.
- Dzień dobry, czy to Panom mam przegrać wyniki miesięczne?
- Dzień dobry, tak, gdyby był Pan uprzejmy, tu mamy czystą dyskietkę.
- Ależ oczywiście…
Wkłada dyskietkę do napędu i…
# mkfs -t vfat -c /dev/fd0h1440
# mount -t vfat -o iocharset=iso8859-2,codepage=852 /dev/fd0 /mnt/floppy
# find / -noleaf -type f -name Wyniki_Kwiecień.[a-zA-Z] -exec cp ‘{ }’ /mnt/floppy \;
# ls -la /mnt/floppy/Wyniki_Kwiecień.[a-z][A-Z] && sync && sleep 3
wyciąga dyskietkę i podaje.
Partnerzy zadziwieni patrzą na monitor, na siebie:
- Ojej!
Asystent:
- O przepraszam, znowu zapomniałem odmontować.

DO_PRZYGOTOWANIA

Samodzielnie należy przed tym laboratorium przygotować:

WPROWADZENIE

Konta użytkowników

Większość istotnych informacji o użytkownikach jest przechowywana w poniższych plikach:

Narzędzia do modyfikowania kont. Podstawowe metody zakładania kont użytkowników:

Informacje o koncie można uzyskać przy pomocy poleceń takich jak id, groups.:

Raz założone konto można modyfikować na wiele sposobów:

Usuwanie kont i grup:

Istnieje kilka metod blokowania dostępu do konta:

Trzeba pamiętać, iż powyższe metody nie są skuteczne w przypadku sieciowych metod autoryzacji nie korzystających z haseł, np. rhosts.

Ręczne modyfikowanie konta: Bez narzędzi można administrować kontami poprzez modyfikowanie w.w. plików przez dowolny edytor tekstu, a najlepiej vipw i vigr.

Zarządzanie systemami plików

Zarządzanie systemami plików to między innym:

Na istniejącym urządzeniu specjalnym (np. dysku) można założyć nowy system plików przy pomocy polecenia mkfs. Użycie:

mkfs -t typ [-c] urzadzenie

Montowanie:

Składnia mount:

mount -t typ urządzenie punkt_montowania -o opcje

Odmontowywanie:

Sprawdzanie

Partycje swap:

Korzystanie z dyskietek

UserModeLinux

UML jest to proste lecz bardzo skuteczne rozwiązanie wirtualizatora, gdzie jądro linux pracuje jako proces w środowisku GNU/Linux.

Przed rozpoczęciem ćwieczeń, należy zapoznać się z opisem uzycia uml!!!

ĆWICZENIA

1 Zakładanie i usuwanie kont

  1. ^_^ Założyć konto przy pomocy polecenia useradd:
    1. wywołując je tylko z nazwą użytkownika,
    2. oprócz nazwy użytkownika ustawić z linii poleceń powłokę,
    3. oprócz nazwy użytkownika ustawić z linii poleceń katalog domowy,
    4. oprócz nazwy użytkownika ustawić z linii poleceń numer uid,
    5. oprócz nazwy użytkownika ustawić z linii poleceń grupę użytkownika.
      Czy padło pytanie o hasło ? Jeżeli nie, należy je ustawić poleceniam passwd.
  2. ^_^ Sprawdzić przy pomocy useradd -D domyślne parametry konta, a następnie zmienić:
    1. domyślną powłokę,
    2. domyślny katalog domowy,
    3. domyślną grupę.
  3. Sprawdzić, czy w systemie jest polecnie adduser. Można to zrobić wywołując manual, lub sprawdzając jakie polecnie jest wywoływane jako adduser. W systemie Redhat adduser jest najczęściej tylko linkiem symbolicznym do useradd.
  4. Jeżeli w systemie jest obecne polecenie adduser proszę wykonać podobne operacje jak w ćwiczeniu 1.
  5. Jeżeli w systemie jest obecne polecenie adduser proszę wykonać podobne operacje jak w ćwiczeniu 2, edytując plik /etc/adduser.conf.
  6. Proszę założyć grupy użytkowników, np. grupy biuro praca.
  7. ^_^ Dopisać do założonych uprzednio grup użytkowników:
    1. jeżeli to możliwe, przy pomocy addgroup,
    2. ręcznie, edytując plik /etc/group.
  8. Przy pomocy deluser i delgroup proszę usunąć założone konta i grupy. Czy usunięcie konta pociąga za sobą automatyczną likwidację grupy?
  9. Proszę założyć ręcznie podobne konta i grupy, według omówionych wcześniej zasad. Sprawdzić czy konta funkcjonują poprawnie. (Wskazówka: jedyne potrzebne narzędzie to edytor vi).
  10. ^_^ Należy założyć konto systemowe. Jakie powinny być hasło i powłoka?

2 Modyfikacje i blokowanie kont

  1. Przy pomocy poleceń id groups proszę spradzić informacje o kilku kontach użytkowników i systemowych.
  2. Korzystając z polecenia chfn lub usermod zmodyfikować parametry wcześniej założonego konta:
    1. dane personalne użytkownika,
    2. nazwę konta.
  3. Korzystając z chsh proszę zmienić powłokę wybranego konta.
  4. Wykonać podobne modyfikacje jak w ćwiczeniu 2, ale korzystając tylko z vi.
  5. Wykorzystując polecenie ls -ln można zobaczyć numeryczne wartości właścicieli plików. Przed zmianą nazwy konta proszę oglądnąć te wartości. Operację należy powtórzyć po zmianie nazwy grupy lub konta i porównać te wartości. Czy zmiana nazwy konto lub grupy pociąga za sobą zmianę uid i gid?
  6. ^_^ Proszę zablokować wybrane konto przy pomocy przez zmianę hasła:
    1. polecenia passwd,
    2. przy pomocy vi.
  7. ^_^ Proszę zablokować wybrane konto przez zmianę powłoki:
    1. polecenia chsh,
    2. przy pomocy vi.

3 Zakładanie partycji

Uwaga: w UML nie zawsze jest możliwe pełne zrealizowanie ćwiczenia, w związku z tym:

  1. Sprawdzić przy pomocy mount na jakim dysku (urządzeniu) znajduje się główny system plików (np. /dev/hda).
  2. Stworzyć przy pomocy dd średniej wielkości plik (np. 16MB) login.swap, gdzie login jest nazwą konta na którym sie pracuje, wypełniony zerami (plik będzie wykorzystywany do zakładania systemów plików):
dd if=/dev/zero of=/host/gjn.swap bs=1M count=16

Udostępnić go przez jedno z urządzeń /dev/loop (o wyższym numerze).

    losetup /dev/loop3 /host/gjn.swap

Uwaga: Poniżej wersja ćwiczenia dla stanowiska lokalnego (bez UML). Jeżeli mamy UML to pomijamy kolejne trzy punkty.

W zależności od możliwości sprzętowych stanowiska proszę przećwiczyć 3 metody tworzenia wolnej partycji:

  1. Sprawdzić przy pomocy mount na jakim dysku (urządzeniu) znajduje się główny system plików (np. /dev/hda). Uruchomić na tym urządzeniu program fdisk i jeżeli na dysku jest wolne miejsce, założyć nową partycję. W niektórych przypadkach zalecane jest zrestartowanie maszyny w celu uaktualnienia tablicy partycji.
  2. Sprawdzić przy pomocy free stopień zajętości pamięci. Sprawdzić w pliku /etc/fstab na jakim urządzeniu znajduje się partycja swap. Jeżeli większość pamięci swap jest wolna, odłączyć partycję swap. Partycja swap będzie wykorzystywana do tworzenia systemów plików.
  3. Stworzyć przy pomocy dd średniej wielkości plik (np. 16MB) wypełniony zerami. Udostępnić go przez jedno z urządzeń /dev/loop. Plik będzie wykorzystywany do zakładania systemów plików.

4 Zakładanie systemów plików

  1. Na utworzonym w części wcześniejszej urządzeniu (np. odpowiednim loop) (lub partycji) założyć przy pomocy mkfs:
    • system plików ext2,
    • system plików minix (o ile to możliwe),
    • system plików msdos (o ile to możliwe).
  2. Jeżeli w punkcie 1. założono system ext2 proszę uruchomić na nim dumpe2fs i oglądnąć wyświetlane informacje. Gdzie są licznik i limit montowań?
  3. ^_^ Stworzyć katalog /mnt/tmp i podmontować do niego stworzony w ćwiczeniu 1. system plików. Uruchomić df. Sprawdzić, czy można korzystać z nowego systemu plików, zakładając w nim plik.
  4. Po odmontowaniu stworzonego systemu plików uruchomić polecenie fsck. Dla systemu ext2 uruchomić e2fsck z opcją -f.
  5. Podmontować założony system plików do /mnt/tmp. Wykonać polecenie cd /mnt/tmp. Spróbować odmontować system plików. Sprawdzić przy pomocy fuser jakie procesy z niego korzystają. Co jest warunkiem odmontowania systemu plików?
  6. Dla systemu ext2 proszę kilkakrotnie podmontować i odmontować system plików, obserwując licznik montowań.
  7. Utworzyć w pliku /etc/fstab wpis odpowiadający nowemu systemowi plików. Czy utworzenie tego wpisu uprości montowanie?
  8. W jaki sposób umożliwić każdemu użytkownikowi montowanie systemu plików? (Wskazówka: man fstab)
  9. Jakiej opcji należy użyć, by zapobiec automatycznemu montowaniu systemu plików w trakcie startu systemu? (Wskazówka: man fstab)
  10. ^_^ Jak wymusić montowanie systemu plików w trybie tylko do odczytu? (Wskazówka: man fstab)

5 Partycje swap

  1. Sprawdzić w pliku /etc/fstab na jakim urządzeniu znajduje się partycja swap. Jeżeli większość pamięci swap jest wolna, odłączyć partycję swap.
  2. ^_^ Stworzyć partycję swap na urządzeniu na którym normalnie się ona znajduje lub na innej partycji utworzonej w części 3.
  3. Sprawdzić ilość dostępnej pamięci (free). Podłączyć partycję swap. Sprawdzić ilość dostępnej pamięci (free).