IT’s Portfolio

[Lecture] Operating System - Finals Summary λ³Έλ¬Έ

Development Study

[Lecture] Operating System - Finals Summary

f1r3_r41n 2023. 6. 18. 15:12
728x90
λ°˜μ‘ν˜•

πŸ’» 2023λ…„ 운영체제 기말고사 λŒ€λΉ„ μš”μ  정리

πŸ‘€ [06] ν”„λ‘œμ„ΈμŠ€ 관리

(1) ν”„λ‘œμ„ΈμŠ€μ˜ PPIDλ₯Ό ν™•μΈν•˜κΈ° μœ„ν•œ λͺ…λ ΉμœΌλ‘œ μ˜³μ€ 것은?

  • ps
  • ps -e
  • ps a
  • ps -f

(Answer) : ps -f

  • -f : ν”„λ‘œμ„ΈμŠ€μ— λŒ€ν•œ μžμ„Έν•œ 정보 좜λ ₯
    • 좜λ ₯ 정보 : UID, PID, PPID, C, STIME, TTY, TIME, CMD

ν”„λ‘œμ„ΈμŠ€ λͺ©λ‘ 확인 - ps

  • ps [option]
  • ν˜„μž¬ μ‹€ν–‰ 쀑인 ν”„λ‘œμ„ΈμŠ€μ— λŒ€ν•œ 정보 좜λ ₯
  • unix_option
    • -e : μ‹œμŠ€ν…œμ—μ„œ μ‹€ν–‰ 쀑인 λͺ¨λ“  ν”„λ‘œμ„ΈμŠ€μ˜ 정보 좜λ ₯
    • -f : ν”„λ‘œμ„ΈμŠ€μ— λŒ€ν•œ μžμ„Έν•œ 정보 좜λ ₯
      • 좜λ ₯ 정보 : UID, PID, PPID, C, STIME, TTY, TIME, CMD
    • -u uid : νŠΉμ • μ‚¬μš©μžμ— λŒ€ν•œ λͺ¨λ“  ν”„λ‘œμ„ΈμŠ€μ˜ 정보 좜λ ₯
    • -p pid : pid둜 μ§€μ •ν•œ νŠΉμ • ν”„λ‘œμ„ΈμŠ€μ˜ 정보 좜λ ₯
    • -ef(= aux) : μ‹œμŠ€ν…œμ—μ„œ μ‹€ν–‰ 쀑인 λͺ¨λ“  ν”„λ‘œμ„ΈμŠ€μ— λŒ€ν•œ μžμ„Έν•œ 정보 좜λ ₯
    • -fu : νŠΉμ • μ‚¬μš©μžμ˜ ν”„λ‘œμ„ΈμŠ€μ— λŒ€ν•œ μžμ„Έν•œ 정보 좜λ ₯
    • -fp : pid둜 μ§€μ •ν•œ νŠΉμ • ν”„λ‘œμ„ΈμŠ€μ— λŒ€ν•œ μžμ„Έν•œ 정보 좜λ ₯
  • BSD_option
    • a : ν„°λ―Έλ„μ—μ„œ μ‹€ν–‰μ‹œν‚¨ ν”„λ‘œμ„ΈμŠ€μ˜ 정보 좜λ ₯
    • u : ν”„λ‘œμ„ΈμŠ€ μ†Œμœ μž 이름, CPU μ‚¬μš©λŸ‰, λ©”λͺ¨λ¦¬ μ‚¬μš©λŸ‰ λ“± 상세 정보 좜λ ₯
    • x : μ‹œμŠ€ν…œμ—μ„œ μ‹€ν–‰ 쀑인 λͺ¨λ“  ν”„λ‘œμ„ΈμŠ€μ˜ 정보 좜λ ₯
    • au : ν„°λ―Έλ„μ—μ„œ μ‹€ν–‰ν•œ ν”„λ‘œμ„ΈμŠ€μ˜ 상세 정보 좜λ ₯
    • ax(= -e) : μ‹œμŠ€ν…œμ—μ„œ μ‹€ν–‰ 쀑인 λͺ¨λ“  ν”„λ‘œμ„ΈμŠ€ 좜λ ₯
    • aux(= -ef) : μ‹œμŠ€ν…œμ—μ„œ μ‹€ν–‰ 쀑인 λͺ¨λ“  ν”„λ‘œμ„ΈμŠ€μ— λŒ€ν•œ μžμ„Έν•œ 정보 좜λ ₯
  • GNU_option
    • --pid PID λͺ©λ‘ : λͺ©λ‘μœΌλ‘œ μ§€μ •ν•œ νŠΉμ • PID 정보 좜λ ₯

(2) jobs λͺ…λ Ήμ˜ μ‹€ν–‰ κ²°κ³Όκ°€ λ‹€μŒκ³Ό 같을 경우, [2]번 μž‘μ—…μ„ ν¬κ·ΈλΌμš΄λ“œ μž‘μ—…μœΌλ‘œ μ „ν™˜ν•˜κΈ° μœ„ν•œ λͺ…λ ΉμœΌλ‘œ μ˜³μ€ 것은 무엇인가?

[1]+ 싀행쀑 sleep 100 &
[2]- 싀행쀑 find / -name passwd > pw.dat 2>&1 &
  • fg %2
  • fg
  • fg $2
  • fg #2

(Answer) : fg %2

  • fg %job_number : μž‘μ—… λ²ˆν˜Έκ°€ μ§€μ‹œν•˜λŠ” μž‘μ—…μ„ ν¬κ·ΈλΌμš΄λ“œ μž‘μ—…μœΌλ‘œ μ „ν™˜

μž‘μ—… λͺ©λ‘ 보기 - jobs

  • jobs [%job_number]
  • λ°±κ·ΈλΌμš΄λ“œ μž‘μ—…μ„ λͺ¨λ‘ λ³΄μ—¬μ€Œ
    • νŠΉμ • μž‘μ—… 번호λ₯Ό μ§€μ •ν•˜λ©΄ ν•΄λ‹Ή μž‘μ—…μ˜ μ •λ³΄λ§Œ λ³΄μ—¬μ€Œ
  • %job_number
    • %number : ν•΄λ‹Ή 번호의 μž‘μ—… 정보λ₯Ό 좜λ ₯
    • %+ or %% : μž‘μ—… μˆœμ„œκ°€ +인 μž‘μ—… 정보 좜λ ₯
    • %- : μž‘μ—… μˆœμ„œκ°€ -인 μž‘μ—… 정보 좜λ ₯
  • μž‘μ—… μ „ν™˜ν•˜κΈ°
    • ^z or stop %job_number : ν¬κ·ΈλΌμš΄λ“œ μž‘μ—…μ„ 쀑지(μ’…λ£Œκ°€ μ•„λ‹Œ μž μ‹œ 쀑단)
    • bg %job_number : μž‘μ—… λ²ˆν˜Έκ°€ μ§€μ‹œν•˜λŠ” μž‘μ—…μ„ λ°±κ·ΈλΌμš΄λ“œ μž‘μ—…μœΌλ‘œ μ „ν™˜
    • fg %job_number : μž‘μ—… λ²ˆν˜Έκ°€ μ§€μ‹œν•˜λŠ” μž‘μ—…μ„ ν¬κ·ΈλΌμš΄λ“œ μž‘μ—…μœΌλ‘œ μ „ν™˜
  • μž‘μ—… μ’…λ£Œν•˜κΈ°
    • ^c : ν¬κ·ΈλΌμš΄λ“œ μž‘μ—… μ’…λ£Œ
    • kill %job_number : μž‘μ—… λ²ˆν˜Έκ°€ μ§€μ‹œν•˜λŠ” λ°±κ·ΈλΌμš΄λ“œ μž‘μ—… μ’…λ£Œ

(3) crontab에 12μ›” 30일 14μ‹œ 30뢄에 /tmp 디렉터리에 μžˆλŠ” 파일 λͺ©λ‘μ„ tmp.out에 μ €μž₯ν•˜λ„λ‘ μ„€μ •ν•˜λ €κ³  ν•œλ‹€. 옳게 μ„€μ •ν•œ 것은 무엇인가?

  • 12 30 14 30 * /usr/bin/ls -l /tmp > ~user1/tmp.out
  • 30 14 30 12 * /usr/bin/ls -l /tmp > ~user1/tmp.out
  • 14 30 12 30 * /usr/bin/ls -l /tmp > ~user1/tmp.out
  • 14 30 30 12 * /usr/bin/ls -l /tmp > ~user1/tmp.out

(Answer) : 30 14 30 12 * /usr/bin/ls -l /tmp > ~user1/tmp.out

  • ν•œ ν–‰μ˜ μ—¬μ„― ν•­λͺ© : λΆ„, μ‹œ, 일, μ›”, μš”μΌ, μž‘μ—… λ‚΄μš©

