useradd 또는 adduser를 사용해야 합니까?

useradd 또는 adduser를 사용해야 합니까?

시스템에 새로운 사용자를 추가하려고 합니다. 어떤 명령을 실행해야 할지 혼란스럽습니다. useradd또는 adduser?

답변1

설명서에 따르면 다음을 사용해야 합니다 adduser.

수동으로 사용자 추가

설명하다

useradd는 사용자를 추가하기 위한 저수준 유틸리티입니다. Debian에서 관리자는 일반적으로 adduser(8)를 사용해야 합니다.

답변2

useradd및 에 대한 맨페이지의 내용과 관계없이 userdel저는 항상 낮은 수준의 백엔드 바이너리인 , useradd, userdel, groupadd를 사용합니다 groupdel.

프런트엔드 스크립트는 대화형이며 사용자 친화적으로 설계되었지만 동일한 작업을 수행합니다. 그것은 정말로 개인적인 취향의 문제입니다.

실제 차이점에서:

useraddgroupadd명령과 usermod유사한 옵션이 있으며 groupmod이러한 명령에는 프런트엔드 스크립트가 없으므로(즉, 프런트엔드 스크립트 moduser또는 modgroup프런트엔드 스크립트가 없음) 계정 유지 관리를 위해 유사한 명령을 사용하는 것이 더 일관됩니다.

기본 설정에는 사용자 ID, 쉘, 로그인 그룹 등과 같은 다양한 구성 파일이 있습니다. 따라서 설정을 변경하려면 어떤 파일을 편집해야 하는지 확인하세요.

프런트 엔드 스크립트는 해당 --force-badname옵션을 제공하지 않는 한 어리석은 이름을 입력하지 못하도록 "보호"합니다. 예를 들어 특수 문자를 포함하거나 숫자로 시작하는 사용자 또는 그룹 이름입니다. 이는 우연히 발생할 가능성이 거의 없으므로 "보호"가 필요하지 않습니다.

프런트 엔드 스크립트는 또한 --force option. 또한 해당 사용자 계정에서 실행 중인 프로세스가 있고 항상 루트로 실행 중인 프로세스가 있는 경우 사용자 계정을 삭제할 수 없으므로 어쨌든 실패할 것이라는 점을 지적할 가치가 있습니다.

(하지만 시도해 볼 용기가 나지 않았습니다.)

프런트엔드 스크립트 adduser만이 홈 디렉토리를 암호화할 수 있는 옵션을 갖습니다.

그러나 친숙한 스크립트가 수행할 수 없는 몇 가지 작업이 있으며 일반적으로 수행할 필요는 없지만 바이너리 명령을 사용해야 합니다.

  • useradd는 구성 파일을 편집하거나 새 구성 파일을 생성하지 않고도 기본 홈 디렉터리의 기본값을 재정의할 수 있습니다. 옵션을 봅니다 -k.

  • useradd는 이 옵션을 통해 새로 생성된 사용자가 lastlog 데이터베이스에 추가되는 것을 방지할 수 있습니다 -l.

  • 이 옵션은 useradd 및 groupadd에서 각각 고유하지 않은 UID 또는 GID가 있는 계정을 만드는 데 사용할 수 있습니다 -o. 이러한 스크립트는 이 기능을 제공하지 않습니다.

  • 시스템에서 selinux가 활성화된 경우 useradd는 이 -Z옵션을 사용하여 selinux 매핑을 통해 새 사용자를 생성할 수 있습니다. 그러나 계정이 생성되면 semanage또는 같은 다른 명령을 사용하여 이 작업을 수행할 수도 있습니다 usermod.

  • /snap/core마지막으로 아마도 가장 중요한 것은 옵션을 사용하여 대체 루트 디렉터리 아래의 대체 시스템에서 바이너리 명령만 실행할 수 있다는 것입니다 -R.

관련 정보