Можно ли создать домашний каталог после того, как пользователь был создан без него?

Вопрос или проблема

Я только что установил Ubuntu 24.04 и уже столкнулся с проблемой, когда вещи меняются без предупреждения.

В Ubuntu 20.04, когда я создавал системного пользователя с помощью adduser, создавалась домашняя папка для этого пользователя:

$ sudo adduser --system --group barney
Добавление системного пользователя `barney' (UID 114) ...
Добавление новой группы `barney' (GID 119) ...
Добавление нового пользователя `barney' (UID 114) с группой `barney' ...
Создание домашнего каталога `/home/barney' ...

Теперь, в Ubuntu 24.04, та же команда внезапно работает по-другому:

$ sudo adduser --system --group barney
info: Выбор UID из диапазона 100 до 999 ...

info: Выбор GID из диапазона 100 до 999 ...
info: Добавление системного пользователя `barney' (UID 112) ...
info: Добавление новой группы `barney' (GID 112) ...
info: Добавление нового пользователя `barney' (UID 112) с группой `barney' ...
info: Не создается `/nonexistent'.

Домашняя папка не создается. Хорошо, ладно, одно из тысяч мелких неприятностей использования Linux, к которым я привык.

Могу ли я исправить это, вручную добавив каталог /home/barney/? То есть, если я выполню

$ sudo mkdir /home/barney
$ sudo chown barney:barney /home/barney
$ sudo chmod 775 /home/barney

это точно так же, как если бы /home/barney/ была создана в качестве домашней папки для barney в момент добавления пользователя, или есть какие-то дополнительные сложности «под капотом», о которых я не знаю?

Если вы исследуете команду “usermod”, кажется, есть возможность создать отсутствующую домашнюю директорию таким образом:

sudo usermod --home /home/barney barney

Я сам это не пробовал, но использовал usermod для исправления неправильных групп и для сопоставления идентификаторов пользователей на разных серверах.

Ответ или решение

Создание домашней папки для пользователя в Ubuntu 24.04

Ваша проблема с отсутствием автоматического создания домашней папки при создании системного пользователя в Ubuntu 24.04 является не единственной, и многие пользователи сталкиваются с подобными изменениями в новой версии операционной системы. Давайте разберёмся, как можно создать домашнюю папку для пользователя, если она не была создана автоматически, и что необходимо учитывать при этом.

Возможности создания домашней директории

  1. Ручное создание директории:
    Вы можете вручную создать домашнюю папку для пользователя barney, выполнив следующие команды:

    sudo mkdir /home/barney
    sudo chown barney:barney /home/barney
    sudo chmod 775 /home/barney

    Эти команды создают директорию, устанавливают владельца и группу для неё, а также назначают разрешения. Однако, есть несколько вещей, которые необходимо учитывать:

    • Файлы конфигурации и статики: При создании домашней папки пользователем adduser обычно автоматически копируются файлы конфигурации из /etc/skel, таких как .bashrc, .profile и другие. Эти файлы содержат настройки, которые могут быть необходимы для правильной работы пользователя. При ручном создании папки вы можете пропустить их. Чтобы сделать это вручную, вам нужно будет скопировать файлы из /etc/skel в новую домашнюю директорию:
      sudo cp -r /etc/skel/. /home/barney/
      sudo chown -R barney:barney /home/barney
  2. Использование команды usermod:
    Как вы уже упомянули, команда usermod может помочь в создании недостающей домашней директории. Выполняя команду:

    sudo usermod --home /home/barney barney

    Это действие также может создать домашнюю директорию, если её не существует, но важно понимать, что эта команда в первую очередь корректирует запись о домашнем каталоге в системных файлах и, как правило, не создаёт директорию автоматически. Чтобы убедиться, что директория создана, вам всё равно нужно будет её создать вручную, как описано выше.

Заключение

Создание домашней папки для пользователя barney после его создания является совершенно осуществимой задачей, но важно учесть, что, кроме установки прав и владения, может потребоваться также копирование необходимых конфигурационных файлов из системы. Поэтому, хотя процесс и занимает больше времени, чем в предыдущих версиях, он вполне выполним. Если система не создаёт домашние директории автоматически, прибегните к ручному созданию с последующим установлением необходимых файлов и прав.

Таким образом, несмотря на изменения в Ubuntu 24.04, вы можете легко обойти эту проблему путём ручного создания структуры домашней папки и переноса необходимых файлов конфигурации.

Оцените материал
Добавить комментарий

Капча загружается...