Действительно ли возможно переименовать учетную запись пользователя UNIX?

libNAME.so является именем файла, используемым компилятором/компоновщиком, сначала ища библиотеку, указанную-lNAME. В совместно использованной библиотеке файл поле, названное SONAME. Это поле установлено, когда сама библиотека сначала связана в общий объект (так) процессом сборки. Этот SONAME на самом деле, что хранилища компоновщика в исполняемом файле в зависимости от того общего объекта связан с ним. Обычно SONAME в форме libNAME.so. ГЛАВНЫЙ и изменяется каждый раз, когда библиотека становится несовместимой с существующими исполняемыми файлами, связанными с ним, и обе основных версии библиотеки могут быть сохранены установленными по мере необходимости (хотя только на один укажут для разработки как libNAME.so) кроме того, для поддержки легко обновления между вспомогательными версиями библиотеки, libNAME.so. ГЛАВНЫЙ обычно ссылка на файл как libNAME.so. MAJOR.MINOR. Новая вспомогательная версия может быть установлена и когда-то завершена, ссылка на старую вспомогательную версию ударена для указания на новую вспомогательную версию, сразу обновляющую все новое выполнение для пользований обновленной библиотекой. Кроме того, см. мой ответ на Linux, GNU GCC, ld, сценарии версии и двоичный формат ELF - Как он работает?

48
20.11.2013, 15:37
4 ответа

Попробовать

usermod --move-home --login <new-login-name> --home <new-home-dir> <old-login-name>

--move-home опция перемещает содержание старого корневого каталога в новое, данное --home опция, которая создается, если она уже не существует.

Если Вы хотите, чтобы группа основного пользователя соответствовала new-login-name, добавить --gid <new-login-name> к команде выше, но группа должен существовать ранее.

См. страницу справочника для большего количества информации:

man usermod
52
27.01.2020, 19:34
  • 1
    Спасибо! я не знал об этой команде.:) Однако это - единственная учетная запись на этом компьютере, и человек говорит это: «Необходимо удостовериться, что именованный пользователь не выполняет процессов, когда эта команда выполняется, если пользователи числовой идентификатор пользователя, пользователи называют, или пользовательский корневой каталог изменяется. usermod проверяет это на Linux, но только проверьте, зарегистрирован ли пользователь согласно utmp на другой архитектуре». Вы предложили бы использовать живой CD, чтобы сделать это или создать временную учетную запись, которую я удалю, после того как это сделано? –  Yann Dìnendal 18.08.2010, 13:30
  • 2
    Так как Вы используете Ubuntu и не можете войти в систему как корень, я создал бы другую учетную запись, названную, скажем, администратор, которого Вы используете для просто этого типа задачи. Временная учетная запись будет работать точно также, но Вы могли бы также сохранить ее, так как Вы могли делать подобные вещи в будущем. –  gvkv 18.08.2010, 18:23
  • 3
    Знайте это usermod --home должен содержать полный путь, например. /home/user.name – иначе новый корневой каталог будет создан в текущем рабочем каталоге. –  feeela 27.10.2014, 12:35
  • 4
    Это не изменит группу! –  Hannes Schneidermayer 09.04.2017, 17:35

В то время как возможно переименовать пользователя, и usermod сделает часть задания, это, довольно вероятно, доставит неприятности. Вот список мест, где имя пользователя может появиться; я не утверждаю, что этот список является исчерпывающим.

  • Пользовательская запись в /etc/passwd и связанные файлы (например. /etc/shadow, /etc/master.passwd).
  • Записи группы в /etc/group/etc/gshadow).
  • Возможно записи в /etc/sudoers.
  • Системный почтовый ящик, обычно /var/mail/$USER или /var/spool/mail/$USER.
  • crontab, обычно /var/spool/cron/crontabs/$USER
  • В at задания (/var/spool/cron/atjobs/*)

Корневой каталог, вероятно, появится еще в большем количестве мест. Много приложений пишут полные пути в различных точечных файлах. Если Вы решаете переименовать корневой каталог также (в то время как нет никакого требования того пользователя aliceкорневой каталог быть /home/alice, наличие его быть /home/bob сбивало бы с толку), необходимо будет заботиться о тех. Глобальная замена будет работать на большинство приложений, но я не делаю обещаний. Если возможно, сохраните старое название корневого каталога как символьную ссылку на переименованный каталог.

22
27.01.2020, 19:34

Вот краткое описание команд, которые я использовал в системе Debian:

groupadd NEW
usermod -l NEW -m -d /home/NEW -g NEW OLD
chfn -f "New Fullname" NEW
cd /home
ln -s NEW OLD

Последние две команды создают символическую ссылку от имени старого домашнего каталога (/home/OLD) на имя нового (/home/NEW).

4
27.01.2020, 19:34
[

]- все это элегантные методы, но почему бы просто не создать нового пользователя, скопировать все его домашнее содержимое с первого, и все? Конечно, если речь идет об учетной записи службы (приложения), возможно, это не лучшая практика[

].
1
27.01.2020, 19:34

Теги

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