Linux quiet command line

What do the nomodeset, quiet and splash kernel parameters mean?

What do Kernel command line parameters (also also known as boot options) mean? When you go to Ubuntu (or better, GRUB) options, you have things like nomodeset , quiet and splash . What do these options mean? I am also interested in other parameters and would be interested to see descriptions of any kernel parameter (like acpi ), but these are not essential.

There are thousands upon thousands of them, you have init, init-options, vga, systemd, dkms, modules, etc. etc. etc. etc..-related options that you can configure

Please rest your case about users voting to close this as too broad, avoid cluttering the question with explanations about why the question itself is not too broad. As you can see many users found the question interesting and voted it up, so don’t ruin the question with irrelevant (to the question) discourses. Instead make it very clear that you want to know only about those three options, so that people won’t vote to close it again.

@StarOS you didn’t make it not too broad: it’s too broad because you don’t tell exactly which parameter you want to know about, but let answerers decide that for you. The list David Foersters share gives enough characters for about 300 answers, considering character limits. To make your question not too broad, you should narrow it down.

6 Answers 6

The newest kernels have moved the video mode setting into the kernel. So all the programming of the hardware specific clock rates and registers on the video card happen in the kernel rather than in the X driver when the X server starts.. This makes it possible to have high resolution nice looking splash (boot) screens and flicker free transitions from boot splash to login screen. Unfortunately, on some cards this doesn’t work properly and you end up with a black screen. Adding the nomodeset parameter instructs the kernel to not load video drivers and use BIOS modes instead until X is loaded.

The splash (which eventually ends up in your /boot/grub/grub.cfg ) causes the splash screen to be shown.

At the same time you want the boot process to be quiet, as otherwise all kinds of messages would disrupt that splash screen.

Although specified in GRUB these are kernel parameters influencing the loading of the kernel or its modules, not something that changes GRUB behaviour. The significant part from GRUB_CMDLINE_LINUX_DEFAULT is CMDLINE_LINUX

This answer covers acpi , noapic and nolapic :

In general, such boot parameters are not needed unless there is a problem with your BIOS and how it handles these standards, or it just might be old enough where these standards were not fully implemented properly.

ACPI (Advanced Configuration and Power Interface) is a standard for handling power management. Older systems may not support ACPI full, so sometimes it helps to give the kernel a hint to not use it. «acpi=off»

APIC (Advanced Programmable Interrupt Controller) is a kind of feature found on newer systems. The «local» version is called «LAPIC». What this controller can do is be set up to generate and handle interrupts, a signal the hardware uses to pass messages. Again, some implementations of APIC can have problems on older system, and so it is useful to disable it. «noapic» and «nolapic».

Sometimes the APIC is working, but it slows things down by getting in the middle of messages being passed around. This can mess with audio and video processing, for example. Folks might disable it for that reason as well.

Additional parameters can be found here.

Читайте также:  Linux acer aspire one install

Источник

Linux quiet command line

Объяснение назначения некоторых важных параметров, которые передаются ядру при его загрузке (boot parameters).

[nomodeset, quiet и splash]

Все эти параметры загрузчик GRUB (GRand Unified Bootloader) передает ядру системы (kernel), когда ядро запускается на выполнение.

nomodeset . В самых свежих дистрибутивах Linux установка видеорежима перенесена в ядро системы (kernel). Так что все программирование аппаратуры видеокарты, относящееся к установке определенных тактовых частот, настройке регистров и т. п. происходят в ядре вместо X-драйвера, когда запускается X-сервер. Это делает возможным отображать красивые логотипы с высоким разрешением во время загрузки, так называемые splash (boot) screens, и плавно, без мерцаний экрана, перейти к графическому приглашению входа в систему (ввод логина и пароля, login screen). К сожалению, некоторые видеокарты неправильно работают при загрузке, и по этой причине демонстрируют черный экран в течение довольно долгого времени, пока не произойдет полная загрузка системы. Добавление параметра nomodeset инструктирует ядро, что не надо загружать драйверы видео до момента, пока не будет загружена графическая система X. В результате система загружается в текстовом виде, можно видеть сообщения процесса загрузки, проблема «черного экрана загрузки» устраняется.

quiet , splash . Параметр splash (который часто встречается в /boot/grub/grub.cfg) разрешает отображение splash-скрина (красивая графическая заставка при загрузке ядра).

В то же самое время Вы возможно хотели бы, чтобы не выводились сообщения загрузки, которые портят splash-скрин. Такая загрузка без сообщений называется «тихой» (quiet). Для тихой загрузки как раз и используется параметр quiet. Когда указана опция quiet, ядро не будет выводить никаких информационных сообщений о загрузке. Если ядро будет загружаться без этой опции, то Вы увидите набор некоторых сообщений, показывающих процессы активации драйверов и модулей системы, проверки файловой системы. Удаление параметра quiet может быть полезным, когда Вы хотите обнаружить ошибку, проявляющуюся при загрузке.

