اَبرِ دیجیتال، مرکز تخصصی ارائه سرویس های ابری، سرور مجازی/اختصاصی، هاست و دامنه

اَبرِ دیجیتال، مرکز تخصصی ارائه سرویس های ابری

دریافت مشاوره رایگان

دستور آپدیت سرور لینوکس و تشخیص نوع سیستم عامل سرور

 

 

مقدمه

 

ساعت دقیق سیستم و داشتن یک رویهٔ منظم برای به‌روزرسانی نرم‌افزارها از ارکان مدیریت سرورهای لینوکسی هستند. ساعت نادرست می‌تواند به مشکلات لاگ، گواهی‌های TLS، هماهنگی توزیع‌های توزیع‌شده و سرویس‌های زمان‌حساس منجر شود. همین‌طور نگهداری سیستم با آخرین وصله‌ها برای امنیت و پایداری حیاتی است. این مقاله نحوهٔ بررسی و اصلاح ساعت سیستم، همگام‌سازی آن با سرورهای زمان (NTP) و بررسی نسخهٔ فعلی سیستم‌عامل را در توزیع‌های رایج شرح می‌دهد.

 

کلیات: مفاهیم و ابزارهای مرتبط

 

NTP (Network Time Protocol): پروتکلی برای همگام‌سازی ساعت با سرورهای مرجع زمان.

chrony: پیاده‌سازی مدرن NTP مناسب برای سرور و کلاینت، سریع در همگام‌سازی.

ntpd (ntp package): پیاده‌سازی کلاسیک NTP.

systemd-timesyncd: سرویس سبک برای همگام‌سازی زمان که همراه systemd عرضه می‌شود.

timedatectl: ابزار systemd برای مشاهده و تنظیم زمان، تاریخ، منطقهٔ زمانی و وضعیت همگام‌سازی.

hwclock: برای خواندن/نوشتن ساعت سخت‌افزاری (RTC).

 

دستورات عمومی که در ادامه استفاده خواهند شد:

 

timedatectl status
date
hwclock --show
chronyc tracking یا chronyc sources (برای chrony)
ntpq -p یا ntpstat (برای ntpd)
timedatectl set-timezone Region/City
sudo apt update && sudo apt upgrade (Debian/Ubuntu)
sudo yum update یا sudo dnf upgrade (CentOS/RHEL/Fedora)
sudo pacman -Syu (Arch)
sudo zypper refresh && sudo zypper update (openSUSE)

 

 

 

مشاهدهٔ زمان فعلی و وضعیت همگام‌سازی (تمام توزیع‌ها)

 

نمایش زمان سیستم:

دستور:

date

 

 

خروجی: زمان و منطقهٔ زمانی فعلی (مثلاً “Sat Oct 18 12:34:56 UTC 2025”).

 

مشاهدهٔ وضعیت systemd و همگام‌سازی:

دستور:

timedatectl status

 

 

موارد مهم در خروجی:

Local time، Universal time

RTC time

Time zone

NTP enabled: yes/no

NTP synchronized: yes/no

اگر systemd نصب است، این نقطهٔ شروع است.

 

بررسی ساعت سخت‌افزاری (RTC / BIOS clock):

دستور:

sudo hwclock --show

 

 

توضیح: hwclock ساعت سخت‌افزاری را نمایش می‌دهد؛ در صورت اختلاف با زمان سیستم، می‌توان آن را با hwclock –systohc یا hwclock –hctosys تنظیم کرد.

 

پیکربندی و استفاده از systemd-timesyncd

 

مناسب برای سیستم‌هایی که فقط همگام‌سازی ساده می‌خواهند و systemd دارند (Ubuntu، Debian جدید، Fedora، CentOS 8+ با systemd).

فعال‌سازی و شروع:

sudo systemctl enable --now systemd-timesyncd

 

 

بررسی وضعیت:

timedatectl status

 

 

یا

sudo systemctl status systemd-timesyncd

 

 

برای استفاده از سرورهای NTP دلخواه، فایل /etc/systemd/timesyncd.conf را ویرایش کنید و سپس سرویس را ری‌استارت کنید:

sudo nano /etc/systemd/timesyncd.conf   
# اضافه یا اصلاح: 
NTP=pool.ntp.org 0.pool.ntp.org   
sudo systemctl restart systemd-timesyncd

 

 

 

