[ Pobierz całość w formacie PDF ]
10
237
Pliki, procesy i prawa dostępu
W rozdziale 10. podejmiemy tematy, które nie zostały przedstawione w rozdziale 9., „Powłoka Bash”. Ten rozdział również będzie w większości dotyczył wykorzystania wiersza poleceń.
Pliki, procesy i prawa
Wyjątkiem będą opisy montowania urządzeń oraz ustalania domyślnych praw dostępu dla grup. Te zadania mogą zostać wykonane zarówno z wiesza poleceń, jak i za pomocą środowiska Gnome. W tym rozdziale pokażemy, jak montować urządzenia, korzystając z obu sposobów i jak ustalać domyślne prawa dostępu za pomocą Gnome.
Znajdziesz tu odpowiedzi na następujące pytania: jak zdobyć informacje o systemie? Jak dowiedzieć się czegoś więcej o ilości wolnego miejsca na dysku i o katalogach? Jak odszukać odpowiednie pliki i znaleźć pliki zawierające dany tekst?
W tym rozdziale pokażemy również, jak wyświetlać i monitorować poszczególne procesy. Nauczysz się również, jak je zabijać, jeśli skończy się ich czas.
Na koniec, omówimy zagadnienia związane z posiadaniem plików oraz katalogów i prawami odstępu do nich. Co oznacza posiadanie pliku?
W jaki sposób plik może mieć więcej niż jednego właściciela? Czym są prawa dostępu i jak je modyfikować?
Oto temat poruszane w tym rozdziale:
n uzyskiwanie informacji o systemie,
n procesy,
n system plików,
n posiadanie plików i prawa dostępu.
Uzyskiwanie informacji o systemie
Uzyskiwanie informacji o systemieWiedza daje władzę, dlatego oczywiste jest, że chcesz wiedzieć więcej o swoim systemie, a przynajmniej orientować się, jakie narzędzia są w danej chwili dostępne.
Kiedy na przykład istotne staną się zagadnienia związane z kompatybilnością oprogramowania, być może trzeba będzie dokładnie wiedzieć, która wersja jądra działa w systemie.
Aby uzyskać informacje o komputerze i systemie operacyjnym1. W wierszu poleceń wpisz
uname –a.
2. Wciśnij Enter. Komputer odpowie, wyświetlając tekst podobny do następującego:
linux linuxbear 2.4.2-2 #1
Sun Apr 8 20:41:30 EDT 2001
i686 unknown
Odpowiedź na polecenie uname –a zawiera następujące informacje:
Linux: nazwa systemu operacyjnego (–s)
linuxbear: nazwa hosta (–n)
2.4.2-2 #1: numer wersji jądra (–r)
Sun Apr 8 20:41:30 EDT 2001: data i czas kompilacji jądra (–v)
i686: typ komputera (–m.)
unknown: procesor (–p)
n Polecenie uname można również wywołać, wykorzystując poszczególne opcje (przedstawione powyżej) pozwalające na uzyskanie tylko specyficznych informacji, zamiast wyświetlać wszystkie informacje za pomocą opcji –a.
Określanie ilości wolnego miejsca na dyskach
W Linuksie system plików jest sztucznym tworem o strukturze drzewa, rozpoczynającego się od katalogu głównego oznaczanego symbolem /. Pozycja katalogu w tej strukturze nie oznacza, że faktycznie jest on zapisany na konkretnym dysku twardym.
Zamontowany system plików może być wykorzystywany w systemie operacyjnym. Katalog, który reprezentuje wiązanie pomiędzy zamontowanym systemem plików a całą strukturą drzewiastą nazywany jest punktem zamontowania.
Polecenie df pozwala zorientować się, które systemy plików są zamontowane, w jakich punktach i ile jest na nich wolnego miejsca.
Aby sprawdzić, ile jest wolnego miejsca na dysku1. W wierszu poleceń wpisz df.
2. Wciśnij Enter. Wyświetlony zostanie komunikat zawierający osobne wiersze dla każdego z zamontowanych systemów plików z danymi o używanym i dostępnym miejscu oraz punkcie zamontowania. Dzięki poleceniu df można sprawdzić, w którym punkcie zamontowany jest dany system plików i ile miejsca pozostało na dysku (patrz tabela 10.1).
Tabela 10.1. Określanie ilości wolnego miejsca.
Filesystem
1k-blocks
Used
Available
Use%
Mounted on
/dev/hda2
2208347
1182338
911853
56%
/
/dev/hdc
556054
556054
0
100%
/mnt
Uzyskiwanie informacji o systemie
Rysunek 10.1. Za pomocą polecenia du można sprawdzić wielkość katalogu.
Wskazówka
n Polecenie file nie będzie działać prawidłowo dla każdego pliku. Najpierw sprawdza ono typ danych zapisanych w pliku. Następnie odczytuje dane z odpowiedniej tabeli zapisanej w tak zwanym pliku magicznym (jest to zwykle plik /etc/magic, jeśli chcesz możesz go obejrzeć). Plik programu WordPerfect został rozpoznany, ponieważ instalator tego programu dodał odpowiednie informacje do pliku /etc/magic.
Aby sprawdzić, ile miejsca zajmuje katalog
1. W wierszu poleceń wpisz du.
2. Wciśnij Enter. Wyświetlona zostanie informacja o wielkości katalogu bieżącego i jego podkatalogów w kilobajtach (rysunek 10.1)
Wskazówkin Jeśli jako parametr polecenia du podasz ścieżkę dostępu do katalogu, na przykład
du /home/hdavis/linuxvqs,
wyświetlona zostanie informacja o tym katalogu i jego podkatalogach.
n Wyjście polecenia du można za pomocą mechanizmu potoków skierować na wejście programu more, wpisując du | more, dzięki czemu dane wyświetlane będą porcjami mieszczącymi się jednorazowo na ekranie.
Określanie typu plikuW systemie Windows można odgadnąć typ pliku na podstawie rozszerzenia jego nazwy. W systemie Linux nazwy plików często nie posiadają rozszerzeń, w związku z czym nie ma możliwości określenia typu pliku na podstawie jego nazwy.
Aby określić typ pliku1. W wierszu poleceń wprowadź polecenie file z argumentem będącym ścieżką dostępu do pliku, na przykład
file /home/hdavis/wpdocs/testwp
2. Wciśnij Enter. System odpowie, podając informację o typie pliku, na przykład tak:
/home/hdavis/wpdocs/testwp: WordPerfect document.
Uzyskiwanie informacji o systemie
Informacjeo użytkownikach systemu
Do sprawdzania, kto jest aktualnie zalogowany i uzyskiwania innych informacji o użytkownikach, służy polecenie finger.
Aby sprawdzić, kto jest zalogowany1. W wierszu poleceń wpisz finger.
2. Wciśnij Enter. Wyświetlona zostanie lista użytkowników zalogowanych do systemu oraz położenie ich katalogów domowych (rysunek 10.2).
Wskazówkin Po zastosowaniu polecenia finger z identyfikatorem konkretnego użytkownika można uzyskać o nim dodatkowe informacje: jakiej używa powłoki, ile czasu upłynęło od zalogowania, ile czasu martwego upłynęło od zalogowania.
n Konieczność uzyskania informacji o tym, kim jesteś, może nie jest zbyt częsta
– szczególnie jeśli wiesz, kim jesteś
– i bywa raczej tematem francuskich filmów o problematyce egzystencjalnej, a nie książek o Linuksie. Jeśli jednak jesteś zalogowany jako kilku różnych użytkowników i nie dostosowałeś znaku zachęty, tak aby wyświetlany był identyfikator użytkownika, problem ten może okazać się dość frustrujący. W takich sytuacjach z pomocą może przyjść polecenie whoami, które zwraca Twój identyfikator użytkownika.
Rysunek 10.2. Polecenie finger pozwala zorientować się, kto jest zalogowany.
To mój proces
i mogę z nim robić, co chcę
Być może masz doświadczenie z programami dla systemu Microsoft Windows, których w żaden sposób nie da się zatrzymać lub z oknami, które po otwarciu w żaden sposób nie dają się zamknąć. Jedynym sposobem na zamknięcie takiego programu lub okna jest wykorzystanie klawiszy Control+Alt+Delete.
Klawisze Control+Alt+Delete w systemie Microsoft Windows powodują wyświetlenie okna dialogowego Zamknij program. Nieprawidłowo działający proces jest zwykle opisany komunikatem Nie odpowiada.
Aby go zamknąć, trzeba wybrać go i kliknąć na przycisk Zakończ zadanie (jest oczywiście jeszcze jedna możliwość: można wyłączyć zasilanie).
Będąc administratorem systemu linuksowego lub programistą możesz zetknąć się z analogiczną sytuacją. W systemie Linux nie mówi się jednak o zakończeniu zadania, ale o „zabiciu” procesu.
Proces to skrótowe określenie abstrakcyjnego tworu zarządzającego pamięcią, procesorem i zasobami wejścia i wyjścia, tak aby możliwe było wykonywanie programu. Choć system Linux daje złudzenie, że równocześnie wykonuje się w nim wiele zadań, w rzeczywistości jeden procesor może wykonywać tylko jeden proces. Iluzja równoczesnego wykonywania zadań jest osiągana dzięki podziałowi czasu, co oznacza, że system operacyjny przełącza wykonywanie poszczególnych procesów w określonych, bardzo krótkich odstępach czasu.
To mój proces i mogę z nim robić, co chcę
Aby wyświetlić listę wszystkich procesów związanych z terminalem
1. Zaloguj się jako root.
2. W wierszu poleceń wpisz ps –a.
3. Wciśnij Enter. Wyświetlona zostanie tabela (patrz rysunek 10.3) zawierająca numer identyfikacyjny procesu (PID), terminal, na którym proces został zainicjowany (TTY), czas procesora, który został zużyty przez proces (TIME) oraz polecenie, które uruchomiło dany proces (COMMAND).
Rysunek 10.3. Aby wyświetlić listę wszystkich procesów związanych z terminalem, wydaj polecenie ps –a.
...
[ Pobierz całość w formacie PDF ]