사용자 정의 패키지(RedHat 및 호환)에 대한 시스템 사용자 ID를 선택하는 방법은 무엇입니까?

사용자 정의 패키지(RedHat 및 호환)에 대한 시스템 사용자 ID를 선택하는 방법은 무엇입니까?

사용자 정의 .rpm 패키지에서 생성된 시스템 사용자에 대한 올바른 uid(또는)을 선택하려면 어떻게 해야 합니까?gid

이 사용자는 루트가 아닌 데몬을 실행하는 데 사용됩니다.

adduser다음 ID를 생략하여 선택하는 것은 --uid공식 패키지의 수정 사항과 충돌할 수 있으므로 용납할 수 없다고 생각합니다. uid또한 이로 인해 서로 다른 ID를 가진 여러 시스템이 생겨 추가 관리가 더욱 어려워질 수 있습니다.

사용할 수 있는 사용되지 않거나 예약되지 않은 범위가 있습니까 uid(로컬 환경에서 재사용되지 않는 한)? uid/ 를 생성하는 알고리즘이 있나요 gid?

이 문제는 RedHat EL 6+, CentOS 6+ 및 Fedora에 적용됩니다. 패키지의 .srpm 또는 .spec이 게시되어야 합니다.

답변1

이것RHEL6 마이그레이션 가이드문서에는 현재 약 200개에 달하는 정적으로 할당된 UID 목록 /usr/share/doc/setup-*/uidgid과 499개부터 시작하여 카운트다운되는 동적 시스템 사용자 목록이 나와 있습니다.

나는 이것을 " adduser -r이 경우 사용하십시오. 300명 이상을 유지한다면 물론 걱정하지 마십시오. 수백 명의 시스템 사용자가 없으면 충돌이 발생하지 않을 것입니다"라고 해석합니다.

답변2

adduser사용자 ID를 선택 하자올바른 방법. 자동으로 할당된 UID와 정적으로 할당된 UID는 서로 다른 범위에 있으므로 공식 패키지와 충돌하지 않습니다. 예, 이로 인해 시스템 전반에 걸쳐 다른 사용자 ID가 발생합니다. 전 세계(모든 시스템 관리자 및 패키지 작성자)에게 "이 사용자 ID를 사용하지 마십시오. 내 것입니다"라고 알려야 하기 때문에 이를 수행할 수 있는 쉬운 방법이 없습니다.

특히 adduser -r자동으로 할당된 시스템 계정에 대해 예약된 범위에서 사용자를 만드는 데 사용됩니다. 이렇게 하면 UID는 동적으로 할당된 다른 UID( adduser아직 존재하지 않는 UID를 선택했기 때문에), 정적으로 할당된 UID 또는 엔터티 사용자의 UID(다른 범위에 있기 때문에)와 충돌하지 않습니다.

자세한 내용은 다음을 참조하세요.페도라 패키징 가이드.

관련 정보