[*] cat /etc/passwd | grep -v -e false -e nologin -e halt -e shutdown -e sync | awk -F":" '{print $1 "\t\t" $7}'
[*] cat /etc/passwd : 사용자 계정 정보 파일의 내용을 터미널에 출력하라.
grep -v -e false -e nologin -e halt -e shutdown -e sync |
=>false, halt, shutdown, sync 일치하는 라인은 출력에서 제외됨.
awk -F":" '{print $1 "\t\t" $7}'
=> awk 명령(프로그램)을 사용하여 : 를 구분자로 하여 라인을 'Field' 단위로 분할한다.
그리고 Field1, field 7에 해당하는 값을 포맷하여 print하라.
(Field1: 사용자 이름 | Field: 사용자의 로그인 쉘)
((( 출력 ))) --------------> 사용자 이름, 로그인 쉘이 탭으로 구분된 형태로 나타남.
-v: 지정한 패턴과 일치하지 않는 라인을 출력하도록 함.
-e: 여러 개의 패턴을 지정할 때 사용하는 옵션.
(걔네들이 뭔데?)
false: 실제로는 아무런 동작도 수행하지 않는 명령어.
주로 스크립트나 명령어 실행 중에 실패하는 것을 나타내기 위해 사용.
false로 로그인 쉘을 설정한 사용자는 로그인이 제한되거나 금지되며, 시스템에 로그인할 수 없다.
nologin: 로그인을 막기 위해 사용되는 특별한 로그인 쉘.
nologin으로 로그인 쉘이 설정된 사용자는 로그인이 차단되며, 시스템에 접근할 수 없다. 주로 시스템 유지 관리를 위해 사용자의 임시 접근을 제한하는 경우에 활용됨.
halt: 시스템을 정지시키는 명령어. UNIX, UNIX-like 시스템을 안전하게 종료하고 전원을 끄는 명령어로 사용됨.
halt 명령을 실행하면 시스템은 모든 프로세스를 종료하고 하드웨어를 정상적으로 종료하여 시스템을 꺼지게 합니다.
시스템이 정상적으로 종료되어야 데이터 손실이나 시스템 손상을 방지할 수 있기 때문에, 일반적으로 관리자나 슈퍼유저 권한을 실행해야 한다.
(실행 시 과정)
1. 모든 실행 중인 프로세스 종료: 이로 인해 데이터가 안전하게 디스크에 저장되고 시스템 리소스가 해제됨.
2. 디스크 동기화: 파일 시스템에 대한 버퍼된 데이터가 디스크에 동기화되어 저장됨. (데이터 손실을 방지하기 위해 필요한 작업)
3. 하드웨어 정지: 시스템 하드웨어가 안전하게 종료되고 전원이 차단됨. (시스템 완전히 꺼짐)
(보통 시스템 종료나 장비 교체 등의 상황에서 사용됨. 정상적인 종료 과정을 거치므로 데이터 손실을 방지하고 시스템을 안전하게 종료할 수 있도록 도와준다.)
shutdown: 시스템을 정지하거나 재부팅하기 위해 사용되는 명령어. 하지만 shutdown 명령어를 실행하기 위해서는 관리자 권한이 필요하므로, 해당 로그인 쉘을 가진 사용자는 일반적으로 시스템 관리자나 root 계정으로 제한된다.
sync: 파일 시스템의 버퍼를 디스크에 동기화시키는 역할을 함. 파일 시스템 버퍼에 저장된 데이터를 물리적 디스크에 영구적으로 기록하는 작업을 수행함.
sync명령어로 로그인하는 것은 일반적이지 않으며, 주로 시스템 관리자 또는 특정 작업을 수행하는 스크립트에서 활용될 수 있다.
(대체로 본 명령어들은 시스템의 보안과 과닐를 위해 사용된다)
(사용자에게 특정한 권한을 할당하거나 시스템의 특정 동작을 제한하기 위해 사용됨.)
Comments
Post a Comment