نگهداشت سیستم

از ArchWiki پارسی
پرش به: ناوبری، جستجو

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

بررسی خطاها

سرویس های شکست خورده مربوط به systemd

با کمک دستور زیر چک کنید ببینید آیا سرویس های systemd در وضعیت failed شده هستند یا خیر:

$ systemctl --failed

جهت اطلاعات بیشتر Systemd#Analyzing the system state را ببینید.

لاگ فایل ها(Logfiles)

به دنبال خطاها در مسیر ‎/var/log‎ بگردید.هم چنین می توانید ارور های با اولیت بالا را در systemd journal ببیند:

# journalctl -p 0..3 -xn

Systemd#Journal را برای اطلاعات بیشتر ببینید.

پشتیبان گیری

عملیات بک آپ بوسیله systemd/Timers قابل خودکاری سازی است.

فایل های تنظیمات

Tango-two-arrows.pngThis article or section is a candidate for merging with #Important data.Tango-two-arrows.png

Notes: please use the second argument of the template to provide more detailed indications. (Discuss in بحث:نگهداشت سیستم#)

قبل از ویرایش هر نوع فایل تنظیماتی،یک نسخه پشتیبان از آن تهیه کنید.با این کار،در مواقعی که به مشکل برمیخورید می توانید به نسخه سالم قبلی بازگردید.ادیتورهایی هم چون vim وemacs این کار را به صورت اتوماتیک برایتان انجام می دهند.ابزارهایی هم چون etckeeper نیز مسیر ‎/etc‎ را در یک سیستم کنترل نسخه نگهداری می کند.(VCS)

داده های مهم

از اطلاعاتتان در بازه های زمانی منظم بک آپ بگیرید.دایرکتوری های مهم شامل:‎/etc‎, ‎/home‎ و‎/var‎ هستند.و نسخه های سرور بایستی از دایرکتوری ‎/srv‎ نیز پشتیبان گیری کنند. Backup programs را برای مشاهده لیست برنامه های جایگزینی که عملیات بک آپ گیری را به نحو بهتری برایتان انجام می دهند،ببینید.Category:System recovery را برای مطالعه مقاله های دیگر ببینید.

لیستی از بسته های نصب شده

لیست بسته های نصب شده تان را نگهداری کنید.طوری که اگر زمانی ناچار به نصب مجدد بسته ها شدید،ساخت مجدد سیستم تان برایتان ساده باشد. جهت مشاهده اطلاعات جزیی تر Pacman tips#Backing up and retrieving a list of installed packages را ببینید.

پایگاه داده پکمن

ببینید:Pacman tips#Back-up the pacman database.

آپگرید کردن سیستم

به شدت توصیه می شود که در بازه های زمانی منظم،سیستم خود را به روز کنید.تا هم از آخرین باگ فیکس ها بهره مند گردید و هم وصله های امنیتی را دریافت کنید.و هم از به روز رسانی حجم انبوهی از بسته ها به صورت آنی رهایی می یابید.برای کسب اطلاعات بیشتر،Pacman#Upgrading packages را ببینید. از داشتن مدیای نصب آرچ یا هر توزیع زنده گنو/لینوکسی دیگر مطمین گردید.در صورتی که پس از آپدیت کردن به مشکلی برخوردید به راحتی می توانید سیستم تان را نجات دهید! اگر در حال استفاده ازآرچ در یک محیط عملیاتی هستید،یا نمی توانید آنرا به هر دلیلی از کار بیندازید،تغییرات و هم چنین آپدیت بسته های نرم افزاری مد نظرتان را بر روی فایل های پیکره بندی تست کنید.(ترجیحا بر روی یک سیستم المثنی غیر بحرانی.)در صورتیکه مشکلی یافت نشد،می توانید تغییرات را در کل سیستم اعمال کنید.

در صورتی که سیستم تان از بسته های غیر رسمی موجود در مخازن AUR بهره میگیرد،عمل آپگرید سیستم را با دقت و احتیاط انجام دهید.

اجتناب از برخی دستورهای پکمن

از آپگرید های جزیی به شدت پرهیز کنید. مثلا هیج گاه از دستور ‎pacman -Sy‎ برای آپگرید سیستم تان استفاده نکنید.به جای آن از دستور ‎pacman -Syu‎ بهره بگیرید.

از سوییچ ‎--force‎ به همراه دستور پکمن پرهیز کنید.به خصوص در دستوری هم چون:{Ic|pacman -Syu --force}} که شامل به روزرسانی و سروکار با بسته های مختلف می باشد.سوییچ ‎--force‎ ناسازگاری بین فایل ها را نادیده می گیرد و حتی سبب از بین رفتن فایل ها حین جابجایی بین بسته های مختلف میگردد.در سیستمی که به درستی نگهداری می شود،این سوییچ تنها زمانی مورد استفاده قرار میگرد که صراحتا توسط توسعه دهندگان آرچ توصیه گردد.(اینجا را ببینید:#Read before upgrading the system)

از استفاده همزمان سوییچ ‎-d‎ با دستور پکمن خودداری کنید.دستور ‎pacman -Rdd package‎ هنگام حذف بسته ها،عمل چک کردن وابستگی ها را انجام نمیدهد.در نتیجه،بسته ای که ارایه دهنده وابستگی بسیار حیاتی برای سیستم است در حین این دستور حذف می گردد! نتیجه کار:یک سیستم معیوب (و البته مستعد خطا)است.


آپگریدهای جزیی پشتیبانی نمی شوند

آرچ لینوکس توزیعی rolling release است.این بدین معنی ست که زمانی که نسخه های جدیدی از یک library در مخازن قرار داده می شود،توسعه دهندگان و کاربران معتمد،تمامی بسته های موجود در مخازن که نیاز به ساخت مجدد دارند را از نو می سازند.به عنوان مثال:اگر دو بسته به کتابخانه ای مشترک وابسته باشند،آپگرید کردن تنها یک بسته ممکن است منجر به آپگرید کتابخانه نیز گردد.(به عنوان وابستگی اش) که این کار باعث معیوب شدن بسته های دیگری که به نسخه قدیمی کتابخانه وابسته بوده اند می گردد.

توضیحات بالا،دلایل محکمی هستند که چرا آپگرید های جزیی پشتیبانی نمی گردند.از دستور ‎pacman -Sy package‎ یا هر معادلی هم چون:‎pacman -Sy‎ که بدنبال ‎pacman -S package‎ می آید،استفاده نکنید.همواره قبل از نصب یک بسته،سیستم تان را آپگرید کنید.(با دستور:‎pacman -Syu‎).به دلایل مشابه، هنگام استفاده از دستورات ‎IgnorePkg‎ and ‎IgnoreGroup‎ به شدت جانب احتیاط را رعایت کنید.اگر سیستم،بسته های نصب شده محلی دارد(هم چون بسته های AUR)،هنگامی که وابستگی های بسته ها دچار تغییرات soname می گردد،کاربران نیاز به ساخت مجدد آنها پیدا خواهند کرد.

اگر سناریوی آپگرید جزیی را بر روی سیستم تان پیاده سازی کرده اید و قایل های باینری بعلت ناتوانی در تشخیص کتابخانه های مدنظرشان دچار مشکل شده اند،سیستم را با عمل symlinking به تنهایی نبایستی "تعمیر" کرد.کتابخانه ها،تغییرات ناگهانی را تجربه میکنند،پس سازگار با نسخه های پیشیننخواهند بود.دستور ساده ‎pacman -Syu‎ که آینه ها را به درستی سینک می کند مشکل تان را حل خواهد کرد به شرطی که خود دستور پکمن هنوز برایتان کار کند! :)

