리눅스 명령어·권한·서비스 정리
파일 권한, 프로세스, 패키지와 네트워크 명령을 실제 운영 흐름으로 정리합니다.
관련 시험 리눅스마스터 2급정보보안기사
파일과 권한
읽기·쓰기·실행 권한은 소유자·그룹·기타 사용자 순서로 관리합니다. 디렉터리의 실행 권한은 내부 항목 접근과 관련되므로 파일 권한과 같은 의미로 해석하면 안 됩니다.
- chmod는 권한, chown은 소유자·그룹을 바꾼다.
- umask는 새 객체에서 제거할 기본 권한 비트다.
- inode는 메타데이터와 블록 위치를 저장하지만 파일명은 디렉터리 엔트리에 있다.
프로세스와 서비스
ps는 시점의 프로세스 정보를, top은 자원 사용량을 지속적으로 보여줍니다. systemd 환경에서는 systemctl로 서비스 상태와 시작 설정을 관리합니다.
- kill은 프로세스에 시그널을 보낸다.
- nice 값이 낮을수록 일반적으로 우선순위가 높다.
- cron은 정해진 시각이나 주기에 작업을 실행한다.
네트워크와 로그
ss는 소켓과 포트 상태, ip는 주소·링크·경로, journalctl은 systemd 저널을 확인할 때 사용합니다. 장애 분석에서는 설정 변경 전에 상태와 로그를 보존하는 습관이 중요합니다.
- SSH는 암호화된 원격 접속을 제공한다.
- DNS 문제와 IP 연결 문제를 분리해 진단한다.
- 방화벽 규칙은 방향·프로토콜·포트를 함께 확인한다.
권한 문제를 사용자·객체·동작으로 분해하기
리눅스 권한은 명령을 실행한 사용자가 누구인지, 대상이 파일인지 디렉터리인지, 읽기·쓰기·탐색 중 어떤 동작인지로 나눠 판단합니다. 숫자 권한은 r=4, w=2, x=1을 더하고 특수 권한은 실행 비트 위치의 s·t 표시까지 확인합니다.
- 디렉터리 r은 이름 목록 조회, x는 경로를 따라 내부 항목에 접근하는 권한이다.
- setuid·setgid는 실행 시 유효 사용자·그룹 권한과 관련되고 sticky bit는 공유 디렉터리 삭제를 제한한다.
- 서비스 장애는 status→journal 로그→포트→방화벽 순으로 범위를 좁히면 효율적이다.
셸 입출력·파일 탐색·패키지 관리
셸 문제는 표준입력 0, 표준출력 1, 표준오류 2의 흐름과 파이프·리다이렉션 대상을 구분해야 합니다. 파일 검색은 이름·속성·내용 검색 명령을 나누고, 패키지 도구는 저장소 메타데이터와 실제 설치 상태를 함께 관리합니다.
- >는 덮어쓰기, >>는 이어쓰기이며 2>는 표준오류를 별도로 보낸다.
- 파이프는 앞 명령의 표준출력을 뒤 명령의 표준입력으로 연결한다.
- find는 파일 속성과 경로, grep은 파일 안의 문자열 검색에 주로 사용한다.
- 하드 링크는 inode를 공유하고 심볼릭 링크는 대상 경로를 가리킨다.
부팅·파일시스템·프로세스·네트워크 관리
리눅스 시스템 문제는 부팅과 서비스, 저장장치와 마운트, 프로세스와 작업 제어, 네트워크 설정의 네 흐름으로 정리합니다. 명령 이름만 보지 말고 조회·일시 변경·영구 설정 중 어느 효과를 내는지 구분합니다.
- 파티션이나 논리 볼륨에 파일시스템을 만든 뒤 마운트 지점에 연결하며 /etc/fstab은 부팅 시 마운트 설정에 사용된다.
- systemd의 unit은 service·socket·target 등 종류가 있고 enable은 부팅 연동, start는 현재 실행을 뜻한다.
- ps는 특정 시점, top은 지속적인 자원 상태를 보여주며 nice·renice는 일반 스케줄링 우선순위 힌트를 조정한다.
- ip addr·ip link·ip route는 주소·링크·경로를, ss는 소켓을, DNS 도구는 이름 해석을 확인한다.
- 로그는 시간·호스트·프로세스·심각도와 최근 변경을 연결하고 원본을 보존한 뒤 필터링한다.
자주 틀리는 판단
- 디렉터리의 읽기와 실행 권한 의미 혼동
- SIGKILL을 정상 종료 요청으로 판단
- 패키지 설치 도구와 패키지 파일 형식을 혼동
개념을 확인했다면 실제 문제에서 판단 기준을 적용해보세요.
분야별 문제 풀기