KR_Linux_Basics - somaz94/DevOps-Engineer GitHub Wiki

๋ฆฌ๋ˆ…์Šค ๊ธฐ๋ณธ ๊ฐœ๋… (Q1-Q2)

Q1: Linux์˜ ๊ธฐ๋ณธ ๊ฐœ๋…๊ณผ Monolithic Kernel ๊ตฌ์กฐ๋ฅผ ์„ค๋ช…ํ•˜์„ธ์š”

์งˆ๋ฌธ: Linux ์šด์˜์ฒด์ œ์˜ ๊ธฐ๋ณธ ๊ฐœ๋…์„ ์„ค๋ช…ํ•˜๊ณ , Monolithic Kernel ์•„ํ‚คํ…์ฒ˜๊ฐ€ ๋ฌด์—‡์ธ์ง€ Microkernel๊ณผ ๋น„๊ตํ•˜์—ฌ ์„ค๋ช…ํ•˜์„ธ์š”. Linux Kernel์˜ 5๊ฐ€์ง€ ์ฃผ์š” ์—ญํ• ๊ณผ ์ฃผ์š” ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ํฌํ•จํ•ด ์ฃผ์„ธ์š”.

๋‹ต๋ณ€:

1. Linux ์šด์˜์ฒด์ œ ๊ฐœ๋…

Linux๋Š” 1991๋…„ Linus Torvalds๊ฐ€ ๊ฐœ๋ฐœํ•œ Unix ํด๋ก  ์šด์˜์ฒด์ œ๋กœ, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŠน์ง•์„ ๊ฐ€์ง„๋‹ค.

์ปค๋„์€ ํ•˜๋“œ์›จ์–ด ์ž์› ๊ด€๋ฆฌ, ํ”„๋กœ์„ธ์Šค์˜ ํšจ์œจ์ ์ธ ์šด์˜ ๋ณด์žฅ, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์˜์กดํ•˜๋Š” ํ•„์ˆ˜ ์„œ๋น„์Šค ์ œ๊ณต์„ ๋‹ด๋‹นํ•œ๋‹ค.

Linux Kernel์˜ 5๊ฐ€์ง€ ์ฃผ์š” ์—ญํ• :

  1. ํ”„๋กœ์„ธ์Šค ๊ด€๋ฆฌ (Process Management)

    • CPU ์Šค์ผ€์ค„๋ง ๋ฐ ํ”„๋กœ์„ธ์Šค ์ƒ์„ฑ/์ข…๋ฃŒ
    • CFS (Completely Fair Scheduler) ์‚ฌ์šฉ
  2. ๋ฉ”๋ชจ๋ฆฌ ๊ด€๋ฆฌ (Memory Management)

    • ๊ฐ€์ƒ ๋ฉ”๋ชจ๋ฆฌ, ํŽ˜์ด์ง•, ์Šค์™€ํ•‘
    • ๊ฐ ํ”„๋กœ์„ธ์Šค์— ๋…๋ฆฝ์  ์ฃผ์†Œ ๊ณต๊ฐ„ ์ œ๊ณต
  3. ์žฅ์น˜ ๊ด€๋ฆฌ (Device Management)

    • ์žฅ์น˜ ๋“œ๋ผ์ด๋ฒ„๋ฅผ ํ†ตํ•œ ํ•˜๋“œ์›จ์–ด ์ œ์–ด
    • /dev/ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ํ†ตํ•œ ์žฅ์น˜ ํŒŒ์ผ ์ œ๊ณต
  4. ํŒŒ์ผ ์‹œ์Šคํ…œ ๊ด€๋ฆฌ (File System Management)

    • VFS๋ฅผ ํ†ตํ•œ ๋‹ค์–‘ํ•œ ํŒŒ์ผ์‹œ์Šคํ…œ ์ง€์›
    • ext4, XFS, Btrfs ๋“ฑ
  5. ๋„คํŠธ์›Œํฌ ์Šคํƒ (Network Stack)

    • TCP/IP ํ”„๋กœํ† ์ฝœ ๊ตฌํ˜„
    • ๋„คํŠธ์›Œํฌ ์ธํ„ฐํŽ˜์ด์Šค ๊ด€๋ฆฌ

