기본 콘텐츠로 건너뛰기

8. cp

안녕하세요, MJ 입니다. 리눅스 파일복사 명령어 cp 에 대해 알아보겠습니다. 리눅스 cp 명령어는 윈도우 copy 명령어와 같은 기능을 합니다. 파일이나, 디렉토리를 복사 할 때 사용됩니다. cp 명령어의 도움말을 확인 해 보겠습니다. 펼치기/접기 Usage: cp [OPTION]... [-T] SOURCE DEST   or:  cp [OPTION]... SOURCE... DIRECTORY   or:  cp [OPTION]... -t DIRECTORY SOURCE... Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY. Mandatory arguments to long options are mandatory for short options too.   -a, --archive                same as -dR --preserve=all       --attributes-only        don't copy the file data, just the attributes       --backup[=CONTROL]...

9. NTP

 

안녕하세요, MJ 입니다.

 

이번시간에는 시간 동기화를 설명을 합니다.

 

우리는 OS 설치 하고, 시간에 대해 체크를 해야 필요가 있습니다.

이것은 타임존과는 별도로 확인이 필요한 내용으로 시스템에서 사용 시계가

어느 나라인지를 확인하는 내용이 아니라,

 

현재의 시각과 시스템에서 확인되는 현재의 시각을 비교하는것을 말합니다.

 

핸드폰 시계를 보고, 시스템에서 확인되는 시각과의 차이를 확인하는 것인데

이때, 시간이 차이가 많이 나게 되면 시계를 맞추어 주어야 합니다.

 

  • 호스트컴퓨터(윈도우) VM간에도 시간이 35초가량 차이가 나는것이 확인됩니다.

 

이렇게 시간이 차이가 나면 일단 이렇게 수동으로 시간을 맞추어 볼 수 있습니다.



 

 

 

 

 

 

 

 

    - 설정할 시간을 입력하고 그 시간이 될때까지 기다렸다가 엔터를 침.

 

 

 

이렇게 시계를 맞추면 비슷한 시간을 맞출 수 있지만 정확하게 일치하는 시간을 만들 수는 없습니다.

 

 

 

그리고, 시간이 흐름에 따라 시각이 계속해서 정확한 시간을 유지할 수 없다는것을 경험에 의해 알고있습니다.

([시계A] 와 [시계B] 의 1초가 달라, 몇일 뒤, 몇주 뒤,,, 시간이 지난 뒤에 확인하였을 때에 몇초든 분이든 틀어짐을 경험해봄)


컴퓨터에는 시각을 계산하기위한 크리스탈이 존재하고, 우리가 알고있는 1초에 가까운 시간을

컴퓨터에서도 1초로 확인할 수 있도록 노력하지만, [시계A] 와 [시계B] 처럼 정확한 1초를 만들기란 불가능에 가깝습니다. 이것이 시간 동기화의 목적이 되겠습니다.


시간을 동기화 하기위해서는 시간동기화를 위한 프로토콜이 필요하게 되고(온전히 시간 동기화만을 목적으로 한 프로토콜) 그 프로토콜의 이름이 NTP 입니다 (Network Time Protocol)

 

 우리의 VM은 현재 시스템에 설정 된 시간이 올바른 시간인지 확인이 필요하고, 올바르지 않다면 올바른 시간으로의 보정이 필요하게 됩니다. 우리의 VM은 올바른 시계로부터 시간을 받아와 보정해야하기때문에 클라이언트가 되고, 올바른 시간을 유지하면서 시간을 알려주는 어딘가가 서버가 될 것입니다.

 

이렇게 NTP 설정을 하기위해서는 패키지가 필요한데 과거에는 ntpd 라는 서비스를 이용하여 시간을 동기화 하였지만, 최근에는 chronyd 라는서비스를 이용하여 시간을 동기화 합니다.


chronyd 서비스를 사용하기위해서는 시스템에 chrony 라는 패키지가 설치 되어야 합니다.


 

패키지를 설치하려고 확인했는데 이미 설치가 되어있습니다.


 

 

