0.리눅스란...
리눅스(Linux)는 유닉스(UNIX) 계열의 오픈소스 운영체제(OS) 이다.
정확히 말하면 리눅스는 운영체제의 핵심인 커널(Kernel) 을 의미하며,
이 커널 위에 다양한 도구와 프로그램을 결합한 전체 시스템을 보통 리눅스 OS라고 부른다.
리눅스는 1991년 리누스 토르발스(Linus Torvalds) 에 의해 처음 개발되었으며,
소스 코드가 공개된 자유 소프트웨어이기 때문에 누구나 수정·배포·사용할 수 있다.
1. 리눅스 구조

1-1.Hardware (하드웨어)
실제 물리 장치(CPU, 메모리, 디스크, 네트워크 카드 등)
하드웨어는 스스로 제어되지 않고, 반드시 커널을 통해서만 사용됨
1-2. Kernel (커널)
하드웨어와 소프트웨어 사이의 중재자
-
프로세스 관리 (CPU 스케줄링)
-
메모리 관리
-
파일 시스템 관리
-
디바이스 드라이버 관리
-
시스템 콜 제공
실제 예시
cat file.txt 이 명령어를 치면
→ 커널이 디스크에서 데이터를 읽어 옴
1-3. Shell (쉘)
사용자와 커널 사이의 명령 해석기 사용자의 명령을 커널이 이해할 수 있게 전달 하는 역할
실제 예시
ls -al 명령어 같은것들
쉘이 명령을 해석
→
커널에 시스템 콜 요청
→
결과를 다시 사용자에게 출력
1-4. Utilities (유틸리티)
시스템 관리 및 작업을 돕는 기본 도구들
쉘에서 실행되는 표준 명령어 프로그램
역할
-
파일 관리
-
프로세스 관리
-
네트워크 관리
-
시스템 상태 확인
실제 예시
파일 관련: ls, cp, mv, rm
프로세스: ps, top, htop, kill
디스크: df, du, mount
네트워크: ping, netstat, ss
권한: chmod, chown
예시
df -h
→ 디스크 사용량 확인
1-5. Applications (애플리케이션)
사용자가 직접 사용하는 프로그램
커널을 직접 건드리지 않고, 시스템 콜을 통해 동작
서비스 제공
사용자 인터페이스 제공
실제 예시
서버: nginx, apache
개발: java, python, node
DB: mysql, postgres
편집기: vim, nano
GUI 앱: Firefox, VS Code
→ 애플리케이션 실행 → 커널 통해 CPU/메모리 사용
1-6. Terminals / Printers / Disks (입출력 장치)
시스템이 제어하는 외부 장치들
커널이 직접 관리
실제 예시
Terminal: 터미널 창
Disk: /dev/sda, /dev/nvme0n1
Printer: 네트워크 프린터
USB 장치