Linux ์ปค๋„์˜ ์ฃผ์š” ๊ตฌ์„ฑ์š”์†Œ:

  • ์‹œ์Šคํ…œ ํ˜ธ์ถœ ์ธํ„ฐํŽ˜์ด์Šค: ์‚ฌ์šฉ์ž ๊ณต๊ฐ„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์ปค๋„ ์‚ฌ์ด์˜ ๊ฒŒ์ดํŠธ์›จ์ด
  • ์ปค๋„ ๋ชจ๋“ˆ: ์ปค๋„์—์„œ ๋™์ ์œผ๋กœ ๋กœ๋“œํ•  ์ˆ˜ ์žˆ๋Š” ๋ถ€๋ถ„ (์žฅ์น˜ ๋“œ๋ผ์ด๋ฒ„, ํŒŒ์ผ ์‹œ์Šคํ…œ ๋“œ๋ผ์ด๋ฒ„)
  • ํ”„๋กœ์„ธ์Šค ๊ฐ„ ํ†ต์‹ (IPC): ํŒŒ์ดํ”„, ๋ฉ”์‹œ์ง€ ํ, ๊ณต์œ  ๋ฉ”๋ชจ๋ฆฌ ๋“ฑ
  • ๋ณด์•ˆ ๋ฐ ์•ก์„ธ์Šค ์ œ์–ด: SELinux, AppArmor ๋“ฑ

Q2: RedHat ๊ณ„์—ด๊ณผ Debian ๊ณ„์—ด ๋ฐฐํฌํŒ ๋น„๊ต

์งˆ๋ฌธ: RedHat ๊ณ„์—ด(RHEL, CentOS, Fedora)๊ณผ Debian ๊ณ„์—ด(Debian, Ubuntu) ๋ฐฐํฌํŒ์˜ ์ฐจ์ด์ ์„ ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž, ๋ฆด๋ฆฌ์Šค ์ •์ฑ…, ์ƒ์—…์  ์ง€์› ์ธก๋ฉด์—์„œ ๋น„๊ต ์„ค๋ช…ํ•˜์„ธ์š”.

๋‹ต๋ณ€:

๋ฐฐํฌํŒ ๋น„๊ตํ‘œ

ํŠน์ง• RedHat ๊ณ„์—ด Debian ๊ณ„์—ด
Package Manager yum / dnf apt
Package Format RPM DEB
Release Cycle RHEL: 3๋…„, Fedora: 6๊ฐœ์›” Debian: 2๋…„, Ubuntu LTS: 2๋…„
Support Period RHEL: 10๋…„ Ubuntu LTS: 5๋…„
Init System systemd systemd
Security Module SELinux AppArmor
Firewall firewalld ufw
Commercial Support Red Hat ๊ณต์‹ ์ง€์› Canonical (Ubuntu)

ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ ๋ช…๋ น์–ด ๋น„๊ต

์ž‘์—… Debian (APT) Red Hat (YUM/DNF)
ํŒจํ‚ค์ง€ ์„ค์น˜ sudo apt install nginx sudo dnf install nginx
ํŒจํ‚ค์ง€ ์ œ๊ฑฐ sudo apt remove nginx sudo dnf remove nginx
ํŒจํ‚ค์ง€ ๊ฒ€์ƒ‰ apt search nginx dnf search nginx
์‹œ์Šคํ…œ ์—…๋ฐ์ดํŠธ sudo apt update && sudo apt upgrade sudo dnf upgrade
์บ์‹œ ์ •๋ฆฌ sudo apt clean sudo dnf clean all

์ฐธ๊ณ  ์ž๋ฃŒ

โš ๏ธ **GitHub.com Fallback** โš ๏ธ