useradd
Ubuntu에서 다음 명령을 사용하여 터미널을 통해 새 사용자를 추가했습니다.
useradd -u 210 -g dba -s /bin/bash -d /home/oracle -m oracle
터미널을 통해 이 새로운 사용자로 로그인할 수 있습니다. 하지만 시스템을 시작할 때 이 새 사용자에게 로그인 창을 제공하여 해당 사용자에게 직접 로그인하여 특정 작업을 수행할 수 있도록 하고 싶습니다. 이 목표를 달성하는 방법은 무엇입니까?
답변1
~에 따르면리눅스 표준 라이브러리:
0부터 99까지의 시스템 사용자 ID는 시스템에 의해 정적으로 할당되어야 하며 애플리케이션에 의해 생성되어서는 안 됩니다.
100에서 499까지의 시스템 사용자 ID는 useradd를 사용하는 시스템 관리자 및 설치 후 스크립트에 의한 동적 할당을 위해 예약되어야 합니다.
따라서 일반 사용자의 UID는 499보다 커야 합니다. 또한,데비안 정책지적했다:
0-99:
Debian 프로젝트에 의해 전역적으로 할당되며 모든 Debian 시스템에서 동일합니다. 이 ID는 모든 데비안 시스템의 passwd 및 그룹 파일에 나타나며, 이 범위의 새 ID는 base-passwd 패키지가 업데이트될 때 자동으로 추가됩니다.
정적으로 할당된 단일 uid 또는 gid가 필요한 패키지는 이들 중 하나를 사용해야 합니다. 관리자는 base-passwd 관리자에게 ID를 요청해야 합니다.
100-999:
시스템 사용자 및 그룹을 동적으로 할당합니다. 사용자 또는 그룹이 필요하지만 해당 사용자 또는 그룹을 각 시스템에서 동적으로 다르게 할당할 수 있는 패키지는 adduser --system을 사용하여 그룹 및/또는 사용자를 생성해야 합니다. adduser는 사용자 또는 그룹이 존재하는지 확인하고 필요한 경우 adduser.conf에 지정된 범위를 기반으로 사용되지 않은 ID를 선택합니다.
1000-59999:
동적으로 할당된 사용자 계정. 기본적으로 adduser는 이 범위의 사용자 계정에 대한 UID 및 GID를 선택하지만 이 동작은 adduser.conf를 사용하여 수정할 수 있습니다.
이는 Debian을 기반으로 하는 Ubuntu에도 적용됩니다. 이것이 명시적으로 언급된 것은 아니지만 일반적으로 시스템 사용자는 그래픽으로 로그인하는 것이 허용되지 않으며 종종 전혀 로그인이 허용되지 않습니다. 따라서 사용자가 로그인할 수 없는 이유는 선택한 UID가 너무 낮기 때문입니다.
adduser
또한 데비안 세계에서는 계정을 만들 때 및 사용을 권장합니다 . useradd
에서 man useradd
:
useradd는 사용자를 추가하기 위한 저수준 유틸리티입니다. Debian에서 관리자는 일반적으로 adduser(8)를 사용해야 합니다.
이 모든 의미는 i) UID >=1000을 사용해야 하고 ii) adduser
기본값을 사용하고 수락하면 모든 것이 예상대로 설정된다는 것입니다.