systemd ์‹œ์Šคํ…œ ๊ด€๋ฆฌ์ž ๋ฆด๋ฆฌ์Šค 253

253๊ฐœ์›” ๋ฐ˜์˜ ๊ฐœ๋ฐœ ๋์— ์‹œ์Šคํ…œ ๊ด€๋ฆฌ์ž systemd XNUMX์ด ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ƒˆ ๋ฆด๋ฆฌ์Šค์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ํŒจํ‚ค์ง€์—๋Š” UEFI(UEFI ๋ถ€ํŒ… ์Šคํ…)์—์„œ ์ปค๋„์„ ๋กœ๋“œํ•˜๊ธฐ ์œ„ํ•œ ํ•ธ๋“ค๋Ÿฌ, Linux ์ปค๋„ ์ด๋ฏธ์ง€ ๋ฐ ๋ฉ”๋ชจ๋ฆฌ initrd์— ๋กœ๋“œ๋œ ์‹œ์Šคํ…œ ํ™˜๊ฒฝ์€ ๋ฃจํŠธ ํŒŒ์ผ ์‹œ์Šคํ…œ์„ ๋งˆ์šดํŠธํ•˜๊ธฐ ์ „ ๋‹จ๊ณ„์—์„œ ์ดˆ๊ธฐ ์ดˆ๊ธฐํ™”์— ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ์ด ์œ ํ‹ธ๋ฆฌํ‹ฐ๋Š” ์ด์ „์— 'dracut -uefi' ๋ช…๋ น์œผ๋กœ ์ œ๊ณต๋˜์—ˆ๋˜ ๊ธฐ๋Šฅ์„ ๋Œ€์ฒดํ•˜๊ณ  PE ํŒŒ์ผ์˜ ์˜คํ”„์…‹ ์ž๋™ ๊ณ„์‚ฐ, initrd ๋ณ‘ํ•ฉ, ๋‚ด์žฅ๋œ ์ปค๋„ ์ด๋ฏธ์ง€ ์„œ๋ช…, sbsign์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ฒฐํ•ฉ๋œ ์ด๋ฏธ์ง€ ์ƒ์„ฑ, ์ปค๋„ uname ํ™•์ธ์„ ์œ„ํ•œ ์ถ”๋ก , ์Šคํ”Œ๋ž˜์‹œ ํ™”๋ฉด์ด ํฌํ•จ๋œ ์ด๋ฏธ์ง€์™€ systemd-measure ์œ ํ‹ธ๋ฆฌํ‹ฐ์—์„œ ์ƒ์„ฑ๋œ ์„œ๋ช…๋œ PCR ์ •์ฑ…์„ ์ถ”๊ฐ€ํ•œ ์ด๋ฏธ์ง€์ž…๋‹ˆ๋‹ค.
  • tmpfs ๋Œ€์‹  overlayfs๊ฐ€ ์‚ฌ์šฉ๋˜๋Š” ๋ฉ”๋ชจ๋ฆฌ ๋ฐฐ์น˜์— ์ œํ•œ๋˜์ง€ ์•Š๋Š” initrd ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ™˜๊ฒฝ์˜ ๊ฒฝ์šฐ systemd๋Š” ๋ฃจํŠธ ํŒŒ์ผ ์‹œ์Šคํ…œ์„ ์ „ํ™˜ํ•œ ํ›„ initrd์˜ ๋ชจ๋“  ํŒŒ์ผ์„ ์‚ญ์ œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • ํŒŒ์ผ ์‹œ์Šคํ…œ์—์„œ ์ž„์˜์˜ ํŒŒ์ผ์„ ์—ด๊ฑฐ๋‚˜ Unix ์†Œ์ผ“์— ์—ฐ๊ฒฐํ•˜๊ณ  ๊ด€๋ จ ํŒŒ์ผ ์„ค๋ช…์ž๋ฅผ ์‹œ์ž‘๋œ ํ”„๋กœ์„ธ์Šค์— ์ „๋‹ฌํ•˜๊ธฐ ์œ„ํ•œ ์„œ๋น„์Šค์— "OpenFile" ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค(์˜ˆ: ํŒŒ์ผ์— ๋Œ€ํ•œ ์•ก์„ธ์Šค๋ฅผ ๊ตฌ์„ฑํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ). ํŒŒ์ผ์— ๋Œ€ํ•œ ์ ‘๊ทผ ๊ถŒํ•œ์„ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ  ๋น„ํŠน๊ถŒ ์„œ๋น„์Šค).
  • systemd-cryptenroll์—์„œ๋Š” ์ƒˆ ํ‚ค๋ฅผ ๋“ฑ๋กํ•  ๋•Œ ๋น„๋ฐ€๋ฒˆํ˜ธ ์—†์ด FIDO2 ํ† ํฐ(--unlock-fido2-device)์„ ์‚ฌ์šฉํ•˜์—ฌ ์•”ํ˜ธํ™”๋œ ํŒŒํ‹ฐ์…˜์„ ์ž ๊ธˆ ํ•ด์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ์ง€์ •ํ•œ PIN ์ฝ”๋“œ๋Š” ๋ฌด์ฐจ๋ณ„ ๋Œ€์ž… ํƒ์ง€๋ฅผ ๋ณต์žกํ•˜๊ฒŒ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ์†”ํŠธ์™€ ํ•จ๊ป˜ ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.
  • ReloadLimitIntervalSec ๋ฐ ReloadLimitBurst ์„ค์ •๊ณผ ์ปค๋„ ๋ช…๋ น์ค„ ์˜ต์…˜(systemd.reload_limit_interval_sec ๋ฐ /systemd.reload_limit_burst)์„ ์ถ”๊ฐ€ํ•˜์—ฌ ๋ฐฑ๊ทธ๋ผ์šด๋“œ ํ”„๋กœ์„ธ์Šค ๋‹ค์‹œ ์‹œ์ž‘ ๊ฐ•๋„๋ฅผ ์ œํ•œํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ์œ ๋‹›์˜ ๊ฒฝ์šฐ ์ตœ๋Œ€ zswap ํฌ๊ธฐ๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” memory.zswap.max ์†์„ฑ์„ ๊ตฌ์„ฑํ•˜๊ธฐ ์œ„ํ•ด "MemoryZSwapMax" ์˜ต์…˜์ด ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์œ ๋‹›์˜ ๊ฒฝ์šฐ "LogFilterPatterns" ์˜ต์…˜์ด ๊ตฌํ˜„๋˜์–ด ์ •๊ทœ์‹์„ ์„ค์ •ํ•˜์—ฌ ๋กœ๊ทธ์— ๋Œ€ํ•œ ์ •๋ณด ์ถœ๋ ฅ์„ ํ•„ํ„ฐ๋งํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(ํŠน์ • ์ถœ๋ ฅ์„ ์ œ์™ธํ•˜๊ฑฐ๋‚˜ ํŠน์ • ๋ฐ์ดํ„ฐ๋งŒ ์ €์žฅํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ).
  • ์ด์ œ ๋ฒ”์œ„ ์žฅ์น˜๋Š” ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋ถ€์กฑํ•  ๋•Œ ์„ ์ ์„ ์‹œ๋„ํ•  ๋•Œ ๋™์ž‘์„ ์„ค์ •ํ•˜๋Š” "OOMPolicy" ์„ค์ •์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค(๋กœ๊ทธ์ธ ์„ธ์…˜์€ OOM ํ‚ฌ๋Ÿฌ๊ฐ€ ๊ฐ•์ œ๋กœ ์ข…๋ฃŒํ•˜์ง€ ์•Š๋„๋ก OOMPolicy=continue๋กœ ์„ค์ •๋จ).
  • ์ƒˆ๋กœ์šด ์„œ๋น„์Šค ์œ ํ˜•์ด ์ •์˜๋˜์—ˆ์Šต๋‹ˆ๋‹ค. "Type=notify-reload"๋Š” ์žฌ์‹œ์ž‘ ์‹ ํ˜ธ๊ฐ€ ์ฒ˜๋ฆฌ๋ฅผ ์™„๋ฃŒํ•  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฌ๋Š” ๊ธฐ๋Šฅ(SIGHUP)์œผ๋กœ "Type=notify" ์œ ํ˜•์„ ํ™•์žฅํ•ฉ๋‹ˆ๋‹ค. systemd-networkd.service, systemd-udevd.service ๋ฐ systemd-logind ์„œ๋น„์Šค๊ฐ€ ์ƒˆ๋กœ์šด ์œ ํ˜•์œผ๋กœ ์ด์ „๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • udev๋Š” ๋„คํŠธ์›Œํฌ ์žฅ์น˜์— ์ƒˆ๋กœ์šด ๋ช…๋ช… ์ฒด๊ณ„๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ฐจ์ด์ ์€ PCI ๋ฒ„์Šค์— ์—ฐ๊ฒฐ๋˜์ง€ ์•Š์€ USB ์žฅ์น˜์˜ ๊ฒฝ์šฐ ID_NET_NAME_PATH๊ฐ€ ์ด์ œ ๋” ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ์ด๋ฆ„์„ ๋ณด์žฅํ•˜๋„๋ก ์„ค์ •๋œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. SYMLINK ๋ณ€์ˆ˜์— ๋Œ€ํ•ด '-=' ์—ฐ์‚ฐ์ž๊ฐ€ ๊ตฌํ˜„๋˜์–ด ๊ธฐํ˜ธ ๋งํฌ๋ฅผ ์ถ”๊ฐ€ํ•˜๊ธฐ ์œ„ํ•œ ๊ทœ์น™์ด ์ด์ „์— ์ •์˜๋œ ๊ฒฝ์šฐ ๊ธฐํ˜ธ ๋งํฌ๊ฐ€ ๊ตฌ์„ฑ๋˜์ง€ ์•Š์€ ์ƒํƒœ๋กœ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค.
  • systemd-boot์—์„œ ์ปค๋„์˜ ์˜์‚ฌ ๋‚œ์ˆ˜ ์ƒ์„ฑ๊ธฐ์™€ ๋””์Šคํฌ ๋ฐฑ์—”๋“œ์— ๋Œ€ํ•œ ์‹œ๋“œ ์ „์†ก์ด ์žฌ์ž‘์—…๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ESP(EFI ์‹œ์Šคํ…œ ํŒŒํ‹ฐ์…˜)๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ํŽŒ์›จ์–ด ๋˜๋Š” QEMU์— ๋Œ€ํ•œ ์ง์ ‘ ์ปค๋„ ๋กœ๋“œ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€์ƒํ™” ํ™˜๊ฒฝ์—์„œ ์‹œ์ž‘์„ ๊ฒฐ์ •ํ•˜๊ธฐ ์œ„ํ•ด SMBIOS ๋งค๊ฐœ๋ณ€์ˆ˜ ๊ตฌ๋ฌธ ๋ถ„์„์ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. UEFI ๋ณด์•ˆ ๋ถ€ํŒ…์— ๋Œ€ํ•œ ์ธ์ฆ์„œ๊ฐ€ ์•ˆ์ „ํ•œ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผ๋˜๋Š” ๊ฒฝ์šฐ(๊ฐ€์ƒ ๋จธ์‹ ์—์„œ ์‹คํ–‰๋˜๋Š” ๊ฒฝ์šฐ)์—๋งŒ ESP์—์„œ ๋กœ๋“œ๋˜๋Š” ์ƒˆ๋กœ์šด '์•ˆ์ „ํ•œ ๊ฒฝ์šฐ' ๋ชจ๋“œ๊ฐ€ ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • bootctl ์œ ํ‹ธ๋ฆฌํ‹ฐ๋Š” ๊ฐ€์ƒํ™” ํ™˜๊ฒฝ์„ ์ œ์™ธํ•œ ๋ชจ๋“  EFI ์‹œ์Šคํ…œ์—์„œ ์‹œ์Šคํ…œ ํ† ํฐ ์ƒ์„ฑ์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค. ์ปค๋„ ์ด๋ฏธ์ง€ ์œ ํ˜•๊ณผ ๋ช…๋ น์ค„ ์˜ต์…˜ ๋ฐ ์ปค๋„ ๋ฒ„์ „์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•˜๋Š” 'kernel-identify' ๋ฐ โ€‹โ€‹'kernel-inspect' ๋ช…๋ น์ด ์ถ”๊ฐ€๋˜์—ˆ์œผ๋ฉฐ, ์ฒซ ๋ฒˆ์งธ ์œ ํ˜•์˜ ๋ถ€ํŒ… ๋ ˆ์ฝ”๋“œ์™€ ๊ด€๋ จ๋œ ํŒŒ์ผ์„ ์ œ๊ฑฐํ•˜๋ ค๋ฉด 'unlink', ๋ชจ๋“  ํ•ญ๋ชฉ์„ ์ œ๊ฑฐํ•˜๋ ค๋ฉด 'cleanup'์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฒซ ๋ฒˆ์งธ ์œ ํ˜•์˜ ๋ถ€ํŠธ ๋ ˆ์ฝ”๋“œ์™€ ์—ฐ๊ด€๋˜์ง€ ์•Š์€ ESP ๋ฐ XBOOTLDR์˜ "entry-token" ๋””๋ ‰ํ† ๋ฆฌ์— ์žˆ๋Š” ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. KERNEL_INSTALL_CONF_ROOT ๋ณ€์ˆ˜ ์ฒ˜๋ฆฌ๊ฐ€ ์ œ๊ณต๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์ด์ œ 'systemctl list-dependents' ๋ช…๋ น์€ '--type' ๋ฐ '--state' ์˜ต์…˜ ์ฒ˜๋ฆฌ๋ฅผ ์ง€์›ํ•˜๊ณ , 'systemctl kexec' ๋ช…๋ น์€ Xen ํ•˜์ดํผ๋ฐ”์ด์ € ๊ธฐ๋ฐ˜ ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ์ง€์›์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
  • [DHCPv4] ์„น์…˜์˜ .network ํŒŒ์ผ์— ์ด์ œ SocketPriority ๋ฐ QuickAck, RouteMetric=high|medium|low ์˜ต์…˜์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Systemd-repart๋Š” UUID ์œ ํ˜•๋ณ„๋กœ ํŒŒํ‹ฐ์…˜์„ ํ•„ํ„ฐ๋งํ•˜๊ธฐ ์œ„ํ•ด "--include-partitions", "--exclude-partitions" ๋ฐ "--defer-partitions" ์˜ต์…˜์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ํ•˜๋‚˜์˜ ํŒŒํ‹ฐ์…˜์ด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด๋ฏธ์ง€๋ฅผ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํŒŒํ‹ฐ์…˜์˜ ๋‚ด์šฉ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์ถ•๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ํŒŒํ‹ฐ์…˜์„ ์ƒ์„ฑํ•  ๋•Œ ์‚ฌ์šฉ๋˜๋Š” ์„นํ„ฐ์˜ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•˜๊ธฐ ์œ„ํ•ด "--sector-size" ์˜ต์…˜๋„ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. erofs ํŒŒ์ผ ์ƒ์„ฑ์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ตœ์†Œํ™” ์„ค์ •์€ ๊ฐ€๋Šฅํ•œ ์ตœ์†Œ ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋ฅผ ์„ ํƒํ•˜๊ธฐ ์œ„ํ•ด "์ตœ์ƒ์˜" ๊ฐ’ ์ฒ˜๋ฆฌ๋ฅผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.
  • systemd-journal-remote๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด MaxUse, KeepFree, MaxFileSize ๋ฐ MaxFiles ์„ค์ •์„ ์‚ฌ์šฉํ•˜์—ฌ ๋””์Šคํฌ ๊ณต๊ฐ„ ์†Œ๋น„๋ฅผ ์ œํ•œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • systemd-cryptsetup์€ ์ธ์ฆ ์ „์— ์กด์žฌ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด FIDO2 ํ† ํฐ์— ์‚ฌ์ „ ์š”์ฒญ์„ ๋ณด๋‚ด๋Š” ์ง€์›์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
  • ์ƒˆ๋กœ์šด ๋งค๊ฐœ๋ณ€์ˆ˜ tpm2-measure-bank ๋ฐ tpm2-measure-pcr์ด crypttab์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • systemd-gpt-auto-generator๋Š” "noexec,nosuid,nodev" ๋ชจ๋“œ์—์„œ ESP ๋ฐ XBOOTLDR ํŒŒํ‹ฐ์…˜์˜ ๋งˆ์šดํŠธ๋ฅผ ๊ตฌํ˜„ํ•˜๊ณ  ์ปค๋„ ๋ช…๋ น์ค„์„ ํ†ตํ•ด ์ „๋‹ฌ๋œ rootfstype ๋ฐ rootflags ๋งค๊ฐœ๋ณ€์ˆ˜์— ๋Œ€ํ•œ ๊ณ„์ •๋„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
  • systemd-resolved๋Š” ์ปค๋„ ๋ช…๋ น์ค„์—์„œ nameserver, domain, network.dns ๋ฐ network.search_domains ์˜ต์…˜์„ ์ง€์ •ํ•˜์—ฌ ํ™•์ธ์ž ๋งค๊ฐœ ๋ณ€์ˆ˜๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  • ์ด์ œ "systemd-analyzeplot" ๋ช…๋ น์— "-json" ํ”Œ๋ž˜๊ทธ๋ฅผ ์ง€์ •ํ•  ๋•Œ JSON ํ˜•์‹์œผ๋กœ ์ถœ๋ ฅํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ์˜ต์…˜ "--table" ๋ฐ "-no-legend"๋„ ์ œ์–ด ์ถœ๋ ฅ์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • 2023๋…„์—๋Š” cgroups v1 ๋ฐ ๋ถ„ํ•  ๋””๋ ‰ํ„ฐ๋ฆฌ ๊ณ„์ธต ๊ตฌ์กฐ(/usr์ด ๋ฃจํŠธ์™€ ๋ณ„๋„๋กœ ๋งˆ์šดํŠธ๋˜๊ฑฐ๋‚˜ /bin ๋ฐ /usr/bin, /lib ๋ฐ /usr/lib๊ฐ€ ๋ถ„๋ฆฌ๋จ)์— ๋Œ€ํ•œ ์ง€์›์„ ์ข…๋ฃŒํ•  ๊ณ„ํš์ž…๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€