Как мне это сделать? Я создал пользователя без домашнего каталога, и теперь я хочу создать его. Не просто папка с именем new_user, я хочу домашний каталог по умолчанию со всеми его папками и скрытыми файлами и т. Д.
command-line
home-directory
Джо Риджо
источник
источник
su new_user
: Dsudo -i -u new_user
но это не работает. Я думаю, что нам нужно "смоделировать X логин" ... не знаю, как это сделать.Ответы:
Используйте следующее (как root или с sudo, если не root):
Чтобы это работало, папка
/home/username
не должна существовать.Для папок, связанных с X (рабочий стол, файлы для загрузки и т. Д.), Вам потребуется войти в графическую среду; они будут автоматически сгенерированы при первом входе в систему.
источник
ls -l /home
. Я обнаружил, что новый каталог доступен для чтения всем остальным пользователям, поэтому я удалил эти разрешения с помощьюchmod go-r-x /home/username
.Подкаталоги (Documents, Downloads и т. Д.) Автоматически создаются при первом входе пользователя в систему через GNOME при условии, что домашний каталог создан с правильными разрешениями. Вот демонстрация:
Вы можете проверить правильность установки домашнего каталога пользователя, проверив запись в
/etc/passwd
. По умолчанию вы должны увидеть домашний каталог, настроенный на/home/testinguser
:Если вы не видите там домашний каталог
/home/testinguser
, вам нужно будет выполнить командуsudo usermod -d /home/testinguser testinguser
для его обновления, хотя вам не нужно использовать эту команду, потому что она должна быть установлена по умолчанию (в соответствииuseradd
с man-страницами).Затем я вышел из своей учетной записи и снова вошел в систему
testinguser
, и здесь автоматически создаются подкаталоги:Мне не нужно было копировать содержимое
/etc/skel
.Если возможно, не могли бы вы попробовать выполнить следующие шаги, создав еще одного нового пользователя? Как только вы закончите, вы можете удалить этого нового пользователя
sudo deluser testinguser && sudo rm -r /home/testinguser
.Если все это не сработало с вами, то я думаю, это ошибка.
источник
useradd
домашний каталог по умолчанию для нового пользователя не устанавливается автоматически/home/username
. Итак, сначала вы должны быть уверены в этом.useradd
справочника: «useradd будет использовать базовый каталог, заданный переменной HOME в/etc/default/useradd
или/home
по умолчанию». Переменная HOME в/etc/default/useradd
не определена по умолчанию, поэтому useradd всегда будет использовать/home
. В любом случае, я отредактирую свой ответ и переместу деталь, чтобы проверить/etc/passwd
./bin/sh
строки пользователя,/etc/passwd
вы должны добавить оболочку для этого пользователя, например оболочку по умолчанию сusermod -s /bin/sh testuser
ОБНОВЛЕНИЕ: Решение сломано и не работает для меня тоже.
Если вы хотите создать домашний каталог пользователя, если он не существует, выполните
useradd
команду с-m
флагом. Это скопирует все файлы из/etc/skel
каталога.Возможно, вам придется настроить параметры для вашей системы. Согласно справочной странице:
и далее указывает:
источник
-m
флаг при создании нового пользователя в любом случае, и он не работал; он только копирует файлы скелета./etc/skel
не создает подкаталоги в домашнем каталоге. Такжеuseradd -m
используется при создании нового пользователя, а не когда он уже добавлен.Если вы создали нового пользователя с помощью
adduser
команды, вам не нужно создавать домашний каталог для нового пользователя. Домашний каталог с именем пользователя в/home
каталоге со следующими подкаталогами: Рабочий стол, Загрузки, Документы, Музыка, Изображения, Видео (и другие) для нового пользователя будет создан автоматически.Если вы создали нового пользователя с помощью
useradd
команды, то выполните следующие команды в терминале:отредактировать
/etc/passwd
файл как root (это самый важный шаг). Найдите строку с именем нового пользователя и задайте для него домашний каталог по умолчанию примерно так:В этой строке вы также можете добавить реальное имя для нового пользователя или установить оболочку по умолчанию. Что-то вроде этого:
Будьте осторожны, не вносите никаких других изменений.
После сохранения файла, прежде чем выходить из учетной записи root, выполните следующие команды:
После всего этого домашняя папка для нового пользователя будет автоматически заполнена после первого входа в систему.
Смотрите также: Как сделать домашнюю папку пользователя после создания учетной записи?
источник
/etc/passwd
(если ее там еще нет). Как только пользователь войдет в систему, домашняя папка будет автоматически заполнена этими подкаталогами. Однако обо всем этом заботятся, если кто-то добавляет пользователяadduser
, а неuseradd
.adduser
: папка дома будет создана автоматически. И действительно, домашняя папка будет автоматически заполняться после первого входа в систему.cp /etc/skel/* /home/new_username
? Кроме того, есть ли причина, по которой вы используете две последовательныеchown
команды?Все, что вам нужно, это домашняя папка, чтобы она работала. Как корень,
При первом входе в систему должны быть созданы все необходимые файлы:
источник