UPDATE:
Пока никто не смог ответить на вопрос, ответы, которые я получил, были тем, что я предсказал, и я просил людей не отвечать. Когда я прошу их предоставить поддержку (доказательства) своего ответа... сверчки. И затем я получаю минусы? Серьёзно? Кто-нибудь из вас, кто минусовал, объяснит, почему вы минусовали?
Прежде чем еще один человек скажет мне,ВСЕпользователи, установленные дистрибутивом,НЕОБХОДИМЫЙпожалуйста, объясните, какие службы или функции приведут к сбоям или ошибкам при удалении любого из следующих пользователей: adm
games
operator
?
Я хочу знать, как определить, какие пользователи и группы могут быть безопасно удалены. Это так же просто, как если бы не было запущенных от их имени процессов и не было бы файлов, принадлежащих им?
Я использую CentOS8. Есть ли официальная документация по каждому пользователю/группе из коробки, для чего они нужны и какие из них там просто так, а не имеют цели?
Я нашел одну статью Redhat, в которой перечислены «Необязательные пользователи». Я предположил, что это означает, что они не требуются и их можно удалить. Одним из них был user nobody
. К сожалению, после его удаления я обнаружил, что он на самом деле нужен ядру, и мне пришлось вернуть его обратно. Вот вам и необязательные.
Есть много групп, в которых изначально нет назначенных пользователей, например sys
mem
kmem
wheel
man
. Можно ли их просто удалить?
Некоторые группы, например, disk
tape
floppy
video
cdrom
предназначены для предоставления пользователю доступа к оборудованию. Если я никогда не планирую назначать пользователя в какую-либо из этих групп, могу ли я удалить их или они привязаны к оборудованию и могут все сломать, если их удалить?
Я также обнаружил, что некоторые группы, подобные utmp
utempter
ssh_keys
slocate
postdrop
этой, не имеют пользователей, но имеют файлы, владельцем которых является эта группа. Как это возможно, чтобы файлу была назначена группа, которую не может использовать ни один пользователь?
Я прочитал все, что смог найти в сети по этой теме, и ответ номер один, который я видел, был: не беспокойтесь о них и оставьте их в покое. Это не ответ на то, о чем я спрашиваю. Я не спрашиваю мнения людей, следует ли мне удалить пользователя или группу, которых система не будет хватать. Я спрашиваю, как узнать, какие пользователи и группы используются, а какие можно удалить, ничего не сломав.
решение1
Я хочу знать, как определить, какие пользователи и группы могут быть безопасно удалены. Это так же просто, как если бы не было запущенных от их имени процессов и не было бы файлов, принадлежащих им?
В статической системе, по сути, следует также проверить, что ни одна служба или правило udev не ссылаются на них, и что ни одно задание cron или задание на основе таймера не нуждается в них.
В системах на базе Fedora, включая RHEL и CentOS, вы можете проверить зарезервированных пользователей/группы, запустив
cat /usr/share/doc/setup*/uidgid
Это даст вамнекоторыйпредставление о том, для чего предназначены данный пользователь и/или группа, по крайней мере в некоторых случаях. В частности, он перечислит пакеты «владельца» многих пользователей и групп; если вы не используете соответствующий пакет, а пользователь и/или группа тем не менее присутствуют в вашей системе, смело удаляйте их.
Есть много групп, в которых изначально нет назначенных пользователей, например
sys
mem
kmem
wheel
man
. Можно ли их просто удалить?
Некоторые из них используются для устройств,например /dev/kmem
, и не должны удаляться. Другие в настоящее время в основном являются историческими артефактами и сохраняются, чтобы ничего не сломать; если вы знаете, что они вам не нужны, вы можете удалить их (но см. ниже).
Некоторые группы, например,
disk
tape
floppy
video
cdrom
предназначены для предоставления пользователю доступа к оборудованию. Если я никогда не планирую назначать пользователя в какую-либо из этих групп, могу ли я удалить их или они привязаны к оборудованию и могут все сломать, если их удалить?
Опять же, некоторые из них используются для устройств, поэтому сначала проверьте это.
Я также обнаружил, что некоторые группы, подобные
utmp
utempter
ssh_keys
slocate
postdrop
этой, не имеют пользователей, но имеют файлы, владельцем которых является эта группа. Как это возможно, чтобы файлу была назначена группа, которую не может использовать ни один пользователь?
Это предназначено для сценариев, в которых системный администратор может захотеть предоставить пользователям доступ к этим файлам с более высокой степенью детализации, чем если бы они сами были системными администраторами, или, возможно, для демонов или периодически запускаемых команд, которые будут принимать соответствующую группу во время выполнения.
Опять же, в статической системе не стесняйтесь удалять пользователей и группы. В конце концов, если это сломает вашу систему, вы знаете, как это исправить; и поскольку вы не используете систему с контрактом на поддержку, вы не рискуете повлиять на свою поддерживаемость, делая это.
Основная проблема, с которой вы можете столкнуться, связана с будущей установкой пакетов: вы можете установить пакет, который предполагает, что известный пользователь и/или группа присутствуют, и не устанавливается, если их нет. Я не уверен, что такой пакет будетсоответствующий политике, или даже если такие пакеты все еще существуют, но это возможно, и это главная причина избегать удаления пользователей и групп.