Прелесть утилиты sudo — это выполнение команд не предоставляя пароля пользователя root.
Т.к. в системе данной утилиты нет, то сперва обновим порты, установим её и сконфигурируем.
Для начала обновим порты:
ekzor# portsnap fetch
Looking up portsnap.FreeBSD.org mirrors… 6 mirrors found.
Fetching public key from ec2-eu-west-1.portsnap.freebsd.org… done.
Fetching snapshot tag from ec2-eu-west-1.portsnap.freebsd.org… done.
Fetching snapshot metadata… done.
Fetching snapshot generated at Sun Dec 9 04:23:44 MSK 2012:
3bd596627b66a5a9909a724060fbc5bb91c340373617ff100% of 68 MB 4528 kBps 00m00s
Extracting snapshot… done.
Verifying snapshot integrity… done.
Fetching snapshot tag from ec2-eu-west-1.portsnap.freebsd.org… done.
Fetching snapshot metadata… done.
Updating from Sun Dec 9 04:23:44 MSK 2012 to Sun Dec 9 10:28:13 MSK 2012.
Fetching 4 metadata patches… done.
Applying metadata patches… done.
Fetching 0 metadata files… done.
Fetching 13 patches…..10. done.
Applying patches… done.
Fetching 0 new ports or files… done.
Через утилиту whereis определим в каком каталоге с портом присутствует искомый пакет sudo:
ekzor# whereis sudo
sudo: /usr/ports/security/sudo
Переходим в каталог с портом sudo:
ekzor# cd /usr/ports/security/sudo
Выполняем конфигурирование:
ekzor# make config
И устанавливаем:
ekzor# make install clean
Что бы постоянно не вводить sudo перед каждой командой — можно выполнить:
$ sudo -s
Password:
ekzorchik is not in the sudoers file. This incident will be reported.
, как видим пользователь ekzorchik не делегирован суперпользователем, чтобы повышать свои права исправим это отредактировав конфигурационный файл /usr/local/etc/sudoers.
$ su -l root
Password:
(если у Вас нет в системе консольного редактора nano используете редактор — ee)
ekzor# nano /usr/local/etc/sudoers
nano: Command not found.
ekzor# ee /usr/local/etc/sudoers
ekzorchik ALL=(ALL) ALL
Сохраняем внесенные изменения, «Ctrl + C» и набираем «exit».
Теперь мы разрешили повышать себе права:
$ sudo -s
Password:
# exit
символ перед командой sudo «$» – мы обычный пользователь, символ перед командой exit «#» – мы суперпользователь (root)
Чтобы разрешить пользователю, к примеру keiz выполнять команду перезапуска службы Web сервера Apache:
# ee /usr/local/etc/sudoers
keiz ALL=NOPASSWD:/usr/local/sbin/apachectl
Вот собстенно и всё!!!