진행 구조
2.목차별 명령어 정리
PART 01 리눅스의 기본
Chapter 01 리눅스 설치와 기본 사용법
uname
- 약어: Unix Name
- 역할: 현재 시스템의 커널 정보 출력
설명
주요 옵션
언제 사용
- 커널 버전 확인
- 서버 장애 분석 시 기본 점검
lsb_release
- 약어: Linux Standard Base
- 역할: 리눅스 배포판 정보 출력
설명
- Ubuntu, Debian, CentOS 등의 배포판 이름과 버전 확인
주요 옵션
언제 사용
- 패키지 설치 가능 여부 확인
- 문서/가이드 따라갈 때 OS 확인용
hostname
- 의미: 시스템의 호스트 이름
- 역할: 현재 시스템 이름 출력 또는 설정
설명
언제 사용
- 서버 관리
- 여러 대의 서버를 운영할 때 식별용
date
- 의미: 날짜와 시간
- 역할: 현재 시스템 시간 출력
설명
언제 사용
clear
- 의미: 화면 지우기
- 역할: 터미널 화면 초기화
설명
- 출력된 내용은 지우지만 실행 결과는 사라지지 않음
언제 사용
exit
설명
주의
reboot
설명
언제 사용
주의
shutdown
- 의미: 시스템 종료 예약
- 역할: 안전하게 시스템 종료 또는 재부팅
설명
주요 옵션
언제 사용
poweroff
- 의미: 전원 차단
- 역할: 시스템 종료 후 전원 OFF
설명
차이점
- shutdown: 절차적 종료
- poweroff: 즉시 종료
주의
Chapter 02 디렉터리와 파일 사용법
ls
- 약어: LiSt
- 역할: 디렉터리 안의 파일과 디렉터리 목록 출력
- 설명: 현재 디렉터리 또는 지정한 경로의 내용을 확인하는 가장 기본적인 명령어
- 주요 옵션
-l : 상세 정보 출력 (권한, 소유자, 크기, 시간)
-a : 숨김 파일 포함
-h : 사람이 읽기 쉬운 단위로 크기 표시
- 실무 포인트: 파일 권한, 소유자 확인 시 필수
pwd
- 약어: Print Working Directory
- 역할: 현재 작업 중인 디렉터리 경로 출력
- 설명: 내가 지금 어느 위치에서 작업 중인지 절대 경로로 보여줌
- 실무 포인트: 스크립트 작성, 경로 혼동 방지
cd
- 약어: Change Directory
- 역할: 작업 디렉터리 이동
- 설명: 다른 디렉터리로 이동할 때 사용
- 자주 쓰는 형태
cd /경로 : 절대 경로 이동
cd .. : 상위 디렉터리
cd ~ : 홈 디렉터리
- 실무 포인트: 상대경로/절대경로 개념 필수
tree
- 의미: 디렉터리 구조를 트리 형태로 출력
- 역할: 디렉터리 전체 구조 시각적으로 확인
- 설명: 프로젝트 구조 파악에 매우 유용
- 주의: 기본 설치 안 된 경우 많음 (
apt install tree)
mkdir
- 약어: Make Directory
- 역할: 새로운 디렉터리 생성
- 설명: 폴더 생성 명령어
- 주요 옵션
- 실무 포인트: 서버 디렉터리 구조 설계 시 자주 사용
rmdir
- 약어: Remove Directory
- 역할: 빈 디렉터리 삭제
- 설명: 안에 파일이 있으면 삭제 불가
- 차이점
- 실무 포인트: 거의 rm으로 대체됨
cp
- 약어: CoPy
- 역할: 파일 또는 디렉터리 복사
- 설명: 원본을 유지한 채 사본 생성
- 주요 옵션
-r : 디렉터리 복사
-a : 권한/속성 유지
- 실무 포인트: 설정 파일 백업 시 필수
mv
- 약어: MoVe
- 역할: 파일 이동 또는 이름 변경
- 설명: 같은 파일 시스템에서는 이름 변경처럼 동작
- 실무 포인트: rename 용도로도 많이 사용
rm
- 약어: ReMove
- 역할: 파일 또는 디렉터리 삭제
- 설명: 삭제된 파일은 복구 어려움
- 주요 옵션
- 주의:
rm -rf 매우 위험
ln
- 약어: LiNk
- 역할: 파일 링크 생성
- 설명: 하나의 파일을 여러 경로에서 참조
- 종류
- 실무 포인트: 설정 파일 공유, 버전 관리에 사용
stat
- 의미: 상태 정보 출력
- 역할: 파일의 상세 메타데이터 확인
- 설명: 권한, inode, 접근 시간 등 출력
- 실무 포인트: 파일 변경 여부 추적
file
- 의미: 파일 유형 판별
- 역할: 파일의 실제 타입 확인
- 설명: 확장자가 아닌 내용 기반 분석
- 실무 포인트: 바이너리/텍스트 파일 구분
touch
- 의미: 만지다
- 역할: 빈 파일 생성 또는 타임스탬프 변경
- 설명: 파일이 없으면 생성, 있으면 시간만 변경
- 실무 포인트: 테스트용 파일 생성에 자주 사용
Chapter 03 문서 편집
vi
- 약어: Visual Interface
- 역할: 리눅스 기본 텍스트 편집기
- 설명: 대부분의 유닉스/리눅스 시스템에 기본 포함된 표준 편집기
- 특징
- 모드 기반 편집기 (명령 모드 / 입력 모드)
- 실무 포인트: 서버 환경에서 가장 많이 사용됨
vim
- 의미: Vi IMproved
- 역할: vi를 확장한 고급 편집기
- 설명: 문법 강조, 플러그인, 검색 기능 강화
- 실무 포인트: vi 호환 + 생산성 향상
nano
- 의미: 단순 텍스트 편집기
- 역할: 초보자 친화적 편집기
- 설명: 단축키 안내가 화면 하단에 표시됨
- 실무 포인트: 간단한 수정용
ed
- 의미: line editor
- 역할: 라인 단위 텍스트 편집기
- 설명: 가장 오래된 유닉스 편집기
- 특징
- 실무 포인트: 거의 사용되지 않으나 역사적 중요성
sed
- 약어: Stream Editor
- 역할: 스트림 기반 텍스트 편집
- 설명: 파일이나 파이프 입력을 한 줄씩 처리
- 주요 기능
- 실무 포인트: 로그 처리, 설정 자동 변경
awk
- 의미: 개발자 이름 약자 (Aho, Weinberger, Kernighan)
- 역할: 텍스트 처리 언어
- 설명: 컬럼 기반 데이터 처리에 특화
- 실무 포인트: CSV, 로그 분석에 사용
cat
- 약어: conCATenate
- 역할: 파일 내용 출력 및 연결
- 설명: 파일을 이어서 출력
- 실무 포인트: 짧은 파일 확인
less
- 의미: more의 확장판
- 역할: 페이지 단위 파일 보기
- 설명: 앞뒤 이동 가능
- 실무 포인트: 대용량 로그 확인에 최적
more
- 의미: 페이지 단위 출력
- 역할: 파일 내용을 한 화면씩 출력
- 설명: 뒤로 이동 불가
- 실무 포인트: less 등장 이전에 사용
nl
- 의미: Number Lines
- 역할: 파일에 줄 번호 출력
- 설명: 코드, 설정 파일 줄 번호 확인
- 실무 포인트: 에러 위치 확인에 유용
Chapter 04 셸 사용법
bash
- 약어: Bourne Again SHell
- 역할: 리눅스 기본 셸
- 설명: 명령어 실행, 스크립트 작성이 가능한 셸
- 실무 포인트: 대부분의 서버 기본 셸
sh
- 의미: Bourne Shell
- 역할: 유닉스 전통 셸
- 설명: bash의 기반이 되는 셸
- 실무 포인트: 호환성 테스트용
exec
- 의미: execute
- 역할: 현재 프로세스를 다른 명령으로 대체
- 설명: 새 프로세스를 생성하지 않음
- 실무 포인트: 셸 스크립트 최적화
source
- 의미: 현재 셸에서 스크립트 실행
- 역할: 환경 변수 적용
- 설명: 새 셸을 생성하지 않음
- 동일 명령
- 실무 포인트: 환경 설정 반영
alias
- 의미: 별칭
- 역할: 명령어 단축 설정
- 설명: 긴 명령어를 짧게 사용
- 실무 포인트: 반복 작업 자동화
unalias
- 의미: 별칭 해제
- 역할: 설정된 alias 제거
- 설명: 원래 명령어로 복원
history
- 의미: 명령 기록
- 역할: 이전에 실행한 명령어 목록 출력
- 설명: 명령 재사용 가능
- 실무 포인트: 작업 이력 확인
fc
- 약어: Fix Command
- 역할: 이전 명령 편집 후 재실행
- 설명: history 명령 보조
- 실무 포인트: 긴 명령 수정 후 실행
export
- 의미: 환경 변수 내보내기
- 역할: 자식 프로세스에 변수 전달
- 설명: 전역 환경 변수 설정
- 실무 포인트: PATH, JAVA_HOME 설정
env
- 의미: environment
- 역할: 환경 변수 목록 출력
- 설명: 현재 셸 환경 확인
printenv
- 의미: 환경 변수 출력
- 역할: 특정 환경 변수 확인
- 설명: env와 유사하나 출력용
set
- 의미: 셸 옵션 및 변수 설정
- 역할: 셸 동작 제어
- 설명: 내부 변수 포함 출력
unset
- 의미: 설정 해제
- 역할: 변수 또는 함수 제거
- 설명: 환경 정리
read
- 의미: 입력 받기
- 역할: 사용자 입력을 변수에 저장
- 설명: 스크립트에서 입력 처리
- 실무 포인트: 인터랙티브 스크립트 작성
Chapter 05 파일 접근 권한 관리
ls
- 의미: 파일 목록 출력
- 역할: 파일의 권한 정보 확인
- 설명:
-l 옵션 사용 시 권한, 소유자, 그룹 확인 가능
- 실무 포인트: 권한 문제 발생 시 가장 먼저 확인
chmod
- 약어: Change Mode
- 역할: 파일 및 디렉터리 권한 변경
- 설명: 읽기(r), 쓰기(w), 실행(x) 권한 제어
- 권한 구조
- 예시
- 실무 포인트: 실행 파일, 스크립트 권한 설정
chown
- 약어: Change Owner
- 역할: 파일 소유자 변경
- 설명: 파일의 사용자 소유권 변경
- 예시
- 실무 포인트: 서비스 계정 권한 문제 해결
chgrp
- 약어: Change Group
- 역할: 파일 그룹 변경
- 설명: 그룹 단위 접근 제어
- 실무 포인트: 협업 환경에서 사용
umask
- 의미: 사용자 기본 권한 마스크
- 역할: 새 파일 생성 시 기본 권한 결정
- 설명: 실제 권한 = 최대 권한 - umask
- 실무 포인트: 보안 기본 설정
id
- 의미: 사용자 식별 정보 출력
- 역할: UID, GID 확인
- 설명: 현재 로그인 사용자 정보 출력
- 실무 포인트: 권한 문제 원인 분석
groups
- 의미: 그룹 목록
- 역할: 사용자가 속한 그룹 확인
- 설명: 접근 권한 판단 기준
- 실무 포인트: sudo 권한 확인
getfacl
- 의미: Get File ACL
- 역할: ACL 권한 조회
- 설명: 기존 권한 체계(rwx) 확장
- 실무 포인트: 세밀한 접근 제어 확인
setfacl
- 의미: Set File ACL
- 역할: ACL 권한 설정
- 설명: 사용자/그룹별 세부 권한 설정
- 실무 포인트: 고급 권한 관리
stat
- 의미: 파일 상태 출력
- 역할: inode, 권한, 시간 정보 확인
- 설명: 파일 메타데이터 상세 출력
- 실무 포인트: 변경 이력 추적
Chapter 06 프로세스 관리
ps
- 약어: Process Status
- 역할: 현재 실행 중인 프로세스 목록 출력
- 설명: 프로세스 ID(PID), 상태, 실행 명령 확인
- 주요 옵션
- 실무 포인트: 문제 프로세스 확인의 시작점
top
- 의미: 실시간 프로세스 모니터링
- 역할: CPU, 메모리 사용량 실시간 확인
- 설명: 실행 중인 프로세스를 동적으로 표시
- 실무 포인트: 서버 부하 확인
htop
- 의미: 향상된 top
- 역할: 사용자 친화적 프로세스 관리
- 설명: 컬러 UI, 마우스 지원
- 주의: 기본 설치 아님
- 실무 포인트: 운영 서버 모니터링
atop
- 의미: 고급 시스템 모니터
- 역할: CPU, 메모리, 디스크, 네트워크 종합 모니터링
- 설명: 로그 기반 성능 분석 가능
- 실무 포인트: 성능 분석용
uptime
- 의미: 시스템 가동 시간
- 역할: 서버가 켜진 시간과 부하 확인
- 설명: load average 제공
- 실무 포인트: 서버 안정성 판단
kill
- 의미: 프로세스에 신호 전송
- 역할: 프로세스 종료 요청
- 설명
- SIGTERM(15): 정상 종료
- SIGKILL(9): 강제 종료
- 실무 포인트: 문제 프로세스 종료
killall
- 의미: 이름 기준 프로세스 종료
- 역할: 동일 이름 프로세스 일괄 종료
- 설명: 프로세스명 기준
- 주의: 다수 프로세스 종료 위험
pkill
- 의미: process kill
- 역할: 조건 기반 프로세스 종료
- 설명: 이름, 사용자 기준 종료
- 실무 포인트: 자동화 스크립트 활용
bg
- 의미: background
- 역할: 중지된 작업을 백그라운드 실행
- 설명: Ctrl+Z 후 사용
- 실무 포인트: 작업 유지
fg
- 의미: foreground
- 역할: 백그라운드 작업을 전면 실행
- 설명: 작업 번호 지정 가능
- 실무 포인트: 작업 재개
jobs
- 의미: 작업 목록
- 역할: 현재 셸의 백그라운드 작업 확인
- 설명: 작업 번호 제공
- 실무 포인트: 작업 관리
nohup
- 약어: No Hang Up
- 역할: 터미널 종료 후에도 프로세스 유지
- 설명: 로그는 nohup.out에 저장
- 실무 포인트: 장시간 작업 실행
nice
- 의미: 우선순위 조정
- 역할: 프로세스 실행 시 우선순위 설정
- 설명: 값이 낮을수록 우선순위 높음
- 실무 포인트: 자원 관리
renice
- 의미: 우선순위 재설정
- 역할: 실행 중인 프로세스 우선순위 변경
- 설명: PID 기준 적용
- 실무 포인트: 실시간 튜닝
watch
- 의미: 주기적 실행
- 역할: 명령어를 일정 간격으로 반복 실행
- 설명: 상태 변화 관찰
- 실무 포인트: 모니터링 자동화
PART 02 리눅스 시스템 관리
Chapter 07 파일 시스템과 디스크 관리
df
- 약어: Disk Free
- 역할: 파일 시스템의 디스크 사용량 확인
- 설명: 각 파티션의 전체 용량, 사용량, 남은 공간 출력
- 주요 옵션
- 실무 포인트: 디스크 부족 문제 확인 시 필수
du
- 약어: Disk Usage
- 역할: 디렉터리 또는 파일별 디스크 사용량 확인
- 설명: 실제 사용 중인 용량 계산
- 주요 옵션
-h : 사람이 읽기 쉬운 단위
-s : 요약 정보만 출력
- 실무 포인트: 용량을 많이 차지하는 디렉터리 탐색
mount
- 의미: 장치 연결
- 역할: 디스크나 파일 시스템을 특정 디렉터리에 연결
- 설명: 물리적 저장장치를 디렉터리처럼 사용
- 실무 포인트: 디스크, NFS 연결 시 필수
umount
- 의미: unmount
- 역할: 마운트된 파일 시스템 해제
- 설명: 사용 중이면 해제 불가
- 주의: 데이터 손상 방지 위해 사용 중지 후 실행
lsblk
- 약어: List Block devices
- 역할: 블록 장치 목록 출력
- 설명: 디스크, 파티션 구조 확인
- 실무 포인트: 디스크 구성 파악
blkid
- 의미: Block device ID
- 역할: 블록 장치 UUID 확인
- 설명: 파일 시스템 타입, UUID 출력
- 실무 포인트: fstab 설정 시 사용
findmnt
- 의미: find mount
- 역할: 마운트 정보 검색
- 설명: 현재 마운트 상태 트리 형태 출력
- 실무 포인트: 마운트 문제 진단
mountpoint
- 의미: 마운트 지점 확인
- 역할: 특정 디렉터리가 마운트 포인트인지 확인
- 설명: 스크립트 조건문에 자주 사용
- 실무 포인트: 자동화 스크립트 안정성 확보
fsck
- 약어: File System Check
- 역할: 파일 시스템 오류 검사 및 복구
- 설명: 손상된 파일 시스템 점검
- 주의: 마운트 해제 후 실행 권장
- 실무 포인트: 디스크 장애 복구
mkfs
- 약어: Make File System
- 역할: 파일 시스템 생성
- 설명: 디스크 초기화 시 사용
- 주의: 데이터 완전 삭제됨
- 실무 포인트: 신규 디스크 세팅
tune2fs
- 의미: ext 파일 시스템 튜닝
- 역할: ext2/3/4 파일 시스템 옵션 조정
- 설명: 예약 블록, 검사 주기 설정
- 실무 포인트: 서버 파일 시스템 최적화
Chapter 08 리눅스의 부팅과 종료
systemctl
- 의미: systemd control
- 역할: systemd 기반 서비스 관리
- 설명: 서비스 시작, 중지, 재시작, 상태 확인
- 실무 포인트: 서버 서비스 관리의 핵심
systemd-analyze
- 의미: systemd 부팅 분석
- 역할: 부팅 시간 분석
- 설명: 서비스별 부팅 지연 원인 확인
- 실무 포인트: 부팅 성능 튜닝
loginctl
- 의미: login control
- 역할: 로그인 세션 관리
- 설명: 사용자 세션, 로그인 상태 확인
- 실무 포인트: 다중 사용자 환경 관리
journalctl
- 의미: systemd 로그 조회
- 역할: 시스템 로그 확인
- 설명: 커널 및 서비스 로그 통합 관리
- 실무 포인트: 장애 분석 필수
reboot
- 의미: 시스템 재부팅
- 역할: 시스템 다시 시작
- 설명: 즉시 재부팅 수행
- 주의: 서비스 중단 발생
shutdown
- 의미: 시스템 종료 예약
- 역할: 안전한 종료 또는 재부팅
- 설명: 사용자에게 메시지 전달 가능
- 실무 포인트: 서버 종료 시 권장
halt
- 의미: 시스템 정지
- 역할: CPU 동작 중단
- 설명: 전원은 유지될 수 있음
- 실무 포인트: 거의 사용되지 않음
poweroff
- 의미: 전원 차단
- 역할: 시스템 종료 후 전원 OFF
- 설명: 완전 종료
- 실무 포인트: 물리 서버 종료 시 사용
wall
- 의미: Write All
- 역할: 모든 로그인 사용자에게 메시지 전송
- 설명: 시스템 공지 전달
- 실무 포인트: 점검 공지
who
- 의미: 현재 로그인 사용자
- 역할: 로그인 중인 사용자 목록 출력
- 설명: 접속 상태 확인
- 실무 포인트: 사용자 활동 확인
last
- 의미: 로그인 기록
- 역할: 최근 로그인 내역 출력
- 설명: 재부팅 기록 포함
- 실무 포인트: 보안 및 감사
Chapter 09 소프트웨어 관리
apt
- 의미: Advanced Package Tool
- 역할: 패키지 설치, 삭제, 업데이트 관리
- 설명: Debian/Ubuntu 계열의 고수준 패키지 관리 도구
- 실무 포인트: 가장 자주 사용하는 패키지 명령어
apt-get
- 의미: apt의 하위 호환 도구
- 역할: 패키지 설치 및 제거
- 설명: 스크립트 환경에서 안정적으로 사용
- 실무 포인트: 자동화 스크립트에서 여전히 사용됨
apt-cache
- 의미: 패키지 캐시 조회
- 역할: 패키지 정보 검색
- 설명: 설치 가능한 패키지 목록, 설명 확인
- 실무 포인트: 설치 전 패키지 정보 조사
apt-key
- 의미: APT repository key 관리
- 역할: 저장소 인증 키 관리
- 설명: 외부 저장소 신뢰성 검증
- 주의: 최신 버전에서는 deprecated
- 실무 포인트: 과거 시스템 유지보수 시 필요
dpkg
- 의미: Debian Package
- 역할: .deb 패키지 직접 관리
- 설명: 저수준 패키지 관리 도구
- 실무 포인트: 패키지 설치 오류 분석
dpkg-deb
- 의미: Debian package tool
- 역할: deb 패키지 생성 및 분석
- 설명: 패키지 내부 구조 확인
- 실무 포인트: 패키지 디버깅
snap
- 의미: snap package
- 역할: 독립형 패키지 설치
- 설명: 의존성 포함 패키지
- 실무 포인트: 최신 앱 빠른 설치
snapctl
- 의미: snap control
- 역할: snap 서비스 관리
- 설명: snap 패키지 상태 제어
- 실무 포인트: snap 환경 관리
tar
- 의미: Tape ARchive
- 역할: 파일 아카이브 생성/해제
- 설명: 여러 파일을 하나로 묶음
- 실무 포인트: 백업 및 배포
gzip
- 의미: GNU zip
- 역할: 파일 압축
- 설명: 빠른 압축 속도
- 실무 포인트: 로그 압축
gunzip
- 의미: gzip 해제
- 역할: gzip 압축 해제
- 설명: .gz 파일 복원
bzip2
- 의미: Burrows-Wheeler zip
- 역할: 고압축 파일 생성
- 설명: gzip
Chapter 10 사용자 관리
useradd
- 의미: 사용자 추가
- 역할: 새로운 사용자 계정 생성
- 설명: 홈 디렉터리, UID 설정 가능
- 실무 포인트: 서버 사용자 관리 기본
userdel
- 의미: 사용자 삭제
- 역할: 사용자 계정 제거
- 설명: 홈 디렉터리 포함 삭제 가능
- 실무 포인트: 퇴사자 계정 정리
usermod
- 의미: 사용자 정보 수정
- 역할: 그룹, 쉘, 홈 디렉터리 변경
- 실무 포인트: 권한 조정
groupadd
- 의미: 그룹 생성
- 역할: 사용자 그룹 추가
- 설명: 권한 관리 단위
- 실무 포인트: 협업 환경 설정
groupdel
- 의미: 그룹 삭제
- 역할: 사용자 그룹 제거
- 설명: 소속 사용자 없어야 가능
groupmod
- 의미: 그룹 정보 수정
- 역할: 그룹명, GID 변경
passwd
- 의미: 비밀번호 설정
- 역할: 사용자 비밀번호 변경
- 실무 포인트: 보안 관리 핵심
chage
- 의미: Change Age
- 역할: 비밀번호 만료 정책 설정
- 설명: 계정 보안 강화
- 실무 포인트: 기업 보안 정책
newgrp
- 의미: 그룹 전환
- 역할: 로그인 재접속 없이 그룹 변경
- 설명: 새로운 셸 생성
su
- 의미: Switch User
- 역할: 다른 사용자로 전환
- 설명: 기본은 root 전환
- 주의: 보안 위험
sudo
- 의미: Superuser Do
- 역할: 관리자 권한으로 명령 실행
- 설명: 권한 위임 방식
- 실무 포인트: root 직접 사용 최소화
login
- 의미: 로그인
- 역할: 사용자 인증 후 셸 시작
logout
PART 03 리눅스 네트워크 서비스 관리
Chapter 11 네트워크 설정
ip
- 의미: IP 관리 도구
- 역할: 네트워크 인터페이스, 주소, 라우팅 설정
- 설명: ifconfig, route를 대체하는 최신 명령
- 실무 포인트: 네트워크 설정 핵심
ss
- 의미: Socket Statistics
- 역할: 네트워크 소켓 상태 확인
- 설명: netstat 대체
- 실무 포인트: 포트 사용 현황 확인
ping
- 의미: Packet Internet Groper
- 역할: 네트워크 연결 테스트
- 설명: ICMP 패킷 전송
- 실무 포인트: 네트워크 장애 1차 확인
traceroute
- 의미: 경로 추적
- 역할: 패킷 이동 경로 확인
- 설명: 라우팅 지점 표시
- 실무 포인트: 네트워크 지연 분석
tracepath
- 의미: traceroute 간소화 버전
- 역할: 경로 추적
- 설명: 권한 없이 실행 가능
arp
- 의미: Address Resolution Protocol
- 역할: IP ↔ MAC 주소 매핑 확인
- 설명: ARP 캐시 조회
- 실무 포인트: 네트워크 충돌 분석
nmcli
- 의미: NetworkManager CLI
- 역할: 네트워크 설정 관리
- 설명: GUI 없이 네트워크 제어
- 실무 포인트: 서버 네트워크 설정
ifconfig
- 의미: interface configuration
- 역할: 네트워크 인터페이스 설정
- 설명: 구버전 도구
- 주의: ip 명령 사용 권장
route
- 의미: 라우팅 테이블 관리
- 역할: 네트워크 경로 설정
- 설명: 구버전 도구
- 주의: ip route 사용 권장
hostnamectl
- 의미: hostname control
- 역할: 시스템 호스트 이름 설정
- 설명: systemd 기반 관리
- 실무 포인트: 서버 식별 관리
Chapter 12 원격 접속과 FTP
ssh
- 의미: Secure Shell
- 역할: 원격 서버 접속
- 설명: 암호화된 통신 제공
- 실무 포인트: 서버 관리의 기본
ssh-keygen
- 의미: SSH 키 생성
- 역할: 공개키/개인키 생성
- 설명: 비밀번호 없는 인증 설정
- 실무 포인트: 보안 강화
ssh-copy-id
- 의미: SSH 키 복사
- 역할: 원격 서버에 공개키 등록
- 설명: 키 기반 로그인 설정
scp
- 의미: Secure Copy
- 역할: 원격 파일 복사
- 설명: SSH 기반 파일 전송
- 실무 포인트: 빠른 파일 이동
sftp
- 의미: SSH File Transfer Protocol
- 역할: 안전한 파일 전송
- 설명: 대화형 파일 관리
ftp
- 의미: File Transfer Protocol
- 역할: 파일 전송
- 설명: 암호화 미지원
- 주의: 보안 취약
telnet
- 의미: 원격 터미널 접속
- 역할: 원격 접속
- 설명: 암호화 없음
- 주의: 보안상 사용 비권장
rsync
- 의미: Remote Sync
- 역할: 파일 동기화
- 설명: 증분 전송
- 실무 포인트: 백업, 배포
wget
- 의미: Web Get
- 역할: 파일 다운로드
- 설명: 비대화형 다운로드
- 실무 포인트: 스크립트 자동화
curl
- 의미: Client URL
- 역할: 데이터 전송
- 설명: HTTP, FTP 등 지원
- 실무 포인트: API 테스트
mail
- 의미: 메일 전송
- 역할: 터미널 메일 발송
- 설명: 시스템 알림용
Chapter 13 DB 서버와 웹 서버
mysql
- 의미: MySQL 클라이언트
- 역할: MySQL 데이터베이스 접속
- 설명: SQL 쿼리 실행
- 실무 포인트: DB 관리 기본
mysqladmin
- 의미: MySQL 관리자 도구
- 역할: DB 서버 상태 관리
- 설명: 상태 확인, 비밀번호 설정
mysqld
- 의미: MySQL daemon
- 역할: MySQL 서버 프로세스
- 설명: DB 엔진 본체
systemctl
- 의미: systemd control
- 역할: DB/웹 서버 서비스 관리
- 설명: start / stop / restart
apache2
- 의미: Apache HTTP Server
- 역할: 웹 서버
- 설명: 정적·동적 웹 서비스 제공
httpd
- 의미: HTTP daemon
- 역할: Apache 서비스 데몬
- 설명: RHEL 계열 명칭
nginx
- 의미: Engine X
- 역할: 웹 서버 / 리버스 프록시
- 설명: 고성능 이벤트 기반 서버
curl
- 의미: Client URL
- 역할: HTTP 요청 테스트
- 설명: API, 웹 서버 확인
wget
netstat
- 의미: Network Statistics
- 역할: 포트 상태 확인
- 설명: 구버전 도구
ss
- 의미: Socket Statistics
- 역할: 포트·소켓 상태 확인
- 설명: netstat 대체
Chapter 14 NFS와 삼바
mount
- 의미: 파일 시스템 연결
- 역할: NFS/Samba 마운트
umount
- 의미: 마운트 해제
- 역할: 연결된 파일 시스템 분리
showmount
- 의미: NFS 공유 조회
- 역할: 서버가 제공하는 공유 목록 확인
exportfs
- 의미: NFS 공유 관리
- 역할: 공유 디렉터리 설정
nfsstat
- 의미: NFS 통계 정보
- 역할: NFS 상태 확인
smbclient
- 의미: Samba 클라이언트
- 역할: SMB 공유 접속
smbpasswd
- 의미: Samba 비밀번호 관리
- 역할: Samba 사용자 인증 설정
testparm
- 의미: Samba 설정 검사
- 역할: smb.conf 문법 체크
mount.cifs
- 의미: CIFS 마운트
- 역할: Windows 공유 연결
mount.nfs
- 의미: NFS 마운트
- 역할: NFS 서버 연결
PART 04 리눅스 보안 및 프로젝트
Chapter 15 리눅스 보안의 기초
journalctl
- 의미: systemd 로그 조회
- 역할: 시스템·보안 로그 확인
dmesg
- 의미: Driver Message
- 역할: 커널 메시지 출력
- 설명: 하드웨어 오류 분석
last
- 의미: 로그인 기록
- 역할: 사용자 접속 이력 확인
lastlog
- 의미: 마지막 로그인 기록
- 역할: 계정별 로그인 확인
faillog
- 의미: 로그인 실패 기록
- 역할: 무차별 대입 공격 탐지
ufw
- 의미: Uncomplicated Firewall
- 역할: 방화벽 설정
- 설명: Ubuntu 기본 방화벽
iptables
- 의미: IP 패킷 필터링
- 역할: 저수준 방화벽 제어
iptables-save
iptables-restore
firewall-cmd
- 의미: firewalld control
- 역할: 방화벽 관리
- 설명: RHEL 계열
getenforce
setenforce
semanage
- 의미: SELinux 정책 관리
- 역할: 보안 컨텍스트 설정
auditctl
- 의미: Audit Control
- 역할: 감사 규칙 설정
ausearch
- 의미: Audit Search
- 역할: 감사 로그 검색
리눅스는 커널·자원·서비스·보안·운영을 이해해야 완전정복!!