Какова функция сочетания клавиш Ctrl+Y в Linux?

Нет. Как писали сами разработчики systemd дважды, один раз в своем руководстве telinitи один раз в своем руководстве runlevel, уровни запуска «устарели». Вы можете забыть об уровнях запуска.

Эти вещи на самом деле вообще не существуют в systemd, за исключением нескольких прокладок совместимости.

  • Есть несколько символических ссылок для имен целей, но эти цели фактически никогда не используются системой systemd.
    • Скорее, процесс начальной загрузки используетdefault.target(и, следовательно, один или оба из graphical.targetи multi-user.target), rescue.targetили emergency.target. И процесс выключения включает в себя shutdown.target, reboot.target, halt.targetили poweroff.target. Цели уровня выполнения -не участвуют ни в начальной загрузке, ни в завершении работы.
    • Команда telinit, которая, как можно подумать, использует символические ссылки совместимости для сопоставления аргументов строки команды -, также не делает этого. В исходном коде программы telinitесть встроенная таблица, а числа 2, 3, 4и 5в качестве аргументов команды жестко привязаны к multi-user.targetи graphical.target. ].
    • systemd-update-utmpтакже имеет встроенную внутреннюю таблицу.
  • Нет никакой "таблицы инициализации" уровня выполнения. systemd совместим только с van Smoorenburg rc, но не с van Smoorenburg init.
  • Сам systemd не поддерживает значение «текущий уровень выполнения». Скорее, почти полностью недокументированная команда systemd-update-utmpработает внутри с точки зрения состояний активации rescue.target, multi-user.targetи graphical.target.
  • systemd-sysv-generator, генератор сервисных модулей обратной совместимости systemd, объединяет каталоги /etc/rc[234].dтолько в одно отношение Wanted-Byк multi-user.targetв сгенерированных сервисных модулях. В сгенерированных сервисных единицах нет фактической ссылки на уровни выполнения. (Раньше, много лет назад,но люди из systemd обнаружили, что это пошло не так, потому что на них больше нигде не ссылались.)

Если кто-то является пользователем системы, которая собирает systemd, как это делал Arch Linux для задавшего вопрос в " Почему `init 0 `приводит к "избыточным аргументам" при установке Arch? ", никто даже не получает прокладки совместимости, а такие команды, как init 0, приводят к «родному» поведению systemd, которое заключается в жалобе на то, что команда была вызвана неправильно.

Дополнительная литература

1
11.01.2020, 14:30
1 ответ

Ctrl-Y ничего не делает под Linux. DSUSPне поддерживается в Linux.

См. человек 3 термина(упор мой):

VDSUSP (not in POSIX; not supported under Linux; 031, EM, Ctrl-Y) Delayed suspend character (DSUSP): send SIGTSTP signal when the character is read by the user program. Recognized when IEXTEN and ISIG are set, and the system supports job control, and then not passed as input.

В режиме emacs строковых редакторов и библиотек, таких как readline, Ctrl-Yпривязано к "yank" --, но это совершенно другое :, например, после удаления слова с помощью ESC-Backspaceвы можете вставить его заново это с Ctrl-Y.

3
28.04.2021, 23:25

Теги

Похожие вопросы