Операционная система Linux

         

Использование групп


В Linux определено несколько системных групп, задача которых – обеспечивать доступ членов этих групп к разнообразным ресурсам системы. Часто такие группы носят говорящие названия: "disk", "audio", "cdwriter" и т. п. Тогда обычным пользователям доступ к некоторому файлу, каталогу или файлу-дырке Linux закрыт, но открыт членам группы, которой этот объект принадлежит.

Например, в Linux почти всегда используется виртуальная файловая система /proc – каталог, в котором в виде подкаталогов и файлов представлена информация из таблицы процессов. Имя подкаталога /proc совпадает с PID соответствующего процесса, а содержимое этого подкаталога отражает свойства процесса. Хозяином такого подкаталога будет хозяин процесса (с правами на чтение и использование), поэтому любой пользователь сможет посмотреть информацию о своих

процессах. Именно каталогом /proc пользуется утилита ps:

[methody@arnor methody]$ ls -l /proc . . . dr-xr-x--- 3 methody proc 0 Сен 22 18:17 4529 dr-xr-x--- 3 shogun proc 0 Сен 22 18:17 4558 dr-xr-x--- 3 methody proc 0 Сен 22 18:17 4589 . . . [methody@localhost methody]$ ps -af UID PID PPID C STIME TTY TIME CMD methody 4529 4523 0 13:41 tty1 00:00:00 -bash methody 4590 4529 0 13:42 tty1 00:00:00 ps -af

Пример 6.6. Ограничение доступа к полной таблице процессов (html, txt)

Оказывается, запущено немало процессов, в том числе один – пользователем shogun (PID 4558 ). Однако, несмотря на ключ "-a" (all), ps выдала Мефодию только сведения о его процессах: 4529 – это входной shell, а 4590 – видимо, сам ls.

Другое дело – Гуревич. Он, как видно из примера 6.1, входит в группу proc, членам которой разрешено читать и использовать каждый подкаталог /proc:

shogun@localhost ~ $ ps -af UID PID PPID C STIME TTY TIME CMD methody 4529 4523 0 13:41 tty1 00:00:00 -bash shogun 4558 1828 0 13:41 tty3 00:00:00 -zsh shogun 4598 4558 0 13:41 tty3 00:00:00 ps -af

Пример 6.7. Доступ к полной таблице процессов: группа proc (html, txt)

Гуревич, опытный пользователь Linux, предпочитает bash "The Z Shell", zsh. Отсюда и различие приглашения в командной строке. Во всех shell, кроме самых старых, символ "~" означает домашний каталог. Этим сокращением удобно пользоваться, если текущий каталог – не домашний, а оттуда (или туда) нужно скопировать файл. Получается команда наподобие "cp ~/нужный_файл ." или "cp нужный_файл ~" соответственно.

Команда ps -a выводит информацию обо всех

процессах, запущенных "живыми" (а не системными) пользователями 1). Для просмотра всех процессов Гуревич пользуется командой ps -efH.



Содержание раздела