Дьявол в деталях, на useradd
странице руководства (вы можете увидеть это, выполнив man 8 useradd
):
-u, --uid UID
The numerical value of the user's ID. This value must be unique,
unless the -o option is used. The value must be non-negative. The
default is to use the smallest ID value greater than or equal to
UID_MIN and greater than every other user.
Поэтому по умолчанию в файле паролей будет использоваться наименьший неиспользованный uid, который больше других пользователей. Видя, что удаление sbaxter удаляет его из файла passwd, его uid является «свободным» и назначается mjane (так как useradd
выбор uid одинаков для обоих пользователей во время использования useradd
команды).
Файлы на диске хранят только uid, а НЕ перевод имени пользователя (так как этот перевод определен в файле паролей). Вы можете подтвердить это, выполнив команду, ls -ln
чтобы узнать, какие файлы принадлежат uid.
Я бы порекомендовал вам отключить, а не удалять учетные записи. Блокировка учетных записей в большинстве дистрибутивов Linux может быть достигнута usermod -L -e today <username>
, что блокирует пароль и устанавливает срок действия учетной записи сегодня (вы можете увидеть дату истечения срока действия учетной записи с chage -l
).