Я хочу изучить команды sudo
для терминала GNOME.
Я заядлый пользователь Ubuntu, однако мне очень хотелось бы изучить как можно больше команд и ярлыков. Я использую 32-разрядную версию Ubuntu 12.04 на Compaq Presario cq60.
Примечание:
Например:
В вашей системе Linux есть три пользователя: userA, userB и root. Когда вы вошли в систему с пользователем A, предположим, что домашний каталог пользователя A - это / home / userA. Вы касаетесь файла и устанавливаете, что он может быть прочитан только пользователем A
cd ~ && echo 'content' >> filename && chmod 700 filename
Затем, когда вы вышли из системы userA и вошли в систему с помощью userB, предположим, что домашний каталог пользователя B - это / home / userB. Тогда вы обнаружите, что вы не можете cat содержимое файла
cat /home/userA/filename //permission denied
, тогда вы можете настроить, чтобы userB мог выполнять команду cat от имени userA. процесс конфигурации:
echo 'userB ALL=(userA) SETENV: NOPASSWD: /bin/cat’ > /etc/sudoers.d/userB
Затем пользователь B может отслеживать содержимое файла с помощью этой команды
sudo -u userA cat /home/userA/filename
Чтобы получить все команды sudo , введите sudo -h
в Terminal .
$ sudo poweroff
Иногда вам нужно poweroff прямо с вашего терминала. Эта команда выполнит задачу.
$ sudo apt-get update
Для установки, удаления и обновления любого пакета у нас есть (APT) менеджер пакетов. Команда apt-get поможет вам в установке.
$ sudo su
Этот SuperUserDo - самая важная команда, которую будут использовать новички в Linux. Каждая команда, для которой требуется разрешение root, нуждается в этой команде sudo.
$ sudo reboot
Перезагрузите компьютер.
$ sudo mount /dev/sda3 /mnt
После предоставления доступа к sudo вашей учетной записи в / etc / sudoers вы можете передать любую команду root в качестве аргумента команды sudo.
$ sudo bash
Чтобы получить корневую оболочку из вашей учетной записи пользователя.
НЕ ВЫПОЛНЯТЬ ЭТУ КОМАНДУ!
blockquote>
$ sudo rm -rf /
Удаляет ваш Linux или Mac OS X во время его работы.Смотрите это видео "sudo rm -rf /" в Ubuntu 15.10.
sudo (superuser do) - отличный инструмент для ограничения доступа к корневой учетной записи (или другим учетным записям). При обычном использовании он настроен так, что люди в группе wheel могут запускать команды от имени пользователя root, если они дают ему свой пароль.
Прелесть sudo в том, что вы можете предоставить root-доступ определенным пользователям, не давая им root-пароль. Кроме того, вы можете указать только предоставить им доступ к определенным командам на определенных хостах. Лучше всего то, что sudo регистрирует каждую команду, которая проходит через него, поэтому вы можете легко отследить любые проблемы, которые могут возникнуть.
Использование sudo
Использование sudo до смешного просто. Если вы хотите запустить команду от имени пользователя root, просто введите аргументы программы sudo. Например:
sudo passwd tstrombe
Если вы хотите запускать команды от имени пользователя, отличного от root, используйте sudo -u username
программные аргументы, например:
sudo -u condor /usr/local/sbin/condor_start
В редких случаях вы может потребоваться запустить всю оболочку от имени другого пользователя. Это не рекомендуется, потому что он не будет регистрировать команды, которые вы выполняете в этой оболочке, хотя иногда это делает вещи более удобными, когда у вас нет доступа к каталогу, в котором вы хотели бы работать. Это запустит корневую оболочку:
sudo -s
Для получения дополнительных советов, я рекомендую посмотреть руководство sudo.
man sudo
Настройка sudo
Добавление себя в группу колес
Если вы введете команду groups, вы увидите список групп, которые вы активный член.
% groups
wheel uucp dialout audio video condor
Если не указано колесо, вы захотите добавить себя в группу колес. Вы можете использовать инструменты графического управления, которые поставляются с вашей системой, или просто использовать ваш любимый текстовый редактор в качестве пользователя root и отредактировать / etc / group . Добавьте себя в строку «wheel»:
wheel:x:10:tstrombe
Вам нужно будет выйти и снова войти, чтобы изменения членства вступили в силу. Однако перед этим вы можете сделать следующий шаг.
Редактирование конфигурации sudo
Откройте терминал и убедитесь, что для переменной EDITOR выбран предпочитаемый вами редактор, в противном случае вы будете редактировать файл sudoers с помощью vi.
Теперь вы можете запустить visudo от имени root:
/usr/sbin/visudo
Включение группы колес в sudo
Поставить знаки # в начале этих строк : (если не найден)
По умолчанию targetpw # запрашивать пароль у целевого пользователя, т.е. root
% users ALL = (ALL) ALL # WARNING! Используйте это только вместе с «Defaults targetpw»!
Затем вы увидите две строки, которые упоминают группу колес. Если у вас нет конфиденциальных данных на вашем компьютере, и вы абсолютно уверены, что никто, кроме вас, никогда не будет использовать его или попадет в него, вы можете раскомментировать NOPASSWD, в противном случае я настоятельно рекомендую первый вариант. Это показывает нашу рекомендуемую конфигурацию:
# Раскомментируйте, чтобы разрешить людям в групповом колесе выполнять все команды
% wheel ALL = (ALL) ALL
# То же самое без пароля
% wheel ALL = (ALL) NOPASSWD: ALL
Теперь вы можете сохранить этот файл и выйти. Теперь вам должно быть разрешено использовать команду sudo. Изменение времени ожидания пароля
По умолчанию sudo запросит ваш пароль через 5 минут после его использования. Вы можете изменить это время ожидания до 20 минут, добавив следующую опцию в файл sudoers с помощью visudo.
timestamp_timeout = 20
Если вы действительно хотите, вы можете также указать это время ожидания для каждого пользователя.
Вы можете сделать гораздо больше.
Вероятно, ваше представление о sudo
неверно, если знать, что это функция:
Тип man sudo
в терминале
Это инструмент, позволяющий пользователю что-то делать от имени другой пользователь. В основном используется для получения привилегий root для обычных пользователей.
Например. apt-get install
нужны права суперпользователя для установки программного обеспечения. Поэтому мы используем sudo apt-get install