Sposoby na Pingwina

Każdy, kto choć raz zetknął się z Linuksem (czy innym systemem uniksowym, np. BSD), przekonał się o różnicach w administracji pomiędzy tym OS-em a Okienkami Microsoftu. Wynikają one nie tylko z odmiennej filozofii działania wymienionych systemów. Przyczyną różnic jest również to, że efektywne zarządzanie Windows wymaga skompletowania szeregu dodatkowych narzędzi, które w Linuksie dostajemy wraz z używaną dystrybucją.

Fakt ten nie oznacza bynajmniej, że administracja Linuksem jest zadaniem banalnym. Warto zatem na początek zapoznać się z kilkunastoma najczęściej używanymi narzędziami administracyjnymi. Programy systemowe trzeba bowiem poznać, a to z kolei skutkuje często koniecznością zrozumienia zasad, jakie rządzą działaniem Pingwina.

Omawiane w artykule programy i polecenia podzielono na trzy grupy: narzędzia stricte systemowe, aplikacje pomocne w konfiguracji sieci oraz programy służące do zapewnienia bezpieczeństwa użytkownikom OS-u. Chwilami zakresy zastosowań poszczególnych narzędzi przenikają się. Nie ma w tym jednak niczego dziwnego, bo na przykład bezpieczeństwo systemu zależy zarówno od uprawnień użytkowników, jak i jakości zapory ogniowej.

Wspólną cechą wszystkich opisanych w tym artykule aplikacji jest to, że możemy je znaleźć w znakomitej większości dystrybucji Linuksa. Nawet jeśli niektóre nie zainstalują się po wybraniu domyślnej konfiguracji systemu, to z łatwością odnajdziemy je na płytach z pakietami lub na serwerach FTP naszej odmiany Pingwina.

Celem niniejszego tekstu nie jest opisanie wszystkich narzędzi, które powinien znać dobry administrator Linuksa – wymagałoby to po prostu zapełnienia opisami i przykładami użycia aplikacji sporej grubości książki. Starałem się raczej wybrać programy ważne, niekoniecznie bardzo popularne, ale z jakiegoś powodu warte poznania. Zawsze natomiast można skorzystać ze źródeł podanych w ramce na końcu artykułu, przejrzeć kilka stron WWW poświęconych Linuksowi i – przede wszystkim – stosować się do znanej i często powtarzanej przez bywalców grup dyskusyjnych zasady RTM (Read The Manual). Z oczywistych względów użycie w zasadzie wszystkich opisanych tu narzędzi będzie wymagało uprawnień roota.

Narzędzia systemowe

Choć maszyna linuksowa w większości wypadków pracuje w sieci lokalnej lub w Internecie, administrację nią powinniśmy zacząć od uporządkowania “lokalnej” sytuacji. Zawsze bowiem należy się liczyć z niepoprawnym działaniem urządzeń, wyczerpaniem się zasobów maszyny czy niesfornością użytkowników. Dlatego też wycieczkę po meandrach zarządzania OS-em zaczniemy od typowo systemowych narzędzi, umożliwiających kontrolę nad katalogami, uprawnieniami użytkowników oraz działającymi w tle usługami.

Wyłączamy niepotrzebne usługi

Konfigurację każdego systemu operacyjnego, szczególnie podłączonego do jakiejkolwiek sieci, należy rozpocząć od wyłączenia niepotrzebnych usług systemowych. Wprawdzie dzisiejsze instalatory zwracają uwagę użytkownika na to, jakie serwisy będą działały w systemie, to v zazwyczaj przydaje się jednak rzut oka na stan OS-u już po jego zainstalowaniu.

Szukając działających w tle usług, powinniśmy zajrzeć w kilka miejsc. Przede wszystkim używamy popularnego polecenia wyświetlającego działające procesy –

ps -ax

. Ponadto warto przeanalizować zawartość pliku /etc/inetd.conf, czyli zbioru konfiguracyjnego “superserwera” sieciowego inetd, uruchamiającego większość usług sieciowych.

Gdy już odnajdziemy zbędne usługi, należy je zatrzymać (poleceniem typu

/etc/rc.d/init.d/nfsd stop

), a następnie usunąć stosowne wpisy z katalogu /etc/rc.d oraz z pliku /etc/inetd.conf. Zamiennie możemy użyć jednego z tekstowych lub graficznych narzędzi konfiguracyjnych dołączanych do naszej dystrybucji (takich jak YaST w SuSE czy Centrum sterowania w Mandrake’u). Po ponownym uruchomieniu OS-u sprawdzamy, czy nasze działania odniosły pożądany skutek.

Dodatkowe atrybuty plików

Większość użytkowników Linuksa zetknęła się z parą narzędzi chmod i chown, pozwalających na szczegółowe przydzielenie uprawnień do plików i katalogów poszczególnym użytkownikom systemu. Wiele osób nie zna natomiast działającego na systemach plików ext2/ext3 narzędzia

chattr

(e2fsprogs.sourceforge.net) określającego dodatkowe atrybuty zbiorów. Przykładowo: wywołanie programu w postaci:

chattr +i plik.cfg

spowoduje, że pliku nie będzie mógł zmienić (a więc również usunąć) żaden użytkownik systemu, nawet root. Z kolei parametr +A zablokuje uaktualnianie daty modyfikacji zbioru. Pełen zestaw opcji programu chattr można znaleźć w pomocy systemowej (

man chattr

). Do wyświetlania rozszerzonych atrybutów plików służy program lsattr .

Polecenia ułatwiające zarządzanie systemem
NazwaFunkcjaPrzykład
psWyświetlanie uruchomionych procesów systemowychps -t tty1,tty2 – wszystkie procesy uruchomione w terminalach tty1 i tty2
chattrRozszerzone atrybuty plików w systemach ext2/ext3chattr +a plik.txt – zbiór plik.txt będzie można modyfikować tylko w trybie dodawania danych (append)
sudoUruchamianie programów z uprawnieniami innych użytkownikówsudo nazwa_programu – uruchomienie programu zdefiniowanego wcześniej programem visudo
dfProcent wolnego miejsca na zamontowanych partycjachdf /dev/hda – ilość wolnego miejsca na dysku /dev/hda
duPrezentacja objętości poszczególnych katalogów na dyskudu -sh * – sumaryczne objętości wszystkich podkatalogów aktualnego katalogu
hdparmDostrajanie sterownika dysku twardegohdparm -Tt /dev/hda – test czasu buforo-wanego/niebuforowanego do dostępu urządzenia /dev/hda
Więcej:bezcatnews