소유자가 사용자 이름 대신 UID로 표시되는 이유는 무엇입니까?

소유자가 사용자 이름 대신 UID로 표시되는 이유는 무엇입니까?

adduserpw add user또는 사용자가 속한 디렉토리를 사용하여 FreeBSD에서 사용자를 생성하면 소유자가 다음과 같이 나타납니다.UID 그룹 이름바꾸다사용자 이름 그룹 이름. 왜 그런 겁니까? 소유자를 UID로 표시하는 유일한 디렉터리입니다. chown 사용자 이름:그룹 이름에는 차이가 없습니다.

편집하다:

UID는 FileZilla의 SFTP를 사용할 때만 표시되는 것으로 나타났습니다. ls -l을 실행하여 사용자 이름을 소유자로 표시합니다. 연결을 끊었다가 다시 연결해 보았습니다. 다르지 않습니다. 그렇다면 한 곳에서는 UID로 표시되고 다른 곳에서는 사용자 이름으로 표시되는 이유는 무엇입니까?

답변1

내가 사용하는 규칙은 내 사용자의 사용자 이름과 동일한 이름을 가진 그룹을 만드는 것입니다.

다음에서 사용자 이름과 uid 매핑을 찾을 수 있습니다./etc/passwd

# cat /etc/passwd
clan:*:2001:2001:Claus Andersen:/home/clan:/bin/sh

내 uid는 2001이고 기본 그룹(gid)은 2001입니다.

그룹 이름에 대한 gid 매핑은 다음 위치에 있습니다.

# cat /etc/group
clan:*:2001:

/etc/passwdFreeBSD에서는 기본 데이터베이스가 아니므로 직접 편집해서는 안 됩니다 . 마찬가지로 adduseror 를 사용해야 합니다 pw add user. 정말로 편집하고 싶다면 /etc/passwdvipw명령을 사용하세요. 그러면 데이터베이스가 올바르게 업데이트됩니다.

/home은 일반적으로 심볼릭 링크입니다. 위와 같이 하면 다음과 같은 결과를 얻습니다.

$ ls -l /home
lrwxr-xr-x  1 root  wheel  8 Oct  4 12:34 /home -> usr/home

$ ls -l /usr/home
drwxr-xr-x  3 clan  clan  12 Oct  4 12:34 clan

/etc/passwd올바른지 확인하세요 . 그렇지 않다면 단순한 사용자 오류입니다. 그러나 파일이 올바른 것으로 보이면 이 pwd_mkdb명령을 사용하여 passwd 데이터베이스를 업데이트하여 일관성을 보장하십시오.

FreeBSD에서 uid(및 gid)를 보는 또 다른 일반적인 이유는 Jail을 사용하는 경우입니다. 감옥 호스트에 사용자/그룹을 생성하고 감옥 내부에 표시되는 파일을 생성하는 경우 감옥 내부에 uid/gid가 일치하는 동일한 사용자/그룹이 있어야 합니다.

관련 정보