🛡️ 리눅스의 확장 권한(ACL: Access Control List)
기존의 소유자(owner), 그룹(group), 기타 사용자(other)만으로는 특정 사용자에 대한 권한 설정이 어려워서 사용하는 게 바로 확장 권한이다.
🔍 확장 권한 확인 명령어
getfacl 파일명
🛠️ 확장 권한 설정 명령어
setfacl -m u:사용자이름:권한 파일명
예) setfacl -m u:ktest:rwx file100
🧬 리눅스의 파일 속성
파일의 속성은 파일의 성격 자체를 바꾸는 개념이다.
→ 구조나 내용은 그대로지만, 사용이나 접근 자체를 막을 수 있다.
예를 들어 읽기 전용처럼 특정 작업을 막을 수 있음.
🔍 속성 확인
lsattr 파일명
🛠️ 속성 설정
chattr +속성 파일명
예) chattr +i file100 # 변경 불가 설정
예) chattr -i file100 # 변경 가능으로 해제
📁 파일 시스템 개요
운영체제 파일시스템 종류
Windows | NTFS |
Linux | ext4 |
USB 등 | FAT32 |
파일 시스템은 데이터를 저장하고, 복구하고, 접근을 빠르게 도와주는 저장소의 운영 체계라고 보면 됨.
🔄 리눅스 프로세스 개념 정리
🔹 프로세스란?
커널에 등록된 작업,프로그램 =프로세스
프로세스란 일반적으로 사용자가 컴퓨터를 사용하기 위해 작성한 프로그램이나 프로그램을 실행하기 위한 데이터를 묶어서 작업이라고 하는데 이 작업이 컴퓨터 시스템이 실행하는 운영체제 커널에 등록된 상태
- 프로그램이 실행되면 커널에 등록된 작업 단위.
- 각각의 프로세스는 고유한 번호를 가지는데, 이게 PID (Process ID)
사용자가 특정 프로세스(프로그램을 실행)를 생성하면
해당 프로세스는 다른 프로세스에 종속된 상태로 실행
종속된 프로세스-자식
자식프로세스를 종속한 상위 프로세스- 부모
ex. terminal 자식 바탕화면 부모
ping 자식 terminal 부모
부모를 끄면 자식은 그 하위이므로 꺼져야 함.
하지만 간혹 자식이 안 꺼지는 경우가 있는데, 이를
좀비 프로세스라고 하고 자원소모하는 데이터
🔍 기본 프로세스 확인 명령어
ps # 현재 터미널 프로세스
ps -e # 전체 프로세스
ps -ef # PID, PPID 등 정보 포함
ps -el # 더 자세한 정보
ps -u 사용자명 # 특정 사용자 프로세스
pstree # 프로세스 간 계층 구조 보기
⚠️ 프로세스 제어 (Signal)
🔍 신호 확인
kill -l # 시그널 종류 확인
🔫 특정 프로세스 종료
kill -9 PID # 강제 종료 (SIGKILL)
🔫 이름으로 종료
pkill -9 ping ->모든 ping 죽이기
pkill -9 -n ping ->ping 이름의 모든 프로세스 중 최근 실행된 프로세스만 죽이기
pkill -9 -x ping ->ping이름과 정확히 일치하는 프로세스만 죽이기
pkill -9 ping # ping이라는 이름의 모든 프로세스 종료
pkill -9 -n ping # 가장 최근에 실행된 ping 종료
pkill -9 -x ping # 정확히 ping 이름과 일치하는 프로세스만 종료
⚖️ 프로세스 우선순위
리눅스는 프로세스마다 우선순위를 설정해서 CPU 자원 배분을 다르게 함.
- PRI(Priority)가 낮을수록 우선순위 높음
- PRI는 80 + nice값으로 계산됨
nice 데이터를 기반으로 우선순위를 조정
nice 값 범위 의미
-20 | 최고 우선순위 |
0 | 기본값 |
19 | 가장 낮은 우선순위 |
🔍 nice 확인
nice
🛠️ nice 변경 및 실행
nice -n -5 ping 8.8.8.8 # 우선순위 높여 실행
nice -n 10 ping 8.8.8.8 # 우선순위 낮춰 실행
🔁 실행 중인 프로세스 우선순위 변경
renice -n NICE값 -p PID
🧩 포그라운드 / 백그라운드 실행 방식
방식 특징
포그라운드 | 명령 실행 시 콘솔 점유 |
백그라운드 | & 붙여 실행, 콘솔 해방 |
서스펜드 | ctrl+z 로 일시정지 |
fg | 백그라운드 → 포그라운드 복귀 |
bg | 일시정지 상태 → 백그라운드 실행 |
💻 예시
ping 8.8.8.8 # 포그라운드 실행
ping 8.8.8.8 & # 백그라운드 실행
ctrl + c # 포그라운드 종료
ctrl + z # 일시정지 (서스펜드)
jobs # 백그라운드 상태 확인
jobs -l # PID까지 보기
fg %1 # 첫 번째 작업 포그라운드 전환
bg %1 # 백그라운드에서 재개
🚀 백그라운드 작업을 계속 실행하고 싶을 때
터미널을 꺼도 계속 작업을 유지해야 할 경우에는 nohup 사용!
nohup ping 8.8.8.8 > ping.txt &
- nohup: 터미널이 꺼져도 작업 유지
- &: 백그라운드 실행
- >: 출력 리디렉션
'Linux' 카테고리의 다른 글
리눅스 파일 다운로드,패키지 관리 프로그램 (RPM, DNF) (0) | 2025.04.16 |
---|---|
리눅스 권한 (0) | 2025.04.16 |
DNS 이름 해석 구조부터 Zone 파일 구성까지 정리 (0) | 2025.04.16 |
DNS 서버 종류 & 영역 전송 정리 (0) | 2025.04.16 |
🌐 DHCP 개념, DORA 정리, 서버-클라이언트 설정방법 (리눅스) (0) | 2025.04.16 |