Linux 시스템에서 수천 명의 사용자를 생성해야 합니다. 현재 newusers
모든 사용자의 소스로 파일과 함께 명령을 사용합니다 . 파일에는 약 10,000명의 사용자가 포함되어 있습니다. 달리기
$ newusers /tmp/users.txt
작동하고 사용자를 생성하지만 완료하는 데 시간이 오래 걸립니다. 사용자에게는 쉘, 홈 디렉토리 또는 비밀번호가 필요하지 않습니다. 로그인할 필요도 없습니다. SSH 터널에는 사용자가 필요합니다.
이 작업을 더 빨리 수행할 수 있는 방법이 있나요?
답변1
둘 다 로컬 계정이므로 수행 방법은 다음과 같습니다.
userID 범위 결정
사용자의 그룹 ID 확인
다음을 수행하는 스크립트를 작성하십시오
. 필요한 정보가 포함된 임시 비밀번호 파일을 작성하십시오.${username}:x:${userid}:${groupid}::${homedir}:/bin/false
b. 필요한 정보가 포함된 임시 섀도우 파일을 만듭니다.
${username}:!!:1:0:99999:7:::
임시 섀도우 파일을 /etc/shadow에 추가하고 임시 비밀번호 파일을 /etc/passwd에 추가합니다.
${homedir}
NB1: 비어 있을 수도 /dev/null
있고 다른 것이 있을 수 있는지 잘 모르겠습니다.
NB2: 사용하지 않는 경우 /etc/shadow
passwd :x:
를 다음으로 바꾸세요.:!!:
이는 (임시 파일을 생성하는 데 걸리는 시간에 관계없이) 상당히 빨라야 하며 추가 비밀번호 해싱, UID 검색 등 없이 비밀번호 및 섀도우 파일을 빠르게 업데이트해야 합니다.