Оказывается, initrd, сгенерированный живой сборкой Debian (и к моему удивлению, принятым ядром) на самом деле является конкретацией двух изображений:
При извлечении оригинального initrd.img, прямо из выхода в реальном времени, я получил этот вывод:
$cpio -idv ../initrd.img
kernel
kernel/x86
kernel/x86/microcode
kernel/x86/microcode/GenuineIntel.bin
896 blocks
, что означает, что экстракция CPIO завершилась после разбора 896 блоков 512 байтов каждый. Но оригинальный initrd.img был больше 896 * 512 = 458752b = 448 kb:
$ls -liah initrd.img
3933924 -r--r--r-- 1 root root 21M Oct 21 10:05 initrd.img
, поэтому фактическое изображение INITRD, которое я искал, был прилагается сразу после первого архива CPIO (тот, который содержит обновления микрокода) и может быть Доступ к использованию DD:
$dd if=initrd.img of=myActualInitrdImage.img.gz bs=512 skip=896
] Я бы предложил позвонить вашему сценарию по полному пути: []sudo /home/lucas/bin/term_multiscreen[
] или []sudo ~/bin/term_multiscreen[
]. Это не создаст никаких рисков безопасности, связанных с []sudo[
] [] secure_path[
]. [
] Конечно, это слишком долго для ввода (администраторы ленятся), поэтому поместите его в псевдоним вашего []~/.bashrc[
]:[
alias tmulti="sudo $HOME/bin/term_multiscreen"
]
[] Затем перезагрузите ваш [] ~. bashrc[
] для проверки:[
. ~/.bashrc
tmulti
]
[] Если вы всегда вызываете свой скрипт с помощью []sudo[
], вы также можете удалить вызовы []sudo[
] внутри скрипта.[
Убунту?
Определите псевдоним, как ваш постоянный пользователь: псевдоним sudo= sudo env PATH=$PATH'
.
Или запустите sudo visudo
и измените Defaults secure_path
на Defaults !secure_path
.
Тогда sudo
не будет использовать скомпилированную опцию, --with-secure-path
.