Администрирование пользователей

       

Что надо удалить?


Во-первых, домашнюю директорию юзера. Кстати, если администратор не

предпринимал никаких действий, чтобы дать юзеру возможность писать в другие

директории, то все файлы, которые мог "наплодить" юзер должны лежать в его

Home dir. Если же вы дали юзеру права создавать файлы в других диркториях

(в публичном ftp архиве или в директории www сервера, например), то, возможно,

надо "почистить" и там.

Во-вторых, "почтовый ящик" юзера в директории /var/mail. Сделайте это

обязательно, даже если юзер просил "пока не удалять почту" (или хотя бы

уберите этот файл из /var/mail). Дело в том, что название этого файла

совпадает с Name юзера, а права на чтение/запись определяются его user ID,

и, естественно, должны соответствовать друг-другу.

Не вдаваясь в подробности, могу сказать, что если вы вскоре зарегистрируете

нового пользователя с тем же user ID (он же освобождается), но с другим



именем, или наоборот - с таким же именем, как у старого юзера, но с другим

user ID, то у этого нового юзера возникнут серьезные проблемы с получением

почты.

В-третьих. Могут быть еще где-то раскиданы файлы, владельцем которых

был этот юзер. Например, в директории /tmp, /usr/tmp, /var/tmp.

Найти все эти файлы можно с помощью программы find. Например, так


find / -user vasia


(Обратите внимание, первый аргумент - директория, начиная с которой искать.

В данном примере это корневая, то есть будут просмотрены все файлы в системе.

С одной стороны это хорошо - ничего не пропустите, но, с другой стороны, если

у вас стоит ньюс-сервер или огоромный ftp-архив, то ждать придется долго).

С помощью этой же команды можно и удалить все найденные файлы


find / -user vasia -delete


однако, поскольку она не спрашивает подтверждения, этот метод очень опасный.

Лучше уж заставить ее выполнять команду rm ( с подтверждением) для каждого

найденного файла


find / -user vasia -exec rm -i {} \;

И, наконец, привожу небольшой список (скорее всего, неполный) - где еще


могут остаться упоминания об этом юзере.

  • в файлах /etc/group, /etc/login.access, /etc/ftpusers

  • в таблицах программы sendmail: /etc/aliases и т.п. (virtusertable,

    genericstable и др.)

  • если у вас отдельным юзерам разрешается запускать задачи с помощью cron,

    то юзер может упоминаться в /etc/crontab или в /var/cron/allow, /var/cron/deny,

    а, также, может быть его индивидуальная crontab в /var/cron/tabs/

  • если юзерам разрешается пользоваться "пакетным" выполнением программ,

    то юзер может упоминаться в /var/at/at.allow, /var/at/at.deny

  • если у вас ведется "квотирование" дискового пространства, то должна быть

    quote для этого юзера

  • если юзер пользуется IP связью через модем, то он может упоминаться

    в файлах, лежащих в /etc/sliphome или /etc/ppp

  • от имени юзера могут запускаться какие-нибудь демоны (особенно это

    касается псевдо-юзеров), тогда имя юзера может быть в /etc/inetd.conf или

    /etc/rc.local.

    Итак, вы видите, что полное удаление юзера из системы в общем случае

    очень не простая задача.

    Однако, в большинстве случаев все гораздо проще.


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