정해진 μ‹œκ°„μ— 반볡 μ‹€ν–‰ - crontab

  • crontab [-u uid] [option] [file_name]
  • μ‚¬μš©μžμ˜ crontab νŒŒμΌμ„ 관리함
  • option
    • -e : μ‚¬μš©μžμ˜ crontab 파일 νŽΈμ§‘
    • -l : crontab 파일의 λͺ©λ‘μ„ 좜λ ₯
    • -r : crontab 파일 μ‚­μ œ
  • crontab 파일 ν˜•μ‹
    • λΆ„ | μ‹œ | 일 | μ›” | μš”μΌ | μž‘μ—… λ‚΄μš©

(4) λ‹€μŒ 쀑 ν”„λ‘œμ„ΈμŠ€μ— λŒ€ν•œ μ„€λͺ…μœΌλ‘œ λ§žμ§€ μ•ŠλŠ” 것은 무엇인가?

  • ν”„λ‘œμ„ΈμŠ€λŠ” ν˜„μž¬ μ‹€ν–‰ 쀑인 ν”„λ‘œκ·Έλž¨μ΄λ‹€.
  • ν”„λ‘œμ„ΈμŠ€λŠ” λΆ€λͺ¨-μžμ‹ 관계λ₯Ό 가지고 μžˆλ‹€.
  • ν”„λ‘œμ„ΈμŠ€λŠ” PIDλΌλŠ” λ²ˆν˜Έκ°€ μžˆλ‹€.
  • ν”„λ‘œμ„ΈμŠ€λŠ” UIDλΌλŠ” 번호λ₯Ό 가지고 μžˆλ‹€.

(Answer) : ν”„λ‘œμ„ΈμŠ€λŠ” UIDλΌλŠ” 번호λ₯Ό 가지고 μžˆλ‹€.

  • ν”„λ‘œμ„ΈμŠ€λŠ” PIDλΌλŠ” 고유의 번호λ₯Ό 가짐

ν”„λ‘œμ„ΈμŠ€μ˜ κ°œλ…

  • ν”„λ‘œμ„ΈμŠ€(process) : ν˜„μž¬ μ‹œμŠ€ν…œμ—μ„œ μ‹€ν–‰ 쀑인 ν”„λ‘œκ·Έλž¨
    • μ‹œμŠ€ν…œ λΆ€νŒ… μ‹œ μŠ€μΌ€μ€„λŸ¬κ°€ μ‹€ν–‰ν•œ ν”„λ‘œμ„ΈμŠ€ systemd 와 kthreadd λ₯Ό μ œμ™Έν•œ λ¦¬λˆ…μŠ€μ˜ λͺ¨λ“  ν”„λ‘œμ„ΈμŠ€λŠ” λΆ€λͺ¨-μžμ‹ 관계λ₯Ό 가짐
    • ν”„λ‘œμ„ΈμŠ€λŠ” PID; Process IDentification number λΌλŠ” κ³ μœ ν•œ 번호λ₯Ό 가짐
      • PIDλŠ” 1λ²ˆλΆ€ν„° μ‹œμž‘ν•˜κ³  ν”„λ‘œμ„ΈμŠ€κ°€ μ‹€ν–‰λ˜λ©΄μ„œ ν•˜λ‚˜μ”© μ¦κ°€ν•˜μ—¬ 뢀여됨
      • PPID; Parents Process IDentification number : λΆ€λͺ¨ ν”„λ‘œμ„ΈμŠ€μ˜ PID
    • 데λͺ¬(daemon) ν”„λ‘œμ„ΈμŠ€ : νŠΉμ • μ„œλΉ„μŠ€λ₯Ό μ œκ³΅ν•˜κΈ° μœ„ν•΄ μ‘΄μž¬ν•˜λ©° λ¦¬λˆ…μŠ€ 컀널에 μ˜ν•΄ 싀행됨
      • ν‰μ†ŒλŠ” λŒ€κΈ° μƒνƒœ, μ„œλΉ„μŠ€ μš”μ²­μ΄ λ“€μ–΄μ˜€λ©΄ μ„œλΉ„μŠ€ 제곡
    • κ³ μ•„(orphan) ν”„λ‘œμ„ΈμŠ€ : μžμ‹ ν”„λ‘œμ„ΈμŠ€κ°€ 아직 μ‹€ν–‰ 쀑인데 λΆ€λͺ¨ ν”„λ‘œμ„ΈμŠ€κ°€ λ¨Όμ € μ’…λ£Œλ˜λ©΄ μƒκΈ°λŠ” ν”„λ‘œμ„ΈμŠ€
    • μ’€λΉ„(zombie) ν”„λ‘œμ„ΈμŠ€ : μžμ‹ ν”„λ‘œμ„ΈμŠ€κ°€ 싀행을 μ’…λ£Œν–ˆλŠ”λ°λ„ ν”„λ‘œμ„ΈμŠ€ ν…Œμ΄λΈ” λͺ©λ‘μ— 남아 μžˆλŠ” ν”„λ‘œμ„ΈμŠ€

(5) λͺ…령을 λ°±κ·ΈλΌμš΄λ“œ μž‘μ—…μœΌλ‘œ μ‹€ν–‰μ‹œν‚€κΈ° μœ„ν•΄ λͺ…λ Ή λ‹€μŒμ— μΆ”κ°€ν•˜λŠ” νŠΉμˆ˜λ¬ΈμžλŠ” 무엇인가?

  • @
  • &
  • *
  • $

(Answer) : &

λ°±κ·ΈλΌμš΄λ“œ μž‘μ—…

  • λͺ…령을 λ°±κ·ΈλΌμš΄λ“œλ‘œ μ‹€ν–‰ν•˜λ €λ©΄ λͺ…λ Ήμ˜ λ§ˆμ§€λ§‰μ— & 기호λ₯Ό 좔가함

(6) μ‚¬μš©μž 계정이 at λͺ…령을 μ‚¬μš©ν•  수 μžˆλŠ” 쑰건이 μ•„λ‹Œ 것은 무엇인가?

  • /etc/at.allow 파일이 있고, 이 νŒŒμΌμ— μ‚¬μš©μž 계정이 λ“±λ‘λ˜μ–΄ μžˆλ‹€.
  • /etc/at.deny 파일만 있고, 이 νŒŒμΌμ— μ‚¬μš©μž 계정이 λ“±λ‘λ˜μ–΄ μžˆμ§€ μ•Šλ‹€.
  • /etc/at.allow 파일과 /etc/at.deny 파일이 λͺ¨λ‘ 있고 두 νŒŒμΌμ— λͺ¨λ‘ μ‚¬μš©μž 계정이 λ“±λ‘λ˜μ–΄ μžˆλ‹€.
  • /etc/cron.allow 파일과 /etc/cron.deny 파일이 λͺ¨λ‘ μ—†λ‹€.

(Answer) : /etc/cron.allow 파일과 /etc/cron.deny 파일이 λͺ¨λ‘ μ—†λ‹€.

정해진 μ‹œκ°„μ— ν•œ 번 μ‹€ν–‰ - at

  • at [option] [time]
  • μ˜ˆμ•½ν•œ λͺ…령을 정해진 μ‹œκ°„μ— μ‹€ν–‰
  • option
    • -l : ν˜„μž¬ μ‹€ν–‰ λŒ€κΈ° 쀑인 λͺ…λ Ήμ˜ 전체 λͺ©λ‘μ„ 좜λ ₯
    • -r job_number : ν˜„μž¬ μ‹€ν–‰ λŒ€κΈ° 쀑인 λͺ…λ Ή 쀑 ν•΄λ‹Ή μž‘μ—… 번호 μ‚­μ œ
    • -m : 좜λ ₯ κ²°κ³Όκ°€ 없더라도 μž‘μ—…μ΄ μ™„λ£Œλ˜λ©΄ μ‚¬μš©μžμ—κ²Œ λ©”μΌλ‘œ μ•Œλ €μ€Œ
    • -f file : ν‘œμ€€ μž…λ ₯ λŒ€μ‹  μ‹€ν–‰ν•  λͺ…령을 파일둜 지정
  • at 으둜 μƒμ„±λœ μž‘μ—… νŒŒμΌμ€ /var/spool/cron/atjobs 디렉터리에 μž‘μ—… 번호둜 μ €μž₯됨
  • /etc/at.allow 파일과 /etc/at.deny 파일
    • /etc/at.allow 쑴재 μ‹œ ν•΄λ‹Ή νŒŒμΌμ— μ§€μ •λœ μ‚¬μš©μžλ§Œ λͺ…λ Ή μ‚¬μš© κ°€λŠ₯
      • 이 경우 /etc/at.deny λŠ” λ¬΄μ‹œλ¨
    • /etc/at.allow 없을 μ‹œ /etc/at.deny 에 μ§€μ •λœ μ‚¬μš©λ₯Ό μ œμ™Έν•œ λͺ¨λ“  μ‚¬μš©μžκ°€ λͺ…λ Ή μ‚¬μš© κ°€λŠ₯
    • 두 파일 없을 μ‹œ root만 λͺ…λ Ή μ‚¬μš© κ°€λŠ₯
    • μ‚¬μš©μžκ°€ 두 파일 λͺ¨λ‘ 속해 μžˆλ‹€λ©΄ λͺ…λ Ή μ‚¬μš© κ°€λŠ₯
      • /etc/at.allow 적용
    • /etc/at.deny λ₯Ό 빈 파일둜 두면 λͺ¨λ“  μ‚¬μš©μžκ°€ λͺ…λ Ή μ‚¬μš© κ°€λŠ₯
      • 초기 μ„€μ •

