Почему UID основного администратора 501?

Процессор определяет доступные размеры страницы. В большинстве случаев размер страницы, реализованный аппаратно на процессорах x86 и x86_64, составляет 4 КБ. Однако операционная система может выделять более одной страницы за раз, если она этого хочет, и тем самым эффективно реализовывать страницы размером 8, 16 или 32 Кбайт в программном обеспечении.

Процессоры x86 и x86_64 могут соответственно также смешивать страницы размером 4 и 2 МБ вместе со стандартными страницами размером 4 КБ. Если эта возможность вообще будет использоваться, она будет в основном использоваться для выделения пространства ядра.

11
14.04.2017, 15:22
2 ответа

Многие Unix-системы начинают раздавать UID пользователям с какого-то определенного числа. В Solaris первый пользователь общего назначения получает UID 100, в OpenBSD - 1000, а в macOS, похоже, UID 501 будет UID первого созданного интерактивного пользователя, который также, вероятно, является пользователем-администратором macOS (что не то же самое, что пользователь root).

Учетные записи с меньшими номерами - это учетные записи системных пользователей для демонов и т. д. Это позволяет легче отличить интерактивные "человеческие" учетные записи от учетных записей системных служб. Это также может облегчить управление пользователями, аутентификацию и т.д. в различных программах. YP/NIS, немного устаревшая система для хранения учетных записей пользователей (и другой информации) на центральном сервере без необходимости создавать локальных пользователей на нескольких клиентских машинах, например, имеет настройки MINUID и MAXUID для диапазона учетных записей пользователей, которые она должна обрабатывать.

На некоторых Unices диапазон учетных записей системных служб может быть выделен для стороннего программного обеспечения, например, UID от 50 до 999 на FreeBSD или от 500 до 999 на OpenBSD.

Все эти диапазоны выбираются создателями и сопровождающими отдельных Unices в соответствии с ожидаемыми потребностями их операционной системы. Стандарт POSIX ничего не говорит об этих вещах. Самый низкий и самый высокий распределяемый UID (и GID) часто настраивается локальным администратором (см. руководство adduser).

Большинство Unices резервирует UID 0 для root, суперпользователя, и назначает максимально возможный UID (или, по крайней мере, какое-то высокое значение) пользователю nobody (Solaris использует UID 60001, OpenBSD - 32768, но UID может быть намного больше этого).

(См. комментарии о том, что UID 0 всегда является root (или нет), что является небольшим отступлением от этой темы)


Обновление: Проект OpenBSD недавно отверг идею рандомизации распределения UID/GID.

22
27.01.2020, 19:57

Для дистрибутивов, которые следуют LSB, они назначают UID и GID 0-99 статически. UID 100-499 назначаются динамически, но они также предназначены для системы, а не для учетных записей входа.

Например, демоны печати, такие как cups, имеют собственную учетную запись пользователя. Таким образом, если уязвимость в демоне эксплуатируется, демон не работает как root с полной властью над системой. (При этом он не обязательно имеет право вмешиваться в работу других демонов).

В более поздних дистрибутивах Linux системный диапазон расширен до 999.

Это оставило бы UID от 500 и выше (или от 1000) для учетных записей входа.

Debian дополнительно имеет статическое распределение для UIDGID 100, хотя я не могу себе представить, чтобы это отклонение вызывало какую-либо конкретную проблему.

Легко представить себе другую систему с отклонением на единицу, которая дополнительно резервирует UID 500. долго, без обновления).

Первая учетная запись для входа не обязательно должна быть учетной записью администратора или основной учетной записью администратора. Системы не обязательно используют sudo (особенно если они предшествуют этому :).В этом случае вы можете сказать, что «основная учетная запись администратора» — root. Кроме этого, дистрибутивы *nix и Linux общего назначения не распознают конкретную «основную учетную запись администратора».

8
27.01.2020, 19:57

Теги

Похожие вопросы