What is sudo bash in linux

ИТ База знаний

Курс по Asterisk

Полезно

— Узнать IP — адрес компьютера в интернете

— Онлайн генератор устойчивых паролей

— Онлайн калькулятор подсетей

— Калькулятор инсталляции IP — АТС Asterisk

— Руководство администратора FreePBX на русском языке

— Руководство администратора Cisco UCM/CME на русском языке

— Руководство администратора по Linux/Unix

Серверные решения

Телефония

FreePBX и Asterisk

Настройка программных телефонов

Корпоративные сети

Протоколы и стандарты

Как использовать команду sudo в Linux

Sudo означает SuperUser DO и используется для доступа к файлам и операциям с ограниченным доступом. По умолчанию Linux ограничивает доступ к определенным частям системы, предотвращая компрометацию конфиденциальных файлов.

Онлайн курс по Linux

Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps

Команда sudo временно повышает привилегии, позволяя пользователям выполнять конфиденциальные задачи без входа в систему как пользователь root . В этом руководстве вы узнаете, как использовать команду sudo в Linux с примерами.

Как использовать команду sudo

Установка sudo

Пакет sudo установлен в большинстве дистрибутивов Linux.

Чтобы проверить есть ли у вас эта комманда введите sudo . Вы увидите справочное сообщение или сообщение о том что комнада не найдена.

Чтобы установить sudo используйте для Ubuntu и Debian:

или для CentOS и Fedora

sudo была разработана как способ временного предоставления пользователю административных прав. Чтобы заставить ее работать, используйте sudo перед ограниченной командой, которую можно выполнить только из под рута. Тогда система запросит ваш пароль. После его ввода система запускает команду.

Синтаксис

Опции

sudo можно использовать с дополнительными параметрами:

  • -h — отображает синтаксис и параметры команды
  • -V — отображает текущую версию приложения sudo
  • -v — обновить лимит времени на sudo без запуска команды
  • -l — перечисляет права пользователя или проверяет конкретную команду
  • -к — завершить текущие привилегии sudo

Дополнительные параметры можно найти с помощью ключа -h .

Примечание. Оставаться в системе как администратор ставит под угрозу безопасность сервера. Раньше администраторы использовали su (substitute user) для временного переключения на учетную запись администратора. Однако для команды su требуется вторая учетная запись пользователя и пароль, что не всегда возможно.

Когда используется команда sudo , в системные журналы заносится метка времени. Пользователь может запускать команды с повышенными привилегиями в течение короткого времени (по умолчанию 15 минут). Если пользователь, не принадлежащий к sudo группе, пытается использовать команду sudo , это регистрируется как событие безопасности.

Предоставление привилегий sudo

Для большинства современных дистрибутивов Linux пользователь должен входить в группу sudo, sudoers или wheel, чтобы использовать команду sudo . По умолчанию однопользовательская система предоставляет своему пользователю права sudo . Система или сервер с несколькими учетными записями пользователей могут исключать некоторых пользователей из привилегий sudo .

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

Читайте также:  Create folder link windows

RedHat и CentOS

В Redhat и CentOS wheel группа контролирует пользователей sudo . Добавьте пользователя в группу wheel с помощью следующей команды:

Замените [username] фактическим именем пользователя. Возможно, вам потребуется войти в систему как администратор или использовать команду su .

Debian и Ubuntu

В Debian и Ubuntu группа sudo (sudo group) контролирует пользователей sudo . Добавьте пользователя в группу sudo с помощью следующей команды:

Использование visudo и группы sudoers

В некоторых современных версиях Linux пользователи добавляются в файл sudoers для предоставления привилегий. Это делается с помощью команды visudo .

Используйте команду visudo для редактирования файла конфигурации:

Это откроет /etc/sudoers для редактирования. Чтобы добавить пользователя и предоставить полные права sudo , добавьте следующую строку:

Сохраните и выйдите из файла.

Вот разбивка предоставленных привилегий sudo :

Примечание. Проще добавить пользователя в группу sudo или wheel, чтобы предоставить права sudo . Если вам нужно отредактировать файл конфигурации, делайте это только с помощью visudo . Приложение visudo предотвращает сбои, ошибки и неправильные настройки, которые могут нарушить работу вашей операционной системы.

Тайм-аут пароля sudo

По умолчанию sudo просит вас ввести пароль после нескольких минут бездействия. Изменить это время ожидания по умолчанию, можно отредактировав файл sudoers с помощью visudo и измените время ожидания, добавив строку как в примере, где 10 — это время ожидания, указанное в минутах:

