Làm thế nào để giả mạo có pin CMOS cho RTC


4

Tôi có một máy tính nhúng chạy Ubuntu Server 14.04 không có pin CMOS (tạm thời, tôi hy vọng) vì vậy nó luôn khởi động đến ngày 31 tháng 12 năm 2008 ... Hiện tại tôi đang phát triển một ứng dụng phụ thuộc vào một số phần cứng được cài đặt. Tôi bắt đầu Gnome từ dòng lệnh để có GUI để phát triển.

Khi chạy ở chế độ sản xuất, nó sẽ không có kết nối internet (hoặc hiển thị, v.v.) nhưng sẽ có thiết bị NTS được tham chiếu GPS trên mạng LAN cục bộ.

Khi tôi khởi động máy sáng nay, kết nối internet bị ngắt nên các tập tin không còn đồng bộ. Có tiện ích phần mềm nào 'giả mạo' tiết kiệm thời gian để những đôi giày liên tiếp sẽ có thời gian hợp lý và tăng dần không?


Bạn có sẵn dung lượng lưu trữ nào trên máy tính nhúng này?
mùn cưa

Câu trả lời:


3

Nếu bạn có thể truy cập đầu ra GPS, mỗi bản cập nhật vị trí 1 giây chứa thời gian UTC hiện tại. Để giải mã thời gian, đây là một tài liệu chi tiết từng cú pháp câu gps.


Thiết bị (không phải trên mạng LAN tại thời điểm này) là Máy chủ Thời gian Mạng sử dụng GPS để theo dõi thời gian; nó không tạo ra NMEA.
Nate Lockwood

Nếu tôi hiểu vấn đề, tại thời điểm khởi động, bạn muốn có được thời gian hiện tại (hoặc "giả mạo" bằng cách xấp xỉ thời gian khởi động tiếp theo?). Nếu NTS có sẵn, tại sao không sử dụng nó để có thời gian trong quá trình khởi động ban đầu?
JDH

NTS không có sẵn từ thiết bị của tôi, máy tính còn mới và tôi chưa biết cách thiết lập nó.
Nate Lockwood

Ok, có lẽ chúng ta nên xóa đề cập đến NTS khỏi mô tả. Vì vậy, vấn đề là: thiết bị không có kết nối và bạn chỉ muốn tùy ý tăng thời gian ở mỗi lần khởi động? Làm thế nào về một tập lệnh đơn giản trong /etc/init.d viết giá trị "lần cuối" vào một tệp và ở lần khởi động tiếp theo, đặt thời gian cho giá trị đó cộng với x phút?
JDH

Điều này chỉ hoạt động nếu bạn liên hệ với gps sớm trong trình tự khởi động và tôi tưởng tượng rằng bạn không kết nối với gps sớm. fake-hwclock đã được đưa ra loại vấn đề này
dfc

1

Bạn muốn fake-hwclockgói. Mô tả từ trang gói Debian:

fake-hwclock: Lưu / khôi phục đồng hồ hệ thống trên các máy mà không hoạt động với phần cứng RTC

Một số máy không có bộ phận đồng hồ thời gian thực (RTC) hoạt động hoặc không có trình điều khiển cho phần cứng tồn tại. fake-hwclock là một tập lệnh đơn giản để lưu đồng hồ hiện tại của kernel (bao gồm cả lúc tắt máy) và khôi phục nó khi khởi động để đồng hồ hệ thống giữ ít nhất gần với thời gian thực. Điều này sẽ ngăn chặn một số vấn đề có thể do hệ thống tin rằng nó đã di chuyển theo thời gian từ năm 1970, chẳng hạn như cần thực hiện kiểm tra hệ thống tệp mỗi khi khởi động.

Trên hết, việc sử dụng NTP vẫn được khuyến nghị để xử lý đồng hồ giả "trôi" trong khi phần cứng bị tạm dừng hoặc khởi động lại.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.