Как создать пользователя с sudo
Рассмотрим как создать пользователя, имеющего права запускать команды с sudo.
Чтобы создать пользователя с sudo в Debian, Linux Mint, Ubuntu, Kali Linux и их производных выполните команду вида:
useradd -m -G sudo -s /bin/bash -c "КОММЕНТАРИЙ" ПОЛЬЗОВАТЕЛЬ
В этой команде:
- -m означает создать домашнюю директорию пользователя, если она не существует
- -G sudo означает добавить пользователя в группу sudo
- -s /bin/bash указывает оболочку входа пользователя
- -c «КОММЕНТАРИЙ» указывает комментарий, который будет хранится в файле аккаунта — можно пропустить эту опцию
- ПОЛЬЗОВАТЕЛЬ — это имя пользователя
Пример:
useradd -m -G sudo -s /bin/bash -c "Administrative User" admin
В Arch Linux, BlackArch и их производных для создания пользователя с sudo выполните команду вида:
useradd -m -g users -G wheel,video -s /bin/bash -c "КОММЕНТАРИЙ" ПОЛЬЗОВАТЕЛЬ
Обратите внимание, что в Arch Linux группа, дающее право на выполнение команд sudo, называется wheel, а не, собственно, sudo. Также мы добавили пользователя сразу в две группы, а не в одну, имя второй группы video
Если вы создаёте пользователя на системе без графического окружения, например, на безголовом сервере, то добавлять в группу video не нужно.
В CentOS для создания пользователя с sudo выполните команду вида:
useradd -m -G wheel -s /bin/bash -c "КОММЕНТАРИЙ" ПОЛЬЗОВАТЕЛЬ
Теперь независимо от вашего дистрибутива, запустите одинаковую команду, чтобы установить пароль для нового пользователя:
passwd ПОЛЬЗОВАТЕЛЬ
Добавляем источники non-free
Настройку начинаем с добавления источников , которые позволят установить проприетарное ПО.
Открываем файл содержащий список репозиториев (команда в терминале)
sudo nano /etc/apt/sources.list
другой способ:
sudo apt edit-sources
конце файла добавляем строки
deb http://ftp.debian.org/debian buster main contrib non-free deb-src http://ftp.debian.org/debian buster main contrib non-free deb http://ftp.debian.org/debian buster-updates main contrib non-free deb-src http://ftp.debian.org/debian buster-updates main contrib non-free deb http://security.debian.org/ buster/updates main contrib non-free deb-src http://security.debian.org/ buster/updates main contrib non-free deb http://ftp.debian.org/debian buster-backports main contrib non-free
Сохраняем файл и закрываем его
Другой способ добавления :
Можно в файле ко всем раскомментированным источникам добавить в конце строки .
Обновляем список пакетов
sudo apt update
How to Add Apt Repository in Ubuntu & Debian
Certain software packages aren’t included in the default repositories. To make installing easier, developers created their own software repositories. This is when the command is used.
For example, Wine is a popular package for running non-Linux software on a Linux system. But the latest version isn’t available through the default repositories.
To install the latest version of Wine on Ubuntu, you first need to grant access to the Wine repository:
Other software may be subject to additional licensing. Such as in the case of Debian, restrictive licensing may disqualify a package from being included in the default repositories. In these cases, the command is the key to grant access to the software you want to install.
Steps to Resolve add-apt-repository: command not found error
Step 1: Update Local Ubuntu Repositories
Open a terminal window and enter the command to update repositories:
The system confirms that the software repositories list on your local machine is updating.
Step 2: Install the software-properties-common Package
The add-apt-repository command is not a regular package that can be installed with on Ubuntu LTS / Debian. Instead, it’s a component of the software-properties-common package.
To get the command, install the software-properties-common package:
This is an example output after a successful installation:
Then, update the repository again with:
Note: In Ubuntu 13.10 (and older), the command is part of the Python software package. To install it, use the command:
Как исправить apt get команда не найдена?
Поскольку вторая причина предполагает меньше действий, нам нужно сначала проверить ее. Обычно исполняемые файлы apt находятся в каталоге /usr/bin. Сначала посмотрим есть ли такой файл в той папке:
ls -l /usr/bin/apt-get
Если файл есть, то вы увидите что-то похожее как на снимке выше. Также обратите внимания на права. Для пользователя, группы и остальных должен быть выставлен флаг «x» означающий исполнение. Если же его нет, то apt придется переустановить. Если права отличаются от приведенных выше, а именно «-rwxr-xr-x», то их тоже нужно исправить, добавим для всех категорий флаг исполняемости:
chmod +x /usr/bin/apt-get
Если предыдущие варианты не сработали проверим содержимое переменной среды PATH:
Вы должны увидеть в ней ссылку на /usr/bin. Если такой строчки нет, то проблема была здесь, а строчку нужно добавить в конец:
Если вы вносили изменения в файл /etc/profile, и переменная PATH сломалась из-за этого, то нужно внести исправления и в этот файл.
Последний вариант, если ничего не помогло, это переустановить утилиту. Мы просто скачаем ее из официального сайта и установим в систему. Только нужно выбирать версию для своей операционной системы. Вы можете скачать пакет с помощью браузера или таких команд:
Для Ubuntu Xenial:
Для Ubuntu Yakkety:
Теперь осталось установить загруженный пакет:
sudo dpkg -i apt*
Готово, после этого ошибка apt get command not found должна исчезнуть и вы сможете нормально работать со своими пакетами.
Настройка и использование sudo в Linux
В прошлых статьях этого курса мы говорили про разницу между Ubuntu и Debian в том, что по умолчанию в:
Ubuntu – нельзя переключиться на пользователя root, зато установлена утилита sudo и административные действия можно выполнять используя эту утилиту таким образом:
$ sudo <команда>
Debian – root пользователь активен, и для выполнения административных действий нужно на него переключиться, а утилита sudo не установлена:
$ su - root пароль: # <команда>
Пришло время поближе познакомиться с утилитой sudo в Linux. В Ubuntu она уже установлена а в Debian её нужно установить таким образом:
alex@deb:~$ su - Пароль: root@deb:~# apt install sudo
Основным конфигурационным файлом для этой утилиты является файл /etc/sudoers, посмотрим на него:
root@deb:~# cat /etc/sudoers # # This file MUST be edited with the 'visudo' command as root. # # Please consider adding local content in /etc/sudoers.d/ instead of # directly modifying this file. # # See the man page for details on how to write a sudoers file. # Defaults env_reset Defaults mail_badpass Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" # Host alias specification # User alias specification # Cmnd alias specification # User privilege specification root ALL=(ALL:ALL) ALL # Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL # See sudoers(5) for more information on "@include" directives: @includedir /etc/sudoers.d
В самом верху говориться о том, что редактировать вручную этот файл не нужно, для редактирования нужно использовать утилиту visudo. Рассмотрим остальные не закомментированные строки:
- Defaults env_reset – сбрасывает все локальные переменные пользователя в оболочке sudo. Это повышает безопасность работы sudo в linux. Так как оболочка использует только стандартные системные переменные. А те переменные, которые создал пользователь, использоваться не будут.
- Defaults mail_badpass – говорит системе отправлять уведомления о неудачных попытках ввода пароля sudo для настроенного пользователя mailto. По умолчанию это учетная запись root. То есть, если вы настроите почтовую систему для root пользователя, то будете на почту получать оповещения о неудачных попытках ввода пароля для sudo.
- Defaults secure_path=”/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin” – здесь перечислены пути к каталогам, в которых будут искаться программы при выполнении команд с помощью sudo. То есть, вы вводите команду adduser, и файл программы adduser ищется в этих каталогах. А находится он здесь /usr/sbin/adduser.
-
root ALL=(ALL:ALL) ALL – в этой строке разберём по порядку каждое слово:
- root – правило для пользователя root;
- ALL = – применяется ко всем хостам;
- (ALL:ALL) – root может выполнять команды от лица всех пользователей и групп;
ALL – правило работает для всех команд.
%sudo ALL=(ALL:ALL) ALL – здесь все также как и в предыдущей строке, но знак процентов (%) перед sudo означают, что это группа, а не пользователь. То есть группа sudo может на всех хостах, от имени любого пользователи или группы, выполнять любые команды.
@includedir /etc/sudoers.d – означает что в каталог /etc/sudoers.d можно положить дополнительные конфигурационные файлы.
The repository does not have a Release file.
При попытке выполнить
sudo apt update
password for andrei:
Ign:1 cdrom://[Debian GNU/Linux 10.4.0 _Buster_ — Official amd64 DVD Binary-1 20200509-10:26] buster InRelease
Err:2 cdrom://[Debian GNU/Linux 10.4.0 _Buster_ — Official amd64 DVD Binary-1 20200509-10:26] buster Release
Please use apt-cdrom to make this CD-ROM recognized by APT. apt-get update cannot be used to add new CD-ROMs
Err:3 http://deb.debian.org/debian buster InRelease
Cannot initiate the connection to prod.debian.map.fastly.net:80 (2a04:4e42:14::204). — connect (101: Network is unreachable)
Could not connect to prod.debian.map.fastly.net:80 (151.101.84.204), connection timed out
Cannot initiate the connection to deb.debian.org:80 (2a04:4e42:14::645). — connect (101: Network is unreachable)
Could not connect to deb.debian.org:80 (151.101.86.133), connection timed out
Err:4 http://deb.debian.org/debian buster-updates InRelease
Cannot initiate the connection to deb.debian.org:80 (2a04:4e42:14::645). — connect (101: Network is unreachable)
Err:5 http://security.debian.org/debian-security buster/updates InRelease
Cannot initiate the connection to prod.debian.map.fastly.net:80 (2a04:4e42:14::204). — connect (101: Network is unreachable)
Could not connect to prod.debian.map.fastly.net:80 (151.101.84.204), connection timed out
Cannot initiate the connection to security.debian.org:80 (2a04:4e42:c00::204). — connect (101: Network is unreachable)
Cannot initiate the connection to security.debian.org:80 (2a04:4e42:200::204). — connect (101: Network is unreachable)
Cannot initiate the connection to security.debian.org:80 (2a04:4e42:400::204). — connect (101: Network is unreachable)
Cannot initiate the connection to security.debian.org:80 (2a04:4e42:a00::204). — connect (101: Network is unreachable)
Cannot initiate the connection to security.debian.org:80 (2a04:4e42::204). — connect (101: Network is unreachable)
Cannot initiate the connection to security.debian.org:80 (2a04:4e42:800::204). — connect (101: Network is unreachable)
Cannot initiate the connection to security.debian.org:80 (2a04:4e42:600::204). — connect (101: Network is unreachable)
Cannot initiate the connection to security.debian.org:80 (2a04:4e42:e00::204). — connect (101: Network is unreachable)
Could not connect to security.debian.org:80 (151.101.0.204), connection timed out
Could not connect to security.debian.org:80 (151.101.128.204), connection timed out
Could not connect to security.debian.org:80 (151.101.192.204), connection timed out
Could not connect to security.debian.org:80 (151.101.64.204), connection timed out
Reading package lists… Done
E: The repository ‘cdrom://[Debian GNU/Linux 10.4.0 _Buster_ — Official amd64 DVD Binary-1 20200509-10:26] buster Release’ does not have a Release file.
N: Updating from such a repository can’t be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
Проверяю
souces.list
sudo vi /etc/apt/sources.list
#
deb cdrom:[Debian GNU/Linux 10.4.0 _Buster_ — Official amd64 DVD Binary-1 20200509-10:26]/ buster contrib main
deb cdrom:[Debian GNU/Linux 10.4.0 _Buster_ — Official amd64 DVD Binary-1 20200509-10:26]/ buster contrib main
deb http://deb.debian.org/linux/debian/ buster main
deb-src http://deb.debian.org/linux/debian/ buster main
deb http://security.debian.org/debian-security buster/updates main contrib
deb-src http://security.debian.org/debian-security buster/updates main contrib
# buster-updates, previously known as ‘volatile’
deb http://deb.debian.org/linux/debian/ buster-updates main contrib
deb-src http://deb.debian.org/linux/debian/ buster-updates main contrib
Исправление ошибки «apt command not found» в Ubuntu Linux
В этом руководстве я предполагаю, что по какой-то причине внешний интерфейс диспетчера пакетов apt был удален из вашей системы.
В приведенных ниже инструкциях описаны все шаги по установке последней версии пакета apt для Ubuntu.
Для начала перейдите по этой ссылке https://packages.ubuntu.com/ и прокрутите страницу вниз, чтобы найти раздел поиска.
Введите apt в поле ключевого слова, выберите правильный выпуск Ubuntu и нажмите кнопку «Поиск», как указано стрелками на снимке экрана ниже.
Прокрутите начальную страницу вниз и нажмите ссылку на пакет apt, как показано на следующем рисунке.
Прокрутите вниз начальную страницу. Внизу вы найдете ссылки для каждой архитектуры; нажмите правильный для вашей системы.
Чтобы завершить загрузку apt, нажмите на ссылку для скачивания.
После загрузки пакета установите его с помощью dpkg, как показано ниже
Важно уточнить, что 1.6.12ubuntu0.2_amd64 необходимо заменить на ту версию и архитектуру, которые вы скачали
sudo dpkg -i apt_1.6.12ubuntu0.2_amd64.deb
Протестируйте apt еще раз, чтобы проверить, работает ли он сейчас.
Если это все еще не работает, возможно, проблема связана с переменной окружения $PATH.
Чтобы подтвердить это, сначала проверьте, где находится двоичный файл apt. Вы можете использовать команду whereis, как показано в следующем примере.
whereis apt
Как видите, двоичный файл находится в каталоге двоичных файлов /usr/bin (/usr/bin/apt).
Чтобы подтвердить, включен ли путь в ваши переменные среды $PATH, используйте команду echo, за которой следует переменная среды, которую вы хотите проверить ($PATH).
echo $PATH
Как видите, каждый путь отделяется двоеточием. Если в вашем случае путь /usr/bin не включен, добавьте его с помощью команды экспорта, как показано на следующем рисунке, а затем снова проверьте apt.
export PATH=$PATH:/usr/bin
Если после экспорта пути менеджер пакетов apt работает правильно, вы нашли проблему. Но экспорт пути из командной строки — это только временное исправление без сохранения после перезагрузки системы или смены сеанса.
Чтобы сделать это решение постоянным, откройте файл. bashrc в вашем домашнем каталоге с помощью текстового редактора, такого как nano или vi.
nano .bashrc
В конце файла добавьте следующую строку.
export PATH="$PATH:/usr/bin"
Закрой. bashrc сохраните изменения и обновите переменную среды пути, выполнив следующую команду.
source .bashrc
Теперь команда apt должна работать.
Исправляем ошибку «ifconfig: команда не найдена»
Если при попытке активировать команду в «Терминале» вы сталкиваетесь с ошибкой «ifconfig: команда не найдена», значит программное обеспечение, отвечающее за эту команду, отсутствует в системе. Сегодня мы бы хотели показать не только метод исправления этой неполадки, но и рассказать о более новом альтернативном варианте, заменяющим ifconfig. Давайте начнем с пошагового разбора первого способа.
Способ 1: Добавление утилиты ifconfig
Тем пользователям, которые привыкли задействовать именно эту команду, данный способ покажется оптимальным. Инструмент ifconfig не был удален вовсе, он просто отсутствует в стандартном наборе приложений системы, а добавить его можно, выполнив следующие инструкции:
- Для начала рекомендуем еще раз убедиться в том, что ifconfig недоступна. Запустите классический терминал любым удобным вариантом.
- Присвойте постоянные права суперпользователя, написав .
- Укажите пароль от рут-доступа и ожидайте появления новой строки ввода.
- Здесь просто введите и нажмите на клавишу Enter.
- Если по-прежнему появляется уведомление об отсутствии команды в системе, установите набор компонентов net-tools, введя .
- Ожидайте завершения добавления и настройки новых библиотек.
- По завершении инсталляции еще раз выполните , чтобы убедиться в успешности операции.
- Узнать больше информации о правилах используемой утилиты поможет строка .
Теперь вы знакомы с методом возвращения ранее стандартной утилиты в операционную систему Debian 9. Однако стоит понимать, что ей на замену пришел более удобный инструмент, из-за чего есть смысл разобраться в управлении с ним и оставить старые привычки.
Способ 2: Использование команды ip
Существует ряд причин, по которым команда ifconfig была заменена на ip в стандартной комплектации ОС на ядре Linux. Во-первых, она не разрешала настраивать систему контроля трафика, некорректно работала с некоторыми устройствами, не отображала их аппаратный адрес и не позволяла генерировать сетевые устройства TUN/TAP. Все эти недочеты были исправлены и доработаны, но уже внесены в функциональность ip. Например, просмотреть основную информацию по интерфейсу можно, введя .
Выдача в «Терминале» после активации указанной выше команды будет соответствовать той, которая была бы показана при , но с некоторыми дополнительными данными. Дополнительные сведения по протоколу IPv4 получаются через , а по IPv6 — . Еще присутствует возможность получить данные по конкретному интерфейсу, для этого вводится , а список работающих интерфейсов отображается после .
Одной из главных задач при настройке сети всегда считалась процедура присвоения определенного локального адреса конкретному интерфейсу. При использовании старой утилиты выглядела строка ввода так: , но в новом варианте пользователю потребуется ввести i, обязательно указав при этом маску подсети
Обратить внимание следует и на возможное сокращение до
Если надобность в присвоении интерфейса для IP-адреса отпала, такая цепь достаточно легко удаляется. Всего-то нужно указать , а в случае необходимости очистки всего списка взаимосвязей лучше использовать сразу .
Команда ip также определяет управление таблицами маршрутизации. Таблицей маршрутизации называют список сетевых путей, которые предназначены для определения лучшего маршрута передачи сетевого пакета. Ознакомиться со всеми доступными таблицами позволяет строка .
В ситуациях, когда требуется вручную перенаправить трафик, задействовать лучше тоже команду ip с определенными аргументами. Тогда строка обретет вид, например . Установленный маршрут также легко удаляется через .
Благодаря двум приведенным выше способам вы теперь знаете, как можно не только восстановить работу команды ifconfig в операционной системе Debian 9, но и какая есть достойная альтернатива этой устаревшей утилите. Использовать ли новый инструмент или вернуться к старому — решать только вам.
What is a Repository in Ubuntu
A software package is an application. In certain cases one package needs other packages (called dependencies) to run.
A package manager does the work of loading the software package you want. If there are any dependencies, the package manager installs those as well. Additionally, a package manager automatically keeps track of all installed software and updates.
A package manager works in tandem with a software repository. A repository is a database of many different software packages. By default, each Linux distribution grants access to a set of basic, default repositories.
In Ubuntu, the default repositories are:
- Main – Free and open-source software from the Ubuntu developers
- Universe – Free and open-source software from the Linux community
- Restricted – Device drivers and other software under licensing from manufacturers
- Multiverse – All other software under copyright or legal restriction
In Debian, the default repositories are:
- Main – Free licensed software
- Contrib – Free software that depends on non-free licensed software
- Non-free – Software with restrictions on use and distribution
If you want to install a software package that’s not included in these default repositories, you need to add that repository to your package manager.
Conclusion
In this tutorial, you learned to use the command in Ubuntu or Debian to resolve the repository not found error.
You have also gained insight into software repositories and package management and the value they bring to maintain your systems and keep them at an optimum level.
Another common Ubuntu error is “Could not get lock /var/lib/dpkg/lock Error on Ubuntu” or “Sub-process /usr/bin/dpkg returned an error code (1)“, read our tutorials to resolve it.
Тонкая настройка
Таким образом, обычный пользователь может запускать команды с правами учетной записи root не зная ее пароль. Это очень удобно, но может быть небезопасно — есть ли возможность ограничить круг команд, которые можно исполнять посредством sudo? Да, и поможет нам в этом тот же самый конфигурационный файл. Снова запускаем visudo и разбираемся дальше. Нас интересуют параметры, указанные после имени пользователя:
Скриншот №3. Настройки ограничения команд
Разберем их подробнее:
- ALL=(ALL:ALL) ALL — первый параметр определяет к какому хосту применяется конфигурация. При использовании выделенного сервера параметр можно оставить без изменений;
- ALL=(ALL:ALL) ALL — параметры в скобках определяют с полномочиями какого пользователя (первый параметр) и/или группы (второй параметр) будет выполняться команда. По умолчанию sudo выполняет команду от имени root, однако при запуске с ключом –u можно указать другую учетную запись, а с ключом –g другую группу, чьи полномочия будут использованы при запуске;
- ALL=(ALL:ALL) ALL — третий параметр определяет к каким файлам и командам относятся данные настройки.
Исходя из вышесказанного, при необходимости определить перечень разрешенных команд заменяем последний параметр ALL тем, что нам требуется, перечисляя команды через запятую. Например, строка:
дает право пользователю user с помощью sudo осуществлять перезагрузку сервера командой sudo /sbin/shutdown –r и просматривать файлы с помощью sudo /bin/cat. Другие команды через sudo выполняться не будут. Например, при попытке выключить сервер командой sudo /sbin/shutdown –h, получим ответ:
Как использовать sudo
Синтаксис sudoкоманды следующий:
sudo OPTION.. COMMAND
У команды sudo есть много опций, которые управляют ее поведением, но обычно sudo используется в самой простой форме, без каких-либо опций.
Чтобы использовать sudo, просто добавьте к команде префикс sudo:
sudo command
Где command – команда, для которой вы хотите использовать sudo.
Sudo прочитает файл /etc/sudoers и проверит, предоставляется ли пользователю, вызывающему программу, с помощью команды sudo. При первом использовании sudo в сеансе вам будет предложено ввести пароль пользователя, и команда будет выполнена от имени пользователя root.
Например, чтобы перечислить все файлы в каталоге /root, вы бы использовали:
sudo ls /root
password for andreyex: . .. .bashrc.cache.config .local .profile
Установка и настройка
В ОС Ubuntu sudo включена по умолчанию, а в Debian, если в процессе установки не был выбран соответствующий пакет, скорее всего будет следующая картина:
Значит, требуется установить недостающий пакет. Обновляем информацию о репозиториях и устанавливаем sudo:
Дожидаемся окончания процесса:
Скриншот №1. Процесс установки sudo
После успешной установки потребуется сконфигурировать sudo, определив, какие пользователи или группы смогут использовать повышение привилегий и в каком объеме. Все эти настройки хранятся в конфигурационном файле /etc/sudoers, однако вносить в него изменения напрямую настоятельно не рекомендуется. Для этих целей используется специальная команда:
которая запускает текстовый редактор с конфигурационным файлом:
Скриншот №2. Текстовый редактор
За предоставление прав здесь отвечают две строки:
Первая строка назначает права для учетной записи root, вторая устанавливает права для членов группы sudo, которая была создана при установке пакета (знак % перед названием означает, что имя относится к группе пользователей). Соответственно, у нас есть два основных способа предоставить пользовательской учетной записи право использовать sudo:
Добавить учетную запись пользователя (например, user) в группу sudo на сервере:
После изменения членства в группе, потребуется заново авторизоваться в этой учетной записи для применения новой конфигурации. Данный метод рекомендуется в тех случаях, когда пользователю необходимо предоставить полные права.
Создать в файле новую запись, например, для учетной записи user. Мы добавляем строку по аналогии с root:
Добавлять новую запись рекомендуется в тех случаях, когда список привилегий будет корректироваться (об этом чуть позднее). Если мы внесли изменения в файл, нужно их сохранить нажатием сочетания клавиш Ctrl-O и выйти из редактора — Ctrl-X.
Теперь можно проверить корректность работы:
Команда sudo запрашивает пароль текущего пользователя (в данном случае это user) — вводим его, и, если все сделано правильно, мы увидим содержание системного конфигурационного файла.
How to FIX: Debian sudo command not found
By default in Debian, the sudo command is installed but sometimes it happens that we use the sudo command and it generates the following error.
We simply enter the root user mode as:
$ sudo -s
So it means that the sudo package is not installed by default so to resolve this issue we simply go to the user mode and install the package. First, we will go to the root user mode.
$ su —
Update the repository first.
# apt update
Install the sudo package.
# apt install sudo -y
Exit the root mode.
# exit
To verify the installation of the error we will again enter the root by using sudo command.
$ sudo -s
The issue which has been discussed at the start is now resolved.
Что такое rsyslog в Debian 11?
Кратко можно сказать, что rsyslog — это служба, которая отвечает за сбор и централизованное управление журналами через клиентские машины.
Обычно эти журналы располагаются в /var/logs/, но она работает практически с любым каталогом, который вы укажете в конфигурации.
Одна из поразительных особенностей rsyslog заключается в том, что он достаточно универсален и надежен для использования в корпоративных средах. Но при этом настолько легок и прост, что его можно использовать на небольших системах.
Кроме того, мы можем выбирать, где хранить данные — в текстовом файле или в менеджере баз данных, например, MariaDB. Таким образом, его можно использовать без особых усилий, и сегодня мы покажем вам, как это сделать.
Как перенаправить с Sudo
Если вы попытаетесь перенаправить вывод команды в файл, у которого у пользователя нет прав на запись, вы получите ошибку “Permission denied”.
sudo echo "test" > /root/file.txt
bash: /root/file.txt: Permission denied
Это происходит потому, что перенаправление >вывода выполняется под пользователем, в котором вы вошли, а не пользователем, указанным в sudo. Перенаправление происходит до вызова команды sudo.
Одним из решений является вызов новой оболочки от имени пользователя root с помощью sudo sh -c:
sudo sh -c 'echo "test" > /root/file.txt'
Другой вариант – передать вывод как обычный пользователь в команду tee, как показано ниже:
echo "test" | sudo tee /root/file.txt