sync
это одна из учетных записей, созданная самим Debian. Мне интересно, почему Debian устанавливает свою оболочку входа в систему /bin/sync
вместо /bin/false
. Как Debian использует эту учетную запись?
Это задокументировано в /usr/share/doc/base-passwd/users-and-groups.txt.gz
:
синхронизация
Оболочка пользователя
sync
есть/bin/sync
. Таким образом, если его пароль настроен на что-то, что легко угадать (например, ""), любой может синхронизировать систему на консоли, даже если у него нет учетной записи в системе.
Это действительно исторический артефакт, я бы не ожидал, что sync
пользователь будет настроен таким образом в наши дни. В прошлом было бы полезно иметь такого пользователя, чтобы люди с физическим доступом к консоли ( например, в серверной комнате или лаборатории, заполненной рабочими станциями, как вы могли бы найти в университетах) могли бы снизить риск потери данных, когда завершение работы системы (для восстановления после мошеннического процесса или просто для использования рабочей станции, если она была заблокирована предыдущим пользователем). В системах Unix до Debian имелись sync
пользователи и shutdown
пользователи, с которыми вы могли бы корректно завершить работу системы, не зная root
пароля. (На наших станциях Sun SPARC мы просто STOPA boot
...)
Стоит отметить, как отметил Питер Кордес , что во многих системах доступны другие механизмы, обеспечивающие безопасное отключение или перезагрузку с консоли без возможности аутентификации как root
: события ACPI, инициируемые нажатием выключателя питания (которые приводят к чистому выключению), или CtrlAltDel(что приводит к чистой перезагрузке). AltSysRqможет использоваться как последнее средство для синхронизации, уничтожения, размонтирования и перезагрузки, но это не чистая перезагрузка. Как упомянул JdeBP , иметь sync
пользователя - очень старая идея, восходящая по крайней мере к началу 1980-х годов.
sync
пользователь был добавлен, комбинаций Alt + SysRq не существовало, и система Linux с большей вероятностью была где-то сервером или общей системой в лаборатории, чем однопользовательским ноутбуком. или рабочий стол. Было полезно предоставить возможность людям, имеющим доступ к консоли, безопасно подготовить систему к нечистому завершению работы, чтобы они могли перезагружать системы без корневого доступа, одновременно снижая риск потери данных.shutdown
учетную запись, по умолчанию устанавливаются некоторые (многие?) Дистрибутивы Linux так, что следуют комбинации клавиш ctrl + alt + f1 (чтобы перейти к текстовой консоли в случае, если текущий VT запускает графический экран входа в систему) по Ctrl + Alt + Del запускаетshutdown -r now
или эквивалентный. Таким образом, физический доступ = возможность запуска чистой перезагрузки, даже без SysRQ.sync
илиshutdown
пользователей. (Чтобы быть очень придирчивым, многие дистрибутивы Linux имеют DM на VT1 в настоящее время. У некоторых даже нет текстовых VT больше!)sync
пользователь был добавлен ... Linux как идея не существует. Это соглашение восходит к началу 1980-х, по крайней мере.