Tôi đang chạy Ubuntu trên một hệ thống nhúng dựa trên ARM thiếu RTC hỗ trợ pin. Thời gian thức dậy ở đâu đó trong năm 1970. Vì vậy, tôi sử dụng dịch vụ NTP để cập nhật thời gian đến thời điểm hiện tại.
Tôi đã thêm dòng sau vào /etc/rc.localtập tin:
sudo ntpdate -s time.nist.gov
Tuy nhiên, sau khi khởi động, vẫn mất vài phút cho đến khi thời gian được cập nhật, trong khoảng thời gian đó tôi không thể làm việc hiệu quả với tarvà make.
Làm thế nào tôi có thể buộc cập nhật đồng hồ tại bất kỳ thời điểm nào?
CẬP NHẬT 1: Phần sau (nhờ Eric và Stephan) hoạt động tốt từ dòng lệnh, nhưng không cập nhật đồng hồ khi đưa vào /etc/rc.local:
$ date ; sudo service ntp stop ; sudo ntpdate -s time.nist.gov ; sudo service ntp start ; date
Thu Jan 1 00:00:58 UTC 1970
* Stopping NTP server ntpd [ OK ]
* Starting NTP server [ OK ]
Thu Feb 14 18:52:21 UTC 2013
Tôi đang làm gì sai?
CẬP NHẬT 2: Tôi đã thử làm theo một vài gợi ý đáp ứng với bản cập nhật đầu tiên, nhưng dường như không có gì thực sự làm công việc theo yêu cầu. Đây là những gì tôi đã thử:
- Thay thế máy chủ thành
us.pool.ntp.org - Sử dụng đường dẫn rõ ràng đến các chương trình
- Hủy bỏ
ntpdịch vụ hoàn toàn và chỉ để lạisudo ntpdate ...trongrc.local - Loại bỏ các
sudolệnh trên trongrc.local
Sử dụng ở trên, máy vẫn bắt đầu từ năm 1970. Tuy nhiên, khi thực hiện việc này từ dòng lệnh một khi đã đăng nhập (thông qua ssh), đồng hồ sẽ được cập nhật ngay khi tôi gọi ntpdate.
Điều cuối cùng tôi đã làm là loại bỏ nó khỏi rc.localvà thực hiện một cuộc gọi đến ntpdatetrong .bashrctập tin của tôi . Điều này không cập nhật đồng hồ như mong đợi và tôi nhận được thời gian hiện tại thực sự một khi dấu nhắc lệnh có sẵn.
Tuy nhiên , điều này có nghĩa là nếu máy được bật và không có người dùng nào đăng nhập, thì thời gian không bao giờ được cập nhật. Tất nhiên, tôi có thể cài đặt lại ntpdịch vụ để ít nhất đồng hồ được cập nhật trong vòng vài phút kể từ khi khởi động, nhưng sau đó chúng tôi quay lại quảng trường 1.
Vì vậy, có một lý do tại sao đặt ntpdatelệnh vào rc.localkhông thực hiện các nhiệm vụ cần thiết, trong khi làm như vậy trong .bashrchoạt động tốt?
sudotrong các tập tin /etc/rc.locale .. tất cả đều được chạy dưới dạng root.
timedatectl, nhưng Askubfox.com/questions/832646/ cấp
ntpdate -s ntp.ubuntu.com[1]: Askubfox.com/a/81602/130162