Chciałbym wiedzieć, czy istnieje jakakolwiek prosta komenda powłoki zmieniająca katalog domowy użytkownika w systemie Linux / Unix (jedna podobna do chsh, która zmienia domyślną powłokę logowania istniejącego poprawnego użytkownika) bez dotykania /etc/passwd
pliku. Dzięki
202
/etc/passwd
pliku? Musisz!usermod -d /home/userxx /home/useryy
aby zmienić domyślny katalog logowania linuksa na / home / useryychsh
nie zmieniaj domyślnej powłoki logowania, ale tylko powłokę logowania danego użytkownika ... Aby zmienić nazwęHOME
konkretnego użytkownika, po prostu edytuj/etc/passwd
Odpowiedzi:
Komentarz Ibrahima do drugiej odpowiedzi jest prawidłowym sposobem zmiany katalogu domowego istniejącego użytkownika.
Zmień katalog domowy użytkownika:
usermod
to polecenie edycji istniejącego użytkownika.-d
(skrót od--home
) zmieni katalog osobisty użytkownika.Zmień katalog domowy użytkownika + Przenieś zawartość bieżącego katalogu użytkownika:
-m
(skrót od--move-home
) przenosi zawartość z bieżącego katalogu użytkownika do nowego katalogu.źródło
/home/username
zazwyczaj) jest usuwany./newhome/username
argument, będzie katalogiem domowym użytkownika. Możesz przywrócić go do poprzedniego katalogu domowego, jeśli wiesz, co to było, ale nie ma opcji „cofnij”.usermod -m -d /newhome/username username
Pracuje.Z systemu Linux Zmień domyślny katalog domowy użytkownika podczas dodawania nowego użytkownika :
źródło
usermod -m -d /path/to/new/login/home/dir user
zmienia istniejący katalog domowy użytkownika na nowy katalog logowania, który jest tworzony, jeśli jeszcze nie istnieje, opcja -m przenosi zawartość bieżącego katalogu domowego do nowego katalogu domowegoPrzyjęta odpowiedź jest błędna, ponieważ zawartość z początkowego folderu użytkownika nie jest z niego przenoszona. Dodaję inną odpowiedź, aby to poprawić:
Nie musisz tworzyć folderu z nazwą użytkownika, co spowoduje także przeniesienie plików z początkowego folderu użytkownika do folderu / newhome / username.
źródło
W przypadku, gdy inni czytelnicy szukają informacji o
adduser
poleceniu.Edytować
/etc/adduser.conf
Ustaw
DHOME
zmiennąźródło
Okazało się, że to psuje niektóre aplikacje, najlepszym sposobem jest to
Oprócz dowiązania symbolicznego, w nowszych dystrybucjach i systemach plików, jako root możesz także użyć bind-mount:
Jest to przydatne, aby umożliwić dostęp „przez” katalog / home do podkatalogów za pośrednictwem demonów, które w innym przypadku są skonfigurowane tak, aby uniknąć przeszukiwania dowiązań symbolicznych (apache, ftpd itp.).
Musisz oczywiście pamiętać (lub skrypt inicjujący), aby powiązać się przy ponownym uruchomieniu.
Przykładem skryptu inicjującego
/etc/fstab
jestźródło
usermod -m -d / newhome nazwa użytkownika
źródło