Могу ли я полностью удалить интерфейсную логин в Linux / Systemd?

Произошла стандартная ошибка, которая по умолчанию используется в файловом дескрипторе 2. В то время как в cmd1 | cmd2 , только стандартный из cmd1 был перенаправлен на стандартный из cmd2 .

Как правило, все сообщения об ошибках и диагностические сообщения переходят в стандартную ошибку.

Вы можете использовать strace для подтверждения:

$ strace -e write dstat -dl --float --nocolor 1 1
write(2, "Module dstat_disk24old failed to"..., 83Module dstat_disk24old failed to load. (No suitable block devices found to monitor)) = 83
write(2, "\n", 1
)                       = 1
write(1, "\33[7l---load-avg---\n 1m   5m  15m"..., 34---load-avg---
 1m   5m  15m 
) = 34
write(1, "   0    0    0\n", 15   0    0    0
)        = 15
write(1, "   0    0    0\n", 15   0    0    0
)        = 15
+++ exited with 0 +++

Вы должны перенаправить стандартную ошибку на стандартный вывод, если хотите, чтобы канал фиксировал стандартный вывод ошибок:

dstat -dl --float --nocolor 1 1 2>&1
0
02.10.2018, 00:13
2 ответа

В качестве вопроса StackExchange и с минимальными подробностями :no. Скорее всего, это невозможно сделать на этапе настройки.

Есть небольшое количество критических ссылок, которые можно удалить, но не полностью.

Как правило, вы не удаляете все интерпретаторы интерактивных оболочек, потому что они вам нужны для запуска сценариев оболочки. Проект systemd нацелен на загрузку без них, и он также позволяет многим системным программам делать это, но по-прежнему сложно сказать, что вы никогда не захотите запускать сценарий оболочки. Например. rpmи dpkgиспользуют оболочку для запуска действий по установке пакета.

loginsulogin)являются частью одного пакета под названием util-linux. Обычно вы не удаляете этот пакет. Например, util-linuxтакже является пакетом, который предоставляет программу mount, которая является зависимостью systemdPID 1. Таким образом, вам придется сломать (, удалить )части установленного пакета. Обычно этого избегают, например, повреждение будет устранено, если вы когда-либо обновите пакет, это будет отображаться в виде предупреждений, если вы когда-либо захотите проверить контрольные суммы пакета и т. д.

Согласно этим определениям, вам также придется удалить systemd/system/debug-shell.service. Этот файл также не является файлом конфигурации, предназначенным для изменения или удаления, и является частью пакета systemd.

Не запускать программное обеспечение, позволяющее войти в систему, было бы стандартным способом добиться этого. Это достаточно чисто и эффективно. Другой стандартный метод заключается в том, чтобы не создавать пользователей с разблокированным паролем и допустимой оболочкой входа (или ). Если бы я чувствовал себя параноиком, я бы сделал последнее. (И первое, естественно, следовало бы за чистотой и уменьшением «поверхности атаки», а также для избыточности ).

2
28.01.2020, 02:31

Вы можете отключить службы getty getty@.service. Вы можете отключить sshd. Вы можете отключить другие имеющиеся у вас службы, которые могут предоставлять логины.

В поле пароля каждого пользователя в /etc/shadowможно установить значение *, чтобы не было действительного пароля, даже если существует служба, разрешающая вход в систему.

0
28.01.2020, 02:31

Теги

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