Почему я не могу изменить режим /proc/sys/kernel/pty/max, даже если я root?
Поскольку pty
ограничено, я хочу изменить содержание /proc/sys/kernel/pty/max
, Исходное значение в максимуме - 4096, и теперь я хочу изменить его на 10000.
[root@home pty]# pwd
/proc/sys/kernel/pty
[root@home pty]# ls -lh
total 0
-rw-r--r-- 1 root root 0 Aug 13 11:24 max
-r--r--r-- 1 root root 0 Aug 13 11:24 nr
vim max
Я редактирую файл max напрямую, используя root, но это не удается. я использую :w!
в VIM, но тогда я вижу следующую картину:
поэтому я пытался chmod
Макс сначала, но это также не удалось:
[root@home pty]# chmod 666 max
chmod: changing permissions of `max': Operation not permitted
[root@home pty]# whoami
root
Итак, как я могу изменить содержание /proc/sys/kernel/pty/max
?
редактировать
@ Джон-лин:
также не удалось с помощью sysctl
команда:
[root@home kernel]# sysctl -a | less | grep pty
kernel.pty.nr = 2
kernel.pty.max = 4096
[root@home kernel]# sysctl kernel.pty.max=10000
error: "Operation not permitted" setting key "kernel.pty.max"
[root@home kernel]# sysctl -p kernel.pty.max 10000
error: unable to open preload file "kernel.pty.max"
[root@home kernel]# sysctl -p kernel.pty.max = 10000
error: unable to open preload file "kernel.pty.max"
@AlanCurry:
Также не удалось использовать echo:
[root@home pty]# cat max
4096
[root@home pty]# echo 10000 > max
bash: echo: write error: Operation not permitted
[root@home pty]# echo 10000 >> max
bash: echo: write error: Operation not permitted
[root@home pty]# cat max
4096
2 ответа
Если вы хотите изменить максимальное количество псевдо-терминалов, которое вы можете иметь, не редактируйте файл proc. Вы должны внести изменения в /etc/sysctl.conf
а затем снова запустить sysctl -p
изменить параметры ядра во время выполнения. В частности, измените (или добавьте) строку, которая имеет:
kernel.pty.max = <max>
+ Изменить <max>
на номер, который вы хотите.
Просто испытал ту же проблему в моей среде.
Очевидно, OpenVZ контролирует эти переменные на уровне хоста, т.е. если вы хотите изменить какой-либо параметр, вам нужно изменить его на хост-компьютере, и в результате он будет применен ко всем виртуальным машинам, работающим на этом физическом сервере.