λͺ©μ°¨
- λ‘κ·Έ μκ°μ΄ 9μκ° μ΄κΈλλ€λ©΄?
- νμμ‘΄μ΄λ 무μμΈκ°?
- μλ² νμμ‘΄ νμΈ λ° λ³κ²½νκΈ°
- NTPλ 무μμΈκ°? – μλ² μκ°μ΄ νμ΄μ§λ μ΄μ
- μκ° λκΈ°ν μν νμΈ λ° μ€μ
- νμμ‘΄ λ¬Έμ λ‘ λ°μνλ μ€μ μ¬λ‘
- μ 리 λ° λ€μ λ¨κ³
1. λ‘κ·Έ μκ°μ΄ 9μκ° μ΄κΈλλ€λ©΄?
μλ² λ‘κ·Έλ₯Ό νμΈνλ€ λ³΄λ©΄ μ€μ λ°μ μκ°κ³Ό λ‘κ·Έμ κΈ°λ‘λ μκ°μ΄ 9μκ° μ°¨μ΄κ° λλ κ²½μ°κ° μμ΅λλ€. μ€μ 10μμ λ°μν μ€λ₯μΈλ° λ‘κ·Έμλ μλ²½ 1μλ‘ κΈ°λ‘λμ΄ μλ μμ λλ€.
μ΄ λ¬Έμ μ μμΈμ μλ²μ νμμ‘΄μ΄ νκ΅ μκ°(KST)μ΄ μλ UTCλ‘ μ€μ λμ΄ μκΈ° λλ¬Έμ λλ€. UTCμ KSTμ μ°¨μ΄κ° μ νν +9μκ°μ΄κΈ° λλ¬Έμ μ΄λ° νμμ΄ μκΉλλ€.
νμμ‘΄ μ€μ μ λ¨μν λ‘κ·Έ μκ° λ¬Έμ λΏ μλλΌ, λ°μ΄ν°λ² μ΄μ€μ μ μ₯λλ λ μ§·μκ° λ°μ΄ν°, cron μμ μ μ€ν μκ°, SSL μΈμ¦μ μ ν¨μ± κ²μ¬ λ± μ¬λ¬ κ³³μ μν₯μ λ―ΈμΉ©λλ€.
2. νμμ‘΄μ΄λ 무μμΈκ°?
**νμμ‘΄(Time Zone)**μ μ§μλ³ νμ€ μκ°λλ₯Ό λνλ λλ€. μ§κ΅¬λ κ²½λμ λ°λΌ μκ°μ΄ λ€λ₯΄κΈ° λλ¬Έμ, μ μΈκ³λ₯Ό μ¬λ¬ ꡬμμΌλ‘ λλμ΄ κ° κ΅¬μμ νμ€ μκ°μ μ§μ ν©λλ€.
**UTC(νμ μΈκ³μ)**λ κ΅μ νμ€ κΈ°μ€ μκ°μΌλ‘, μκ΅ κ·Έλ¦¬λμΉ μ²λ¬Έλλ₯Ό κΈ°μ€μΌλ‘ ν©λλ€. λλΆλΆμ ν΄λΌμ°λ μλ²λ κΈ°λ³Έμ μΌλ‘ UTC νμμ‘΄μΌλ‘ μ€μ λ©λλ€.
**KST(νκ΅ νμ€μ)**λ UTCλ³΄λ€ 9μκ° λΉ λ¦ λλ€. 리λ μ€μμλ Asia/Seoulλ‘ νκΈ°ν©λλ€.
3. μλ² νμμ‘΄ νμΈ λ° λ³κ²½νκΈ°
νμ¬ μλ²μ νμμ‘΄μ νμΈν©λλ€.
timedatectl
μΆλ ₯ κ²°κ³Όμμ Time zone νλͺ©μ νμΈν©λλ€. UTCλ‘ νμλλ€λ©΄ λ³κ²½μ΄ νμν©λλ€. μ¬μ© κ°λ₯ν νμμ‘΄ λͺ©λ‘ μ€ Asia κ΄λ ¨ νλͺ©μ κ²μνλ €λ©΄ μλ λͺ λ Ήμ΄λ₯Ό μ¬μ©ν©λλ€.
timedatectl list-timezones | grep Asia
νμμ‘΄μ μμΈλ‘ λ³κ²½ν©λλ€.
sudo timedatectl set-timezone Asia/Seoul
λ³κ²½ ν λ€μ timedatectlλ‘ νμΈνμ λ Time zone: Asia/Seoul (KST, +0900)μΌλ‘ νμλλ©΄ μ±κ³΅μ λλ€.
νμμ‘΄μ λ³κ²½ν νμλ Nginx, MySQL λ± μ£Όμ μλΉμ€λ₯Ό μ¬μμν΄μΌ λ³κ²½λ νμμ‘΄μ΄ ν΄λΉ μλΉμ€μλ μ μ©λ©λλ€.
sudo systemctl restart nginx
sudo systemctl restart mysql
4. NTPλ 무μμΈκ°? – μλ² μκ°μ΄ νμ΄μ§λ μ΄μ
νμμ‘΄μ μ¬λ°λ₯΄κ² μ€μ νλλΌλ, μλ²μ μμ€ν μκ° μμ²΄κ° μ€μ μκ°κ³Ό μ‘°κΈμ© μ°¨μ΄κ° λ μ μμ΅λλ€. μλ²μ νλμ¨μ΄ μκ³λ μκ°μ΄ μ§λλ©΄μ μ€μ°¨κ° λμ λκΈ° λλ¬Έμ λλ€.
μ΄λ₯Ό ν΄κ²°νκΈ° μν΄ **NTP(Network Time Protocol)**λ₯Ό μ¬μ©ν©λλ€. NTPλ μΈν°λ·μ μκ° μλ²μ μ£ΌκΈ°μ μΌλ‘ λκΈ°νν΄ μλ² μκ°μ μ ννκ² μ μ§νλ νλ‘ν μ½μ λλ€.
νλ Ubuntu μλ²λ systemd-timesyncdλΌλ λ΄μ₯ μκ° λκΈ°ν μλΉμ€κ° κΈ°λ³ΈμΌλ‘ νμ±νλμ΄ μμ΄ λλΆλΆμ κ²½μ° λ³λ μ€μ μμ΄ μλμΌλ‘ λκΈ°νλ©λλ€.
5. μκ° λκΈ°ν μν νμΈ λ° μ€μ
λκΈ°ν μνλ timedatectl λͺ λ Ήμ΄λ‘ νμΈν©λλ€. μΆλ ₯ κ²°κ³Όμμ NTP service: activeμ System clock synchronized: yesκ° νμλλ©΄ μ μμ μΌλ‘ λκΈ°ν μ€μ λλ€.
λκΈ°ν μλΉμ€ μνλ₯Ό λ³λλ‘ νμΈνλ €λ©΄ μλ λͺ λ Ήμ΄λ₯Ό μ¬μ©ν©λλ€.
sudo systemctl status systemd-timesyncd
λκΈ°νκ° μ λ λλ μλΉμ€λ₯Ό μ¬μμν©λλ€.
sudo systemctl restart systemd-timesyncd
κΈμ΅μ΄λ λ‘κ·Έ λΆμ λ± μκ° μ νλκ° μ€μν μλΉμ€λΌλ©΄ chronyλΌλ λ μ λ°ν NTP ν΄λΌμ΄μΈνΈλ₯Ό μ¬μ©ν©λλ€.
sudo apt install chrony -y
sudo systemctl enable chrony
sudo systemctl start chrony
μ€μΉ ν chronyc tracking λͺ λ ΉμΌλ‘ λκΈ°ν μνλ₯Ό νμΈν μ μμ΅λλ€.
6. νμμ‘΄ λ¬Έμ λ‘ λ°μνλ μ€μ μ¬λ‘
μ¬λ‘ 1. cron μμ μ΄ μλ±ν μκ°μ μ€νλ¨ "λ§€μΌ μ€μ 9μμ 리ν¬νΈ μ΄λ©μΌ λ°μ‘" cronμ μ€μ νλλ° UTC κΈ°μ€μΌλ‘ λμν΄ νκ΅ μκ° μ€ν 6μμ λ°μ‘λλ μν©μ λλ€. νμμ‘΄μ Asia/Seoulλ‘ λ³κ²½νλ©΄ ν΄κ²°λ©λλ€.
μ¬λ‘ 2. λ°μ΄ν°λ² μ΄μ€μ λ μ§ λ°μ΄ν°κ° νλ£¨μ© λ°λ¦Ό MySQLμ νμμ‘΄μ΄ UTCλ‘ μ€μ λ μνμμ μμ μ΄ν λ°μ΄ν°λ₯Ό μ μ₯νλ©΄ λ μ§κ° ν루 μμΌλ‘ κΈ°λ‘λλ κ²½μ°μ λλ€. MySQL μ€μ μμ default_time_zone = '+09:00'μ μΆκ°ν΄ ν΄κ²°ν©λλ€.
μ¬λ‘ 3. SSL μΈμ¦μ μ ν¨μ± μ€λ₯ μλ² μκ°μ΄ μ€μ μκ°κ³Ό ν¬κ² μ°¨μ΄ λλ©΄ SSL μΈμ¦μ μ ν¨μ± κ²μ¬κ° μ€ν¨ν μ μμ΅λλ€. NTP λκΈ°νλ‘ ν΄κ²°ν μ μμ΅λλ€.
7. μ 리 λ° λ€μ λ¨κ³
μ€λ λ°°μ΄ ν΅μ¬μ μ 리ν©λλ€.
- ν΄λΌμ°λ μλ²μ κΈ°λ³Έ νμμ‘΄μ UTCμ΄λ©°, κ΅λ΄ μλΉμ€λΌλ©΄ Asia/Seoulλ‘ λ³κ²½ν΄μΌ ν©λλ€.
- sudo timedatectl set-timezone Asia/Seoul λͺ λ Ή νλλ‘ νμμ‘΄μ λ³κ²½ν μ μμ΅λλ€.
- νμμ‘΄ λ³κ²½ νμλ κ΄λ ¨ μλΉμ€λ₯Ό μ¬μμν΄μΌ μ μ©λ©λλ€.
- NTPλ₯Ό ν΅ν μκ° λκΈ°νλ‘ μλ² μκ°μ΄ μ€μ μκ°κ³Ό μ°¨μ΄ λμ§ μλλ‘ μ μ§ν©λλ€.
- Ubuntu μλ²λ systemd-timesyncdκ° κΈ°λ³Έ νμ±νλμ΄ μμ΄ λ³λ μ€μ μμ΄ λκΈ°νλ©λλ€.
λ€μ κΈμμλ νκ²½λ³μλ 무μμΈμ§, μλ²μμ λΉλ°λ²νΈλ₯Ό μ½λμ λ£μΌλ©΄ μ λλ μ΄μ λ₯Ό μμλ³΄κ² μ΅λλ€.