Что такое параметр BOOT_IMAGE в / proc / cmdline

В настоящее время я читаю книгу «Как работает Linux», а в главе 5 рассказывается о параметрах Linux. Любопытно, я начал видеть, какие параметры были переданы моему установленному ядру, когда он загружается и замечает:

BOOT_IMAGE=/boot/vmlinuz-3.16.0-4-amd64

Я искал онлайн для объяснения этого параметра, но не был успешным. Может ли кто-нибудь указать мне в правильном направлении, где я мог бы найти дополнительную информацию или объяснить, о чем этот BOOT_IMAGE ? Следует отметить, что я запускаю удаленный сервер Debian. Я знаю, что сама услуга виртуализирована, возможно, с Xen. Это связано с Xen и как он загружает экземпляры?

UPDATE: Поэтому, исследуя, я заметил, что vmlinuz-3.16.0-4-amd64 – это образ ядра. Также глядя на man bootparam он гласит:

Большая часть сортировки продолжается в linux / init / main.c. Во-первых, ядро ​​проверяет, является ли аргумент любым из специальных аргументов «root =», «nfsroot =», «nfsaddrs =», «ro», «rw», «debug» или «init». Смысл этих специальных аргументов описан ниже.

Все, что указано в форме 'foo = bar', которая не принимается в качестве функции настройки, как описано выше, затем интерпретируется как изменяемая переменная среды. Пример (бесполезный?) Должен был бы использовать «TERM = vt100» как аргумент aboot.

Любые оставшиеся аргументы, которые не были отобраны ядром и не интерпретировались как переменные среды, затем передаются на первый процесс, который обычно является программой init. Наиболее распространенным аргументом, который передается процессу init, является слово «single», которое инструктирует init загружать компьютер в однопользовательском режиме и не запускать всех обычных демонов. Проверьте страницу руководства для версии init, установленной в вашей системе, чтобы узнать, какие аргументы она принимает.

Запуск systemctl show-environment отобразит что-то вроде:

 [root@localhost ~]# systemctl show-environment BOOT_IMAGE=/boot/vmlinuz-3.16.0-4-amd64 PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin LANG=en_US.UTF-8 

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

One Solution collect form web for “Что такое параметр BOOT_IMAGE в / proc / cmdline”

Согласно http://homepage.smc.edu/morgan_david/cs40/lilo-readme.txt :

 LILO always passes the string BOOT_IMAGE=<name> to the kernel, where <name> is the name by which the kernel is identified (eg the label). This variable can be used in /etc/rc to select a different behaviour, depending on the kernel. 

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

  • Удалить скопированную версию папки / proc в unix
  • Как получить информацию о жестком диске из / proc и / или / sys
  • Нет / proc / bus / usb directory
  • / proc / <pid> / fd / 1 ничего не показывает
  • Что такое anon_inodes?
  • Linux Unix / proc Переименовать
  • Как получить адрес IPV4 для интерфейса из / proc
  • файлы в / proc / $ PID (например, ssh-agent, Chrome) не принадлежат пользователю, а root
  • Как проверить, сколько общего объема памяти у моей виртуальной машины?
  • Каковы все эти «sd» устройства в / proc / devices
  • При каких обстоятельствах, если таковые будут, изменится ли результат чтения / proc / cpuinfo?
  • Linux и Unix - лучшая ОС в мире.