چگونه ما می توانیم از طریق خط فرمان در لینوکس ساعت و تاریخ سرور را تنظیم کنیم؟ من به محیط گرافیکی Linux دسترسی ندارم و از طریق ssh به سرور لاگین کرده ام، چگونه میتوانم زمان و تاریخ را تنظیم کنم؟ در این مقاله ما قصد داریم نحوه تنظیم تاریخ، ساعت و منطقه زمانی یک سرور لینوکسی را با استفاده از دستورات date و timedatectl به شما آموزش دهیم.
این دستور در صورتیکه زمان و تاریخ سرور لینوکس شما اشتباه است، بسیار مفید میباشد. برای استفاده از دستور date باید از طریق کاربر root لاگین کنید.
نمایش زمان و تاریخ کنونی در لینوکس
برای نمایش زمان و تاریخ حال حاضر سیستم، فقط دستور date را تایپ کنید.
نمونه خروجی:
نمایش ساعت سخت افزار(RTC)
دستور hwclock را برای دیدن ساعت سخت افزاری و نمایش آن برروی صفحه تایپ کنید.
یا
و یا برای نمایش به فرمت UTC (مخفف Coordinated Universal Time) از دستور زیر استفاده کنید :
نمونه خروجی:
مثال هایی برای تنظیمات تاریخ در لینوکس
از الگوی زیر برای تنظیم کردن تاریخ جدید استفاده کنید :
به عنوان مثال، تاریخ جدید را به صورت 2 Oct 2020 18:00:00 تنظیم کنید. برای این کار از دستورات زیر استفاده کنید.
یا
شما همچنین میتوانید فرمت آنرا با استفاده از الگوی زیر تغییر دهید.
نمونه هایی از تنظیم ساعت در لینوکس
برای تنظیم کردن زمان سرور لینوکسی از الگوی زیر استفاده کنید.
عدد 10 برابر با ساعت، 13 دقیقه و 25 ثانیه می باشد.
از %P برای تنظیم کردن AM و یا PM (صبح و عصر) استفاده کنید.
تنظیم ساعت سخت افزاری به عنوان ساعت کنونی سیستم
برای این کار از الگوی زیر استفاده کنید.
یا
نحوه تنظیم تاریخ و ساعت سیستم به روش دیگر
برای تنظیم ساعت و تاریخ (به ترتیب سال، ماه و روز) از دستور date -s استفاده کنید.
با استفاده از کاربر root آنرا اجرا کنید. تنها یکی از سال/ماه/روز را تغییر دهید. همچنین ابزاری در محیط های گرافیکی نیز برای این کار وجود دارد ولی در محیط shell شما می توانید به صورت زیر استفاده کنید.
این دستور تاریخ را تغییر خواهد داد اما ساعت را به همان صورت نگه خواهد داشت.
برای تغییر قسمتی از تاریخ نیز همانند مثال زیر استفاده کنید:
فرمت های تاریخ و زمان دستور بالا به صورت زیر هستند :
همچنین شما می توانید از فرمت دیگری برای این کار استفاده کنید. به مثال های زیر دقت کنید.
تنظیم تنها سال سیستم :
تنظیم تنها ماه سیستم :
تنظیم تنها روز سیستم :
یک نکته در مورد سیستم مبتنی بر SystemD
در سیستم های بر پایه systemd باید از دستور timedatectl برای تنظیم یا مشاهده تاریخ و زمان فعلی استفاده کنید. (مثل ورژن های جدید لینوکس) بیشتر موارد جدید مانند RHEL / CentOS 7.x ،Fedora Linux ،Debian ،Ubuntu ،Arch Linux و سایر سیستم های بر پایه systemd نیاز به ابزار timedatectl دارند. لطفاً توجه داشته باشید که دستور فوق باید روی سیستم جدید نیز کار کند.
دستور timedatectl : نمایش تاریخ و زمان کنونی سیستم
برای نمایش تاریخ و ساعت کنونی سرور لینوکسی مان، از دستور زیر استفاده کنید :
نحوه تغییر تاریخ کنونی سیستم با استفاده از دستور timedatectl
برای تغییر تاریخ کنونی سیستم، یکی از دستورات زیر را با کاربر root اجرا کنید :
یا
برای مثال تاریخ کنونی سیستم را به 2020-08-27 (27st, Aug, 2020) تنظیم کنید.
نمونه خروجی :
برای تغییر همزمان ساعت و تاریخ سیستم، از ساختار زیر استفاده کنید :
HH : یعنی ساعت
MM : یعنی دقیقه
SS : یعنی ثانیه (تمام موارد بالا به صورت دو رقمی باید نوشته شود)
YYYY : یعنی سال (به صورت چهار رقمی میباشد)
MM : یعنی ماه (به صورت دو رقمی میباشد)
DD : یعنی روز (به صورت دو رقمی میباشد)
برای مثال، تاریخ 27rd Aug 2020 و زمان 8:10:40 am را وارد کنید.
نحوه تنظیم تنها ساعت سیستم در لینوکس
برای تنظیم فقط زمان سیستم در لینوکس، از ساختار زیر استفاده کنید :
نمونه خروجی :
نحوه تنظیم time zone با استفاده از دستور timedatectl
برای مشاهده لیست تمامی time zone های فعال (منطقه زمانی)، از دستورات زیر استفاده کنید :
برای تنظیم منطقه زمانی خود به Asia/Tehran دستور زیر را وارد کنید :
برای تایید تغییرات، دستور زیر را تایپ کنید :
نمونه خروجی :
همچنین توصیه میشود مطالعه کنید :
دستور timedatectl برای تغییر ساعت، تاریخ و منطقه زمانی سرور در Linux
نحوه تنظیم ساعت سیستم با استفاده از یک NTP سرور ریموت
برای تنظیم ساعت سیستم از طریق یک NTP Server از دستور زیر استفاده کنید :
برای تایید کردن تغییرات، دستور زیر را وارد کنید.
نمونه خروجی :
خلاصه :
کاربران لینوکسی برای نمایش یا تنظیم ساعت و تاریخ سرور لینوکس میتوانند از دستور date استفاده کنند. کاربرانی هم که از ورژن های جدید لینوکس و بر پایه systemd استفاده میکنند برای تنظیم ساعت و تاریخ سیستم میتوانند از دستور timedatectl استفاده کنند. امیدوارم از مطالعه این مقاله استفاده کافی را برده باشید. فراموش نکنید نظرات و پیشنهادات خود را با ما در میان بگذارید.
این دستور در صورتیکه زمان و تاریخ سرور لینوکس شما اشتباه است، بسیار مفید میباشد. برای استفاده از دستور date باید از طریق کاربر root لاگین کنید.
نمایش زمان و تاریخ کنونی در لینوکس
برای نمایش زمان و تاریخ حال حاضر سیستم، فقط دستور date را تایپ کنید.
کد PHP:
$ date
نمونه خروجی:
کد PHP:
Thu 27 Aug 2020 10:27:38 AM +0430
نمایش ساعت سخت افزار(RTC)
دستور hwclock را برای دیدن ساعت سخت افزاری و نمایش آن برروی صفحه تایپ کنید.
کد PHP:
# hwclock –r
کد PHP:
# hwclock --show
و یا برای نمایش به فرمت UTC (مخفف Coordinated Universal Time) از دستور زیر استفاده کنید :
کد PHP:
# hwclock --show --utc
نمونه خروجی:
کد PHP:
2020-08-27 10:31:07.353985+04:30
مثال هایی برای تنظیمات تاریخ در لینوکس
از الگوی زیر برای تنظیم کردن تاریخ جدید استفاده کنید :
کد PHP:
date --set="STRING"
کد PHP:
# date -s "2 OCT 2020 18:00:00"
کد PHP:
# date --set="2 OCT 2020 18:00:00"
شما همچنین میتوانید فرمت آنرا با استفاده از الگوی زیر تغییر دهید.
کد PHP:
# date +%Y%m%d -s "20201128"
نمونه هایی از تنظیم ساعت در لینوکس
برای تنظیم کردن زمان سرور لینوکسی از الگوی زیر استفاده کنید.
کد PHP:
# date +%T -s "10:13:25"
از %P برای تنظیم کردن AM و یا PM (صبح و عصر) استفاده کنید.
کد PHP:
# date +%T%p -s "6:10:30AM"
# date +%T%p -s "12:10:30PM"
تنظیم ساعت سخت افزاری به عنوان ساعت کنونی سیستم
برای این کار از الگوی زیر استفاده کنید.
کد PHP:
# hwclock --systohc
کد PHP:
# hwclock -w
نحوه تنظیم تاریخ و ساعت سیستم به روش دیگر
برای تنظیم ساعت و تاریخ (به ترتیب سال، ماه و روز) از دستور date -s استفاده کنید.
کد PHP:
# date -s '2014-12-25 12:34:56'
کد PHP:
# date -s "2014-12-25 $(date +%H:%M:%S)"
این دستور تاریخ را تغییر خواهد داد اما ساعت را به همان صورت نگه خواهد داشت.
برای تغییر قسمتی از تاریخ نیز همانند مثال زیر استفاده کنید:
کد PHP:
# date -s "$(date +'%Y12%d %H:%M')"
Mon Dec 22 10:55:03 GMT 2014
- %Y : سال
- %m : ماه
- %d : روز
- %H : ساعت
- %M : دقیقه
- %S : ثانیه
همچنین شما می توانید از فرمت دیگری برای این کار استفاده کنید. به مثال های زیر دقت کنید.
تنظیم تنها سال سیستم :
کد PHP:
date -s 'next year'
date -s 'last year'
تنظیم تنها ماه سیستم :
کد PHP:
date -s 'last month'
date -s 'next month'
تنظیم تنها روز سیستم :
کد PHP:
date -s 'next day'
date -s 'tomorrow'
date -s 'last day'
date -s 'yesterday'
date -s 'friday'
یک نکته در مورد سیستم مبتنی بر SystemD
در سیستم های بر پایه systemd باید از دستور timedatectl برای تنظیم یا مشاهده تاریخ و زمان فعلی استفاده کنید. (مثل ورژن های جدید لینوکس) بیشتر موارد جدید مانند RHEL / CentOS 7.x ،Fedora Linux ،Debian ،Ubuntu ،Arch Linux و سایر سیستم های بر پایه systemd نیاز به ابزار timedatectl دارند. لطفاً توجه داشته باشید که دستور فوق باید روی سیستم جدید نیز کار کند.
دستور timedatectl : نمایش تاریخ و زمان کنونی سیستم
برای نمایش تاریخ و ساعت کنونی سرور لینوکسی مان، از دستور زیر استفاده کنید :
کد PHP:
$ timedatectl
نحوه تغییر تاریخ کنونی سیستم با استفاده از دستور timedatectl
برای تغییر تاریخ کنونی سیستم، یکی از دستورات زیر را با کاربر root اجرا کنید :
کد PHP:
# timedatectl set-time YYYY-MM-DD
کد PHP:
$ sudo timedatectl set-time YYYY-MM-DD
کد PHP:
# timedatectl set-time '2020-08-27'
# timedatectl
نمونه خروجی :
کد PHP:
# timedatectl
Local time: Thu 2020-08-27 10:52:54 +0430
Universal time: Thu 2020-08-27 06:22:54 UTC
RTC time: Thu 2020-08-27 06:22:54
Time zone: Asia/Tehran (+0430, +0430)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
برای تغییر همزمان ساعت و تاریخ سیستم، از ساختار زیر استفاده کنید :
کد PHP:
# timedatectl set-time YYYY-MM-DD HH:MM:SS
MM : یعنی دقیقه
SS : یعنی ثانیه (تمام موارد بالا به صورت دو رقمی باید نوشته شود)
YYYY : یعنی سال (به صورت چهار رقمی میباشد)
MM : یعنی ماه (به صورت دو رقمی میباشد)
DD : یعنی روز (به صورت دو رقمی میباشد)
برای مثال، تاریخ 27rd Aug 2020 و زمان 8:10:40 am را وارد کنید.
کد PHP:
# timedatectl set-time '2020-08-27 08:10:40'
# date
نحوه تنظیم تنها ساعت سیستم در لینوکس
برای تنظیم فقط زمان سیستم در لینوکس، از ساختار زیر استفاده کنید :
کد PHP:
# timedatectl set-time HH:MM:SS
# timedatectl set-time '10:42:43'
# date
نمونه خروجی :
کد PHP:
Thu Aug 27 08:10:41 EST 2020
نحوه تنظیم time zone با استفاده از دستور timedatectl
برای مشاهده لیست تمامی time zone های فعال (منطقه زمانی)، از دستورات زیر استفاده کنید :
کد PHP:
$ timedatectl list-timezones
$ timedatectl list-timezones | more
$ timedatectl list-timezones | grep -i asia
$ timedatectl list-timezones | grep America/New
کد PHP:
# timedatectl set-timezone 'Asia/Tehran'
کد PHP:
# timedatectl
نمونه خروجی :
کد PHP:
# timedatectl
Local time: Thu 2020-08-27 10:52:54 +0430
Universal time: Thu 2020-08-27 06:22:54 UTC
RTC time: Thu 2020-08-27 06:22:54
Time zone: Asia/Tehran (+0430, +0430)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
همچنین توصیه میشود مطالعه کنید :
دستور timedatectl برای تغییر ساعت، تاریخ و منطقه زمانی سرور در Linux
نحوه تنظیم ساعت سیستم با استفاده از یک NTP سرور ریموت
برای تنظیم ساعت سیستم از طریق یک NTP Server از دستور زیر استفاده کنید :
کد PHP:
# timedatectl set-ntp yes
کد PHP:
$ timedatectl
نمونه خروجی :
کد PHP:
Local time: Mon 2020-08-27 08:18:49 IST
Universal time: Mon 2020-08-27 02:48:49 UTC
RTC time: Mon 2020-11-23 02:48:50
Time zone: Asia/Tehran (IST, +0530)
NTP enabled: yes
NTP synchronized: yes
RTC in local TZ: no
DST active: n/a
خلاصه :
کاربران لینوکسی برای نمایش یا تنظیم ساعت و تاریخ سرور لینوکس میتوانند از دستور date استفاده کنند. کاربرانی هم که از ورژن های جدید لینوکس و بر پایه systemd استفاده میکنند برای تنظیم ساعت و تاریخ سیستم میتوانند از دستور timedatectl استفاده کنند. امیدوارم از مطالعه این مقاله استفاده کافی را برده باشید. فراموش نکنید نظرات و پیشنهادات خود را با ما در میان بگذارید.