اسکریپت checkupdates که در بسته پکمن وجود دارد،راه امنی را چهت چک کردن به روز رسانی های بسته ها در اختیار میگذارد، بدون اینکه سیستم در همان لحظه آپدیت شود.ببینید:https://bbs.archlinux.org/viewtopic.php?pid=1563725#p1563725 BBS##1563725]


قبل از آپگرید سیستم،مطالعه کنید

قبل از هر آپگرید همیشه سعی کنید آخرین خبرها را از اینجا بخوانید:Arch News این کار به شما کمک میکند از آخرین تغییرات بزرگ نرم افزاری و تغییرات پیکره بندی شان به همراه آخرین بسته ها، مطلع گردید.قبل از آپگرید نرم افزارهای بنیادین سیستم(هم چون:kernel, xorg, systemd, یا glibc) به نسخه ای جدیدتر،نیم نگاهی نیز به forum داشته باشید تا در صورتی که مشکلی گزارش گردد در جریان تغییرات و اخبار قرار داشته باشید.

Act on alerts during an upgrade

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

Deal promptly with new configuration files

زمانی که پکمن فراخوانی می شود،فایل های ‎.pacnew‎, ‎.pacsave‎, و ‎.pacorig‎ ساخته می شوند.حین این اتفاق،پکمن هشدارهایی رو به شما می دهد.و کاربران بایستی بی درنگ با این فایل ها برخورد کنند.کاربران جهت کسب اطلاعات بیشتر به صفحه ویکی Pacnew and Pacsave files ارجاع داده می شوند.

