удалить пользователя с неуникальным идентификатором

удалить пользователя с неуникальным идентификатором

Я создал пользователя с неуникальным идентификатором, передающим -o -u 1000 -mопцию в useraddкоманду. Так что теперь у меня есть два пользователя с одинаковым идентификатором, но с разными именами и разными домашними каталогами.
Я подумал, что это может быть решением для создания новой чистой среды (для целей тестирования) и сохранения тех же прав доступа к некоторым каталогам и файлам разработки.

Хотя создание пользователя и вход в его собственную среду рабочего стола прошли успешно, одно приложение, вручную запущенное с терминала, использовало домашний каталог исходного пользователя. Поэтому, начиная idea.shкакscantligt_2все еще использовал домашний каталог пользователяскудный свет.

как это возможно? почему это приложение все еще использует домашний каталог исходного пользователя, даже если я запустил его как второе использование?

вот содержимое некоторых переменных окружения.

$> echo $HOME
/home/scantlight_2

$> echo $USER
scantlight_2

$> cd ~
$> pwd
/home/scantlight_2

и после всех испытаний,
Безопасно ли удалять пользователя «scantlight_2» с помощью userdelкоманды или мне следует сделать это вручную из /etc/shadowфайла, чтобы избежать конфликтов?

EDIT: idea.shЭто стартовый скрипт IDE "IntelliJ IDEA". Я сделал быструю рекурсию grepпо содержимому каталога bin и не использовал команду getent. Ниже приведена команда, которую я использовал.

grep -r -i "getent|passwd" ./idea_install/bin

Спасибо.

решение1

Большинство программ, которым нужно заботиться об именах пользователей, будут выполнять getent()поиск, чтобы найти UID и использовать его с тех пор - это потому, что пользователи идентифицируются по uid, номеру. Имя - это не более чем красивая печать и удобство.

Например, запустите id 1000или getent passwd 1000, и они отобразят только первую запись для этого uid.

userdelИспользовать или deluserлюбую подобную команду для удаления второго пользователя небезопасно .

Это потому, что они, скорее всего, удалятпервыйпользователя с uid 1000, которого они находят.

Вместо этого вам необходимо вручную отредактировать файлы паролей и групп:

  • vipwи vipw -sредактировать /etc/passwdи/etc/shadow
  • vigrи vigr -sредактировать /etc/groupи/etc/gshadow

Связанный контент