chrony — توصیه‌شده برای سرورها و محیط‌های ابری

نصب:

Debian/Ubuntu:

sudo apt update     
sudo apt install -y chrony

 

 

CentOS/RHEL (7/8):

sudo yum install -y chrony

 

 

یا با dnf در نسخه‌های جدید:

sudo dnf install -y chrony

 

 

Fedora:

sudo dnf install -y chrony

 

 

Arch:

sudo pacman -Syu chrony

 

 

openSUSE:

sudo zypper install -y chrony

 

 

فعال‌سازی و شروع:

sudo systemctl enable --now chronyd

 

 

بررسی وضعیت و منابع:

chronyc tracking   
chronyc sources

 

 

فایل پیکربندی: /etc/chrony/chrony.conf — می‌توانید سرورهای pool یا NTP خاص اضافه کنید، نمونه:

pool 2.pool.ntp.org iburst   server 0.ir.pool.ntp.org iburst

 

 

همگام‌سازی فوری:

sudo chronyc makestep

 

 

 

ntpd (پیاده‌سازی کلاسیک NTP)

نصب:

Debian/Ubuntu:

sudo apt update     
sudo apt install -y ntp

 

 

CentOS/RHEL:

sudo yum install -y ntp     
sudo systemctl enable --now ntpd

 

 

بررسی وضعیت:

ntpq -p   ntpstat

 

 

پیکربندی در /etc/ntp.conf

 

بررسی و تغییر منطقهٔ زمانی

 

لیست مناطق زمانی:

timedatectl list-timezones | grep Tehran

 

 

تنظیم منطقه زمانی (مثال تهران):

sudo timedatectl set-timezone Asia/Tehran

 

 

تأیید:

timedatectl status   
date

 

 

 

همگام‌سازی ساعت سخت‌افزاری با زمان سیستم

 

نوشتن زمان سیستم به RTC:

sudo hwclock --systohc

 

 

بارگذاری زمان RTC به سیستم:

sudo hwclock --hctosys

 

 

 

بررسی نسخهٔ سیستم‌عامل و کرنل (تمام توزیع‌ها)

 

بررسی اطلاعات توزیع:

فایل‌های استاندارد:

cat /etc/os-release

 

 

یا

lsb_release -a

 

 