그렇다면 패키지 설치는 skip 하고, 설정을 확인하겠습니다.

 설정파일은 /etc/chrony.conf 이고, 내용 중에 주석이 많이있어,설정 된 내용만 빨간줄을 쳐 보았습니다.

 

 

 

 설정 방법

     1. pool 로 시작되는 설정을 주석처리 또는 삭제하고, 맨 아래에 한줄을 추가: server time.bora.net

 



 

     2. /etc/chrony.conf 설정을 다시 로드할 수 있도록 chronyd 서비스를 다시 구동


    3. NTP 서버의 IP 가 잘 등록되어 시간동기화를 하고 있는지 확인



- chronyc sources 명령어 결과에서

time.bora.net 주소가 확인됩니다. 이 주소는 /etc/chrony.conf 의 맨 아래줄에 추가 한 내용으로,

설정파일의 내용이 잘 로드 되었음을 확인할 수 있습니다.

 

- chronyc -n sources 명령어 결과에서는

time.bora.net 이름주소의 IP 로 확인이됩니다. Lookup 이 잘 되고 있고, 연동 해야 할 time.bora.net 의

IP 를 확인 할 수 있습니다.

 

 

설정파일도 잘 로드 하였고, Lookup 도 잘 되었지만 그렇지만 동기화가 안되고있습니다.

동기화가 잘 되고있다면 NTP 서버의 IP 또는 네임주소 왼쪽에 * 문자가 확인됩니다. (현재는 물음표 ?)
 

* 문자가 확인되고나면 현재의 시계가 올바른 시계로부터 시간을 보정받아 정확한 시간을 확인할 수 있게 됩니다.



NTP 동기화는 은행, 증권사 등 시간이 중요한 서비스를 제공하는 고객사에게는 굉장히 중요합니다.

이제는 더 이상 없을것이 예상되지만 윤초에 대비하여 패치를 진행했던적이 꽤 있었습니다.

 

시간 동기화와 관련하여 여러가지 옵션과, 용도에 대해서도 이야기 하고싶지만 내용이 너무 길어질것같아 줄입니다. 간략하게 NTP 설정과 확인방법에 대해 이야기 드려보았는데 필요성을 느끼실 수 있었다면


저는 목적을 달성한것같습니다.


 추가 문의사항은 댓글을 달아주시면 답변 드리도록 하겠습니다.

 

감사합니다.

 

 

 

댓글

가장 많이 본 글

2. 버추얼박스(2/2): VM생성

안녕하세요, MJ입니다.   VM 생성 후 , OS 설치를 해야 VM 을 사용 해 볼 수 있을텐데 ,   현재 서버용 OS 로 가장 많이 사용되는 Red Hat 리눅스로 하고싶지만 , 라이선스 문제로 커뮤니티 버전의 OS 중에 Red Hat 계열의 Rocky Linux 로 제가 마음대로 결정 해 보았습니다 . ( 버전은 현재 기준으로 최신 9.4 버전 )   현재는 OS 를 설치 하기위한 미디어가 없는줄로 압니다 . 설치 미디어를 다운로드 하는데에 시간이 걸리기때문에 , 설치미디어 다운로드를 먼저 걸어놓고 , VM 생성을 하겠습니다 .   1. Rocky Linux – 9.4 iso 이미지 다운로드 URL: https://rockylinux.org/download   ( " DVD ISO " 버튼을 클릭하면 다운로드가 시작됩니다 . )   2 . VM 생성 2-1) 기본정보입력 버추얼 박스 프로그램 실행 . 새로만들기 버튼 클릭 생성 할 VM 의 이름을 작성 iso 이미지를 다운로드 중이므로 아직 선택하지 않고 넘어갑니다 . OS 종류로 "Linux" 를 선택 OS 배포판으로 "RedHat 9.x (64bit)" 을 선택 ( Rocky Linux 가 래드햇계열인데 , 목록에 Rocky Linux 가 없어서 ) 다음 버튼 클릭   iso 이미지를 넣고 시작하게 되면 , 무인 설치 건너뛰기 옆 체크박스에 체그가 안 된 상태가 확인되는데 , 무인설치를 하지 않도록 체크를 해 주세요 . ( 설치 과정을 봐야하기때문에 무인설치가 안되면 좋겠습니다 .)   2-2) 스펙 : 메모리 용량 , CPU 개수 , BootMode("Legacy"/E...

