우리는 많은 Linux 머신을 보유하고 있습니다. 우리는 시간 가치가 필요합니다. 원격 Linux 시스템의 시간을 배우는 방법을 모르십니까?
이 문제를 해결하는 명령이나 스크립트를 아는 사람이 있습니까?
답변1
어느 정도의 정확도로 충분합니까?
daytime
또는 서비스를 활성화 time
하고 시간을 텍스트로 가져오거나 1900년 초 이후의 초 수를 나타내는 4바이트로 가져올 수 있습니다.
perl
다음은 확인할 수 있는 간단한 예입니다.RFC 868 시간 서비스대상 서버에서 실행 중:
nc {target_server} time |
perl -e 'sysread(STDIN,$l,4) and print unpack("N",$l) - 2_208_988_800,"\n"'
1476267393
스크립트 perl
는 각각 4바이트를 읽습니다.RFC 868는 1900년 1월 1일 자정 이후의 초 수를 나타냅니다. 1970년 1월 1일 이후의 초 수로 변환합니다(연대) Linux/UNIX 시스템에서 처리할 수 있습니다. (Windows 응용프로그램에서는 1900을 기준으로 한 값을 선호할 수 있습니다.)
그런 다음 해당 숫자를 다음과 같이 읽을 수 있는 날짜로 다시 변환할 수 있습니다.
date --date @1476267393
Wed 12 Oct 11:16:33 BST 2016
또는 이미 제안한 대로 NTP를 사용할 수도 있습니다. NTP 설정에 대한 페이지가 셀 수 없이 많기 때문에 여기서는 반복하지 않겠습니다.