저는 debian 10을 사용하고 있으며 홈 디렉터리 없이 사용자를 만들고 싶습니다. 사용자는 자신의 그룹이 소유한 디렉터리에만 액세스할 수 있어야 합니다. 즉, 사용자는 자신의 그룹 디렉터리에만 액세스할 수 있습니다. 내 명령 정보는 다음과 같습니다.
useradd -g mygroup-G mygroup1,mygroup2 -s /bin/bash -M username
그런데 퍼티를 통해 시스템에 로그인하고 ls 명령을 실행하면 홈 폴더가 보이고 cd
들어가게 됩니다.
-M
홈 폴더 생성을 방지해야 하는데 왜 이것이 가능한지 이해할 수 없습니다 .
답변1
어떤 시스템을 사용하고 있는지 잘 모르겠습니다. CentOS-7에서 이것을 테스트했는데 예상대로 잘 작동했습니다.
[root@localhost ~]# useradd -M bruce
[root@localhost ~]# grep bruce /etc/passwd
bruce:x:1002:1004::/home/bruce:/bin/bash
[root@localhost ~]# su - bruce
su: warning: cannot change directory to /home/bruce: No such file or directory
-bash-4.2$ pwd
/root
-bash-4.2$ exit
logout
[root@localhost ~]# passwd bruce
Changing password for user bruce.
New password:
BAD PASSWORD: The password is shorter than 8 characters
Retype new password:
passwd: all authentication tokens updated successfully.
[root@localhost ~]# ssh bruce@localhost
The authenticity of host 'localhost (::1)' can't be established.
ECDSA key fingerprint is SHA256:O9p/h/nXgzhoxJragsnRHhqv/r0er1OCvIyML5X3/+4.
ECDSA key fingerprint is MD5:58:0e:65:19:0f:d9:78:8b:2d:a1:00:11:3a:c2:0b:c9.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'localhost' (ECDSA) to the list of known hosts.
bruce@localhost's password:
Last login: Fri Feb 19 22:00:56 2021
Could not chdir to home directory /home/bruce: No such file or directory
-bash-4.2$ pwd
/
-bash-4.2$
답변2
Debian Bullseye에서 아무 문제 없이 테스트했습니다. 오타가 있나요? 귀하의 명령에 따라:
useradd -g mygroup -G mygroup1,mygroup2 -s /bin/bash -M username
"-G" 앞에 공백이 누락되어 있고 그룹 이름 사이에 공백이 너무 많습니다. 상처받을 수도 있나요?
man useradd
설명하다
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]] 사용자가 구성원이기도 한 보조 그룹 목록입니다.각 그룹은 공백 없이 쉼표로 다음 그룹과 구분됩니다.이러한 그룹에는 -g 옵션으로 지정된 그룹과 동일한 제한이 적용됩니다. 기본적으로 사용자는 초기 그룹에만 속합니다.
인사