/ proc / sys / kernel / yama / ptrace_scope продолжает сбрасываться на 1

Ваша проблема в том, что [«Да»] и [«Нет»] эквивалентны [-n «Да»] и [-n «Нет»] и поэтому всегда оценивается как истина.

Правильный синтаксис:

if [ "$th" = "yes" ] || [ "$th" = "Yes" ]; then
...
if [ "$th" = "no" ] || [ "$th" = "No" ]; then

Или:

if [ "$th" = "yes" -o "$th" = "Yes" ]; then
...
if [ "$th" = "no" -o "$th" = "No" ]; then

Или, если вы используете bash в качестве интерпретатора оболочки Борна:

if [ "${th,,}" = "yes" ]; then
...
if [ "${th,,}" = "no" ]; then

( $ {th ,,} заменяется строчным значением переменной th )

5
11.12.2016, 01:19
2 ответа

/proc хранит значения в оперативной памяти, поэтому он не является постоянным. Но он считывает свои начальные значения из файла. Вы можете навсегда изменить значение /proc/sys/kernel/yama/ptrace_scope на 0, отредактировав файл /etc/sysctl.d/10-ptrace.conf и изменив строку:

kernel.yama.ptrace_scope = 1

На

kernel.yama.ptrace_scope = 0
12
27.01.2020, 20:37

Если изменение не отражается в области /proc/sys/kernel/yama/ptrace _, попробуйте выполнить:

echo "0"|sudo tee /proc/sys/kernel/yama/ptrace_scope
2
13.09.2021, 08:51

Теги

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