/etc/*release* و /etc/issue نیز مفیدند.

خروجی /etc/os-release نمونه:

NAME=”Ubuntu”     VERSION=”22.04 LTS (Jammy Jellyfish)”

 

دستورات خاص توزیع:

Debian/Ubuntu:

lsb_release -a     
cat /etc/lsb-release

 

 

CentOS/RHEL:

cat /etc/redhat-release    
cat /etc/centos-release

 

Fedora:

cat /etc/fedora-release

 

 

Arch:

cat /etc/arch-release

 

 

openSUSE:

cat /etc/os-release

 

 

بررسی کرنل:

uname -r   
uname -a

 

 

یا برای اطلاعات بیشتر:

hostnamectl

 

 

hostnamectl نشان می‌دهد: Operating System، Kernel، Architecture.

 

به‌روزرسانی سیستم در توزیع‌های مختلف (دستورات و نکات)

 

نکتهٔ کلی: قبل از به‌روزرسانی، پشتیبان‌گیری از فایل‌های حیاتی و چک کردن فضای دیسک را فراموش نکنید. در سرورها، بهتر است ابتدا در محیط آزمایشی تست کنید.

 

Debian / Ubuntu (APT)

به‌روزرسانی فهرست بسته‌ها و نصب به‌روزرسانی‌ها:

sudo apt update      
sudo apt upgrade -y

 

 

برای به‌روزرسانی کامل شامل تغییرات بسته‌ها (Dist-upgrade / full-upgrade):

sudo apt full-upgrade -y

 

 

پاک‌سازی بسته‌های اضافی:

sudo apt autoremove -y      
sudo apt autoclean

 

 

نسخه‌های LTS و نگهداری:

برای ارتقا به نسخهٔ جدید توزیع (مثلاً 20.04 -> 22.04):

sudo do-release-upgrade

 

 

 

CentOS / RHEL (YUM / DNF)

CentOS 7 (yum):

sudo yum update -y

 

 

CentOS 8 / RHEL 8+ (dnf ممکن است موجود باشد):

sudo dnf upgrade --refresh -y

 

 

نکته: برای توزیع‌های Enterprise، از ابزارهای مدیریت بسته سازمانی و مخازن داخلی استفاده کنید؛ قبل از به‌روزرسانی kernel ممکن است نیاز به ریبوت باشد:

sudo reboot

 

 

بررسی بسته‌های منقضی یا وابستگی:

sudo yum check

 

 

 

Fedora

sudo dnf upgrade --refresh -y    
sudo dnf autoremove -y

 

 

ارتقا بین نسخه‌های اصلی Fedora با dnf system-upgrade:

sudo dnf install dnf-plugin-system-upgrade      
sudo dnf system-upgrade download --releasever=XX      
sudo dnf system-upgrade reboot

 

 

 

Arch Linux (rolling release)

sudo pacman -Syu

 

 

همیشه قبل از ارتقا آرشیو pacman را بررسی کنید و PKGBUILD و اطلاعیه‌های انتشار را بخوانید.

 

openSUSE (zypper)

sudo zypper refresh    
sudo zypper update -y    
sudo zypper dup   # برای تغییر نسخه/آپگرید بین نسخه‌ها

 

 

 

توزیع‌های مبتنی بر Debian/Ubuntu (مثل Linux Mint، Pop!_OS)

معمولاً همان دستورات apt اعمال می‌شود.

 

نکات عملی و عیب‌یابی

 

اگر timedatectl نشان می‌دهد NTP enabled: no، می‌توانید آن را فعال کنید یا chrony/ntpd نصب نمایید.

اختلاف زیاد ساعت: اگر اختلاف ساعت بیش از چند دقیقه است، chrony makestep یا ntpd –m -g را استفاده کنید تا سریع اصلاح شود.

لاگ‌ها:

systemd-timesyncd: 
journalctl -u systemd-timesyncd 
chrony: 
journalctl -u chronyd
یا 
/var/log/chrony/* 
ntpd: 
journalctl -u ntpd
یا 
/var/log/syslog 
/var/log/messages

 

 

خطاهای SELinux یا فایروال ممکن است مانع همگام‌سازی شوند — بررسی کنید پورت NTP (UDP 123) باز باشد.

در ماشین‌های مجازی/ابری: برخی زیرساخت‌ها (مثل AWS) ممکن است ساعت را از hypervisor تزریق کنند؛ برای جلوگیری از درگیری، معمولاً از chrony با پیکربندی مناسب استفاده کنید.

 

نمونهٔ چک‌لیست عملی برای یک سرور جدید (پیشنهادی)

 

بررسی تاریخ/زمان:

date timedatectl status

 

 

تنظیم منطقه زمانی:

timedatectl set-timezone Asia/Tehran

 

 

نصب و فعال‌سازی chrony:

apt/dnf/yum/pacman install chrony 
systemctl enable --now chronyd chronyc tracking

 

 

نوشتن زمان به RTC:

sudo hwclock --systohc

 

 

به‌روزرسانی کامل سیستم:

دستور متناسب با توزیع (مثلاً apt full-upgrade -y)

 

ریبوت در صورت نیاز و بررسی کرنل:

reboot uname -r

 

 

 

خلاصهٔ سریع (چک‌فهرست)

 

مشاهده زمان:

date، timedatectl status

 

 

همگام‌سازی ساده:

systemd-timesyncd (systemctl enable --now systemd-timesyncd)

 

 

همگام‌سازی توصیه‌شده برای سرورها:

chrony (chronyc tracking)

 

 

ساعت سخت‌افزاری:

hwclock --show / --systohc

 

 

بررسی نسخهٔ توزیع:

cat /etc/os-release
lsb_release -a

 

 

بررسی کرنل:

uname -r

 

 

به‌روزرسانی بسته‌ها:

apt / yum / dnf / pacman / zypper مطابق توزیع

 

 

 

 

 

4.9/5 - (3093 امتیاز)

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *


11 + 14

قوانین

قوانین ارسال دیدگاه

لطفاً در ارسال دیدگاه از کلمات مناسب استفاده کنید. ارسال اسپم ممنوع است.