Linux에서 사용자를 나열하는 방법

How List Users Linux



Linux는 다중 사용자 운영 체제입니다. 시스템 기능과 생산성을 유지하려면 적절한 사용자 관리가 필수입니다. 시스템 관리자의 경우 사용자 및 권한을 관리하려면 모든 사용자를 알아야 합니다.

이 가이드는 Linux에서 사용자를 나열하는 방법을 보여줍니다.







사용자 나열

시스템은 특정 파일 및 데이터베이스에 사용자 목록을 저장합니다. 다양한 도구를 사용하여 액세스할 수 있습니다. 특정 정보를 수집하기 위해 출력을 필터링할 수도 있습니다.



/etc/passwd의 사용자 나열
/etc/passwd 파일은 시스템의 모든 사용자에 대한 정보를 포함하는 일반 텍스트 기반 데이터베이스입니다. 파일은 파일 권한이 644인 루트가 소유합니다. 파일 권한에 대한 자세한 설명은 Linux 파일 권한 및 소유권에 대한 이 가이드를 확인하세요.



/etc/passwd 파일의 내용을 확인하여 시스템의 모든 사용자에 대한 포괄적인 목록을 확인할 수 있습니다.





$ 고양이 /etc/passwd | 정렬 | 더 적은

파일의 각 줄은 고유한 사용자 이름과 관련 정보를 나타냅니다. 정보는 콜론으로 구분된 7개의 필드로 구분됩니다. 다음은 필드에 대한 간략한 설명입니다.



  • 필드 1: 사용자의 사용자 이름.
  • 필드 2: 사용자 비밀번호가 암호화되었는지 설명합니다. 값이 x이면 암호가 텍스트 파일 /etc/shadow에 저장되어 있음을 나타냅니다. 액세스하려면 sudo 권한이 필요한 시스템 보호 파일입니다.
  • 필드 3: 사용자의 UID(사용자 ID).
  • 필드 4: 사용자의 GID(그룹 ID)입니다.
  • 필드 5: 전체 사용자 이름(GECOS).
  • 필드 6: 사용자 전용 홈 디렉토리.
  • 필드 7: 사용자 로그인 셸입니다. 기본적으로 이 값은 /bin/bash로 설정됩니다.

추가 정보가 현재 필요하지 않은 경우 출력에서 ​​생략할 수 있습니다.

$ 고양이 /etc/passwd | awk -F: '{ $1} 인쇄' | 종류

$ 고양이 /etc/passwd | 컷 -d: -f1 | 종류

getent를 사용하여 사용자 나열
getent라는 용어는 관리 데이터베이스에서 항목을 가져오기 위한 짧은 형식입니다. 알 수 있듯이 getent는 다양한 관리 데이터베이스와 함께 작동할 수 있습니다. 지원되는 모든 관리 데이터베이스를 확인하십시오.

$ getent --help

시스템의 모든 사용자에 대한 정보가 들어 있는 passwd 데이터베이스에 관심이 있습니다. 체크 아웃 암호 getent와 데이터베이스.

$ getent 암호 | 종류

출력은 /etc/passwd의 내용과 유사합니다. 시스템이 사용자 인증에 LDAP를 사용하도록 구성된 경우 이 getent 명령은 passwd 및 LDAP 데이터베이스 모두의 사용자를 표시합니다. 더 자세한 사용법은 Linux getent 명령에 대한 이 가이드를 확인하세요.

사용자 이름만 유지하면서 출력에서 ​​모든 추가 정보를 제거할 수 있습니다.

$ getent 암호 | awk -F: '{ $1} 인쇄' | 종류

$ getent 암호 | 컷 -d: -f1 | 종류

그룹의 사용자 나열
Linux에서 그룹은 사용자 계정을 구성하고 관리하는 조직 단위입니다. 다양한 시스템 및 파일 권한을 보다 쉽게 ​​관리할 수 있습니다.

특정 사용자 그룹의 모든 사용자를 나열하려면 getent를 사용할 수 있습니다.

$ getent 그룹

사용자 목록 사용

이제 시스템의 모든 사용자를 나열하는 방법을 알게 되었습니다. 다음은 이 지식을 적용하는 몇 가지 시나리오입니다.

사용자 존재 확인
사용자 목록에서 Linux 시스템에 사용자가 있는지 확인할 수 있습니다. getent 도구는 사용자가 시스템에 존재하는지 확인할 수 있습니다.

$ getent 암호

그다지 좋지는 않지만 또 다른 방법은 grep을 사용하는 것입니다. grep을 사용하여 사용자 목록을 간단히 필터링할 수 있습니다. 사용자마다 고유한 항목이 있으므로 충돌이 발생하지 않습니다.

$ getent 암호 | 그렙

사용자 계정 수
지금까지 보았듯이 모든 메서드는 출력의 각 줄에서 고유한 사용자를 보고합니다. 줄 번호를 세어 시스템에 현재 몇 명의 사용자가 있는지 확인할 수 있습니다.

줄 번호를 계산하려면 다음을 사용합니다. 화장실 도구. getent 출력을 wc 명령으로 파이프합니다.

$ getent 암호 | 화장실 -l

연결된 사용자 나열
여러 사용자가 로그인한 경우 연결된 사용자 목록을 확인할 수 있습니다. WHO 명령.

$ 누구

출력에는 세 가지 정보 열이 있습니다.

  • 열 1: 연결된 사용자 이름.
  • 열 2: 시스템 연결 유형.
  • 열 3: 세션의 시작 시간 및 날짜.

마지막 생각들

이 자습서에서는 시스템에서 사용자를 나열하고 필터링하는 방법을 보여주었습니다. 또한 사용자 목록의 잠재적인 용도를 보여줍니다. 이러한 방법은 사용 중인 Linux 배포판에 관계없이 작동합니다.

사용자 관리는 Linux 에코시스템의 큰 부분입니다. 자세히 알아보려면 이 심층 가이드를 확인하세요. Linux에서 사용자를 나열하고 관리하는 방법 .

즐거운 컴퓨팅!