LINUX.ORG.RU

sysclt не читает /etc/sysctl.conf

 ,


0

4

Обнаружил, что не работают сочетания Alt+SysRq

pavlick ~ $ cat /proc/sys/kernel/sysrq
16

надо активировать в systemd, подумал я

# echo 'kernel.sysrq=1' >> /etc/sysctl.conf

Но при перезагрузке этот файл не читается, /proc/sys/kernel/sysrq по-прежнуму говорит 16. При этом # /sbin/sysctl –system все конфиги читает и /proc/sys/kernel/sysrq возвращает 1 (комбинации начинают работать). Почему не читается конфиг при перезагрузке? Пробовал кидать и в /etc/sysctl.d.

★★

Скорее всего через echo просто добавляется еще одно значение параметра.

Попробуй посмотреть все параметрі банально грепнув файл после echo.

PunkoIvan ★★★★
()
Ответ на: комментарий от PunkoIvan

Не, его раньше вообще не было, он был создан. kernel.sysrq=1 единственная строка в конфиге.

pavlick ★★
() автор топика
Ответ на: комментарий от PunkoIvan

К тому же после выполнения

# /sbin/sysctl –system

все конфиги читаются и получаю ожидаемое поведение. Т.е. как бы дело вроде не в моих руках, иначе должно было не срабатывать. В принципе мне не сожно повесить запуск на таймер, но какого х не работает нормальным способом?

pavlick ★★
() автор топика
Последнее исправление: pavlick (всего исправлений: 2)

Но при перезагрузке этот файл не читается

Наверно потому что sysctl нету в загрузке.

anonymous
()
Ответ на: комментарий от gremlin_the_red
pavlick ~ $ systemctl status systemd-sysctl
● systemd-sysctl.service - Apply Kernel Variables
     Loaded: loaded (/usr/lib/systemd/system/systemd-sysctl.service; static)
     Active: active (exited) since Wed 2020-09-09 04:04:47 +10; 7min ago
       Docs: man:systemd-sysctl.service(8)
             man:sysctl.d(5)
    Process: 1344 ExecStart=/usr/lib/systemd/systemd-sysctl (code=exited, status=0/SUCCESS)
   Main PID: 1344 (code=exited, status=0/SUCCESS)
pavlick ★★
() автор топика
Ответ на: комментарий от pavlick

Если он выполнился, то sysctl.d/*.conf должен был прочитать. Что именно ты положил в sysctl.d?

gremlin_the_red ★★★★★
()

А можно было просто прямо в этом же файле комменты прочитать:

$ cat /etc/sysctl.conf 
# sysctl settings are defined through files in
# /usr/lib/sysctl.d/, /run/sysctl.d/, and /etc/sysctl.d/.
#
# Vendors settings live in /usr/lib/sysctl.d/.
# To override a whole file, create a new file with the same in
# /etc/sysctl.d/ and put new settings there. To override
# only specific settings, add a file with a lexically later
# name in /etc/sysctl.d/ and put new settings there.
#
# For more information, see sysctl.conf(5) and sysctl.d(5).

$ grep -R sysr /usr/lib/sysctl.d
/usr/lib/sysctl.d/50-default.conf:# Use kernel.sysrq = 1 to allow all keys.
/usr/lib/sysctl.d/50-default.conf:# See https://www.kernel.org/doc/html/latest/admin-guide/sysrq.html for a list
/usr/lib/sysctl.d/50-default.conf:kernel.sysrq = 16
im-0
()
Ответ на: комментарий от im-0

Ну я же писал - не было никакого файла. В любом случае /etc/sysctl.conf не читает. Но файлу в /etc/sysctl.d/* давал какое -то другое имя, не 50-default.conf. Возможно это поможет. Позже попробую и отпишусь, надо поспать.

pavlick ★★
() автор топика
Ответ на: комментарий от im-0

переименовал

mv /etc/sysctl.conf /etc/sysctl.d/60-default.conf

и стало читаться. Странно, конечно, что /etc/sysctl.conf не читается, да и хрен с ним.

Спасибо.

pavlick ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.