Переложить весь запущенный процесс с user1 на user2

В настоящее время у меня весь процесс запущен user1 идентификатор на моем сервере. Теперь у нас новый пользователь user2 и мы хотим, чтобы весь процесс выполнялся user1 бежать мимо user2, Это сделано для согласованности, как и все другие хосты user2 Какими должны быть вещи, которым я должен следовать и которые должен делать? Обратите внимание, что user1 а также user2 оба имеют привилегии root.

1 ответ

Не ясно, могут ли процессы быть перезапущены как новый пользователь или нет. Предполагая, что процессы могут быть остановлены и перезапущены, и что user1 фактически станет лишним после изменения, тогда это будет относительно просто:

  1. резервное копирование (!)
  2. остановить все процессы user1
  3. создать user2
  4. (опционально) переместить / скопировать все файлы user1, чтобы было ясно, что они теперь принадлежат user2 (при необходимости)
  5. chown все файлы от user1 до user2 (по необходимости)
  6. убедитесь, что ни один скрипт явно не ссылается на user1 по имени (или id) или ссылки ~user1 домашний каталог. Сделайте эти сценарии общими, используя $LOGNAME или же $HOME вместо имени пользователя.

Если какой-либо из процессов предполагает, что у пользователя есть конкретный идентификатор, это то, на что нужно обратить внимание (но вряд ли это так). После, вероятно, пользователь1 может быть отключен / удален.

Другие вопросы по тегам