(7) 데λͺ¬ ν”„λ‘œμ„ΈμŠ€μ— λŒ€ν•œ μ„€λͺ…μœΌλ‘œ λ§žμ§€ μ•ŠλŠ” 것은?

  • λ¦¬λˆ…μŠ€ 컀널에 μ˜ν•΄μ„œ μ‹€ν–‰λœλ‹€.
  • νŠΉμ •ν•œ μ„œλΉ„μŠ€λ₯Ό μ œκ³΅ν•˜κΈ° μœ„ν•΄ μ‘΄μž¬ν•˜λŠ” ν”„λ‘œμ„ΈμŠ€μ΄λ‹€.
  • μ‚¬μš©μžκ°€ 컀널에 μ˜ν•΄ μ‹€ν–‰λ˜μ—ˆλ‹€κ°€ 싀행이 λλ‚˜λ©΄ μ’…λ£Œν•œλ‹€.
  • λŒ€λΆ€λΆ„μ˜ 경우 λŒ€κΈ° μƒνƒœλ‘œ μžˆλ‹€κ°€ μ„œλΉ„μŠ€ μš”μ²­μ΄ 였면 μ‹€ν–‰ν•œλ‹€.

(Answer) : μ‚¬μš©μžκ°€ 컀널에 μ˜ν•΄ μ‹€ν–‰λ˜μ—ˆλ‹€κ°€ 싀행이 λλ‚˜λ©΄ μ’…λ£Œν•œλ‹€.

(8) PIDκ°€ 5000인 ν”„λ‘œμ„ΈμŠ€λ₯Ό kill 5000으둜 μ’…λ£Œν•˜λ €λŠ”λ° μ’…λ£Œλ˜μ§€ μ•ŠλŠ”λ‹€. 이 ν”„λ‘œμ„ΈμŠ€λ₯Ό κ°•μ œλ‘œ μ’…λ£Œν•˜λŠ” λͺ…령문을 μž‘μ„±ν•˜μ‹œμ˜€.

(Answer) : kill -9 5000

  • -9 : ν”„λ‘œμ„ΈμŠ€λ₯Ό κ°•μ œλ‘œ μ’…λ£Œν•¨

ν”„λ‘œμ„ΈμŠ€ μ’…λ£Œν•˜κΈ° - kill

  • kill [-signal] PID...
  • μ§€μ •ν•œ μ‹œκ·Έλ„μ„ ν”„λ‘œμ„ΈμŠ€μ—κ²Œ 전솑
  • signal
    • 2 : μΈν„°λŸ½νŠΈ μ‹œκ·Έλ„(^c)
    • 9 : ν”„λ‘œμ„ΈμŠ€ κ°•μ œ μ’…λ£Œ
    • 15 : ν”„λ‘œμ„ΈμŠ€μ™€ κ΄€λ ¨λœ 파일 정리 및 μ’…λ£Œ(μ’…λ£Œλ˜μ§€ μ•ŠλŠ” ν”„λ‘œμ„ΈμŠ€κ°€ μžˆμ„ 수 있음)

(9) ps -f λͺ…λ Ήμ˜ κ²°κ³Όκ°€ λ‹€μŒκ³Ό 같을 λ•Œ κ°€μž₯ μƒμœ„μ˜ ν”„λ‘œμ„ΈμŠ€ IDλŠ”?

$ ps -f
UID   PID   PPID  C STIME     TTY   TIME  CMD
user1 15761 15721 0 18:14:17  pts/1 0:00  vi /etc/hosts
user1 15721 15710 0 18:14:09  pts/1 0:00  sh
user1 15710 15701 0 18:12:59  pts/1 0:00  -bash

(Answer) : 15710

(10) λ‹€μŒκ³Ό 같이 λ°±κ·ΈλΌμš΄λ“œλ‘œ μ‹€ν–‰ 쀑인 μž‘μ—…μ΄ μ„Έ 개 μžˆλ‹€. 이 쀑 3번 μž‘μ—…μ„ μ’…λ£Œν•˜λŠ” λͺ…령문을 μž‘μ„±ν•˜μ‹œμ˜€.

$ jobs
[1] + μ‹€ν–‰ 쀑 sleep 100
[2] - μ‹€ν–‰ 쀑 find / -name test
[3] μ‹€ν–‰ 쀑 sleep 300

(Answer) : kill %3

  • λ°±κ·ΈλΌμš΄λ“œ μž‘μ—…μ€ kill λͺ…λ ΉμœΌλ‘œ κ°•μ œ μ’…λ£Œ
  • kill 의 인자 : %job_number

(11) atκ³Ό crontab λͺ…λ Ήμ˜ 차이λ₯Ό μ„€λͺ…ν•˜μ‹œμ˜€.

(Answer) : at은 정해진 μ‹œκ°„μ— ν•œ 번만 λͺ…령을 μ‹€ν–‰ν•˜μ§€λ§Œ crontab은 λͺ…령을 주기적으둜 λ°˜λ³΅ν•΄μ„œ μ‹€ν–‰ν•  수 있음

  • at : μ˜ˆμ•½ν•œ λͺ…령을 정해진 μ‹œκ°„μ— μ‹€ν–‰
  • crontab : μ‚¬μš©μžμ˜ crontab 파일둜 지정 μ‹œκ°„μ΄ 되면 반볡적으둜 μ‹€ν–‰

(12) 주기적으둜 λ°˜λ³΅λ˜λŠ” 일을 μžλ™μ μœΌλ‘œ 싀행될 수 μžˆλ„λ‘ μ„€μ •ν•˜κΈ° μœ„ν•œ λͺ…령은?

  • cron
  • at
  • ufw
  • nmtui

(Answer) : cron

(13) μ‚¬μš©μžμ˜ νŒ¨μŠ€μ›Œλ“œκ°€ μ €μž₯λ˜μ–΄ μžˆλŠ” 경둜λͺ…κ³Ό 파일λͺ…μœΌλ‘œ μ•Œλ§žμ€ 것은?

  • /etc/passwd
  • /etc/group
  • /etc/shadow
  • /etc/skel

(Answer) : /etc/shadow

 

πŸ‘€ [07] 파일 μ‹œμŠ€ν…œκ³Ό λ””μŠ€ν¬ 관리

(1) μ‹œμŠ€ν…œμ— μ„€μΉ˜λœ 전체 λ””μŠ€ν¬μ˜ νŒŒν‹°μ…˜ 정보λ₯Ό 보기 μœ„ν•œ λͺ…령은 무엇인가?

  • fdisk -a
  • fdisk -l
  • fdisk -v
  • fdisk -d

(Answer) : fdisk -l

  • -a : λΆ€νŒ… νŒŒν‹°μ…˜ μ„€μ •
  • -l : μ‚¬μš© κ°€λŠ₯ν•œ νŒŒν‹°μ…˜ μ’…λ₯˜ 좜λ ₯
  • -v : νŒŒν‹°μ…˜ ν…Œμ΄λΈ” 검사
  • -d : νŒŒν‹°μ…˜ μ‚­μ œ

νŒŒν‹°μ…˜ κ΄€λ¦¬ν•˜κΈ° - fdisk

  • fdisk [option] [dev_name]
  • λ””μŠ€ν¬μ˜ νŒŒν‹°μ…˜ 생성, μ‚­μ œ, 보기 λ“± νŒŒν‹°μ…˜μ„ 관리함
  • option
    • -b size : μ„Ήν„° 크기λ₯Ό 지정함
      • 512, 1024, 2048, 4096
    • -l : νŒŒν‹°μ…˜ ν…Œμ΄λΈ” 좜λ ₯

