Linux는 로그인 시 네트워크에서 시간을 설정합니다.

Linux는 로그인 시 네트워크에서 시간을 설정합니다.

내 Ubuntu 10.04 상자에서 나(루트가 아닌 사용자)는 다음을 실행할 수 있습니다.

sudo net time set

그리고 그것은 훌륭하게 작동합니다.

나는 상자가 보다 정기적으로 또는 적어도 로그인될 때마다 순 시간을 얻는 것을 선호합니다. 그래서 나는 추가하려고 했습니다.순 시간 설정에게/etc/프로필. 그건 실패합니다. 다음과 같은 연을 추가했습니다.

user ALL=(ALL) NOPASSWD: /usr/bin/net

에게/etc/sudoers(사용비쥬도). 도움이 되지 않았습니다.

만져본 적도 없어크론그래서 chron 탭을 추가하는 방법을 모르겠습니다. (시스템 시간을 재설정하기 위해 시스템 시간에 의존하는 것은 모순적인 것처럼 보입니다.)

  1. 이를 수행하는 가장 좋은 방법은 무엇입니까?
  2. 크론 작업이라면 간단한 예를 들어주시면 감사하겠습니다.
  3. 동일한 질문이지만 명령에 대한 것입니다.서비스 dhcp3-서버 다시 시작?

(예, 내 상자는 dhcp로 주소를 얻지만 dhcp 서버는 고속 카메라에 연결된 4기가비트 enet 카드를 제어합니다. 때때로 로그인, 부팅 시 dhcp 서버에서는 카메라가 1개만 표시됩니다.)

미리 감사드립니다.

답변1

(예, 두 번째 답변을 추가하고 있습니다.)

설명에서 에 적절한 줄을 추가했지만 에서는 /etc/sudoers호출하지 않습니다 .sudo/etc/profile

의 명령은 다음 /etc/profile과 같아야 합니다.

sudo net time set

이는 모든 계정이 로그인할 때마다 실행된다는 점에 유의하십시오. 이것이 원하는 것입니까, 아니면 명령을 에 넣는 것이 더 합리적입니까 $HOME/.profile?

크론 작업으로 만들려면 다음과 같이 추가하면 됩니다.

0 * * * * *      sudo net time set

에, 말하자면, foo.txt, 그럼 crontab foo.txt. 그런 다음 crontab -l현재 크론 작업이 표시됩니다. 지정된 매개변수를 사용하면 작업이 한 시간에 한 번씩 실행됩니다. man 5 crontab그리고 필요에 따라 조정하세요. 거기~할 것 같다크론 작업은 최소한의 환경에서 실행되기 때문에 문제가 될 수 있지만 /usr/bin/net환경 변수에 의존하지는 않는다고 생각합니다.

와 달리 ntpd이로 인해 시스템 시계가 뒤로 이동하여 문제가 발생할 수 있습니다.

답변2

귀찮게 하지 마세요.

시스템 시계를 동기화하는 일반적인 방법은 입니다 ntpd. Ubuntu에서는 기본적으로 설치 및 구성되어야 합니다. 실행 중인 프로세스 가 있나요 ntpd? 시스템 시계가 정확하지 않습니까?

편집하다 :

내 다른 답변에 대한 귀하의 의견을 보면 사용할 수 있는 NTP 서버가 있는 것 같습니다.

ntp시스템에 소프트웨어가 이미 설치되어 있어야 합니다 . dpkg -l ntp확인하기 위해. 이미 실행 중인 데몬이 있을 수 있지만 ntpd어떤 서버와 통신해야 할지 모르기 때문에 작동하지 않습니다. ps -ef | grep ntpd그것을 확인하기 위해.

/etc/ntp.confntp에 대한 구성 파일입니다. 기본 버전은 다음과 같습니다.

server 0.ubuntu.pool.ntp.org
server 1.ubuntu.pool.ntp.org
server 2.ubuntu.pool.ntp.org
server 3.ubuntu.pool.ntp.org

해당 줄을 주석 처리하고 다음을 추가합니다.

server your.ntp.server

그런 다음 다음을 실행하십시오.

sudo /etc/init.d ntp restart

man ntpd자세한 내용은 이것으로 충분합니다.

관련 정보