|
|
(не показано 9 промежуточных версий 1 участника) |
Строка 39: |
Строка 39: |
|
| |
|
| ==== Отправка вывода journald на /dev/tty12 ==== | | ==== Отправка вывода journald на /dev/tty12 ==== |
| Во избежание коверканья опций последующими апдейтами сервиса, имеет смысл создать в каталоге /etc/systemd/journald.conf.d/ (при необходимости — создать таковой) конфиг с иммунитетом к редактированию внешними средствами под именем, к примеру, console.conf следующего содержания: | | Во избежание коверканья опций последующими апдейтами сервиса, завести в каталоге /etc/systemd/journald.conf.d/ (при отсутствии — создать таковой) конфиг с иммунитетом к редактированию внешними средствами под именем, к примеру, console.conf следующего содержания: |
| <source lang=ini> | | <source lang=ini> |
| ForwardToConsole=yes | | [Journal] |
| TTYPath=/dev/tty12 | | ForwardToConsole = yes |
| MaxLevelConsole=info
| | TTYPath = /dev/tty12 |
| </source> | | </source> |
| Перечитать его: | | Перечитать настройки: |
| <source lang=bash> | | <source lang=bash> |
| # systemctl daemon-reload | | # systemctl daemon-reload |
Строка 53: |
Строка 53: |
| # systemctl restart systemd-journald | | # systemctl restart systemd-journald |
| </source> | | </source> |
|
| |
| ==== Монтирование "чужих" разделов ====
| |
|
| |
| Для того, что-бы система не прекращала работу, в случае невозможности монтирования какого-нибудь раздела, например системного раздела с заснувшим там Windows, а просто не монтировала его, прописываем в /etc/fstab с параметром nofail, например:
| |
|
| |
| <source lang=text>
| |
| UUID="F05CC5DD5CC59F2A" /mnt/sda1 ntfs-3g locale=ru_RU.UTF-8,dmask=0,umask=111,nofail 0 0
| |
| </source>
| |
|
| |
| ==== Автомонтирование по запросу ====
| |
|
| |
| Если нужно монтировать раздел только в момент первого обращения к нему, прописываем его с параметром comment=systemd.automount
| |
|
| |
| <source lang=text>
| |
| https://webdav.yandex.ru /mnt/yandex.disk davfs noauto,users,uid=user,gid=user,comment=systemd.automount 0 0
| |
| </source>
| |
|
| |
| === Реанимируем консоль /dev/tty1 ===
| |
| ==== Новый способ ====
| |
| навеянный https://forum.altlinux.org/index.php?topic=38514
| |
|
| |
| <source lang=bash>
| |
| cp /lib/systemd/system/prefdm.service /etc/systemd/system/dm.service
| |
| </source>
| |
|
| |
| и закомментировать в /etc/systemd/system/dm.service строчку
| |
| <source lang=bash>
| |
| Conflicts=getty@tty1.service
| |
| </source>
| |
|
| |
| ==== Старый (не очень правильный) способ : ====
| |
|
| |
| Создаём файл /etc/systemd/system/tty1.service такого содержания:
| |
|
| |
| <source lang=text>
| |
| # This file is part of systemd.
| |
| #
| |
| # systemd is free software; you can redistribute it and/or modify it
| |
| # under the terms of the GNU Lesser General Public License as published by
| |
| # the Free Software Foundation; either version 2.1 of the License, or
| |
| # (at your option) any later version.
| |
|
| |
| [Unit]
| |
| Description=Start agetty on tty1
| |
| Documentation=man:agetty(8) man:systemd-getty-generator(8)
| |
| Documentation=http://0pointer.de/blog/projects/serial-console.html
| |
| After=systemd-user-sessions.service plymouth-quit-wait.service
| |
| After=rc-local.service
| |
|
| |
| # If additional gettys are spawned during boot then we should make
| |
| # sure that this is synchronized before getty.target, even though
| |
| # getty.target didn't actually pull it in.
| |
| Before=getty.target
| |
| IgnoreOnIsolate=yes
| |
|
| |
| # On systems without virtual consoles, don't start any getty. Note
| |
| # that serial gettys are covered by serial-getty@.service, not this
| |
| # unit.
| |
| ConditionPathExists=/dev/tty0
| |
|
| |
| [Service]
| |
| # the VT is cleared by TTYVTDisallocate
| |
| ExecStart=-/sbin/agetty tty1 linux
| |
| Type=idle
| |
| Restart=always
| |
| RestartSec=0
| |
| UtmpIdentifier=tty1
| |
| TTYPath=/dev/tty1
| |
| TTYReset=yes
| |
| TTYVHangup=yes
| |
| TTYVTDisallocate=yes
| |
| KillMode=process
| |
| IgnoreSIGPIPE=no
| |
| SendSIGHUP=yes
| |
|
| |
| # Unset locale for the console getty since the console has problems
| |
| # displaying some internationalized messages.
| |
| Environment=LANG= LANGUAGE= LC_CTYPE= LC_NUMERIC= LC_TIME= LC_COLLATE= LC_MONETARY= LC_MESSAGES= LC_PAPER= LC_NAME= LC_ADDRESS= LC_TELEPHONE= LC_MEASUREMENT= LC_IDENTIFICATION=
| |
|
| |
| [Install]
| |
| WantedBy=getty.target
| |
| DefaultInstance=tty1
| |
| </source>
| |
|
| |
| И даём команды:
| |
|
| |
| <source lang=bash>
| |
| systemctl enable tty.service
| |
| systemctl start tty.service
| |
| </source>
| |
|
| |
|
| |
| ==== И ещё штрихи: ====
| |
|
| |
|
| |
| Для того, что-бы первая консоль стартовала сразу при старте:
| |
| в /etc/systemd/logind.conf задаем:
| |
|
| |
| <source lang=bash>
| |
| ReserveVT=1
| |
| </source>
| |
|
| |
| Для того, что-бы kdm стартовал на седьмой консоле прописываем в
| |
| /etc/X11/kdm/kdmrc
| |
|
| |
| <source lang=bash>
| |
| ServerVTs=-7
| |
| </source>
| |
| (а не 1, как по-умолчанию)
| |
|
| |
|
| === Ссылки === | | === Ссылки === |
Улучшаем Systemd
Источники:
archwiki Systemd_(Русский)
archwiki Fstab_(Русский)
Ограничение размера журнала:
Максимальный объем постоянного журнала задаёт переменная SystemMaxUse в конфигурационном файле /etc/systemd/journald.conf.
Ограничиваем журнал размером 50 мегабайт:
Указываем хранить журнал в оперативной памяти (полезно для SSD):
После перезагрузки логи будут очищаться вместе с оперативной памятью!
Место хранения журнала указывается в переменной Storage в конфигурационном файле /etc/systemd/journald.conf.
Указываем хранить журнал в оперативной памяти (каталог /run/log/journal):
Ограничиваем журнал в оперативной памяти размером 5 мегабайт:
Удаляем журнал, хранящийся на диске (если не удалить, будет показываться вместо актуального) от root:
rm -Rf /var/log/journal/*
Отправка вывода journald на /dev/tty12
Во избежание коверканья опций последующими апдейтами сервиса, завести в каталоге /etc/systemd/journald.conf.d/ (при отсутствии — создать таковой) конфиг с иммунитетом к редактированию внешними средствами под именем, к примеру, console.conf следующего содержания:
[Journal]
ForwardToConsole = yes
TTYPath = /dev/tty12
Перечитать настройки:
# systemctl daemon-reload
Перезапустить journald:
# systemctl restart systemd-journald
Ссылки
systemd
Journald