(2) λ””μŠ€ν¬λ₯Ό μƒˆλ‘œ μž₯μ°©ν•˜κ³  μ‚¬μš©ν•˜κΈ° μœ„ν•œ μž‘μ—… μˆœμ„œλ‘œ λ§žλŠ” 것은 무엇인가?

  • λ””μŠ€ν¬ νŒŒν‹°μ…˜ 생성 -> λ””μŠ€ν¬ 마운트 -> λ””μŠ€ν¬ 포멧
  • λ””μŠ€ν¬ νŒŒν‹°μ…˜ 생성 -> λ””μŠ€ν¬ 포멧 -> λ””μŠ€ν¬ 마운트
  • λ””μŠ€ν¬ 마운트 -> λ””μŠ€ν¬ νŒŒν‹°μ…˜ 생성 -> λ””μŠ€ν¬ 포멧
  • λ””μŠ€ν¬ 포멧 -> λ””μŠ€ν¬ νŒŒν‹°μ…˜ 생성 -> λ””μŠ€ν¬ 마운트

(Answer) : λ””μŠ€ν¬ νŒŒν‹°μ…˜ 생성 -> λ””μŠ€ν¬ 포멧 -> λ””μŠ€ν¬ 마운트

λ””μŠ€ν¬ μΆ”κ°€ 단계

  • μƒˆ λ””μŠ€ν¬ μž₯μ°© -> λ””μŠ€ν¬ νŒŒν‹°μ…˜ λ‚˜λˆ„κΈ° -> νŒŒν‹°μ…˜μ— 파일 μ‹œμŠ€ν…œ 생성(포멧) -> λ””μŠ€ν¬ 마운트

(3) λΆ€νŒ…ν•  λ•Œ 파일 μ‹œμŠ€ν…œμ„ λ§ˆμš΄νŠΈν•˜κΈ° μœ„ν•œ 정보λ₯Ό μ €μž₯ν•˜κ³  μžˆλŠ” νŒŒμΌμ€ 무엇인가?

  • /etc/mtab
  • /etc/mount
  • /etc/fstab
  • /etc/ftab

(Answer) : /etc/fstab

  • /etc/fstab : 파일 μ‹œμŠ€ν…œμ˜ 마운트 μ„€μ • 정보λ₯Ό 가지고 있음
    • 파일 μ‹œμŠ€ν…œμ˜ μž₯치λͺ…κ³Ό 마운트 포인트, λ§ˆμš΄νŠΈν•  λ•Œ μ„€μ •ν•  μ˜΅μ…˜μ„ 지정함

파일 μ‹œμŠ€ν…œ 마운트 μ„€μ • 파일

  • /etc/fstab : λ¦¬λˆ…μŠ€μ—μ„œ μ‹œμŠ€ν…œμ΄ λΆ€νŒ…λ  λ•Œ μžλ™μœΌλ‘œ 파일 μ‹œμŠ€ν…œμ΄ 마운트되게 κ΄€λ ¨ 사항을 μ„€μ •ν•˜λŠ” 파일
    • 파일 μ‹œμŠ€ν…œμ˜ 마운트 μ„€μ • 정보λ₯Ό κ°–κ³  있음
    • 파일의 ꡬ쑰
      • μž₯치λͺ… | 마운트 포인트 | 파일 μ‹œμŠ€ν…œμ˜ μ’…λ₯˜ | μ˜΅μ…˜ | 덀프 κ΄€λ ¨ μ„€μ • | 파일 점검 μ˜΅μ…˜

(4) μœ λ‹‰μŠ€ 파일 μ‹œμŠ€ν…œμ— λŒ€ν•œ 곡톡 κ°œλ…μ΄ μ•„λ‹Œ 것은?

  • 파일의 정보가 λ©”λͺ¨λ¦¬μ— μƒμ„±λ˜μ–΄ μ‚¬μš©λœλ‹€.
  • νŒŒμΌμ€ inode둜 κ΄€λ¦¬λœλ‹€.
  • λ””λ ‰ν„°λ¦¬λŠ” λ‹¨μˆœνžˆ 파일의 λͺ©λ‘μ„ 가지고 μžˆλŠ” 파일일 뿐이닀.
  • 특수 νŒŒμΌμ„ 톡해 μž₯μΉ˜μ— μ ‘κ·Όν•  수 μžˆλ‹€.

(Answer) : 파일의 정보가 λ©”λͺ¨λ¦¬μ— μƒμ„±λ˜μ–΄ μ‚¬μš©λœλ‹€.

  • μœ λ‹‰μŠ€ 파일 μ‹œμŠ€ν…œ κ³΅ν†΅μ˜ κ°œλ… μ„Έ 가지
    • νŒŒμΌμ€ inode둜 κ΄€λ¦¬λœλ‹€.
    • λ””λ ‰ν„°λ¦¬λŠ” λ‹¨μˆœνžˆ 파일의 λͺ©λ‘μ„ 가지고 μžˆλŠ” 파일일 뿐이닀.
    • 특수 νŒŒμΌμ„ 톡해 μž₯μΉ˜μ— μ ‘κ·Όν•  수 μžˆλ‹€.

(5) inode에 λŒ€ν•œ μ„€λͺ…μœΌλ‘œ λ§žμ§€ μ•ŠλŠ” 것은?

  • 파일 정보λ₯Ό μ €μž₯ν•˜λŠ” λΆ€λΆ„κ³Ό 데이터 λΈ”λ‘μ˜ μ£Όμ†Œλ₯Ό μ €μž₯ν•˜λŠ” λΆ€λΆ„μœΌλ‘œ λ‚˜λˆ„μ–΄μ§„λ‹€.
  • 파일 μ •λ³΄λŠ” 파일 μ’…λ₯˜, 파일 μ ‘κ·Ό κΆŒν•œ, 파일 크기, μ†Œμœ μž, μ ‘κ·Ό 및 μˆ˜μ • μ‹œκ°„ 등이닀.
  • 파일 μ •λ³΄λŠ” μ‚¬μš©μžκ°€ ls -l λͺ…λ ΉμœΌλ‘œ ν™•μΈν•˜λŠ” 정보이닀.
  • 직접 블둝은 데이터 블둝에 λŒ€ν•œ μ£Όμ†Œλ₯Ό κ°–κ³  μžˆλŠ” 블둝에 λŒ€ν•œ μ£Όμ†Œλ₯Ό μ €μž₯ν•œλ‹€.

(Answer) : 직접 블둝은 데이터 블둝에 λŒ€ν•œ μ£Όμ†Œλ₯Ό κ°–κ³  μžˆλŠ” 블둝에 λŒ€ν•œ μ£Όμ†Œλ₯Ό μ €μž₯ν•œλ‹€.

  • direct block : 데이터 블둝에 λŒ€ν•œ μ£Όμ†Œλ₯Ό 직접 가짐
  • indirect block : 데이터 블둝에 λŒ€ν•œ μ£Όμ†Œλ₯Ό 가지고 μžˆλŠ” λΈ”λ‘μ˜ μ£Όμ†Œ μ €μž₯

inode

  • inodeλŠ” 크게 파일 정보λ₯Ό μ €μž₯ν•˜λŠ” λΆ€λΆ„κ³Ό μ‹€μ œ 파일 λ‚΄μš©μ΄ μ €μž₯된 데이터 λΈ”λ‘μ˜ μ£Όμ†Œλ₯Ό μ €μž₯ν•˜λŠ” λΆ€λΆ„μœΌλ‘œ λ‚˜λ‰¨
    • 파일 정보 : 파일 μ’…λ₯˜, 파일 μ ‘κ·Ό κΆŒν•œ, 파일 크기, μ†Œμœ μž, μ ‘κ·Ό 및 μˆ˜μ • μ‹œκ°„ λ“±
      • ls -l λͺ…λ ΉμœΌλ‘œ ν™•μΈν•˜λŠ” 정보
    • 데이터 λΈ”λ‘μ˜ μ£Όμ†Œλ₯Ό μ €μž₯ν•˜λŠ” λΆ€λΆ„
      • 직접 블둝 : 데이터 블둝에 λŒ€ν•œ μ£Όμ†Œλ₯Ό 직접 가짐
      • κ°„μ ‘ 블둝 : 데이터 블둝에 λŒ€ν•œ μ£Όμ†Œλ₯Ό 가지고 μžˆλŠ” λΈ”λ‘μ˜ μ£Όμ†Œλ₯Ό 가짐
      • 이쀑 κ°„μ ‘ 블둝 : 데이터 블둝에 λŒ€ν•œ μ£Όμ†Œλ₯Ό 가지고 μžˆλŠ” λΈ”λ‘μ˜ μ£Όμ†Œλ₯Ό 가짐

(6) 마운트 ν¬μΈνŠΈμ— λŒ€ν•΄ μ„€λͺ…ν•˜μ‹œμ˜€.

(Answer) : 디렉터리 계측 κ΅¬μ‘°μ—μ„œ 파일 μ‹œμŠ€ν…œμ΄ μ—°κ²°λ˜λŠ” 디렉터리

