AIX: требуется 2 выполнения, чтобы увидеть истинный результат

Вам необходимо изменить учетную запись пользователя User2, чтобы он использовал ограниченную оболочку, такую ​​как rbash .

sudo chsh -s /bin/rbash User2

ПРИМЕЧАНИЕ: это ограничит только оболочку командной строки пользователя (включая вход через ssh ). Это не повлияет на среду рабочего стола графического интерфейса пользователя, например если они войдут в систему с консоли.

См. man rbash для получения более подробной информации, но некоторые из ограничений заключаются в том, что пользователю запрещается:

· изменение каталогов с помощью cd

· установка или снятие значений SHELL, PATH, ENV или BASH_ENV

· указание имен команд, содержащих /

· указание имени файла, содержащего / в качестве аргумента для. встроенная команда

· перенаправление вывода с использованием операторов перенаправления>,> |, <>,> &, &> и >>

· использование встроенной команды exec для замены оболочки другой командой

Эти ограничения принудительно применяются после чтения любых файлов запуска.

Блокирование перенаправления может быть чрезмерным для ваших нужд (или, может быть, нет, поскольку каталог в любом случае доступен только для чтения), но, к сожалению, с rbash все или ничего.

1
16.11.2018, 02:32
1 ответ

Configuró ECountdemasiado pronto, en ese momento el archivo count_errortodavía está vacío cuando el script se ejecuta por primera vez:

ECount=`cat $count_error`
...
grep -i "Error invoking command" $yest_* >> $error_txt
...
cat $error_txt | wc -l >> $count_error
if [ $ECount = 0 ];

Utilice

grep -i "Error invoking command" $yest_* >> $error_txt
...
wc -l $error_txt >> $count_error
ECount=`cat $count_error`
if [ $ECount = 0 ];

en su lugar, o (si no necesita el archivo más adelante)

ECount=`wc -l $error_txt`
if [ $ECount = 0 ];
1
27.01.2020, 23:43

Теги

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