Если вы хотите изменить время ожидания для определенного пользователя, то добавьте имя пользователя.

Примеры sudo в Linux

Основное использование Sudo

1. Откройте окно терминала и попробуйте выполнить следующую команду:

2. Вы должны увидеть сообщение об ошибке. У вас нет необходимых разрешений для запуска команды.

3. Попробуйте ту же команду с sudo:

4. При появлении запроса введите свой пароль. Система выполнит команду и обновит репозитории.

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

1. Чтобы запустить команду от имени другого пользователя, введите в терминале следующую команду:

2. Система должна отображать ваше имя пользователя. Затем выполните следующую команду:

3. Введите пароль для другого пользователя, и команда whoami запустится и отобразит другого пользователя.

Переключиться на root пользователя

Эта команда переключает вашу командную строку на оболочку BASH от имени пользователя root :

Ваша командная строка должна измениться на:

Значение имени хоста будет сетевым именем этой системы. Имя пользователя будет текущим именем пользователя, вошедшим в систему.

Выполнить предыдущие команды с помощью sudo

В командной строке Linux хранятся записи о ранее выполненных командах. Доступ к этим записям можно получить, нажав стрелку вверх. Чтобы повторить последнюю команду с повышенными привилегиями, используйте:

Это также работает со старыми командами. Укажите исторический номер следующим образом:

В этом примере повторяется 6-я запись в истории с командой sudo.

Запуск нескольких команд в одной строке

Соедините несколько команд вместе, разделенных точкой с запятой:

Добавить строку текста в существующий файл

Добавление строки текста в файл часто используется для добавления имени репозитория программного обеспечения к исходному файлу без открытия файла для редактирования. Используйте следующий синтаксис с командами echo , sudo и tee :

Заключение

Теперь вы узнали про команду sudo и про то, как ее использовать.

Мини — курс по виртуализации

Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена

Полезно?

Почему?

😪 Мы тщательно прорабатываем каждый фидбек и отвечаем по итогам анализа. Напишите, пожалуйста, как мы сможем улучшить эту статью.

😍 Полезные IT – статьи от экспертов раз в неделю у вас в почте. Укажите свою дату рождения и мы не забудем поздравить вас.

Источник

Команда sudo – администрирование системы

В Unix-подобных операционных системах должен быть привилегированный пользователь – суперпользователь, он же администратор. Логин его учетной записи – root, а домашний каталог находится в /root. Этот пользователь предназначен для администрирования системы, а значит обладает правами на операции с системными файлами, установку программного обеспечения, создание и удаление других пользователей, предоставление им различных доступов.

Читайте также:  Kali linux samsung galaxy

В более ранних дистрибутивах GNU/Linux, возможно и некоторых сейчас, при установке операционной системы, кроме того что создавался обычный пользователь, надо было задать пароль для root’а. После этого войти в систему можно было как под юзером, так под администратором.

Это создавало дополнительную опасность для системы. Бесконтрольное манипулирование файлами администратором или вход под root’ом злоумышленника могли привести к краху системы. Так выполнение под админом команды rm -rf / ведет к удалению всех файлов.

Поэтому во многих современных дистрибутивах Linux учетная запись суперпользователя отключена, хотя она имеется в системе. Ее можно включить, задав для root’а пароль. Однако этого делать не рекомендуют.

Для администрирования системы Linux сейчас широко используется утилита sudo. Она позволяет первому, который создавался при установке ОС, пользователю выполнять команды с правами администратора. Однако основное преимущество не в том, чтобы не заходить в систему под рутом, а в том, что sudo может быть сконфигурирована так, что пользователь не сможет выполнять абсолютно все административные задачи, а сможет только позволенные.

Используется команда sudo следующим образом:

sudo команда параметры_команды

Допустим, нам надо отредактировать конфигурационный файл hosts. Редактировать мы его планируем в консольном текстовом редакторе nano. Если выполнить команду nano /etc/hosts , файл откроется, но мы не сможем сохранить изменения в нем, так как владельцем файла является root, а все остальные могут только читать файл.

Однако, воспользовавшись sudo, мы откроем файл как суперпользователь и получим право на запись. При этом Bash попросит ввести пароль (вводимые символы при этом не отображаются) вашей (не рута) учетной записи.

Sudo-сессия сохраняется какое-то время. Поэтому выполнение последующих команд с использованием sudo может не требовать ввода пароля.