(7) μ‹œμŠ€ν…œμ— μƒˆλ‘œμš΄ ν•˜λ“œλ””μŠ€ν¬λ₯Ό μ„€μΉ˜ν–ˆλŠ”λ° 이 λ””μŠ€ν¬μ˜ μž₯치λͺ…은 /dev/sdb이닀. 이 λ””μŠ€ν¬ 전체λ₯Ό ν•˜λ‚˜μ˜ νŒŒν‹°μ…˜μœΌλ‘œ μƒμ„±ν•˜λŠ” 과정이닀. 빈 칸에 μž…λ ₯ν•  λ‚΄μš©μ„ μ°¨λ‘€λŒ€λ‘œ μ“°μ‹œμ˜€.

$ sudo fdisk /dev/sdb

Welcome to fdisk (util-linux 2.34).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table.
Created a new DOS disklavel with disk identifier 0x1b5d52f4.

Command (m for help): `n`
Partition type
  p primary (0 primary, 0 extended, 4 free)
  e extended  (container for logical partitions)
Select (default p): `p`
Partition number (1-4, default 1): `1`
First sector (2048-2097151, default 2048): enter
Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-2097151, default 2097151): enter
Command (m to help): `w`
The partition table has been altered.
Calling ioctl() to re-read partition table.
Syncing disks.

fidsk λͺ…λ Ήμ˜ λ‚΄λΆ€ λͺ…λ Ή

  • a : λΆ€νŒ… νŒŒν‹°μ…˜ μ„€μ •
  • b : BSD λ””μŠ€ν¬ 라벨 νŽΈμ§‘
  • c : λ„μŠ€ ν˜Έν™˜μ„± μ„€μ •
  • d : νŒŒν‹°μ…˜ μ‚­μ œ
  • l : μ‚¬μš© κ°€λŠ₯ν•œ νŒŒν‹°μ…˜μ˜ μ’…λ₯˜ 좜λ ₯
  • m : 도움말 좜λ ₯
  • n : μƒˆλ‘œμš΄ νŒŒν‹°μ…˜ μΆ”κ°€
  • o : μƒˆλ‘œμš΄ 빈 DOS νŒŒν‹°μ…˜ 생성
  • p : νŒŒν‹°μ…˜ ν…Œμ΄λΈ” 좜λ ₯
  • q : μž‘μ—… λ‚΄μš© μ €μž₯ν•˜μ§€ μ•Šκ³  μ’…λ£Œ
  • s : μƒˆλ‘œμš΄ 빈 Sun λ””μŠ€ν¬ 라벨 생성
  • t : νŒŒν‹°μ…˜μ˜ μ‹œμŠ€ν…œ ID λ³€κ²½(파일 μ‹œμŠ€ν…œ μ’…λ₯˜ λ³€κ²½)
  • u : ν•­λͺ© 정보λ₯Ό λ³€κ²½οΉ’μΆœλ ₯
  • v : νŒŒν‹°μ…˜ ν…Œμ΄λΈ” 검사
  • w : νŒŒν‹°μ…˜ 정보λ₯Ό λ””μŠ€ν¬μ— μ €μž₯ ν›„ μ’…λ£Œ
  • x : 싀린더 개수 λ³€κ²½ λ“± μ „λ¬Έκ°€λ₯Ό μœ„ν•œ 뢀가적 κΈ°λŠ₯

(8) ν•˜λ“œλ””μŠ€ν¬λ₯Ό μ—¬λŸ¬ νŒŒν‹°μ…˜μœΌλ‘œ λ‚˜λˆ„μ–΄ μ‚¬μš©ν•˜λ©΄ μ–΄λ–€ μž₯점이 μžˆλŠ”κ°€?

(Answer) : μ‹œμŠ€ν…œ μ„±λŠ₯이 ν–₯μƒλ˜κ³ , 데이터 관리에 μœ λ¦¬ν•˜λ©°, 파일 볡ꡬ에 μœ λ¦¬ν•˜λ‹€.

(9) λ‹€μŒ κ·Έλ¦Όκ³Ό 같이 /mnt μ•„λž˜μ— a.txt 파일이 μ €μž₯λ˜μ–΄ μžˆλ‹€. 그런데 /dev/sda2 파일 μ‹œμŠ€ν…œμ„ /mnt에 λ§ˆμš΄νŠΈν•˜κ³  ls /mnt λͺ…령을 μˆ˜ν–‰ν•  경우 κ²°κ³Όλ₯Ό μ“°μ‹œμ˜€.

  • a.txt b.txt
  • b.txt
  • a.txt
  • fdisk -d

(Answer) : b.txt

(10) 마운트 포인터 mnt 디렉터리와 /dev/sda2 λ””μŠ€ν¬μ˜ 연결을 ν•΄μ œν•˜λŠ” λͺ…λ Ήμ–΄λ₯Ό μž‘μ„±ν•˜μ‹œμ˜€.

(Answer) : sudo umount /mnt

μž₯μΉ˜μ™€ μ—°κ²° ν•΄μ œν•˜κΈ° - umount

  • umount [option] [dev_name|mount_point]
  • option
    • -t file_system : 파일 μ‹œμŠ€ν…œ μ’…λ₯˜ 지정

 

πŸ‘€ [08] λ¦¬λˆ…μŠ€μ˜ λΆ€νŒ…κ³Ό μ’…λ£Œ

(1) 1번 ν”„λ‘œμ„ΈμŠ€μΈ initλ₯Ό λŒ€μ²΄ν•œ μ„œλΉ„μŠ€μ˜ 이름은 무엇인가?

  • system
  • systemd
  • systemctl
  • sysinit

(Answer) : systemd

systemd

  • λ¦¬λˆ…μŠ€μ˜ μ‹œμŠ€ν…œκ³Ό μ„œλΉ„μŠ€ κ΄€λ¦¬μž
  • μœ λ‹‰μŠ€μ˜ init ν”„λ‘œμ„ΈμŠ€κ°€ ν•˜λ˜ μž‘μ—…μ„ λŒ€μ‹  μˆ˜ν–‰ν•¨
    • λ‹€μ–‘ν•œ μ„œλΉ„μŠ€ 데λͺ¬μ„ μ‹œμž‘ν•˜κ³ , ν”„λ‘œμ„ΈμŠ€λ“€μ˜ μƒνƒœλ₯Ό μœ μ§€ν•˜λ©°, μ‹œμŠ€ν…œμ˜ μƒνƒœ 관리

(2) λ‹€μŒ 쀑 μ‹œμŠ€ν…œμ„ μ’…λ£Œμ‹œν‚€λŠ” λͺ…령이 μ•„λ‹Œ 것은 무엇인가?

  • reboot
  • halt
  • kill
  • poweroff

(Answer) : kill

  • reboot, halt, poweroffλŠ” λͺ¨λ‘ systemctl λͺ…λ Ήμ˜ 심볼릭 링크

(3) λ¦¬λˆ…μŠ€μ˜ λΆ€νŒ… 단계λ₯Ό μ˜¬λ°”λ‘œ λ‚˜μ—΄ν•œ 것은 무엇인가?

  • λΆ€νŠΈ λ‘œλ” 단계 -> λ°”μ΄μ˜€μŠ€ 단계 -> 컀널 μ΄ˆκΈ°ν™” 단계 -> systemd 단계 -> 둜그인 ν”„λ‘¬ν”„νŠΈ 좜λ ₯
  • λ°”μ΄μ˜€μŠ€ 단계 -> 컀널 μ΄ˆκΈ°ν™” 단계 -> λΆ€νŠΈ λ‘œλ” 단계 -> systemd 단계 -> 둜그인 ν”„λ‘¬ν”„νŠΈ 좜λ ₯
  • λΆ€νŠΈ λ‘œλ” 단계 -> 컀널 μ΄ˆκΈ°ν™” 단계 -> λ°”μ΄μ˜€μŠ€ 단계 -> systemd 단계 -> 둜그인 ν”„λ‘¬ν”„νŠΈ 좜λ ₯
  • λ°”μ΄μ˜€μŠ€ 단계 -> λΆ€νŠΈ λ‘œλ“œ 단계 -> 컀널 μ΄ˆκΈ°ν™” 단계 -> systemd 단계 -> 둜그인 ν”„λ‘¬ν”„νŠΈ 좜λ ₯

(Answer) : λ°”μ΄μ˜€μŠ€ 단계 -> λΆ€νŠΈ λ‘œλ” 단계 -> 컀널 μ΄ˆκΈ°ν™” 단계 -> systemd 단계 -> 둜그인 ν”„λ‘¬ν”„νŠΈ 좜λ ₯

λ¦¬λˆ…μŠ€μ˜ λΆ€νŒ… κ³Όμ •

  • 전원 ON -> λ°”μ΄μ˜€μŠ€ 단계 -> λΆ€νŠΈ λ‘œλ” 단계 -> 컀널 μ΄ˆκΈ°ν™” 단계 -> systemd 단계 -> 둜그인 ν”„λ‘¬ν”„νŠΈ 좜λ ₯

