FreeBSD: su - Sorry

Часто встречалась ситуация, когда вы в FreeBSD путаетесь стать суперпользователем, запускаете команду su и вместо

@aldan ~> su -
Password:
@aldan ~>

получаете

$ su -
su: Sorry
$

Это происходит от того, что пользователь, запустивший команду su, не находится в группе wheel (gid=0). Достаточно сменить основную группу пользователя при помощи команды chsh или добавить его в группу wheel в файле /etc/group  следующим образом

#aldan ~> head /etc/group
# $FreeBSD: src/etc/group,v 1.35 2007/06/11 18:36:39 ceri Exp $
#
wheel:*:0:root,nm

И после этого пользователь сумеет запускать команду su и становиться суперпользователем.

Вот как выглядит информация о пользователе, который не в группе wheel

$ id
uid=1002(nm1) gid=20(staff) groups=20(staff)
$

А вот так, если он в группе wheel:

@aldan ~> id
uid=1001(nm) gid=20(staff) groups=20(staff),0(wheel)
@aldan ~>

Ну и напоследок. Команда su без аргументов меняет UID/GID пользователя, но остановляет  переменные окружения без изменения. Т.е. $HOME будет показывать на вашу домашнюю директорию, а не на директорию пользователя root и так далее.

Команда su - , наоборот, выполняет полный логин, с заменой всех переменных окружения. Я лично предпочитаю использовать именно ее, а не просто su.

Удачного вам суперпользования и никаких “su: Sorry:)

Что еще почитать:

0 Responses to “FreeBSD: su - Sorry”


  1. No Comments

Leave a Reply






Анонс книги: Использование Shell с нуля и до профи!