Автор Тема: Как правильно добавить пользователя в систему? [решено]  (Прочитано 3673 раз)

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
вот:
И вотна всякий случай:
# ls -laF /home/|grep olga

Вот попытался при помощи консоли удалить пользователя
# userdel -r olga
userdel: предупреждение: /var/mail/olga не принадлежит olga, не удаляю
userdel: ошибка удаления каталога /home/olga

Ага, значит домашнего каталога пользователя не существует.


Но пользователь в системе существует с неправильными UID/GID:
Хоть что то ответила, но всё равно ничего не понятно.
До этого было
# cat /etc/passwd | awk '/bash/{print}'
root:x:0:0:System Administrator:/root:/bin/bash
otez:x:500:500::/home/otez:/bin/bash
olga:x:115:129::/home/olga:/bin/bash


а после какбы неудачной попытки удаления стало

# cat /etc/passwd | awk '/bash/{print}'
root:x:0:0:System Administrator:/root:/bin/bash
otez:x:500:500::/home/otez:/bin/bash
А вот теперь его в системе нет.


то есть пользователь всёже удалён из системы?

Удалён. Но вычищайте руками всё, что осталось от пользователя поиском по его имени и UID/GID.
По ссылке есть пример. Там вроде бы всё учёл, раз уж никто ничего не подсказал и не поправил.

Пример (ближе к концу текста):
Для нестандартных ситуаций очистки системы от файлов пользователя.
Где их найти?
С учётом, что ID пользователя 503, логин tester.
# cat /etc/group|grep tester
# cat /etc/passwd|grep tester
# ls -laF /tmp|grep 503
# ls -laF /tmp|grep tester
# ls -laF /tmp/.private/|grep tester
# ls -laF /etc/tcb/|grep tester
# ls -laF /var/mail/|grep tester
# ls -laF /home|grep tester

Цитировать
man userdel

       -r, --remove
           Files in the user’s home directory will be removed along with the home directory itself and the user’s mail
           spool. Files located in other file systems will have to be searched for and deleted manually.

           The mail spool is defined by the MAIL_DIR variable in the login.defs file.

Ключ -r сломается если хомяк уже удалён.
Сработает с userdel, если ничего ещё не трогалось, прибивая и хомяк и мыло. Остальное руками.
« Последнее редактирование: 14.04.2014 17:40:03 от Speccyfighter »

Оффлайн bang67

  • Участник
  • *
  • Сообщений: 544
  • Simply Linux-6.0.1 t6

Уязвимость в том, что у вас появились права root. Система тут не при чём.
Ну да, я же писал, что создавал учётную запись в альтераторе. В него с другими правами не попасть.
« Последнее редактирование: 14.04.2014 17:54:39 от bang67 »
В споре рождается истина, но иногда умирает здравый смысл.(с)

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
Да, кстати, не забываейте в постах после и до тегов code и желательно quote расставлять Enter'ы.
А то руками форматируя текст квоты ответа, пропадает всякое желание отвечать, занимаясь вместо ответа форматированием, чтобы хоть что-то уловить из сути.

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 168
    • Домашняя страница

Уязвимость в том, что у вас появились права root. Система тут не при чём.
Ну да, я же писал, что создавал учётную запись в альтераторе. В него с другими правами не попасть.
Я проверил на Simply Linux 7.0.4
1. При создании пользователя (второго), создаётся пользователь с uid 501.
2. При удалении домашний каталог и спул сообщений остаются. Вот не знаю, возможно, это баг.
3. Если создать ещё раз с тем же именем, пользователь получает старый id, соответственно доступ к старому домашнему каталогу и спулу писем.

Проблема возникает, если с этим uid создаётся пользователь с другим именем. Появляется конфликт имён и uid.
Андрей Черепанов (cas@)

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 168
    • Домашняя страница
Товарищи подсказывают, что правильнее никогда не удалять пользователей, а только их блокировать.
Андрей Черепанов (cas@)

Оффлайн bang67

  • Участник
  • *
  • Сообщений: 544
  • Simply Linux-6.0.1 t6