Хотя параметры nomodeset, quiet и splash, передаваемые ядру, указываются в конфигурационном файле GRUB, они никак не влияют на работу самого GRUB. Подробнее см. документацию по GRUB_CMDLINE_LINUX_DEFAULT и CMDLINE_LINUX.

Читайте также:  Центр управления kde linux

[Параметры ядра acpi, noapic и nolapic]

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

ACPI (Advanced Configuration and Power Interface) это стандарт для управления питанием (power management). Старые системы могут не поддерживать ACPI полностью, так что иногда следует дать подсказку ядру не использовать эту функцию «acpi=off».

APIC (Advanced Programmable Interrupt Controller) это функция, которая встречается в новых системах. «Локальная» (local) версия называется «LAPIC». Когда этот контроллер настроен для генерации и обработки прерываний, он используется для передачи сообщений о событиях аппаратуры. И опять, некоторые реализации APIC на старых системах могут создавать проблемы, так что полезно это запретить, для чего используются параметры noapic и nolapic.

Иногда APIC работает, но замедляет работу системы, вклиниваясь в процесс передачи сообщений. Например, это может мешать обработке звука и видео. По этой причине хорошо также отключить APIC.

[Другие параметры ядра]

3 — запускает систему в runlevel 3 (по умолчанию 5). Если добавлен этот параметр, что система попадет в рабочее окружение командной строки (текстовая консоль). Режим runlevel 5 нужен для загрузки GUI.

init — указывает место нахождения скрипта «init». Этот скрипт первый процесс, запускаемый в Unix-like системе, и он отвечает за запуск всех других процессов. Синтаксис: init=/path/to/script.

Дополнительную информацию по параметрам ядра см. по ссылке [1].

Источник

Why do many commands provide a «quiet» option?

Why do many commands provide the option -q or —quiet to suppress output when you can easily achieve the same thing by redirecting standard output to the null file?

Not all commands use -q to suppress all output. For example, Docker has a command to list images; docker images shows a formatted table with a bunch of information, while docker images -q outputs a plain list of image IDs (useful for piping to other commands).

4 Answers 4

  • While you can easily redirect in a shell, there are other contexts where it’s not as easy, like when executing the command in another language without using a shell command-line. Even in a shell:
find . -type f -exec grep -q foo <> \; -printf '%s\n' 

It’s noteworthy that in the grep man-page both options, -q , and -s , are suggested to be avoided if portability is a concern. grep ‘s early exit is an important optimization, but not all programs with such options can do that; curl -s will still process the whole data (but the 3rd point still applies, thus saving processing time).

@Janis, that would be portability to very old systems. Both -q and -s are specified by POSIX. If we’re to consider systems that old, then my sh -c ‘. ‘ sh <> \; won’t work either (with earlier ksh -based sh s).

The man page mentions: USG-style grep also lacked -q but its -s option behaved like GNU grep. — I thought that the difference in behaviour could be an issue. I can’t judge about its relevance.

Читайте также:  Jdk 7u80 linux x64

I frequently use the -q and —quiet options when I only care about the return code of a command in a script. The reasons noted above are even better examples why.

@Janis — it may be that the GNU grep manpage warning of -q portability concerns has another implication. Some readings of POSIX grep pages, when considered alongside Utility Description Defaults might imply that < grep -q pattern; head; >pattern. GNU grep won’t do that (not even when combined with its non-POSIX -m1 ).

It still allows for the command to put out when It feels it needs to a note to the screen but normally it puts nothing out. with redirecting all to null there is no chance for the output to be seen.

Well, quiet means that no response is expected; it would be unexpected if we’d see output anyway. (In case that there’s anyway something «really really really» important to print (in a terminal attached process) a tty/pty device could directly be used by the process. An example for that may be interactive inquiry of a password, or somesuch.)

Although it probably depends on the command, -q would also disable output to stderr . This allows shells that don’t easily allow duping stderr to stdout (I’m looking at you, csh & tcsh ) to avoid the noise.

Some programs provide a «quiet» option for situations where it may have other meaningful output that you don’t want cluttered with status messages. The -q or equivalent would silence all program status output, allowing a pure data stream from, say, tar or gzip .

Besides all the good responses and points above, it is a best practice to provide an opposite option for every flag. So, if there is -v for verbosity there should be -q for non-verbosity, quiet or silence. (This is not the point of discussion though. ) There should be a long option for every short one as well, -q and —quiet .

As in almost everything in our business, there are many ways to get a solution or the same results. Having -q is one of them.

You must log in to answer this question.

Hot Network Questions

Subscribe to RSS

To subscribe to this RSS feed, copy and paste this URL into your RSS reader.

Site design / logo © 2023 Stack Exchange Inc; user contributions licensed under CC BY-SA . rev 2023.7.12.43529

Linux is a registered trademark of Linus Torvalds. UNIX is a registered trademark of The Open Group.
This site is not affiliated with Linus Torvalds or The Open Group in any way.

By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy.

Источник

Оцените статью
Adblock
detector