(4) 런 레벨 쀑 μž¬μ‹œμž‘μ„ μ§€μ‹œν•˜λŠ” 런 λ ˆλ²¨μ€ 무엇인가?

  • 0
  • 3
  • 5
  • 6

(Answer) : 6

  • 0 : μ‹œμŠ€ν…œ μ’…λ£Œ
  • 1, S, s : 응급 볡ꡬ λͺ¨λ“œ(단일 μ‚¬μš©μž λͺ¨λ“œ)
  • 2, 3, 4 : 닀쀑 μ‚¬μš©μž λͺ¨λ“œ
  • 5 : κ·Έλž˜ν”Όμ»¬ 닀쀑 μ‚¬μš©μž λͺ¨λ“œ
  • 6 : μž¬μ‹œμž‘

런레벨

  • init은 μ‹œμŠ€ν…œ μƒνƒœλ₯Ό 일곱 개둜 μ •μ˜ν•˜μ—¬ κ΅¬λΆ„ν•˜κ³  각 μƒνƒœμ— 따라 μ…Έ 슀크립트 μ‹€ν–‰
    • μ΄λŸ¬ν•œ μƒνƒœλ₯Ό 런레벨(run level) 이라 함

(5) 1λΆ„ 후에 μ‹œμŠ€ν…œμ„ μž¬μ‹œμž‘ν•˜λ„λ‘ μ„€μ •ν•œ λͺ…령은 무엇인가?

  • shutdown -h +1
  • shutdown -r +1
  • shutdown -c +1
  • shutdown -k +1

(Answer) : shutdown -r +1

  • -h : μ’…λ£Œν•˜κ³  halt μƒνƒœλ‘œ 이동
  • -r : μ’…λ£Œ ν›„ μž¬μ‹œμž‘
  • -c : 이전에 λ‚΄λ Έλ˜ shutdown λͺ…λ Ή μ·¨μ†Œ
  • -k : μ‹€μ œλ‘œ μ‹œμŠ€ν…œμ„ μ’…λ£Œν•˜λŠ” 것이 μ•„λ‹ˆλΌ μ‚¬μš©μžλ“€μ—κ²Œ λ©”μ‹œμ§€λ§Œ 전달

μ‹œμŠ€ν…œ μ’…λ£Œν•˜κΈ° - shutdown

  • shutdown [option] [time] [message]
  • λ¦¬λˆ…μŠ€λ₯Ό μ’…λ£Œν•¨
  • option
    • -k : μ‹€μ œλ‘œ μ‹œμŠ€ν…œμ„ μ’…λ£Œν•˜λŠ” 것이 μ•„λ‹Œ μ‚¬μš©μžλ“€μ—κ²Œ λ©”μ‹œμ§€λ§Œ 전달
    • -r : μ’…λ£Œν•œ ν›„ μž¬μ‹œμž‘
    • -h : μ’…λ£Œν•˜κ³  halt μƒνƒœλ‘œ 이동
    • -f : λΉ λ₯Έ μž¬μ‹œμž‘μœΌλ‘œ 이 κ³Όμ •μ—μ„œ fsck μƒλž΅ κ°€λŠ₯
    • -c : 이전에 λ‚΄λ Έλ˜ shutdown λͺ…λ Ή μ·¨μ†Œ
  • time
    • hh:mm, +m, now
  • message : λͺ¨λ“  μ‚¬μš©μžλ“€μ—κ²Œ 보낼 λ©”μ‹œμ§€

(6) λΆ€νŠΈ λ‘œλ”μ˜ 역할을 μ„€λͺ…ν•˜μ‹œμ˜€.

(Answer) : λ¦¬λˆ…μŠ€ 컀널을 λ©”λͺ¨λ¦¬μ— λ‘œλ”©ν•˜λŠ” μ—­ν•  μˆ˜ν–‰

  • λ¦¬λˆ…μŠ€μ˜ λŒ€ν‘œμ μΈ λΆ€νŠΈ λ‘œλ”λŠ” GRUB(GRand Unified Bootloader)

(7) adc.service μœ λ‹›μ΄ λ™μž‘ 쀑인지(active) ν™•μΈν•˜λŠ” λͺ…령은?

  • systemctl status abc.service
  • systemctl start abc.service
  • systemctl restart abc.service
  • systemctl stop abc.service

(Answer) : systemctl status abc.service

  • status : μœ λ‹› μƒνƒœ 좜λ ₯
  • start : μœ λ‹› μ‹œμž‘
  • restart : μœ λ‹› μž¬μ‹œμž‘
  • stop : μœ λ‹› 정지

μ„œλΉ„μŠ€ μ œμ–΄ν•˜κΈ° - systemctl

  • systemctl [option] [cmd] [unit_name]
  • systemd μ„œλΉ„μŠ€λ₯Ό μ œμ–΄ν•¨
  • option
    • -a : μƒνƒœμ™€ 관계없이 μœ λ‹› 전체 좜λ ₯
    • -t unit_type : 지정 μ’…λ₯˜ μœ λ‹›λ§Œ 좜λ ₯
  • cmd
    • start : μœ λ‹› μ‹œμž‘
    • stop : μœ λ‹› 정지
    • reload : μœ λ‹› μ„€μ • 파일 λ‹€μ‹œ μ½μ–΄μ˜΄
    • restart : μœ λ‹› μž¬μ‹œμž‘
    • status : μœ λ‹› μƒνƒœ 좜λ ₯
    • enable : λΆ€νŒ… μ‹œ μœ λ‹›μ΄ μ‹œμž‘λ˜λ„λ‘ μ„€μ •
    • disable : λΆ€νŒ… μ‹œ μœ λ‹›μ΄ μ‹œμž‘ν•˜μ§€ μ•Šλ„λ‘ μ„€μ •
    • is-active : μœ λ‹›μ΄ λ™μž‘ν•˜κ³  μžˆλŠ”μ§€ 확인
    • is-enabled : μœ λ‹›μ΄ μ‹œμž‘λ˜μ—ˆλŠ”μ§€ 확인
    • isolate : μ§€μ •ν•œ μœ λ‹› 및 이와 κ΄€λ ¨λœ μœ λ‹›λ§Œ μ‹œμž‘ν•˜κ³  λ‚˜λ¨Έμ§€ 정지
    • kill : μœ λ‹›μ— μ‹œκ·Έλ„ 전솑

(8) abc.service μœ λ‹›μ„ μ‹œμž‘ν•˜λŠ” λͺ…령은 무엇인가?

(Answer) : systemctl start abc.service

(9) μ‹œμŠ€ν…œμ— λ¬Έμ œκ°€ μžˆμ–΄μ„œ 단일 μ‚¬μš©μž λͺ¨λ“œλ‘œ μ „ν™˜ν•˜λ €κ³  런 λ ˆλ²¨μ„ μ΄μš©ν•˜λŠ” 방법은?

(Answer) : systemctl isolate rescue / systemctl isolate runlevel1 / init 1 / telinit S

(10) μ‹œμŠ€ν…œμ„ μ’…λ£Œν•˜λŠ” 방법이 μ•„λ‹Œ 것은?

  • shutdown -p now
  • init 0
  • poweroff
  • exit

(Answer) : exit

(11) μ˜ˆμ•½λœ μ‹œμŠ€ν…œ μ’…λ£Œλ₯Ό μ·¨μ†Œν•˜λŠ” λͺ…령은 무엇인가?

  • shutdown -c
  • halt -p
  • poweroff -c
  • shutdown -r

(Answer) : shutdown -c

 

πŸ‘€ [09] μ†Œν”„νŠΈμ›¨μ–΄ 관리

(1) μš°λΆ„νˆ¬ νŒ¨ν‚€μ§€λ₯Ό μ„€μΉ˜ν•  λ•Œ μ‚¬μš©ν•  수 μžˆλŠ” λͺ…령이 μ•„λ‹Œ 것은 무엇인가?

  • apt-get
  • apt
  • rpm
  • dpkg

(Answer) : rpm

  • rpm : λ ˆλ“œν–‡μ—μ„œ μ‚¬μš©ν•˜λŠ” νŒ¨ν‚€μ§€ 관리 도ꡬ

(2) apt-cache λͺ…λ Ήμ˜ μ„œλΈŒ λͺ…λ Ήμ—μ„œ νŒ¨ν‚€μ§€μ˜ μ„ΈλΆ€ 정보λ₯Ό κ²€μƒ‰ν•˜λŠ” 것은 무엇인가?

  • search
  • show
  • showpkg
  • upgrade

