Я понимаю * пользователь первичного администратора получает идентификатор пользователя 501
и последующие пользователи получают добавочные номера ( 502
, 503
, ...). Но почему 501
? В чем особенность 50x
, какова историческая / техническая причина этого выбора?
* Я начал изучать это, когда мне стало любопытно, почему на моем внешнем жестком диске все файлы с мусором .Trashes/501
. Мой поиск привел меня к выводу, 501
является ли идентификатор пользователя для основного администратора в системах * nix (я на MacOS), но не почему .
osx
users
history
unix-philosophy
user137369
источник
источник
Ответы:
Многие системы Unix начинают раздавать UID пользователям по определенному номеру. Solaris предоставит первый универсальный пользовательский UID 100, в OpenBSD - 1000, а в macOS - UID 501, который будет UID для первого созданного интерактивного пользователя, который, скорее всего, также является администратором macOS (что не одно и то же). как пользователь root).
Учетные записи с меньшими номерами являются системными учетными записями демонов и т. Д. Это позволяет отличить интерактивные «человеческие» учетные записи от учетных записей системных служб. Это также может упростить управление пользователями, аутентификацию и т. Д. В различных программах. YP / NIS , немного устаревшая система для хранения учетных записей пользователей (и другой информации) на центральном сервере без необходимости создавать локальные пользователь на нескольких клиентских машинах, например, имеет
MINUID
иMAXUID
настройки для диапазона учетных записей пользователей , которые он должен обрабатывать.В некоторых Unix диапазон учетных записей системных служб может быть выделен стороннему программному обеспечению, например, UID от 50 до 999 в FreeBSD или от 500 до 999 в OpenBSD.
Все эти диапазоны выбираются производителями и сопровождающими отдельных единиц в соответствии с ожидаемыми потребностями их операционной системы. Стандарт POSIX ничего не говорит об этих вещах. Самый низкий и самый высокий выделяемый UID (и GID) часто настраивается локальным администратором (см. Ваше
adduser
руководство).Большинство Unices резервируют UID 0 для
root
суперпользователя и назначают пользователю максимально возможный UID (или, по крайней мере, некоторое высокое значение)nobody
(Solaris использует UID 60001, OpenBSD использует 32768, но UID может быть намного больше этого).(См комментарии о UID 0 всегда
root
(или нет), что является небольшим отступлением от этой темы)Обновление: проект OpenBSD недавно отверг идею рандомизации распределения UID / GID.
источник
Для распределений, которые следуют за LSB , они статически выделяют UID и GID 0-99. UID 100-499 распределяются динамически, но они также предназначены для системы, а не для учетных записей входа.
Например, такие демоны печати, как
cups
правило, имеют собственную учетную запись. Таким образом, если используется уязвимость в демоне, он не работаетroot
с полной властью над системой. (И при этом это не обязательно имеет власть вмешиваться в других демонов).В более поздних дистрибутивах Linux диапазон системы увеличен до 999.
Это оставило бы UID 500 выше (или 1000 вверх) для учетных записей.
Debian дополнительно имеет статическое распределение для
UIDGID 100, хотя я не могу себе представить, что отклонение вызывает какую-то конкретную проблему.Легко представить себе другую систему с отклонением от одного к другому, которое дополнительно резервирует UID 500. (Я предполагаю, что это все еще будет соответствовать требованиям; я не могу себе представить, что все Linux нарушали LSB так долго, без это обновляется).
Первая учетная запись не должна быть ни учетной записью администратора, ни основной учетной записью администратора. Системы не обязательно используют
sudo
(особенно, если они предшествуют этому :). Вы можете сказать, чтоroot
в этом случае «основная учетная запись администратора» . Кроме этого, * nix и универсальные дистрибутивы Linux не распознают определенную «основную учетную запись администратора».источник
On more recent Linux distributions, the system range is extended up to 999.
- У меня всегда был идентификатор пользователя от 1000 и выше, и я начал использовать Linux в 2005 году. Я бы не назвал это «недавним».