강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

CMOS의 시간을 설정하는 hwclock 개론

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

CMOS 시간을 설정하는 hwclock 개론

 

 

 

 

리눅스에서 시스템의 시간에 관한 명령어는 hwclock date 2가지의 명령어가 있습니다.   

 

 

 

 이번 장에서 배우는 hwclock은 하드웨어의 시간(CMOS 또는 ROM-BIOS의 시간)을 관리(확인 및 설정)하는 명령어이며 date는 운영체제의 시간을 관리(확인 및 설정)하기 위한 명령어입니다.   

 

 

 

 date에 대해서는 이 책의 date명령어편을 참고하시고, 이번 장에서는 hwclock에 대해서 공부하도록 하겠습니다.   

 

 

 

 간략하게 정리하면 hwclockCMOS의 시각을 설정 및 확인할 수 있는 명령어입니다.   

 

 

 

 하지만, hwclock은 하드웨어의 시간을 가져와서 운영체제의 시간을  재설정할 수도 있으며, 반대로 운영체제 시간을 가져와서  하드웨어(CMOS)의 시간을 재설정할 수도 있습니다.   

 

 

 

 

 

참고로 date명령어는 단순히 시스템(리눅스 운영체제) , 운용체제의 시각을 설정하는 것이며 서버의 CMOS시각을 설정할 수는 없습니다.   

 

 

 

  

 

리눅스시스템(운영체제)이 부팅될 때에는 CMOS의 시각이 운영체제에 넘겨져서 부팅시 초기시각으로 설정됩니다.   

 

 

 

  따라서 부팅시마다 지속적으로 정확한 시각설정이 필요하다면 hwclock명령어로 CMOS의 시각을 정확하게 설정해 두어야 합니다.   

 

 

 

 

 

또한 이 명령어는 일반사용자들은 사용할 수 없으며 수퍼유저인 root만 사용 가능한 서버관리자명령어입니다.   

 

 

 

 

 

명령어위치 : /sbin/hwclock

 

사용형식

        hwclock [옵션]

       

  옵션
-r : 하드웨어의 현재시간을 출력한다.     (--show)

 

 

 

-w : 운영체제 시간을 참고하여 하드웨어시간을 재설정한다.     (--systohc)

 

 

 

-s : 하드웨어시간을 참고하여 운영체제시간을 재설정한다.     (--hctosys)

 

 

 

-a : 하드웨어시간을 참고하여 운영체제시간을 재설정하고 다시 하드웨어시간을 재설정한다.     (--adjust)

 

 

 

 

이번 장에서 가장 핵심이 되는 부분에 대해서 못을 박고 넘어가야 하겠습니다.   

 

 

 

 , CMOS의 시간과 운영체제의 시간에 대한 정확한 이해입니다.   

 

 

 

 

 

   

하드웨어시간

운영체제시간

 

   

메인보드에 있는 CMOS의 시간

ROM-BIOS에서 인식하고 있는 시간

리눅스시스템의 시간

리눅스 커널의 시간

   

하드웨어적인 의미의 시간

소프트웨어적인 의미의 시간

   

운영체제(리눅스)가 부팅시 마다 하드웨어의 시간을 가져와서 운영체제에 적용함. 따라서 운영체제의 시간이 하드웨어시간에 다소 종속됨.

변경방법

hwclock명령어로 하드웨어시간을 변경할 수 있음.

date명령어로 운영체제의 시간을 변경할 수 있음.

 

설명을 하려다 보니 위와 같은 표로 만들어 졌습니다.   

 

 

 

 구분을 좀 명확하게 하기 위해서 표로 만들어 보았을 뿐 위 두가지의 관계는 상호 보완적인 관계입니다.   

 

 

 

 

 

 

하드웨어의 시간을 확인하고자 할 때에는 hwclock명령어에 -r옵션을 사용합니다.   

 

 

 

  아래는 필자가 사용하고 있는 리눅스서버의 하드웨어 시간을 확인한 것입니다.   

 

 

 

 

 

, 현재 하드웨어의 시간은 20230502일 오후 144747초 입니다.   

 

 

 

 

 

[root@sulinux01 ~]# hwclock -r

2023-05-02 14:47:47.131067+09:00

[root@sulinux01 ~]#

 

그리고 다음과 같이 운영체제의 시간을 확인하고자 한다면 date명령어를 사용합니다.   

 

 

 

 위의 하드웨어시간과 운영체제의 시간에는 차이가 있다는 것을 확인하시기 바랍니다.   

 

 

 

 

 

[root@sulinux01 ~]# date

2023. 05. 02. () 14:48:25 KST

[root@sulinux01 ~]#

 

 

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,076 명
  • 현재 강좌수 :  36,001 개
  • 현재 접속자 :  565 명