如果我运行systemctl
我会得到很多ttys(见上文)。有没有办法限制这个数字,所以节省一些内存,因为显然我不需要这一堆tty永远。
sys-devices-virtual-tty-ttya0.device loaded active plugged /sys/devices/virtual/tty/ttya0
[...]
sys-devices-virtual-tty-ttyzf.device loaded active plugged /sys/devices/virtual/tty/ttyzf
答案 0 :(得分:2)
这与内核配置(as suggested on the Express documentation)中的以下两个设置有关:
$ zgrep CONFIG_LEGACY_PTY /proc/config.gz
CONFIG_LEGACY_PTYS=y
CONFIG_LEGACY_PTY_COUNT=256
我在Cubietruck上观察到了这种行为,显然是在此数量的旧式PTY被配置的。感谢systemd-analyze plot
,我注意到这是延迟设备启动的主要因素。
结果是有一个source可以动态限制数字 :
pty.legacy_count=N
(其中N
是您要设置的数字)
对我来说,这意味着要添加这样的一行:
extraargs=pty.legacy_count=6
...到/boot/armbianEnv.txt
(可以添加更多选项,用空格分隔;仅不要用双引号将第一个=
的右边括起来!)
那之后我跑了
mkimage -C none -A arm -T script -d /boot/boot.cmd /boot/boot.scr
...因为我不确定armbianEnv.txt
是否被“编译”到脚本图像中。我不这么认为,但我不想浪费任何时间。
无论如何,快速浏览一下:
systemctl |grep virtual-tty|wc -l
...确认现在只有6个旧PTY。
取决于您的特定设备,整个设置也可以采用GRUB_CMDLINE_LINUX
中的GRUB_CMDLINE_LINUX_DEFAULT
(或/etc/default/grub
)的形式,或者GRUB为您的发行版存储其配置的位置(不要不要忘记更改后update-grub
。