R07_05_SPR.PDF

(302 KB) Pobierz
Szablon dla tlumaczy
Rozdział 7.
Konfiguracja i administracja
systemu Linux
Ten rozdział opisuje, jak wykonywać powszechne zadania administracyjne. Za pomocą kilku prostych poleceń i
edytora tekstowego możesz zmieniać wiele ustawień, które zostały skonfigurowane podczas instalacji systemu.
Nauczysz się, jak dodawać, usuwać i modyfikować konta użytkowników oraz jak dodawać i usuwać grupy oraz
zmieniać ich członków. Dowiesz się, jak skonfigurować partycję swap oraz co zrobić, aby system automatycznie
montował systemy plików. Nie poznasz jednak żadnych poleceń konfigurujących usługi sieciowe ani też nie
dowiesz się, jak zarządzać siecią — tematy te są przedstawione w rozdziałach 10., 11. i 12.
Administracja użytkownikami i grupami
Nauczysz się, jak wykonywać zadania zarządzania użytkownikami i grupami. Większość zadań
administracyjnych systemu wymaga uprawnień użytkownika root . Dlatego w tym podrozdziale przyjęto, że
jesteś zalogowany jako root .
Tworzenie konta użytkownika
Do utworzenia nowego konta użytkownika służy polecenie adduser , które posiada następującą składnię.
adduser nazwa użytkownika
gdzie nazwa użytkownika określa nazwę nowego użytkownika, któremu chcesz założyć konto. W trakcie
wykonywania polecenia dodawania nowego użytkownika zostaniesz poproszony o wprowadzenie wymaganych
informacji na jego temat.
Oto typowy przykład działania polecenia adduser , które tworzy nowe konto użytkownika o nazwie
kubotek .
debain1:~# adduser kubotek
Adding user kubotek ...
Adding new group kubotek (1001).
Adding new user kubotek (1001) with new group kubotek.
Creating home directory /home/kubotek.
Copying files from /etc/skel
Changing password for kubotek
Enter the new password (minimum of 5, maximum of 8 characters) :
Please use a combination of upper and lower case letters and numbers.
Re-enter new password:
Password changed.
Changing the user information for kubotek.
Enter the new value, or press return for the default.
Full Name [ ]: Jan Kowalski
Room Number[ ]:
Work Phone [ ]:
Home Phone[ ]:
Other [ ]:
Is the information correct? [y/n] y
debian:~#
Zauważ, że wiersze, gdzie wpisywane było hasło, ze względów bezpieczeństwa nie są wyświetlane na konsoli
podczas ich wpisywania (przy użyciu polecenia echo ). Zwróć również uwagę, że kilka pól informacyjnych
zostało pominiętych, na przykład Room Number . Możesz wprowadzić te dane, jeśli uważasz, że się przydadzą,
ale system i tak z nich nie korzysta i nawet nie wymaga ich wprowadzenia.
Uwaga
Podobne polecenie — useradd — również tworzy nowe konto użytkownika, ale nie pyta o hasło ani o inne
informacje, które musisz wprowadzić ręcznie.
Kiedy polecenie adduser zakłada konto nowego użytkownika, tworzy dla niego katalog macierzysty. W
poprzednim przykładzie polecenie stworzyło katalog /home/kubotek . Przenosi również pliki konfiguracyjne do
tego katalogu z katalogu /etc/skel . Pliki te mają zazwyczaj nazwę zaczynającą się od kropki (.), co oznacza, że są
to pliki ukryte — zwykłe polecenie ls ich nie wyświetli. Użyj wtedy opcji –a dla polecenia ls , aby je
zobaczyć. Są to zwykle pliki tekstowe, których zawartość można obejrzeć w dowolnym edytorze, takim jak np.
ae . Poprzez modyfikację zawartości tych plików możesz kontrolować operacje związanych z nimi aplikacji. Na
przykład plik .bashrc służy do kontrolowania działania powłoki BASH, o czym możesz przeczytać w rozdziale
13. „Podbój powłoki BASH”.
Zmiana nazwy użytkownika
Nazwę związaną z kontem użytkownika ( userid ) możesz zmienić za pomocą polecenia chfn :
chfn –f nazwa nazwa_konta
gdzie nazwa oznacza nową nazwę konta, a nazwa_konta określa dotychczasową nazwę konta. Jeśli nazwa
zawiera spacje lub inne znaki specjalne, powinna zostać otoczona cudzysłowem ("). Na przykład, aby zmienić
nazwę związaną z kontem kubotek na Jan Kowalski , wydaj następujące polecenie:
chfn –f "Jan Kowalski" kubotek
Zmiana hasła użytkownika
Od czasu do czasu należy zmienić swoje hasło, choćby po to, by utrudnić innym włamanie do systemu. Jako
administrator systemu musisz czasami zmienić hasło związane z konkretnym kontem użytkownika. Niektórzy
użytkownicy mają szczególny dar zapominania haseł dostępu. A jako administrator jesteś jedyną osobą, która
może im pomóc.
Do zmiany hasła konta użytkownika (i swojego) służy polecenie passwd . Aby zmienić swoje hasło, wydaj
polecenie:
passwd
Polecenie zmienia hasło aktualnie zalogowanego użytkownika. Nie musisz posiadać uprawnień użytkownika
root , aby wykonać polecenie passwd . Dlatego każdy użytkownik systemu może sobie sam zmieniać hasło bez
pomocy administratora systemu. Użytkownik root może jednak zmienić hasło każdemu użytkownikowi.
Oczywiście tylko root może wykonać taką operację — pozostali użytkownicy mogą zmieniać tylko własne
hasła.
Polecenie passwd aktywuje prosty dialog, który przyjmuje mniej więcej taką postać:
$ passwd
Changing password for kubotek
Old password:
Enter the new password (minimum 5, maximum 8 characters).
Please use a combination of upper and lower case letters and numbers.
New password:
Re-enter new password:
Password changed.
Zwróć uwagę na restrykcje, jakimi jest objęty wybór nowego hasła. Uniemożliwiają one wprowadzanie haseł,
które mogłyby zostać łatwo odgadnięte. Jeśli wprowadzisz hasło, które będzie się kłóciło z tymi zasadami,
program passwd odrzuci je, prosząc o ponowne wprowadzenie hasła.
Jako root możesz zmieniać hasła każdemu użytkownikowi systemu. Polecenie nie pyta wtedy o stare (obecne)
hasło, tylko o nowe:
debian1:~# passwd kubotek
Changing password for kubotek
Enter the new password (minimum 5, maximum 8 characters).
Please use a combination of upper and lower case letters and numbers.
New password:
Re-enter new password:
Password changed.
Informacje na temat haseł są przechowywane w pliku /etc/passwd , który możesz obejrzeć za pomocą dowolnego
edytora . Każdy użytkownik może obejrzeć zawartość tego pliku, ale jedynie root może modyfikować ten plik.
Jeśli wybrałeś opcje shadow passwords (hasła przysłonięte 1 ) , hasła są szyfrowane i przechowywane w
pliku /etc/shadow , którego zawartość może podejrzeć jedynie administrator ( root ).
Konfigurowanie definicji grup
Pamiętasz zapewne z rozdziału 4. „Poznawanie podstawowych poleceń Linuksa”, że system używa grup do
definiowania zbioru użytkowników, którzy mają dostęp do danego pliku lub katalogu. Prawdopodobnie niezbyt
często będziesz konfigurować definicje grup, zwłaszcza jeśli używasz Linuksa jako stacji roboczej, a nie jako
serwera. Jednakże, jeśli tylko zechcesz, możesz tworzyć, usuwać i modyfikować listę członkowską każdej
grupy.
Tworzenie nowej grupy
Aby stworzyć nową grupę, użyj polecenia groupadd :
groupadd grupa
gdzie grupa oznacza nazwę nowej grupy, którą chcesz dodać. Grupy są przechowywane w pliku /etc/group ,
który może odczytać każdy użytkownik, ale zmodyfikować go może tylko root .
1 Shadow — cień, w tym przypadku ukrycie hasła.
Na przykład, aby dodać nową grupę o nazwie grupka , wydaj polecenie:
groupadd grupka
Usuwanie grupy
Do usunięcia grupy służy polecenie groupdel :
groupdel grupa
gdzie grupa oznacza nazwę grupy, którą chcesz usunąć. Na przykład, aby usunąć grupę o nazwie grupka ,
wydaj polecenie:
groupdel grupka
Dodawanie członków do grupy
Aby dodać użytkownika do grupy, użyj polecenia adduser z argumentami:
adduser użytkownik grupa
gdzie użytkownik oznacza użytkownika, którego chcesz dodać, a grupa określa grupę, której członkiem
stanie się dany użytkownik. Na przykład, aby dodać użytkownika magda do grupy grupka , wydaj następujące
polecenie:
adduser magda grupka
Usuwanie użytkownika z grupy
Niestety do usunięcia użytkownika z grupy nie istnieje żadne polecenie. Najprostszą drogą jest edycja pliku
/etc/group . Spójrz na fragment typowego pliku /etc/group :
users:x:100:
nogroup:x:65534:
magda:x:1000:
kubotek:x:1002:kubotek01,kubotek02
Poszczególne wiersze opisują pojedynczą grupę i posiadają taką samą formę: wiersz składa się z serii pól
oddzielonych dwukropkami (:). Pola te oznaczają:
Group name — nazwę grupy.
Password — zaszyfrowane hasło związane z grupą. To pole nie jest zazwyczaj używane, wpisuje się w
nie znak x.
Group ID — unikatowy numer identyfikacyjny grupy.
Member list — lista użytkowników (członków) grupy, każdy użytkownik jest oddzielony od następnego
przecinkiem (,).
Aby usunąć użytkownika z grupy, należy wykonać co najmniej dwie operacje. Najpierw należy utworzyć kopię
zapasową pliku /etc/group :
cp /etc/group /etc/group.save
Kopia ta może okazać się przydatna, kiedy dokonasz złych poprawek i nie będziesz wiedział, jak je cofnąć.
Następnie otwórz plik /etc/group w dowolnym edytorze tekstu. Przejdź do wiersza, który opisuje daną grupę, i
usuń nazwę użytkownika wraz z przecinkiem. Zapisz zmiany, zamknij edytor i sprawdź, czy wprowadzone
zmiany działają.
Usuwanie konta użytkownika
Do usuwania kont użytkowników służy polecenie userdel :
userdel użytkownik
gdzie użytkownik oznacza nazwę konta użytkownika, które chcesz usunąć. Jeśli chcesz usunąć użytkownika,
jego katalog domowy wraz ze znajdującymi się tak plikami i podkatalogami, użyj polecenia userdel z
następującymi argumentami:
userdel –r użytkownik
Uwaga
Ponieważ usuniętych plików nie można odtworzyć, powinieneś zrobić kopię zapasową użytecznych plików,
zanim usuniesz konto użytkownikowi.
Konfigurowanie dostępu do powłok
Powłoka BASH, którą poznałeś w rozdziale 4., jest najbardziej popularną, ale nie jedyną powłoką systemu
Linux. Inne powłoki to:
ash — odmiana powłoki sh, która przypomina powłokę Systemu V.
csh — powłoka C — lubiana przez wielu użytkowników ze względu na interaktywny interfejs.
ksh — powłoka Korna — trzecia co do ważności powłoka systemu Unix.
sh — powłoka Bourne’a — prekursor powłoki BASH (znana również pod nazwą bsh ).
tcsh — rozszerzona wersja csh .
zsh — powłoka Z — odmiana powłoki Korna.
Kiedy tworzysz nowego użytkownika, system automatycznie przypisuje powłokę (interpreter poleceń), którą
Linux uruchamia dla użytkownika, kiedy ten zaloguje się do systemu. Debian GNU/Linux przypisuje powłokę
BASH, tak jak to zostało sprecyzowane w pliku /etc/adduser.conf . Jednakże możesz przypisać inną powłokę,
jeśli tylko chcesz. Warunek jest taki, że powłoka musi znajdować się na liście w pliku /etc/shells .
Administracja systemem plików
Kiedy Linux się uruchamia, automatycznie montuje systemy plików określone w pliku /etc/fstab . Poprzez
modyfikację tego pliku możesz zmienić działanie systemu.
Konfiguracja napędów lokalnych
Kiedy instalujesz Linuksa, program instalacyjny konfiguruje plik /etc/fstab , aby wyznaczyć, które systemy
plików mają być montowane podczas startu systemu. Oto przykładowa zawartość tego pliku:
# /etc/fstab: static file system information
#
#<file system> <mount point> <type> <options> <dump> <pass>
/dev/hda2 / ext2 defaults 0 1
/dev/hda3 none swap sw 0 0
proc /proc proc defaults 0 0
Pierwsze trzy wiersze — rozpoczynające się znakiem „ # ” ( hash ) — są komentarzami, które są ignorowane przez
system; pomagają użytkownikom zidentyfikować i zrozumieć plik. Następne trzy określają system plików, który
zostanie zamontowany podczas startu systemu. Każdy z wierszy składa się z sześciu kolumn o określonym
znaczeniu:
Filesystem — urządzenie, które zawiera system plików.
Mount point — katalog systemowy, do którego zamontowany jest dany system plików.
Zgłoś jeśli naruszono regulamin