امروزه زمان دقیق در سرورها از جمله سرور مجازی یا سرور اختصاصی از اهمیت ویژهای برخوردار است. تنظیم تاریخ و ساعت در سرور لینوکسی به طور دقیق، نه تنها به کارکرد درست برنامه ها و سرویس ها کمک میکند، بلکه برای همگام سازی با دیگر سیستم ها و پیشگیری از مشکلات امنیتی نیز ضروری است. تنظیم تاریخ و زمان در سرور لینوکسی با ابزارها و دستورات مختلفی انجام میشود، که استفاده صحیح از آن ها باعث بهبود عملکرد سرور میشود. در این مقاله به آموزش تنظیم تاریخ و ساعت در سرور لینوکسی میپردازیم. با ما همراه باشید.


دستورات موجود برای تنظیم تاریخ و زمان در لینوکس
- دستور dateدستور date یکی از ابزارهای اصلی برای نمایش و تنظیم تاریخ و ساعت در لینوکس است. با استفاده از این دستور میتوانید تاریخ و زمان جاری سیستم را مشاهده کنید یا آن را تغییر دهید.
- دستور timedatectlاین ابزار در سیستم های لینوکسی برای تنظیم تاریخ، زمان و منطقه زمانی به کار میرود. timedatectl از systemd پشتیبانی میکند و امکانات پیشرفتهای برای مدیریت زمان و همگام سازی با NTP (Network Time Protocol) ارائه میدهد.
- دستور ntpd این دستور یکی از سرویس هایی است که از پروتکل NTP برای همگام سازی زمان استفاده میکند. این سرویس به طور مداوم زمان سیستم را با سرورهای NTP همگام میکند.
- دستور ntpdateاین دستور یک ابزار است که برای همگام سازی دستی زمان سیستم با سرور NTP استفاده میشود. این ابزار زمانی مفید است که بخواهید به صورت یکباره زمان سیستم را با یک سرور NTP مشخص همگام کنید.
تنظیم تاریخ و ساعت در سرور لینوکسی
اگر قصد دارید تاریخ و زمان سرور لینوکسی خود را تنظیم کنید میتوانید از طریق ssh وارد سرور شوید و دستور تنظیم تاریخ و زمان را اجرا کنید. دستورات بسیار زیادی برای تنظیم تاریخ و ساعت سرور لینوکسی موجود میباشد که در ادامه به برخی از آن ها میپردازیم.
اگر سرور شما ایران باشد میتوانید با اجرا کردن دستورات زیر به ترتیب، تاریخ و زمان را تنظیم نمایید.
unlink /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Tehran /etc/localtime
ntpdate 0.asia.pool.ntp.org
این دستورات برای تنظیم منطقه زمانی و همگام سازی زمان با استفاده از NTP در لینوکس به شرح زیر عمل میکنند:
- دستور unlink /etc/localtime این دستور فایل etc/localtime را حذف میکند. این فایل معمولا به فایل منطقه زمانی سیستم اشاره میکند و در واقع برای تنظیم منطقه زمانی سیستم استفاده میشود. با حذف این فایل، منطقه زمانی فعلی سیستم از بین میرود.
- دستور ln -s /usr/share/zoneinfo/Asia/Tehran /etc/localtimeاین دستور یک لینک نمادین (symlink) به منطقه زمانی Asia/Tehran در دایرکتوری usr/share/zoneinfo/ ایجاد میکند و این لینک را به فایل etc/localtime هدایت میکند. به این ترتیب، منطقه زمانی سیستم به Asia/Tehran تغییر میکند. این فایل نشان دهنده منطقه زمانی فعال سیستم است، بنابراین با اجرای این دستور، زمان سیستم به منطقه زمانی تهران تنظیم میشود.
- دستور ntpdate 0.asia.pool.ntp.org این دستور زمان سیستم را با سرور NTP همگام میکند. ntpdate زمان سیستم را با استفاده از سرور مشخص شده (در اینجا asia.pool.ntp.org.0) به روز میکند. این سرور NTP برای تنظیم دقیق زمان به کار میرود و باعث میشود که زمان سرور با زمان دقیق جهانی همگام شود.
استفاده از دستور date برای تنظیم تاریخ و ساعت در سرور لینوکسی
به صورت کلی برای تنظیم تاریخ و تنظیم ساعت در سرور لینوکس دستورات زیر را در SSH سرور اجرا کنید.
تنظیم ساعت
date +%T -s "10:10:00"
تنظیم تاریخ
date +%Y%m%d -s "20250305"
تنظیم تاریخ و ساعت
date -s "5 MAR 2025 18:00:00"
پس از تنظیم تاریخ و ساعت میتوانید آن را با استفاده از دستور زیر بررسی کنید:
نمایش تاریخ و زمان
date
استفاده از دستور timedatectl برای تنظیم تاریخ و ساعت در سرور لینوکسی
در لینوکس برای تنظیم تاریخ و ساعت با استفاده از دستور timedatectl میتوان از دستورات زیر استفاده کرد. این ابزار بخشی از systemd است و امکان مدیریت پیشرفته زمان و تاریخ را فراهم میکند.
sudo timedatectl set-time "2025-03-05 14:30:00"
برای تغییر منطقه زمانی، میتوانید با استفاده از دستور زیر این کار را انجام دهید.
sudo timedatectl set-timezone Asia/Tehran
برای مشاهده مناطق زمانی میتوانید دستور زیر را اجرا کنید.
timedatectl list-timezones
بدون دیدگاه