`id`는 루트가 아닌 사용자의 숫자만 인쇄합니다.

`id`는 루트가 아닌 사용자의 숫자만 인쇄합니다.

명령 을 사용할 때 id사용자 및 그룹 이름이 확인되지 않습니다( admin작동하기 때문에).

사용자 backupadmin:

backup:

# id
uid=1005 gid=100 groups=100

admin:

# id
uid=0(admin) gid=0(administrators) groups=0(administrators),100(everyone)

/etc/passwd:

# cat /etc/passwd 
admin:x:0:0:administrator:/share/homes/admin:/bin/sh
guest:x:65534:65534:guest:/share/homes/guest:/bin/sh
httpdusr:x:99:0:Apache httpd user:/share/homes/httpdusr:/bin/sh
backup:x:1005:100:Linux User,,,:/share/homes/backup:/bin/sh
sshd:x:501:501:Linux User,,,:/tmp:/bin/false

etc/passwd권한은 다음과 같습니다:

# ls -l passwd 
lrwxrwxrwx    1 admin    administ        13 Mar 12 23:27 passwd -> config/passwd

# ls -l config/passwd
-rw-r--r--    1 admin    administ       519 Mar  6 09:55 config/passwd

# ls -l config
lrwxrwxrwx    1 admin    administ        21 Apr  3 21:47 config -> /mnt/HDA_ROOT/.config/

# ls -ld /mnt/HDA_ROOT/.conf*
-rw-r--r--    1 admin    administ       274 Apr  3 21:47 /mnt/HDA_ROOT/.conf
drw-r--r--   31 admin    administ      4096 Apr 11 10:50 /mnt/HDA_ROOT/.config/

# ls -l /mnt/HDA_ROOT/.config/passwd
-rw-r--r--    1 admin    administ       519 Mar  6 09:55 /mnt/HDA_ROOT/.config/passwd

ls이름과 그룹도 확인하지 못합니다.

backup:

# ls -l
lrwxrwxrwx    1 0        0               28 Feb 26 14:20 @Recycle -> /share/homes/@Recycle/backup
drwxr-xr-x    2 1005     100           4096 Apr 10 21:40 test

admin:

# ls -l
lrwxrwxrwx    1 admin    administ        28 Feb 26 14:20 @Recycle -> /share/homes/@Recycle/backup/
drwxr-xr-x    2 backup   everyone      4096 Apr 10 21:40 test/

nsswitch.conf는 다음과 같습니다:

# cat /etc/nsswitch.conf 

passwd:     compat winbind
shadow:     compat
group:      compat winbind

hosts:      files dns wins 

bootparams: files

ethers:     files
netmasks:   files
networks:   files
protocols:  files 
rpc:        files
services:   files

netgroup:   files

publickey:  files

automount:  files
aliases:    files

그 이유는 무엇입니까?

시스템은 QNAP, 펌웨어 4.2.4입니다. 저는 이것이 busybox 1.x를 기반으로 한다고 생각합니다.

편집: 파일을 읽을 수 없는 것 같습니다 passwd.

# su backup
# cat /mnt/HDA_ROOT/.config/passwd
cat: can't open '/mnt/HDA_ROOT/.config/passwd': Permission denied

하지만 권한은 괜찮은 것 같습니다..

# su admin
# ls -l /mnt/HDA_ROOT/.config/passwd
-rw-r--r--    1 admin    administ       519 Mar  6 09:55 /mnt/HDA_ROOT/.config/passwd

답변1

디렉토리 에 대한 권한이 /mnt/HDA_ROOT/.config잘못되었습니다. /etc/passwd여기에 있는 QNAP에서 가져온 로 이어지는 디렉토리에 대한 올바른 권한 세트는 다음과 같습니다 .

drwxr-xr-x   18 admin    administ      1024 Mar 17 16:28 /
drwxr-xr-x   24 admin    administ      2048 Mar 18 03:00 /etc/
lrwxrwxrwx    1 admin    administ        21 Mar 17 16:25 /etc/config -> /mnt/HDA_ROOT/.config/
-rw-r--r--    1 admin    administ       227 Feb 21  2016 /etc/config/passwd

drwxr-xr-x   30 admin    administ      4096 Apr 11 04:00 /mnt/HDA_ROOT/.config/

귀하와 비교하면 귀하 /mnt/HDA_ROOT/.config에게는 읽기 및 실행 권한이 없습니다. 이 명령으로 수정하세요

chmod a=rx,u+w /mnt/HDA_ROOT/.config    # or chmod 755 ...

권한이 손상된 설정으로 되돌아가는 경우 다음번 재부팅 후 이를 주시하고 QNAP 기술 지원에 티켓을 제기하는 것이 좋습니다.

관련 정보