'useradd와 adduser의 차이점'을 구글에 검색하면 많은 포스팅이 나온다. 정확히 말하면 LINUX 내 계열간에 차이가 있다.
먼저 요즘 자주 쓰는 CentOS에서 보자. CentOS 6.6 버전이다.
useradd와 adduser 명령어의 정보를 보면, adduser가 useradd에 대한 링크 파일임을 알 수 있다.
일단 각각 계정 생성을 해보자. useradd로 생성한 계정은 test_user, adduser로 생성한 계정은 test_add로 설정했다.
계정 정보를 보니 쉘도 같다.
뭐 다를거 없다.
즉, CentOS에서는 'useradd = adduser'이다.
이번엔 Ubuntu에서 보자! 우분투 20.10에서 진행했다.
이번에도 useradd와 adduser 명령어의 관계를 살펴보자. useradd의 심볼릭 링크로 adduser가 존재했던 CentOS에서와 달리, 별개의 파일로 존재하는 것을 알 수 있다.
한 명령어씩 실행해보자. 먼저, useradd 명령어를 사용해 test_user라는 계정을 만들 것이다.
바로 생성된다.
이번엔 adduser를 사용해 test_add라는 계정을 만들어보자.
바로 생성이 완료되었던 useradd와 달리 새로운 group과 user를 추가하고, /home/test_add라는 계정의 홈 디렉터리를 만들어주고 /etc/skel 파일에서 복사도 해주고 있다. 또 계정을 만드는 사용자에게 비밀번호 입력을 요구하고 있다.
패스워드를 설정하고 나면 추가적으로 계정에 필요한 기타 정보들을 입력받게 된다.
/etc/passwd 파일을 보면, 추가적으로 입력한 정보와 함께 다른 점이 있다.
기본으로 생성하면 쉘이 다르다. test_add 계정은 bash 쉘, test_add 계정은 sh 쉘을 쓴다.
정리하자면, adduser와 useradd 명령어는 CentOS를 비롯한 RedHat 계열에서는 차이가 없다. 하지만 Ubuntu 계열에서는 확실한 차이가 있다.
- useradd : 순수하게 '계정만' 생성해주고, 기본 쉘인 sh가 할당된다. 홈 디렉터리나 비밀번호 등은 따로 설정이 필요하다.
- adduser : 계정 생성 시 비밀번호와 사용자의 기타 정보를 입력받는다. 옵션을 통해 기본 쉘이나 로그인 옵션 등도 설정할 수 있다. 홈 디렉토리도 자동 생성된다.
아래는 adduser 명령어로 계정 생성 시 사용할 수 있는 옵션들이다.
useradd와 adduser를 비교할 때, userdel과 deluser도 같이 비교하는 것 같아서 적어본다. 결론부터 말하자면 Ubuntu 환경에서 옵션의 차이만 있는 것 같다.
일단 CentOS에서는 userdel 명령어만 존재한다. deluser 명령어는 아예 안먹힌다.
Ubuntu에서는 각 명령어에 먹히는 옵션이 다르다.
계정과 계정의 홈 디렉터리만 삭제하고 싶을 때
- userdel -r user_add
- deluser --remove-home user_add
딱 이 정도의 차이!
'SYSTEM' 카테고리의 다른 글
bash (3) 간단한 계산기 스크립트 짜기 (1) | 2021.03.11 |
---|---|
bash (2) 환경 변수 설정 (1) | 2021.03.10 |
bash (1) alias (별칭/단축키) 설정 (0) | 2021.03.10 |
useradd/adduser 안쓰고 직접 파일 수정하여 계정 생성하기 (0) | 2021.03.09 |
Windows Server와 CentOS의 계정 관리 정책 분석 (0) | 2021.03.08 |