Linux 개요와 운영 기초
Linux 개요와 운영 기초입니다. kernel과 배포판 차이, GNU, RHEL 계열, CentOS EOL, 기본 점검 명령, 패키지와 로그 관리를 정리했습니다.
Linux 개요와 운영 기초
Linux는 Unix 계열 운영체제의 커널에서 출발했고, 실제 서버에서 우리가 사용하는 것은 Linux kernel 위에 GNU 도구, shell, systemd, 패키지 관리자, 배포판별 설정이 합쳐진 운영체제다. 실습은 Linux 역사, GNU 프로젝트, kernel, CentOS/RHEL 계열 흐름을 소개했으므로 현재 기준으로 달라진 CentOS 상태까지 함께 함께 확인한다.
Linux kernel과 배포판
엄격히 말하면 Linux는 kernel이다. kernel은 process, memory, filesystem, network, device driver 같은 OS 핵심 기능을 담당한다. 우리가 설치하는 Ubuntu, Debian, RHEL, Rocky Linux, AlmaLinux, Fedora 같은 것은 kernel과 사용자 공간 도구를 묶은 배포판이다.
uname -r
cat /etc/os-release
hostnamectl
lsb_release -a 2>/dev/null || trueGNU 프로젝트와 사용자 공간
서버에서 매일 쓰는 bash, coreutils, gcc, make 같은 도구는 GNU 프로젝트와 여러 오픈소스 생태계의 결과물이다. 그래서 Linux 서버 운영은 kernel만 아는 것이 아니라 shell, filesystem, process, package, service 관리까지 같이 이해해야 한다.
RHEL 계열 배포판 흐름
당시에는 CentOS Linux를 RHEL rebuild로 이해하는 설명이 자연스러웠다. 하지만 현재 기준으로는 CentOS Linux 8은 2021년 12월 31일 EOL, CentOS Linux 7은 2024년 6월 30일 EOL이 지났다. 신규 운영 서버에서는 RHEL, Rocky Linux, AlmaLinux, Oracle Linux, CentOS Stream 같은 선택지를 목적에 맞게 검토해야 한다.
| 배포판 | 성격 |
|---|---|
| Fedora | 새 기능이 빠르게 들어오는 upstream 성격 |
| CentOS Stream | RHEL 바로 앞 단계의 continuously delivered 배포판 |
| RHEL | 상용 지원과 안정성을 제공하는 enterprise 배포판 |
| Rocky/Alma | RHEL 호환을 목표로 하는 community rebuild 계열 |
운영자가 자주 보는 영역
| 영역 | 확인 명령 |
|---|---|
| CPU/Memory | lscpu, free -h, top |
| Disk | lsblk -f, df -hT, du -sh |
| Network | ip -br addr, ip route, ss -lntup |
| Service | systemctl status, journalctl -u |
| Package | dnf info, rpm -qa |
기본 점검 명령
date
uptime
who
id
pwd
uname -a
cat /etc/os-release
lscpu
free -h
lsblk -f
df -hT
ip -br addr
ip route
ss -lntup
systemctl --failed패키지와 서비스 관리
sudo dnf makecache
sudo dnf update -y
sudo dnf install -y vim-enhanced curl wget bash-completion
systemctl list-unit-files --type=service | head
systemctl status sshd --no-pager
sudo systemctl enable --now sshd로그 확인
journalctl -p warning -n 100 --no-pager
journalctl -u sshd --since "1 hour ago" --no-pager
sudo tail -n 100 /var/log/messages 2>/dev/null || true마무리
Linux 운영의 기본은 배포판 이름을 아는 것에서 끝나지 않는다. kernel과 배포판의 차이, systemd service, package, filesystem, network, log를 함께 볼 수 있어야 서버 문제를 판단할 수 있다. 특히 CentOS 관련 자료는 작성 시점이 오래된 경우가 많으므로 현재 지원 상태를 확인하고 Rocky/Alma/RHEL/CentOS Stream 중 목적에 맞는 배포판을 선택해야 한다.