linux - umożliwia użytkownikowi zalogowanie się do systemu?

3

Ten użytkownik został utworzony za pomocą tego polecenia:

sudo adduser --system --home=/opt/user --group user

Ale teraz chcę, aby ten użytkownik mógł się zalogować. Mogę zostać tym użytkownikiem za pomocą sudo, ale chciałbym również bezpośrednio zalogować się przy użyciu hasła. Próbowałem użyć tego polecenia:

sudo passwd user

Pozwala mi dodawać hasło dla użytkownika. Kiedy próbuję się zalogować, loguje się, ale natychmiast się kończy.

Andrius
źródło
Czy myślisz, że możesz teraz uzyskać obraz / etc / passwd?
Farrukh Sadykov

Odpowiedzi:

3

Nie możesz się zalogować jako user ponieważ jest to konto systemowe, które jest określone przez --system opcja. Konta systemowe są przeznaczone dla demonów lub usług, a nie dla użytkowników, dlatego są udostępniane /bin/false dla powłoki logowania. Jeśli wejdziesz grep '^user' /etc/passwd, dostaniesz coś takiego:

user:x:117:123::/opt/user:/bin/false

Zezwolić user aby się zalogować, możesz użyć usermod, aby zmienić powłokę logowania na bash:

usermod -s /bin/bash user

Alternatywnie możesz także edytować /etc/passwd ręcznie. Możesz także wprowadzić inne zmiany user UID, GID i lokalizacja katalogu domowego.

Larssend
źródło
0

brzmi jak użytkownik jest zablokowany, spróbuj

usermod -U user

także spójrz na /etc/shadow, linia z użytkownikiem musi zacząć się tak

 user:$6$SALT...

Jeśli linia jest

 user:!!:..
 user:*:...

wtedy konto jest zablokowane.

Archemar
źródło
0

Możliwe, że użytkownik został utworzony bez flagi -m.

-r, --system
Create a system account.
System users will be created with no aging information in /etc/shadow, and their numeric identifiers are choosen in the SYS_UID_MIN-SYS_UID_MAX range, defined in /etc/login.defs, instead of UID_MIN-UID_MAX (and their GID counterparts for the creation of groups).

Note that useradd will not create a home directory for such an user, regardless of the default setting in /etc/login.defs (CREATE_HOME). You have to specify the -m options if you want a home directory for a system account to be created.


-m, --create-home
Create the user's home directory if it does not exist. The files and directories contained in the skeleton directory (which can be defined with the -k option) will be copied to the home directory.
useradd will create the home directory unless CREATE_HOME in /etc/login.defs is set to no.

Edytuj: Zobacz także to odpowiedź na inne pytanie.

Lan
źródło