SED: Как могу ли я использовать -n и -f вместе

Вы неправильно понимаете концепцию пользователя root.

Проще говоря, rootнаходится на вершине дерева.

Что, если однажды вы решите стать «суперсуперпользователем», а в следующем месяце — «суперсуперсуперпользователем» (! ). Как далеко «вверх» по дереву вы хотели бы подняться? Как бы вы перетасовали все разрешения и иерархию, чтобы это работало? Кто всегда на высоте? Кто-то должен быть наверху, и это root. Конец истории.

Приведенные здесь решения -, включая AppArmor и SELinux -, на самом деле ничего не меняют. Они просто обеспечивают более тонкий контроль над rootразрешениями и процессами.

Мне кажется, что ваш процесс обновления не подходит для желаемого результата. Но это вовсе не вина пользователя root. Вместо того, чтобы все усложнять, подумайте о rootкак о пользователе с правами самого высокого уровня, а затем обо всем остальном вам придется работать сверху вниз.

Я знаю, что некоторые люди пометят это,но в иерархии пользователей нет более высокого уровня, и все остальные решения просто дают немного другой контроль над тем, как работают разрешения root. Но они не создают нового пользователя с более высокими правами.

У вас не может быть пользователя с «больше разрешений», чем root, потому что rootпредставляет собой максимально возможный уровень разрешений. Использование такой фразы, как «больше контроля, чем root», является противоречием-rootимеет полный контроль и все возможные разрешения, поэтому над ним ничего нельзя сделать.

0
09.01.2020, 10:20
1 ответ

Это потому, что вы пытались передать более одного аргумента в shebang. Сравните:

В этом конкретном случае вы можете сжать -n -fв -nf. В общем случае это не всегда возможно. Здесь скрипт будет:

#!/bin/sed -nf
s/x/u/g

Примечание :Мне кажется, что скрипт в его нынешнем виде ничего не напечатает из-за -n.Я предполагаю, что вы собираетесь расширить его.

5
28.01.2020, 02:15

Теги

Похожие вопросы