Решено: Создание системного пользователя...
Модераторы: Warderer, Модераторы разделов
-
prof
- Сообщения: 119
- ОС: gentoo
Решено: Создание системного пользователя...
Что-то прочтение maint-guide-ru не пролило свет на вопрос: как создать системного пользователя при установке пакета.
Может кто-то знаком с этой темой и что-то подскажет?
Может кто-то знаком с этой темой и что-то подскажет?
-
BIgAndy
- Сообщения: 1923
-
watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: Решено: Создание системного пользователя...
А посмотреть существующие пакеты, которые создают системных пользователей? Вообще, для этого используется useradd -r, насколько я знаю. Можно и adduser, но он больше для ручного использования и пакет adduser — important, а passwd (в котором useradd) — required.
Мои розовые очки
-
Bizdelnick
- Модератор
- Сообщения: 21347
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Решено: Создание системного пользователя...
UID<1000.
Ваш К.О.
Пишите правильно:
| в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
eddy
- Сообщения: 3321
- Статус: Красный глаз тролля
- ОС: ArchLinux
Re: Решено: Создание системного пользователя...
Откуда такая цифра? В мандриве, например, пользователи начинаются с номера 500...
RTFM
-------
KOI8-R - патриотичная кодировка
-------
KOI8-R - патриотичная кодировка
-
BIgAndy
- Сообщения: 1923
Re: Решено: Создание системного пользователя...
O_O
Я, видимо на всех своих машинах создаю искоючительно системных пользователей, ибо adduser по умолчнию создаёт с UID>500 .
500<UID<1000
Я еще могу понять "системного" это где shell в /dev/null перенаправлен.. И то это не догма.
-
Bizdelnick
- Модератор
- Сообщения: 21347
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Решено: Создание системного пользователя...
А в Дебиане с 1000 (раньше в Мандриве ЕМНИП было так же). Хотя UID'ы наличествующих у меня системных юзеров и до 200 не доходят.
man adduser.conf
man login.defs
Как дистростроители решили, так и создаёт.
Пишите правильно:
| в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
alv
- Бывший модератор
- Сообщения: 7275
- Статус: Пенсионер в законе
- ОС: Cintu
Re: Решено: Создание системного пользователя...
UID системного и не очень системного пользователя в разных дистрах бывает разный: где не очень начинается с 500, где с 1000, а во FreeBSD так вообще с 1001. И в общем случае UID'ы обоих могут быть произвольными, кроме 0 в Linux'е или 1 в BSD.
А отличие системных (или, как их называл Паскаль, псевдопользователей) в том, что они не имеют шелла и домашнего каталога в собственном смысле слова.
-
Bizdelnick
- Модератор
- Сообщения: 21347
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Решено: Создание системного пользователя...
О чём я и говорю. Но мы же в дебиановском разделе вроде. (-:
Пишите правильно:
| в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: Решено: Создание системного пользователя...
У меня почти все системные пользователи имеют shell.
А что такое «собственный смысл» «слова» «домашний каталог»? У меня вот некоторые системные пользователи вполне себе имеют домашний каталог. На самом деле, домашний каталог есть у всех, но у некоторых этот каталог обладает смыслом, вполне похожим на домашний каталог несистемных пользователей: например, пользователь www-data с домашним каталогом в /var/www. Это значит, что www-data — не системный пользователь? Или как?
Мои розовые очки
-
alv
- Бывший модератор
- Сообщения: 7275
- Статус: Пенсионер в законе
- ОС: Cintu
Re: Решено: Создание системного пользователя...
Я думаю, что и в Дебиане можно сделать системного пользователя с UID 1500 и обычного - с UID 499
Вот только это и нафиг никогда не нужно, верно?
На самом деле я с давних пор слежу, чтобы мой главный рабочий аккаунт всегда имел UID 1001 - тогда его данные можно без лишних телодвижений таскать между любыми дистрами и ОСями. А системные UID'ы - кого они волнуют?
-
alv
- Бывший модератор
- Сообщения: 7275
- Статус: Пенсионер в законе
- ОС: Cintu
Re: Решено: Создание системного пользователя...
И какой, интересно? Обычно это поле или пусто, или там стоит /sbin/nologin, что, согласитесь, шеллом не является.
watashiwa_darede... писал(а): ↑09.07.2011 21:17А что такое «собственный смысл» «слова» «домашний каталог»?
/home/username или /usr/home/username
watashiwa_darede... писал(а): ↑09.07.2011 21:17например, пользователь www-data с домашним каталогом в /var/www.
Я, честно говоря, не понимаю смысла этого: Фря и большинство "простых" Линуксов прекрасно живут без этого, в них соответствующее поле пустое. Это редхатоиды и дебианоиды выпендриваются
-
neol
- Сообщения: 600
- ОС: Debian Stable
Re: Решено: Создание системного пользователя...
Packages which need a user or group, but can have this user or group allocated dynamically and differently on each system, should use adduser --system to create the group and/or user.
http://www.debian.org/doc/debian-policy/ch...sys.html#s9.2.2
-
prof
- Сообщения: 119
- ОС: gentoo
Re: Решено: Создание системного пользователя...
Искал, в частности переворошил postgresql, т.к. собирал его из исходников, но намёков на то место где "возникает" пользователь postgres так и не нашёл. Потому и хотел, что бы высказались те кто пробовал.watashiwa_daredeska писал(а): ↑09.07.2011 20:19А посмотреть существующие пакеты, которые создают системных пользователей?
2All, ну и нафлудили, системный тот, у которого, как правило, нет пароля, и с его uid'ом работают сервисы. Но тут вопрос не столько в значении идентификатора, сколько в том, какие механизмы для этого существуют в пакетной системе debian.
-
neol
- Сообщения: 600
- ОС: Debian Stable
Re: Решено: Создание системного пользователя...
Гляньте postinst скрипт.
PS А нелепое обсуждение определения системного пользователя предлагаю вынести за рамки этой темы.
-
Goodvin
- Ведущий рубрики
- Сообщения: 4333
- Статус: ⚝⚠⚒⚑⚖☭☞☣☤&
Re: Решено: Создание системного пользователя...
А это кто решил, что обсуждение "нелепое"?
-
Bizdelnick
- Модератор
- Сообщения: 21347
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Решено: Создание системного пользователя...
У меня в большинстве случаев /bin/sh, у многих /bin/false, а у одного даже /bin/bash. Зачем - не знаю.
Пишите правильно:
| в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
-
watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: Решено: Создание системного пользователя...
/bin/sh. У несистемных пользователей shell, как правило, /bin/bash.
Пусто в Debian'е не бывает, а /bin/nologin я шеллом и не считаю, поэтому и указал: «почти все».
Смысл в том, что если от имени системного пользователя могут запускаться программы, то эти программы могут расчитывать на наличие домашнего каталога и конфигурации в нем, или еще каким образом использовать его (некоторые ftp-серверы, например, используют его как document root). И домашний каталог совершенно не обязан быть в /home или /usr/home, это всего лишь соглашение, на которое НЕЛЬЗЯ рассчитывать в программах, нужно либо честно выколупывать home из /etc/passwd (и аналогов), либо использовать переменную $HOME.
Мои розовые очки
-
prof
- Сообщения: 119
- ОС: gentoo
Re: Решено: Создание системного пользователя...
Глядел, могу показать и Вам:
Код: Выделить всё
#!/bin/sh -e
VERSION=8.4
if [ "$1" = configure ]; then
# fix init script stop priority on upgrades
if dpkg --compare-versions "$2" le-nl "8.4~rc2-1"; then
echo "Fixing init script priorities..."
for l in 0 1 6; do
old=/etc/rc$l.d/K19postgresql-8.4
new=/etc/rc$l.d/K21postgresql-8.4
if [ -e $old ] && ! [ -e $new ]; then
mv $old $new
fi
done
fi
. /usr/share/postgresql-common/maintscripts-functions
configure_version $VERSION "$2"
fi
#DEBHELPER#-
CycaHuH
- Сообщения: 85
- ОС: FreeBSD; Archlinux; Calculate
Re: Решено: Создание системного пользователя...
Плохо глядел
Код: Выделить всё
if [ "$1" = configure ]; then
# Make sure the administrative user exists
if ! getent passwd postgres > /dev/null; then
adduser --system --quiet --home /var/lib/postgresql --no-create-home \
--shell /bin/bash --group --gecos "PostgreSQL administrator" postgres
fi-
neol
- Сообщения: 600
- ОС: Debian Stable
Re: Решено: Создание системного пользователя...
Глядели не там, смотрите postgresql-common
Код: Выделить всё
head -n 15 postgresql-common.postinst
#!/bin/sh
set -e
. /usr/share/debconf/confmodule
db_stop
SSL_ROOT=/etc/postgresql-common/root.crt
if [ "$1" = configure ]; then
# Make sure the administrative user exists
if ! getent passwd postgres > /dev/null; then
adduser --system --quiet --home /var/lib/postgresql --no-create-home \
--shell /bin/bash --group --gecos "PostgreSQL administrator" postgres
fiВообще вы не самый удачный пакет для разбора выбрали, лучше что-то попроще.
UPD Например openssh, Там пакеты из одного исходника собираются, так что все лежит в аккуратной кучке.
-
prof
- Сообщения: 119
- ОС: gentoo
Re: Решено: Создание системного пользователя...
Понятно. Всем спасибо!