Леннарт Поттеринг, главный разработчик systemd, объявил на своём канале Mastodon о своей новой инициативе: команде run0, призванной заменить sudo в деле повышения привилегий пользователя. Планируется, что run0 войдёт в состав systemd 256.
По словам автора:
В systemd появилась новая утилита под названием run0. Или, точнее, это не новая утилита, а давно существующая команда systemd-run, но при запуске под именем run0 (через символическую ссылку) она ведёт себя во многом как старый добрый sudo. Только с одним отличием: она не испольует SUID. Вместо этого она просто просит менеджер сервисов запустить команду или шелл под UID’ом нужного пользователя. Она выделяет для этого новый псевдотерминал и затем переносит данные между исходным терминалом и новым псевдотерминалом. Иначе говоря, указанная пользователем команда выполняется в изолированном контексте, отпочкованном от PID 1 и не наследующем никакого контекста от клиента (точнее, $TERM мы переносим, но как явное исключение).
Можно сказать, что run0 больше походит на ssh, чем на sudo.
Эту утилиту использовать куда приятнее, чем sudo. К примеру, по умолчанию она подсвечивает фон терминала красным, пока вы работаете с повышенными привилегиями. Это служит мягким напоминанием о том, что вы пока что не сбросили привилегии обратно, и соответствующим образом помечает вывод всех команд, выполненных с повышенными привилегиями.
>>> Подробности