Если требуется более длительное время работы с правами администратора, то одним из вариантов является команда sudo -s . Вы перейдете в режим суперпользователя, в приглашении командной оболочки Linux символ доллара $ заменяется на знак решетки #. Вернуться в обычный режим можно, выполнив команду exit.

В примере мы переходим в режим администратора, копируем файл в каталог root’а. Под обычным пользователем мы не можем даже просматривать этот каталог.

Курс с ответами к заданиям и дополнительными уроками:
android-приложение, pdf-версия.

Источник

В чем разница между «su -», «sudo bash» и «sudo sh»?

Я хотел бы знать, в чем разница между

Я не могу войти в систему как root, делая это, su — потому что у меня нет пароля root — я имею в виду, что у меня есть свой пароль пользователя, с которым я могу, sudo «command» но этот пароль не работает, потому что su — я могу войти в систему как пользователь root sudo bash с моим паролем пользователя, и я могу войти, пока делать , sudo sh но тогда я получаю командную строку в этом виде #

Задний план

В Linux (и Unix в целом) есть SuperUser с именем Root . SuperUser может делать все что угодно, поэтому ежедневная работа в качестве SuperUser может быть опасной. Вы можете ввести команду неправильно и уничтожить систему. В идеале вы должны работать как пользователь, имеющий только те привилегии, которые необходимы для выполнения поставленной задачи. В некоторых случаях это обязательно Root, но в большинстве случаев это обычный пользователь.

Читайте также:  Где можно выбрать windows

су —

Эта команда используется для входа в систему под учетной записью root.
По умолчанию пароль учетной записи Root заблокирован в Ubuntu. Это означает, что вы не можете войти в систему как Root напрямую или использовать команду su, чтобы стать пользователем Root. Однако, поскольку учетная запись Root физически существует, все еще можно запускать программы с привилегиями корневого уровня. Именно здесь приходит sudo — он позволяет авторизованным пользователям (обычно «Административным») запускать определенные программы как Root без необходимости знать пароль root.

судо ш

Эта команда запускает «sh» как суперпользователь.
Утилита sh — это интерпретатор командного языка, который должен выполнять команды, считанные из строки командной строки, стандартного ввода или указанного файла.

судо баш

Эта команда запускает «bash» как суперпользователь.
Bash — это оболочка или интерпретатор командного языка. Bash — это sh-совместимая оболочка, которая включает в себя полезные функции оболочки Korn (ksh) и оболочки C (csh). Он предназначен для соответствия стандарту IEEE POSIX P1003.2 / ISO 9945.2 Shell and Tools. Он предлагает функциональные улучшения по сравнению с sh как для программирования, так и для интерактивного использования. Кроме того, большинство скриптов sh могут быть запущены Bash без изменений.

Источник

Sudo in Linux

The sudo command gives some admin privileges to non-admin users

Certain Linux applications require elevated privileges to run. Use the su command to switch to the superuser (root), or you can use the sudo command instead.

How It Works

Although they work differently, the sudo command is analogous to the confirmation prompt you sometimes see in Windows or macOS. When asked in those operating systems if you want to continue performing that specific action, you’re met with a button to confirm that you want to run the action with elevated privileges, and at times you might even have to enter an admin’s password.

Linux uses the sudo command as a wall between normal tasks and administrative ones, so that you have to confirm that you want to do whatever it is that the command will execute, and that you’re authorized to perform the task. Even more similar is the run as command in Windows; like in Linux, the run as command works from the command line to launch a file with credentials from a certain user, often an admin.

If you’re not sure if you’re using sudo or su, look at the trailing character on the command line. If it’s a pound sign (#), you’re logged in as root.

About the Sudo Command

When you put sudo in front of any command in terminal, that command runs with elevated privileges, which is why it’s the solution to privilege-related errors.

Sudo operates on a per-command basis. Features include the ability to restrict the commands a user can run on a per-host basis, copious logging of each command to provide a clear audit trail of who did what, a configurable timeout of the sudo command, and the ability to use the same configuration file on many different machines.

Sudo Command Example

A standard user without administrative privileges might enter a command in Linux to install a piece of software:

The command returns an error because a person without administrative privileges isn’t allowed to install software. However, the sudo command comes to the rescue. Instead, the correct command for this user is:

This time the software installs.

You can also configure Linux to prevent some users from using the sudo command.

Источник

Оцените статью