1. 버추얼박스(1/2): 설치

안녕하세요, MJ입니다. 나의 환경에서 리눅스 머신을 별도로 구동시키고 , 테스트 해 보기위해 가상환경이 필요하게 됩니다 . 가상환경이라고 해서 거창한것처럼 보일 수 있지만 , 가상환경은 가상의 머신을 구동 시킬 수 있는 환경으로 버추얼 박스 , VMWare, Hyper-V, QEMU 정도가 알려진 가상환경 에뮬레이터 라고 볼 수 있겠습니다 .   이 중에서 완전 무료로 사용할 수 있는 것은 Hyper-V 와 QEMU 이지만 , VirtualBox 역시 ExtensionPack 을 설치하지 않는다면 상업용으로도 무료로 사용할 수 있습니다. (비 상업적인 용도로는 ExtensionPack을 설치해도 무료입니다) 조작 및 사용방법이 간단한 VirtualBox 를 이용해 가상 환경 구성을 위한 방법에 대해 소개 하겠습니다 .     1) 버추얼박스 다운로드 - 사이트 : https://virtualbox.org 사이트 접속 후 왼쪽 Downloads 클릭 Windows hosts 클릭 다운로드 된 프로그램을 실행 .   2) 버추얼박스 설치 실패 , 추가 프로그램 확인   버추얼박스 설치 시도 시 "microsoft visual c++ 2019 redistributable package being installed first" 이런 메시지가 확인되었고 , 버추얼박스 설치는 되지 않았습니다 . 구글에서 "microsoft visual c++ 2019 redistributable package being installed first" 이 메시지를 검색해서 첫번째로 확인되는 마이크로소프트 사이트 방문 . 버추얼박스 설치 실패 시 확인된 Redistributable 프로그램을 찾아가 내 OS 의 아키텍처와 일치...

6. OS 설치 후 확인(Rocky Linux - 9.4 )

안녕하세요 MJ 입니다 .   지난번 설치 했던 OS (Rocky Linux - 9.4) 의 부팅 된 화면 입니다 .   번 시간에는 OS 설치 시 설정 했던 내용들에 대해서 하나씩 잘 설정이 적용 되었는지 확인을 해 보도록 하겠습니다 .   [ 설치 시 설정 한 메뉴 ] root 계정 설정 일반유저 생성 타임존 패키지 꾸러미 선택 파티셔닝 네트워크     설정확인 (1/6): root 계정 설정 지정한 패스워드로 로그인을 시도 해 봅니다 . 로그인이 잘 됩니다 . ( 패스워드 설정 확인 )   설정확인 (2/6): 일반유저 생성 로그인 확인 일반유저도 로그인이 잘 됩니다 . ( 패스워드 설정 확인 )   관리자 권한 추가그룹으로 wheel 이 확인됩니다 . ( 관리자 권한 확인 ) : gid 에 표시된 그룹과 , groups 에 표시 된 그룹은 다른 것 입니다 . 계정은 소유자 아이디와 그룹 아이디를 필수로 가져야하고 , 다른 그룹을 가지는 것은 추가그룹 이라고 합니다 . uid 는 여러 개 가질 수 없지만 , 그룹은 여러 개를 가질 수 있습니다 .   Red Hat 계열의 리눅스 기준으로 , ~6 버전까지는 500 번이 일반 유저가 가지는   UID/GID 의 시작이고 , 7~ 버전부터는 1000 번이 시작되며,   기본 관리자 그룹으로 wheel 이 생성 및 설정 됩니다.     설정확인 (3/6): 타임존   설정 한 대로 , 한국시 (Asia/Seoul) 확인이 확인됩니다 .   설정확인 (4/6): 패키지 꾸러미 선택 선택 했던 ...