Андрей, а каким способом создавали второго пользователя? Имею в виду в альтераторе или консольными командами.
В споре рождается истина, но иногда умирает здравый смысл.(с)

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
В шелл от root как обычно:

Домашнего каталога пользователя test не существует:
# ll /home/|grep test
#

Файла почты тоже:
# ll /var/mail/|grep test
#

Пользователь test в системе не зарегистрирован:
# cat /etc/passwd | awk '/bash/{print}'|grep test
#


Создать пользователя test:
# useradd test

Также после этой команды создан каталог пользователя test:
# ll /home/|grep test
drwx------  8 test     test     4096 апр 14 17:47 test/

с профилем:
# ll /home/test
итого 56
drwx------ 8 test test 4096 апр 14 17:47 ./
drwx------ 2 test test 4096 апр 14 17:47 .xsession.d/
-rw------- 1 test test  182 апр 14 17:47 .bash_profile
-rw------- 1 test test  124 апр 14 17:47 .bashrc
drwx------ 2 test test 4096 апр 14 17:47 .cache/
drwx------ 2 test test 4096 апр 14 17:47 .config/
drwx------ 3 test test 4096 апр 14 17:47 .local/
-rw------- 1 test test   17 апр 14 17:47 .lpoptions
drwx------ 3 test test 4096 апр 14 17:47 .mutt/
-rw------- 1 test test  120 апр 14 17:47 .rpmmacros
drwx------ 2 test test 4096 апр 14 17:47 .ssh/
-rwx------ 1 test test  240 апр 14 17:47 .xprofile
drwxr-xr-x 5 root root 4096 апр 14 17:47 ../
-rw------- 1 test test   24 апр 14 17:47 .bash_logout

и файлом почты:
# ll /var/mail/|grep test
-rw-rw----  1 test     mail    0 апр 14 17:47 test

Задать пользователю test пароль:
# passwd test
passwd: updating all authentication tokens for user test.
...

Enter new password:
Weak password: too short.
Re-type new password:
passwd: all authentication tokens updated successfully.

Всё.

Удаление пользователя test из системы:
# userdel -r test

Из системы пользователь удалён:
# cat /etc/passwd | awk '/bash/{print}'|grep test
#

Удалён его домашний каталог:
# ll /home/test
ls: невозможно получить доступ к /home/test: Нет такого файла или каталога

И файл почты
# ll /var/mail/|grep test
#

Остальное если что, дочистить руками. Как найти показывал.
Где ещё искать пользователя test:
# grep -rl ^test: /etc/
/etc/gshadow
/etc/tcb/test/shadow
/etc/passwd
/etc/group
# ls -laR /tmp/.private/|grep кто
# ls -laR /tmp/.private/|grep $UID
# ls -laR /tmp/.private/|grep $GID
# ls -laR /var/mail/|grep test
# ls -laR /var/mail/|grep $UID
В смысле:
$ echo $UID
$ echo $GID
После выноса пользователя из системы, права на оставшиеся от пользователя файлы и каталоги отображаются в виде $UID $GID существовавшего в системе пользователя.

Тоже всё.
« Последнее редактирование: 14.04.2014 20:05:34 от Speccyfighter »

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 168
    • Домашняя страница
Андрей Черепанов (cas@)

Оффлайн bang67

  • Участник
  • *
  • Сообщений: 544
  • Simply Linux-6.0.1 t6
А почему на команду
# useradd -u 503 -g 503 -G mail,audio,users -m -k /etc/skel -d /home/olga
запуск: useradd [-u uid [-o]] [-g группа] [-G группа,...]
                [-d дом.] [-s шелл] [-c коммент.] [-m [-k шаблоны]]
                [-f неактивн.] [-e истекает]
               [-p passwd] [-n] [-r] name
       useradd -D [-g group] [-b base] [-k template] [-s shell]
                [-f неактивн.] [-e истекает]
