libNAME.so является именем файла, используемым компилятором/компоновщиком, сначала ища библиотеку, указанную-lNAME. В совместно использованной библиотеке файл поле, названное SONAME. Это поле установлено, когда сама библиотека сначала связана в общий объект (так) процессом сборки. Этот SONAME на самом деле, что хранилища компоновщика в исполняемом файле в зависимости от того общего объекта связан с ним. Обычно SONAME в форме libNAME.so. ГЛАВНЫЙ и изменяется каждый раз, когда библиотека становится несовместимой с существующими исполняемыми файлами, связанными с ним, и обе основных версии библиотеки могут быть сохранены установленными по мере необходимости (хотя только на один укажут для разработки как libNAME.so) кроме того, для поддержки легко обновления между вспомогательными версиями библиотеки, libNAME.so. ГЛАВНЫЙ обычно ссылка на файл как libNAME.so. MAJOR.MINOR. Новая вспомогательная версия может быть установлена и когда-то завершена, ссылка на старую вспомогательную версию ударена для указания на новую вспомогательную версию, сразу обновляющую все новое выполнение для пользований обновленной библиотекой. Кроме того, см. мой ответ на Linux, GNU GCC, ld, сценарии версии и двоичный формат ELF - Как он работает?
Попробовать
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
В то время как возможно переименовать пользователя, и usermod
сделает часть задания, это, довольно вероятно, доставит неприятности. Вот список мест, где имя пользователя может появиться; я не утверждаю, что этот список является исчерпывающим.
/etc/passwd
и связанные файлы (например. /etc/shadow
, /etc/master.passwd
)./etc/group
(и /etc/gshadow
)./etc/sudoers
./var/mail/$USER
или /var/spool/mail/$USER
./var/spool/cron/crontabs/$USER
at
задания (/var/spool/cron/atjobs/*
)Корневой каталог, вероятно, появится еще в большем количестве мест. Много приложений пишут полные пути в различных точечных файлах. Если Вы решаете переименовать корневой каталог также (в то время как нет никакого требования того пользователя alice
корневой каталог быть /home/alice
, наличие его быть /home/bob
сбивало бы с толку), необходимо будет заботиться о тех. Глобальная замена будет работать на большинство приложений, но я не делаю обещаний. Если возможно, сохраните старое название корневого каталога как символьную ссылку на переименованный каталог.
Вот краткое описание команд, которые я использовал в системе 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).
]- все это элегантные методы, но почему бы просто не создать нового пользователя, скопировать все его домашнее содержимое с первого, и все? Конечно, если речь идет об учетной записи службы (приложения), возможно, это не лучшая практика[
].
usermod --home
должен содержать полный путь, например./home/user.name
– иначе новый корневой каталог будет создан в текущем рабочем каталоге. – feeela 27.10.2014, 12:35