هم چنین به فایل های تنظیمات دیگری که ممکن است کپی یا ساخت باشید فکر کنید.اگر بسته ای تنظیماتی داشته باشد کهه آنرا به دایرکتوری خانگی خودتان کپی کرده اید،چک کنید که آیا نسخه جدیدتری هم از آن فایل وجود دارد.


ارجاع آپدیت های معیوب

اگر آپدیت کردن بسته ای به ایجاد کردن مشکل برای سیستم تان معروف شده باشد، پکیج سازها بایستی مطمین گردند که پکمن پیغام مناسبی را هنگام آپدیت بسته فراهم می کند.اگر پس از آپدیت به مشکل خوردید،خروجی پکمنی که در مسیر ‎/var/log/pacman.log‎ هست را دوباره چک کنید.

اگر در این مرحله مطمین شدید که اطلاعاتی از طریق پکمن ارایه نمی گردد،اخباری در https://www.archlinux.org/ موجود نیست،و پست های مرتبطی در فوروم وجود ندارد،به دنبال کمک از طریق کانال های IRC باشید.کار دیگری که میتوانید انجام دهید،دان گرید کردن بسته های متخلف می باشد.


Use the package manager to install software

ٰ Pacman عمل پیگیری و مراقبت از فایل ها را بهتر از شما انجام می دهد.اگر چیزی را دستی نصب کرده باشید،دیر یا زود فراموش میکنید که: چه کاری کرده اید،کجای سیستم،اپلیکیشن نصب کرده اید،نرم افزارهای مشکل دار و متداخل کجا نصب شده اند و دایرکتوری های اشتباه در چه مسیرهایی قرار دارند.به جای این کار یاد بگیرید که: یک بسته بسازید.

برای پاک کردن فایل های نصب شده نادرست،ببینید:Pacman/Tips and tricks#Identify files not owned by any package.

درایورهای متن-باز انتخاب کنید

همیشه درایورهای متن باز را تجربه کنید،قبل از اینکه به درایورهای انحصاری متوسل گردید.غالبا،درایورهای متن باز، پایداری و قابلیت اطمینان بالاتری را نسبت به درایورهای اختصاصی ارایه می دهند.باگ های مربوط به درایورهای متن-باز آسان تر و سریع تر ترمیم می گردند.در حالی که درایورهای اختصاصی قابلیت های بیشتری را عرضه میکنند.برای اجتناب از این دوراهی،سعی کنید سخت افزارهایی را انتخاب کنید که هم از نعمت درایورهای متن باز به بلوغ رسیده و پخته برخوردارند و هم قابلیت های متنوعی را عرضه میکنند.جهت کسب اطلاعات درباره سخت افزارها با درایورهای متن باز ببینید:linux-drivers.org

Be careful with unofficial packages

جانب احتیاط را هنگام استفاده از بسته های موجود در AUR یا unofficial user repository رعایت کنید.اغلب بسته ها،توسط تامین کنندگان معمولی عرضه میگردد،که لزوما استانداردهای مشابهی که در بسته بندی بسته های مخازن رسمی وجود دارند را رعایت نمی کنند.مراقب AUR helpers هایی که روند نصب بسته های AUR را تسهیل میکنند باشید.همواره فایل های PKGBUILDs را جهت کشف نشانه های خطا یا کدهای مخرب، قبل از ساخت/نصب بسته ها چک کنید.

جهت نگهداشت ساده تر،میزان بسته های غیر رسمی سیستم تان را محدود کنید.چک کردن های دوره ای را فراموش نکنید.تا متوجه شوید کدام بسته ها واقعا مورد استفاده قرار میگیرند.تا حد امکان سعی کنید بسته های غیر رسمی را با بسته های رسمی معادل شان جایگزین کنید.برای آشنایی با دستورات مفید بیشتر:pacman/Tips and tricks#Maintenance

میرورلیست ها را آپدیت کنید

لیست میرورهای پکمن را آپدیت کنید.چون کیفییت میرورها ممکن است در طول زمان دستخوش تغییر گردد.برخی از آنها آفلاین می گردند یا نرخ دانلودشان کاهش می یابد.برای جزییات بیشتر، mirrors را ببینید.