такой выхлоп?
Без опций и ключей команда работает, пользователь создаётся. А в таком виде нет.
« Последнее редактирование: 14.04.2014 20:14:31 от bang67 »
В споре рождается истина, но иногда умирает здравый смысл.(с)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 152
name
Забыли в конце... обязательное поле!
Сноси Винду, переходи на Линукс ! :)

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
А почему на команду
# useradd -u 503 -g 503 -G mail,audio,users -m -k /etc/skel -d /home/olga
запуск: useradd [-u uid [-o]] [-g группа] [-G группа,...]
                [-d дом.] [-s шелл] [-c коммент.] [-m [-k шаблоны]]
                [-f неактивн.] [-e истекает]
               [-p passwd] [-n] [-r] name
       useradd -D [-g group] [-b base] [-k template] [-s shell]
                [-f неактивн.] [-e истекает]
такой выхлоп?
Без опций и ключей команда работает, пользователь создаётся. А в таком виде нет.

Оттуда же:

Создаём группу с gid=503 для будущего пользователя соответствующим правам файлов пользователя:
# groupadd  -g 503 tester

Создаём пользователя:
# useradd -u 503 -g 503 -m -k /etc/skel -d /home/tt tester

В варианте первом, который описан вторым, команда
# groupadd  -g 503 tester

должна предварять команду
# useradd -u 503 -g 503 -m -k /etc/skel -d /home/tt tester
потому, что ключ -g, с указанием номера gid, в команде useradd добавляет пользователя только в уже существующую группу. Поэтому её необходимо предварительно создать.


# useradd -u 503 -g 503 -m -k /etc/skel -d /home/prb probe
useradd: группа 503 не существует
# groupadd  -g 503 probe
#
# useradd -u 503 -g 503 -m -k /etc/skel -d /home/prb probe
#
# cat /etc/passwd | awk '/bash/{print}'|grep probe
probe:x:503:503::/home/prb:/bin/bash

Занятые login, $UID/$GID и имена домашних каталогов:
cat /etc/passwd | awk '/bash/{print}'

Эту команду удобно использовать алиасом:
alias whoregsys='cat /etc/passwd | awk '/bash/{print}''
поместив её в файл $HOME/.bashrc
С последующим выполнением команды вывода пользователей зарегистрированных в системе, как результата выполнения команды:
whoregsys

Удаление алиаса не прописанного в $HOME/.bashrc:
alias|grep whoregsys # алиас существует
alias whoregsys='cat /etc/passwd | awk /bash/{print}'
unalias whoregsys # Собсно само удаление


Ага, и berkut_174 подсказывает:
а логин пользователя, в конце после пути к домашнему каталогу, указать?
« Последнее редактирование: 14.04.2014 23:56:27 от Speccyfighter »

Оффлайн bang67

  • Участник
  • *
  • Сообщений: 544
  • Simply Linux-6.0.1 t6
Спасибо, разобрался. Есть второй пользователь, но... Результат тот же, что в первом посте темы.Экраны входа в систему в аттаче. Кроме того система под вторым пользователем неработоспособна.
В споре рождается истина, но иногда умирает здравый смысл.(с)

Оффлайн bang67

  • Участник
  • *
  • Сообщений: 544
  • Simply Linux-6.0.1 t6
Клик по значку мой компьютер ни к каким действиям не приводит, по значку мои документы открывается QMMP. Меню на английском.
В споре рождается истина, но иногда умирает здравый смысл.(с)

Оффлайн Speccyfighter

  • Мастер
  • ***
  • Сообщений: 10 259
на английском.

Где-то тут:
$ rpm -qf $(which kpersonalizer)
kdebase-wm-3.5.13.2-alt5
$ apt-cache search kde-i18n-ru
kde-i18n-ru - Russian language support for KDE
« Последнее редактирование: 14.04.2014 22:23:58 от Speccyfighter »

Оффлайн bang67

  • Участник
  • *
  • Сообщений: 544
  • Simply Linux-6.0.1 t6
У меня так
$ rpm -qf $(which kpersonalizer)
kdebase-wm-3.5.13.2-alt6.M60T.1
и так
$ apt-cache search kde-i18n-ru
kde-i18n-ru - Russian language support for KDE
А в мастере настройки рабочего стола можно выбрать только английский язык.
В споре рождается истина, но иногда умирает здравый смысл.(с)