(Answer) : show

  • search : ν‚€μ›Œλ“œ 검색
  • showpkg : μ˜μ‘΄μ„± 정보 및 μ—­μ˜μ‘΄μ„± 정보 검색 ν›„ 좜λ ₯

APT λͺ…λ ΉμœΌλ‘œ νŒ¨ν‚€μ§€ κ΄€λ¦¬ν•˜κΈ° - apt_cache

  • apt-cache [option] sub_cmd
  • APT μΊμ‹œμ— μ§ˆμ˜ν•˜μ—¬ μ—¬λŸ¬ 가지 정보 검색
  • option
    • -f : 검색 결과둜 νŒ¨ν‚€μ§€μ— λŒ€ν•œ 전체 기둝 좜λ ₯
    • -h : κ°„λ‹¨ν•œ 도움말 좜λ ₯
  • sub_cmd
    • stats : μΊμ‹œμ— λŒ€ν•œ 톡계 정보 좜λ ₯
    • dump : ν˜„μž¬ μ„€μΉ˜λœ νŒ¨ν‚€μ§€ μ—…κ·Έλ ˆμ΄λ“œ
    • search keyword : μΊμ‹œμ—μ„œ ν‚€μ›Œλ“œ 검색
    • showpkg pkg_name : νŒ¨ν‚€μ§€μ— λŒ€ν•œ μ˜μ‘΄μ„± 정보와 μ—­μ˜μ „μ„± 정보 검색 좜λ ₯
    • show pkg_name : νŒ¨ν‚€μ§€μ— λŒ€ν•œ κ°„λ‹¨ν•œ 정보 좜λ ₯
    • pkgnames : μ‚¬μš© κ°€λŠ₯ν•œ λͺ¨λ“  νŒ¨ν‚€μ§€μ˜ 이름 좜λ ₯

(3) dpkg λͺ…λ ΉμœΌλ‘œ netcat_1.217-3ubuntu1_all.deb νŒ¨ν‚€μ§€λ₯Ό μ„€μΉ˜ν•˜λŠ” λͺ…령은 무엇인가?

  • dpkg -l netcat_1.217-3ubuntu1_all.deb
  • dpkg -i netcat_1.217-3ubuntu1_all.deb
  • dpkg -r netcat_1.217-3ubuntu1_all.deb
  • dpkg -P netcat_1.217-3ubuntu1_all.deb

(Answer) : dpkg -i netcat_1.217-3ubuntu1_all.deb

  • -l : μ„€μΉ˜λœ νŒ¨ν‚€μ§€ λͺ©λ‘ 좜λ ₯
  • -i : 파일 μ„€μΉ˜
  • -r : νŒ¨ν‚€μ§€ μ‚­μ œ
  • -P : νŒ¨ν‚€μ§€μ™€ μ„€μ • 정보 λͺ¨λ‘ μ‚­μ œ

νŒ¨ν‚€μ§€ κ΄€λ¦¬ν•˜κΈ° - dpkg

  • dpkg [option] [file_name|pkg_name]
  • λ°λΉ„μ•ˆμ˜ νŒ¨ν‚€μ§€ 관리 λͺ…λ Ή
  • option
    • -l : μ„€μΉ˜λœ νŒ¨ν‚€μ§€μ˜ λͺ©λ‘ 좜λ ₯
    • -l pkg_name : νŒ¨ν‚€μ§€μ˜ μ„€μΉ˜ μƒνƒœ 좜λ ₯
    • -s pkg_name : νŒ¨ν‚€μ§€μ˜ 상세 정보 좜λ ₯
    • -S path_name : 경둜λͺ…이 ν¬ν•¨λœ νŒ¨ν‚€μ§€ 검색
    • -L pkg_name : νŒ¨ν‚€μ§€μ—μ„œ μ„€μΉ˜λœ 파일의 λͺ©λ‘ 좜λ ₯
    • -c .deb_file : μ§€μ •ν•œ .deb 파일의 λ‚΄μš© 좜λ ₯
    • -i .deb_file : ν•΄λ‹Ή 파일 μ„€μΉ˜(sudo)
    • -r pkg_name : ν•΄λ‹Ή νŒ¨ν‚€μ§€ μ‚­μ œ(sudo)
    • -P pkg_name : ν•΄λ‹Ή νŒ¨ν‚€μ§€μ™€ μ„€μ • 정보 λͺ¨λ‘ μ‚­μ œ(sudo)
    • -x .deb_file directory : ν•΄λ‹Ή 파일 지정 디렉터리에 ν’ˆ

(4) tar λͺ…λ ΉμœΌλ‘œ λ§Œλ“  u.tar에 a.txt νŒŒμΌμ„ μΆ”κ°€ν•˜λŠ” λͺ…령은 무엇인가?

  • tar rvf u.tar a.txt
  • tar cvf u.tar a.txt
  • tar uvf u.tar a.txt
  • tar xvf u.tar a.txt

(Answer) : tar rvf u.tar a.txt

  • rvf : μ•„μΉ΄μ΄λΈŒ 파일 μΆ”κ°€
  • cvf : μ•„μΉ΄μ΄λΈŒ 생성
  • uvf : μ•„μΉ΄μ΄λΈŒ μ—…λ°μ΄νŠΈ
  • xvf : μ•„μΉ΄μ΄λΈŒ ν’€κΈ°

파일 μ•„μΉ΄μ΄λΈŒ - tar

  • tar function[option] [archive_file] [file_name]
  • 파일과 디렉터리λ₯Ό λ¬Άμ–΄ ν•˜λ‚˜μ˜ μ•„μΉ΄μ΄λΈŒ 파일 생성
  • function
    • c : μƒˆλ‘œμš΄ tar 파일 생성
    • t : tar 파일 λ‚΄μš© 좜λ ₯
    • x : tar νŒŒμΌμ—μ„œ 원본 파일 μΆ”μΆœ
    • r : μƒˆλ‘œμš΄ 파일 μΆ”κ°€
    • u : μˆ˜μ •λœ 파일 μ—…λ°μ΄νŠΈ
  • option
    • f : μ•„μΉ΄μ΄λΈŒ νŒŒμΌμ΄λ‚˜ ν…Œμ΄ν”„ μž₯치 지정
      • 파일λͺ… '-' 지정 μ‹œ tar 파일 λŒ€μ‹  ν‘œμ€€ μž…λ ₯μ—μ„œ μ½μ–΄λ“€μž„
    • v : μ²˜λ¦¬ν•˜κ³  μžˆλŠ” 파일의 정보 좜λ ₯
    • h : 심볼릭 링크의 원본 파일 포함
    • p : 파일 볡ꡬ μ‹œ μ›λž˜μ˜ μ ‘κ·Ό κΆŒν•œ μœ μ§€
    • j : bzip2둜 μ••μΆ•ν•˜κ±°λ‚˜ ν•΄μ œ
    • z : gzip으둜 μ••μΆ•ν•˜κ±°λ‚˜ ν•΄μ œ

(5) tar λͺ…λ ΉμœΌλ‘œ λ§Œλ“  u.tar 파일의 μ„ΈλΆ€ λ‚΄μš©μ„ λ³΄λŠ” λͺ…령은 무엇인가?

  • tar rvf u.tar
  • tar xvf u.tar
  • tar tvf u.tar
  • tar ivf u.tar

(Answer) : tar tvf u.tar

(6) ch04 λ””λ ‰ν„°λ¦¬μ˜ μ•„μΉ΄μ΄λΈŒ νŒŒμΌμ„ λ§Œλ“œλŠ” λͺ…령을 μž‘μ„±ν•˜μ‹œμ˜€.

(Answer) : tar cvf ch04.tar ch04

  • czvf : gzip μ••μΆ• μ‹œ μ‚¬μš©
  • cvjf : bzip2 μ••μΆ• μ‹œ μ‚¬μš©

(7) 6λ²ˆμ—μ„œ μƒμ„±ν•œ μ•„μΉ΄μ΄λΈŒλ₯Ό gzipκ³Ό bzip2둜 각각 μ••μΆ•ν•˜μ‹œμ˜€.

(Answer) : gzip ch04.tar / bzip2 ch04.tar

파일 μ••μΆ• - gzip

  • gzip [option] [file_name]
  • 파일 μ••μΆ•
  • option
    • -d : 파일 μ••μΆ• ν•΄μ œ
    • -l : μ••μΆ• 파일 정보 λ³΄μ—¬μ€Œ
    • -r : ν•˜μœ„ 디렉터리 탐색 μ••μΆ•
    • -t : μ••μΆ• 파일 검사
    • -v : μ••μΆ• 정보 ν™”λ©΄ 좜λ ₯
    • -9 : μ΅œλŒ€ν•œ μ••μΆ•

