mysql 또는 tomcat과 같은 "시스템" 로컬 사용자를 추가하는 방법은 무엇입니까?

mysql 또는 tomcat과 같은 "시스템" 로컬 사용자를 추가하는 방법은 무엇입니까?

mysql내 시스템에는 또는 등 내가 생성한 적이 없는 사용자가 많이 있습니다 tomcat. 이 사용자는 내부에 홈 디렉터리가 없습니다./home

분명히 데몬은 이러한 사용자 아래에서 실행됩니다.

이러한 유형의 사용자를 가리키는 용어는 무엇입니까?

그러한 사용자를 직접 생성하려면 어떻게 해야 합니까? 예를 들어, 사용자를 생성하고 싶지만 deluged해당 암호를 생성하고 기억하고 싶지 않으며 콘솔에서 누군가가 이 사용자로 로그인하는 것을 허용하고 싶지도 않습니다.

달성하는 방법?

답변1

-ruseradd 또는 플래그를 제공하여 --system그러한 사용자(이미 시스템 사용자라고 부르는)를 원한다고 알릴 수 있습니다. 다음은 내 시스템의 매뉴얼 페이지에서 발췌한 내용입니다.

-r, --system
       Create a system account.

       System users will be created with no aging information in
       /etc/shadow, and their numeric identifiers are choosen in the
       SYS_UID_MIN-SYS_UID_MAX range, defined in /etc/login.defs, instead
       of UID_MIN-UID_MAX (and their GID counterparts for the creation of
       groups).

       Note that useradd will not create a home directory for such an
       user, regardless of the default setting in /etc/login.defs
       (CREATE_HOME). You have to specify the -m options if you want a
       home directory for a system account to be created.

/bin/false/sbin/nologin쉘을 또는 이와 유사한 것으로 설정하여 모든 사용자가 콘솔에서 로그인하는 것을 불가능하게 만들 수 있습니다 . to를 사용하여 이 작업을 수행하거나 예를 들어 기존 사용자를 변경할 -s수 있습니다 .useraddchsh -s /sbin/nologin

답변2

일반 사용자와 동일한 방법으로 사용자를 추가할 수 있습니다. 쉘 경로를 생성하기만 하면 됩니다 /sbin/nologin.

자세한 내용은 useradd 매뉴얼을 읽어보세요.$ man useradd

관련 정보