例如,查看
/etc/apt/apt.conf.d/
所有文件是否都有数字前缀。原因是什么?我见过很多次这种情况,总是感到疑惑。这只是为了排序吗?
答案1
是的,它是为了排序,通常任何不以数字开头的内容都会被忽略。
然后按顺序读取并执行文件。
例如/etc/grub.d/
$ ls /etc/grub.d/
00_header 10_linux 20_memtest86+ 30_uefi-firmware 41_custom
05_debian_theme 20_linux_xen 30_os-prober 40_custom README
grub
创建启动项的脚本(如,update-grub
默认情况下将它们写入/boot/grub/grub.cfg
)将首先读取00_header
并创建标头,然后查找 Linux 系统,然后是memtest
,然后是 UEFI,等等。
当你查看输出时
cat /boot/grub/grub.cfg
您将会看到条目正是按照该顺序排列的。
$ cat /boot/grub/grub.cfg
#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
[...]
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
[...]
### END /etc/grub.d/05_debian_theme ###
### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
[...]
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry 'Memory test (memtest86+)' {
[...]
### END /etc/grub.d/20_memtest86+ ###
[...]