كيف يمكنك ضبط ساعة الأجهزة برمجياً على نظام Linux؟

StackOverflow https://stackoverflow.com/questions/202116

سؤال

يوفر Linux استدعاء stime(2) لضبط وقت النظام.ومع ذلك، على الرغم من أن هذا سيؤدي إلى تحديث وقت النظام، إلا أنه لا يقوم بتعيين ساعة جهاز BIOS لتتوافق مع وقت النظام الجديد.

تقوم أنظمة Linux عادةً بمزامنة ساعة الأجهزة مع وقت النظام عند إيقاف التشغيل وعلى فترات زمنية دورية.ومع ذلك، إذا تم تدوير طاقة الجهاز قبل إحدى هذه المزامنات التلقائية، فسيكون الوقت غير صحيح عند إعادة تشغيل الجهاز.

كيف تتأكد من تحديث ساعة الأجهزة عند ضبط وقت النظام؟

هل كانت مفيدة؟

المحلول

تحقق من الرجل الصفحات RTC للحصول على التفاصيل، ولكن إذا قمت بتسجيل الدخول كما في الجذر، شيء من هذا القبيل:

    struct       rtc_time {
        int         tm_sec;      
        int         tm_min;      
        int         tm_hour;     
        int         tm_mday;     
        int         tm_mon;      
        int         tm_year;     
        int         tm_wday; /* unused */
        int         tm_yday; /* unused */
        int         tm_isdst;/* unused */
    };

struct rtc_time rt;
/* set your values here */
fd = open("/dev/rtc", O_RDONLY);
ioctl(fd, RTC_SET_TIME, &rt);
close(fd);

نصائح أخرى

وبعد استدعاء stime ()، القيام بذلك:

system("/sbin/hwclock --systohc");

وانظر hwclock (8) صفحة الرجل لمزيد من المعلومات.

وأود أن تبدأ من خلال قراءة شفرة المصدر من hwclock.

وأود أيضا أن أشير إلى الأجهزة على مدار الساعة دقيقة فقط إلى نقطة (لقد رأيت الأنظمة التي ستفقد / كسب بضع ثوان في اليوم).

هل يعتبر إنشاء الخفي وقت الشبكة لمزامنة ساعة الكمبيوتر مقابل خادم الوقت؟

وباعتراف الجميع هذه المزامنة لا يحدث حتى بعد أن يبدأ البرنامج الخفي وذلك تمشيا ساعة الجهاز الخاص بك في تزامن يساعد أيضا بين السلطة حتى وجهة نظر الخفي وقت يتزامن مقابل خادم الوقت.

إذا كان محرر النصوص مختلفًا عن kubuntu (kate هو المحرر الافتراضي في المحرر)، فاستخدم محررك الخاص مع sudo الأمر في المحطة.

  1. تشغيل المحطة
  2. انسخ هذا الأمر والصقهsudo kate /etc/default/rcS يضعط يدخل
  3. أدخل كلمة مرور المستخدم (كلمة مرور تسجيل الدخول الخاصة بك) اضغط يدخل
  4. سيتم فتح محرر النصوص على سطح المكتب
  5. تغيير الخط UTC=yes ل UTC=no
  6. وانقر فوق حفظ (أعلى شريط علامات تبويب محرر النصوص)
  7. اعادة التشغيل
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top