Chcę utworzyć nowego użytkownika do uruchomienia usługi w systemie, ale nie chcę mieć /home
ani innych plików konfiguracyjnych. Jak dla użytkownika postgres, ale nie ma on żadnego /home
katalogu.
users
home-directory
Owais Lone
źródło
źródło
Odpowiedzi:
Domyślnie polecenie useradd nie tworzy katalogów domowych, ale dla demona polecam użyć opcji systemowej i zmienić powłokę na nieistniejącą, aby nikt nie mógł zalogować się do tego konta (na przykład w ssh):
Możesz zobaczyć wszystkie opcje za pomocą
man useradd
iman groupadd
jeśli chcesz również utworzyć grupę dla użytkownika.źródło
/sbin/nologin
jako powłoki logowania, chociaż używanie/bin/false
nie robi żadnych różnic.Spróbuj
adduser --system --no-create-home USERNAME
lub po prostu zobacz,man adduser
który twierdzi, że jest „ bardziej przyjaznym interfejsem dla narzędzi niskiego poziomu, takich jak useradd ... ”.źródło
adduser
vs.useradd
, a uruchomienie poleceniauseradd
z tymi opcjami nie spowodowało żadnego błędu, ale utworzyłem konto z powłoką/bin/bash
. „Uwaga dla kupujących”.Potrzebowałem czegoś podobnego - nowego użytkownika bez uprawnień do logowania i powiązanego z usługą systemową. Jednak odpowiedź Clausi tworzy użytkownika z podstawową grupą jako „nogroup”, co nie było tak naprawdę pożądane.
adduser --system --no-create-home --group USERNAME
tworzy grupę systemową o tej samej nazwie co użytkownik i kojarzy ją z użytkownikiem jako grupą podstawową. Można to następnie zweryfikować za pomocą poleceniagroups USERNAME
lubid USERNAME
.źródło
Aby dodać użytkownika bez katalogu domowego, należy wykonać następujące polecenia:
lub
lub
lub
źródło
spróbuj tego polecenia:
sudo useradd vivek
Spowoduje to utworzenie użytkownika bez tworzenia folderu domowego w
/home/vivek
źródło
/home/vivek
zostanie ono utworzone automatycznie.