Команда su в Linux: Как стать другим пользователем (даже без пароля)

Команда su в Linux: Как стать другим пользователем (даже без пароля)

Команда su (от Substitute User или Switch User) — это фундаментальный инструмент для любого, кто работает с Linux. Она позволяет сменить текущего пользователя в системе. Но что, если вам нужно переключиться на пользователя, у которого нет пароля, как у системных пользователей www-data или docker? А если после переключения команды падают с ошибками? Эта статья — исчерпывающее руководство по работе с su, sudo и решению сопутствующих проблем.

1. Что такое su и как она работает по умолчанию?

Базовый синтаксис команды прост:

su [опции] [логин_пользователя]
  • Если не указать логин, команда попытается переключиться на root.
  • По умолчанию su требует ввести пароль целевого пользователя.

Пример 1: Стандартное использование

# Стать root'ом (запросит пароль root)
$ su
Password: <вводим_пароль_root>

# Стать пользователем 'alice' (запросит пароль alice)
$ su alice
Password: <вводим_пароль_alice>

Проблема в том, что у многих системных пользователей (созданных для запуска служб) просто нет пароля. Попытка выполнить su www-data завершится ошибкой.

$ su www-data
Password: <любая_попытка_ввести_пароль>
su: Authentication failure

ЧИТАТЬ ДАЛЕЕ …

Swap - Файл или раздел - Заметки на полях
Заметка

Swap — Файл или раздел — Заметки на полях

Вроде с линукс общаюсь уже давно, а вот то, что сейчас считается хорошей практикой создавать не раздел своп, а файл узнал буквально вчера. Есть конечно в обоих вариантах и плюсы и минусы, но в случае с файлом мне кажется больше свободы. В чем приемущество создания swap в виде файла, ну например хотя бы в том, что можно легко создать, удалить, пересоздать. Был у меня случай, когда при разметке (чаще делаю её в ручную при установке) наптсал 16, а букву G не добавил. В один прекрасный момент, при запущенный нескольких виртуалка выскочило сообщение, что места нет в свопе. Стал разбираться и понял, что пропустил букву. Пришлось Gparted потом перерезать диск.
А вот если бы тогда знал, что можно использовать swap не только как раздел, но и как файл, то буквально в несколько секунд решил бы тогда проблему.
И так, присиупим. Для начала нам нужно узнать, если у нас уже swap в системе или нет:

swapon -s

Если у нас пустой вывод, то свопа нет. Ещё информацию про swap можно узнать по команде:

free -h
ЧИТАТЬ ДАЛЕЕ …
Терминальный мультиплексор - tmux
Заметка

Терминальный мультиплексор — tmux

Tmux (терминальный мультиплексор) позволяет работать с несколькими сессиями в 1 окне. Вместо нескольких окон терминала к серверу — вы можете использовать одно. Позволяет подключаться/отключаться к текущему состоянию сессии. Запущенные программы и процессы продолжают работать. (Можно использовать вместо nohup, dtach).

Например, на работе правим файлы в Vim. Окно терминала с открытыми файлами, процессами. Отключаемся от сессии. Далее подключаемся к этой сессии из дома и получаем те же окна с открытыми файлами в Vim, процессами и т.д. Можно продолжить работу с того же момента, на котором остановились. Также удобно при разрыве связи. Дополнительно можно работать совместно с другими в терминале, если подключены к одной сессии. Каждый видит, что делает другой.

Терминальный мультиплексор - tmux
ЧИТАТЬ ДАЛЕЕ …
Установка последней версии KeePassXC
Заметка

Установка последней версии KeePassXC

Перепробовав несколько разных KeePass под Linux пока остановился на KeePassXC. На мой взгляд это более удачное решение, чем другие. Но и другие версии ничуть не хуже версии под Windows. Но в репозиториях находится устаревшая версия, а для работы плагина (для браузеров) уже нужна версия не ниже чем 2.6.0. Вот и встал вопрос, об обновлении. Можно скачать релиз и GitHub`а, а можно и добавить репозиторий в хранилище (что на мой взгляд более правильнее).
На странице указан нужный нам репозиторий. Берём его и добавляем.

sudo add-apt-repository ppa:phoerious/keepassxc
sudo apt update
Установка последней версии KeePassXC

После чего можно установить последнюю версию прямо из терминала:

ЧИТАТЬ ДАЛЕЕ …
Команды Linux - lsusb отображения информации о USB шинах в системе и устройствах подсоединенных к ней.
Заметка

Команды Linux — lsusb отображения информации о USB шинах в системе и устройствах подсоединенных к ней.

lsusb это утилита для отображения информации о USB шинах в системе и устройствах подсоединенных к ней.

Чтобы воспользоваться всеми возможностями этой программы, вы должны иметь ядро Linux с поддержкой интерфейса /dev/bus/usb. Все последние версии ядра — поддерживают этот интерфейс.

Команда lsusb позволяет задействовать одноименную утилиту, предназначенную для вывода информации о USB-шинах и подключенных к ним устройствах. Каждое из устройств имеет пару 16-битных идентификаторов: идентификатор производителя (Vendor ID) и идентификатор устройства (Device ID), которые следует использовать для идентификации устройств и поиска драйверов в случае их отсутствия в ядре ОС, а также несколько дополнительных идентификаторов, устанавливаемых производителем. В составе дистрибутивов Linux имеется файл базы данных устройств, содержащий названия устройств с известными идентификаторами. Данная команда крайне полезна для идентификации и диагностики устройств компьютера. Она выводит результаты в формате списка, который может фильтроваться с помощью утилиты grep.

Базовый синтаксис команды выглядит следующим образом:

$ lsusb [параметры]
ЧИТАТЬ ДАЛЕЕ …

Как исправить ERROR ADD-APT-REPOSITORY COMMAND NOT FOUND.

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

sudo apt install software-properties-common

Удобный инструмент для работы с продуктами от JetBrains — Toolbox App

Для того, чтобы не ходить на сайт JetBrains, чтобы посмотреть, были ли обновления каких либо продуктов, скачивать их, устанавливать есть удобный инструмент — Toolbox App. С помощью этого инструмента можно легко управлять всей продукцией от JetBrains. К тому же можно иметь разные версии одного продукта.

Скачать Toolbox App можно для операционных систем Windows, MacOS и Linux. Инструкцию по установке можно найти в разделе помощи.