Clean the filesystem

زمانی که به دنبال فایلی جهت حذف میگردید،بسیار مهم است بدانید چه فایل های بیشترین حجم از دیسک شما را اشغال کرده اند.برنامه هایی که به شما در این امر یاری می رسانند:



فایل های پیکره بندی قدیمی

فایل های پیکره بندی قدیمی،ممکن است با نسخه های جدیدتر نرم افزارها تداخل داشته باشند یا در گذر زمان خراب شوند.به صورت مقطعی،فایل های پیکره بندی بلااستفاده را حذف کنید.به خصوص دایرکتوری های ‎~/.config‎ و home تان.به دلیل مشابه،هنگام اشتراک گذاری فولدرهای home تان بین نصب های مختلف،دقت لازم را به خرج دهید. به فولدرهای زیر نگاه کنید:

  • ‎~/.config/‎ -- جایی که برنامه ها، فایل های پیکره بندی خود را در آنجا ذخیره میکنند.
  • ‎~/.cache/‎ -- کش برخی برنامه ها ممکن است خیلی بزرگ شود.
  • ‎~/.local/share/‎ -- فایل های قدیمی ممکن است اینجا باشند.

XDG Base Directory support را برای اطلاعات بیشتر ببینید.

برای اینکه دایرکتوری home خود را از شر وجود فایل های موقتی که در مسیرهای اشتباهی قرار میگیرند پاک کنید،یک ایده خوب مدیریت لیست فایل های ناخواسته و حذف دوره ای آنها می باشد.برای مثال با کمک:rmshit.py

rmlint توانایی جستجو و حذف فایل های تکراری،خالی،دایرکتوری هایی که به صورت بازگشتی خالی هستند و لینک های شکسته شده (broken symlinks) را دارد.

بسته های استفاده نشده

بسته های استفاده نشده را جهت پاکسازی فضای حافظه و نگهداشت آسان تر سیستم،پاک کنید.برای اطلاعات بیشتر، Pacman/Tips and tricks#Removing unused packages را ببینید.

فایل های کش بسته ها

فایل های ‎.pkg‎ ناخواسته را از مسیر ‎/var/cache/pacman/pkg/‎ پاک کنید تا فضای هارد بازتری داشته باشید.برای اطلاعات بیشتر:Pacman#Cleaning the package cache

Broken symlinks

لینک های قدیمی یا معیوبی که در سراسر سیستم شما وجود دارند;بایستی آنها را حذف کنید.مثلا به این دولینک مراجعه کنید: here و here

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

# find . -type l -! -exec test -e {} \; -print

سپس بین یافته ها،بررسی کرده و رکوردهای غیر ضروری را حذف کنید.

نکات،ترفند ها و حقه ها

نکات پیش رو،عموما مورد نیاز نیستند،اما شاید برای کاربران بخصوصی مفید واقع شوند.

از بسته های نرم افزاری ثابت شده استفاده کنید

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

از هرگونه استفاده از مخازن testing اجتناب کنید.این بسته ها، آزمایشی هستند و برای یک سیستم پایدار به هیچ عنوان مناسب نیستند.به طور مشابه، از بسته هایی که هنوز در فاز توسعه قرار دارند اجتناب کنید.این بسته ها غالبا در مخازن AUR و با اسامی ای هم چون:"dev", "devel", "svn", "cvs", "git" شناخته می شوند.


بسته های با پشتیبانی بلند مدت را نصب کنید.(linux-lts package)

بسته linux-lts جایگزین بسته کرنل آرچ می باشد.و در مخزن رسمی core موجود است.این نسخه از کرنل خاص،از طرف تامین کننده اش پشتیبانی بلند مدت می شود.(LTS) و وصله های امنیتی و ویژگی های جدید را می پذیرد.اگر پایداری و ثبات کرنل تان برایتان مهم است یا میخواهید کرنل فعلی که برایتان مشکل ایجاد کرده را با یک کرنل جدیدتر جایگزین کنید،می توانید روی این گزینه حساب ویژه ای باز کنید.

برای اینکه بتوانید بعنوان آپشن بوت خود از آن استفاده کنید نیازمند به آپدیت فایل پیکره بندی bootloader خود هستید تا از کرنل LTS و رم دیسک(ram disk) استفاده کنید.{ic|vmlinuz-linux-lts}} و ‎initramfs-linux-lts.img‎

هم چنین ببینید