파일 μ••μΆ• - bzip2

  • bzip2 [option] [file_name]
  • 파일 μ••μΆ•
  • option
    • -d : 파일 μ••μΆ• ν•΄μ œ
    • -l : μ••μΆ• 파일 정보 λ³΄μ—¬μ€Œ
    • -t : μ••μΆ• 파일 검사
    • -v : μ••μΆ• 정보 ν™”λ©΄ 좜λ ₯
    • --best : μ΅œλŒ€ν•œ μ••μΆ•

(8) C μ†ŒμŠ€ 파일 hello.cλ₯Ό μ»΄νŒŒμΌν•˜μ—¬ μ‹€ν–‰ 파일 helloλ₯Ό μƒμ„±ν•˜λŠ” λͺ…령을 μž‘μ„±ν•˜μ‹œμ˜€.

(Answer) : gcc -o hello hello.c

(9) μ—¬λŸ¬ νŒŒμΌμ„ μ—°κ²°ν•˜μ—¬ μ‹€ν–‰ 파일 ν•˜λ‚˜λ₯Ό λ§Œλ“€μ–΄μ£ΌλŠ” λͺ…령은?

(Answer) : make

 

πŸ‘€ [10] μ‚¬μš©μž 관리

(1) μ‚¬μš©μž κ³„μ •μ˜ κ·Έλ£Ήκ³Ό κ΄€λ ¨λœ λͺ…λ Ή 쀑 uidλ‚˜ gidλ₯Ό μ€‘λ³΅ν•˜μ—¬ μ„€μ •ν•  수 있게 ν•˜λŠ” λͺ…령이 μ•„λ‹Œ 것은 무엇인가?

  • usermod
  • useradd
  • userdel
  • groupadd

(Answer) : userdel

  • usermod : UID 쀑볡 ν—ˆμš©
  • useradd : UID 쀑볡 ν—ˆμš©
  • groupadd : GID 쀑볡 ν—ˆμš©

(2) adduser λͺ…λ ΉμœΌλ‘œ han01 μ‚¬μš©μž 계정을 μƒμ„±ν•˜λ €κ³  ν•œλ‹€. uidλ₯Ό 1010으둜 μ§€μ •ν•˜λ €λ©΄ μ–΄λ–»κ²Œ ν•΄μ•Ό ν•˜λŠ”κ°€?

  • adduser 1010 han01
  • adduser -u 1010 han01
  • adduser -uid 1010 han01
  • adduser --uid 1010 han01

(Answer) : adduser --uid 1010 han01

  • --uid UID : UID 지정
  • --gid GID : κΈ°λ³Έ 그룹의 GID 지정
  • --home DIR : ν™ˆ 디렉터리 지정
  • --shell μ…Έ : κΈ°λ³Έ μ…Έ 지정
  • --gecos μ„€λͺ… : 뢀가적인 μ„€λͺ… 지정

(3) μ‚¬μš©μž 계정 han01의 둜그인 셸을 λ³Έμ…Έλ‘œ μ§€μ •ν•˜μ—¬ μƒμ„±ν•˜λŠ” λͺ…령은 무엇인가?

  • useradd -b sh han01
  • useradd -s sh han01
  • useradd -b /bin/sh han01
  • useradd -s /bin/sh han01

(Answer) : useradd -s /bin/sh han01

(4) μ‚¬μš©μž 계정과 κ΄€λ ¨λœ 파일 쀑 μ‚¬μš©μžμ˜ 정보가 μ €μž₯된 νŒŒμΌμ€?

(Answer) : /etc/passwd

(5) μ‚¬μš©μž 계정과 κ΄€λ ¨λœ 파일 쀑 μ‚¬μš©μžμ˜ μ•”ν˜Έκ°€ μ €μž₯된 νŒŒμΌμ€?

(Answer) : /etc/shadow

(6) /etc/login.defs 파일의 μš©λ„λ₯Ό μ„€λͺ…ν•˜μ‹œμ˜€.

(Answer) : μ‚¬μš©μž κ³„μ •μ˜ μ„€μ •κ³Ό κ΄€λ ¨λœ 기본값을 μ •μ˜ν•œ 파일

(7) 그룹의 GIDλŠ” μ–΄λŠ νŒŒμΌμ—μ„œ 확인할 수 μžˆλŠ”κ°€?

(Answer) : /etc/group

(8) μ‚¬μš©μžμ˜ κΈ°λ³Έ 그룹은 μ–΄λŠ νŒŒμΌμ—μ„œ 확인할 수 μžˆλŠ”κ°€?

(Answer) : /etc/shadow

(9) μ‚¬μš©μž 계정 hong01의 UIDλ₯Ό 4500으둜 λ³€κ²½ν•˜λŠ” λͺ…령은?

(Answer) : usermod -u 4500 hong01

(10) hong01 κ³„μ •μ˜ 둜그인 IDλ₯Ό hong11둜 λ°”κΎΈλŠ” λͺ…령은 무엇인가?

(Answer) : usermod -l hong11 hong01

(11) μ‚¬μš©μž 계정을 μ‚­μ œν•  λ•Œ -r μ˜΅μ…˜μ΄ μžˆλŠ” κ²½μš°μ™€ μ—†λŠ” 경우의 차이λ₯Ό μ„€λͺ…ν•˜μ‹œμ˜€.

(Answer) : -r μ˜΅μ…˜μ„ μ§€μ •ν•˜μ§€ μ•Šμ„ μ‹œ μ‚¬μš©μž κ³„μ •λ§Œ μ‚­μ œλ¨. -r μ˜΅μ…˜ 지정 μ‹œ μ‚¬μš©μž 계정과 ν™ˆ 디렉터리가 ν•¨κ»˜ μ‚­μ œλ¨

(12) /etc/skel λ””λ ‰ν„°λ¦¬μ˜ μš©λ„λ₯Ό μ„€λͺ…ν•˜μ‹œμ˜€.

(Answer) : /etc/skel 디렉터리에 .bash_profile 같은 μ΄ˆκΈ°ν™” νŒŒμΌμ„ μž‘μ„±ν•΄λ†“μœΌλ©΄ μ‚¬μš©μž 계정 생성 μ‹œ ν•΄λ‹Ή μ‚¬μš©μž ν™ˆ 디렉터리에 μžλ™μœΌλ‘œ 볡사됨

(13) /etc/passwd νŒŒμΌμ— λŒ€ν•œ 일반적인 μ„€λͺ…μœΌλ‘œ λ§žμ§€ μ•ŠλŠ” 것은?

user1:x:1000:1000: ... /home/user1:/bin/bash
  • μ‚¬μš©μž 계정은 user1이닀.
  • user1 κ³„μ •μ˜ νŒ¨μŠ€μ›Œλ“œλŠ” x둜 μ•”ν˜Έν™”λ˜μ–΄ /etc/password νŒŒμΌμ— μ €μž₯λ˜μ–΄ μžˆλ‹€.
  • user1 κ³„μ •μ˜ ν™ˆ λ””λ ‰ν„°λ¦¬λŠ” /home/user1 이닀.
  • 둜그인 μ‹œ μ œκ³΅λ˜λŠ” 셸은 /bin/bash 이닀.

(Answer) : user1 κ³„μ •μ˜ νŒ¨μŠ€μ›Œλ“œλŠ” x둜 μ•”ν˜Έν™”λ˜μ–΄ /etc/password νŒŒμΌμ— μ €μž₯λ˜μ–΄ μžˆλ‹€.

  • κ³„μ •μ˜ μ•”ν˜ΈλŠ” /etc/shadow νŒŒμΌμ— μ €μž₯됨

(14) adduser λͺ…λ Ήμ–΄λ₯Ό μ‚¬μš©ν•˜μ—¬ μƒˆλ‘œμš΄ μ‚¬μš©μžλ₯Ό μΆ”κ°€ν•  경우 μžλ™μ μœΌλ‘œ μΆ”κ°€λ˜λŠ” 파일이 μ•„λ‹Œ 것은?

  • /etc/passwd
  • /etc/shadow
  • /etc/group
  • /etc/user

(Answer) : /etc/user

(15) user1 계정을 μ‚­μ œν•  λ•Œ μ‚¬μš©μžμ˜ 파일과 디렉터리λ₯Ό ν•¨κ»˜ μ‚­μ œν•˜λ €κ³  ν•œλ‹€. μ•Œλ§žμ€ λͺ…λ Ήμ–΄λŠ”?

  • userdel user1
  • userdel -d user1
  • userdel -r user1
  • userdel -e user1

(Answer) : userdel -r user1

728x90
λ°˜μ‘ν˜•

'Development Study' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

[Lecture] DataBase - Day 2  (0) 2023.12.29
[Lecture] DataBase - Day 1  (1) 2023.12.29
[Lecture] DataBase - Finals Summary  (3) 2023.06.17
[Lecture] DataBase - Day 11  (0) 2023.06.12
[Lecture] Data Communication - Finals Summary  (0) 2023.06.11
Comments