دبیان را خراب نکنید

از ویکی فارسی اوبونتو
(تغییرمسیر از DontBreakDebian)
پرش به: ناوبری، جستجو



این صفحه نیازمند ویرایش است.
این نوشته تلاشی است در ترجمه مقاله DontBreakDebian در صورت امکان به تکمیل ترجمه آن کمک کنید.


نکته: درست است که این مطلب دربارهٔ توزیع دبیان است اما بیشتر مطالب برای سایر توزیع‌ها نیز صدق می‌کند و رعایت نکردن آن‌ها ممکن است موجب ایجاد مشکلاتی شود.
نکته: ممکن است مشکلات ذکر شده در مقاله فورا پس از انجام کار اشتباه رخ ندهد، اما در آینده باعث رخ دادن مشکلاتی خواهد شد.

توصیه‌هایی برای کاربران تازه‌کار تا سیستم دبیان خود را خراب نکنند

دبیان را خراب نکنید

گرچه دبیان سیستمی قوی و مطمئن است اما تازه‌کاران اگر کارها را به روش دبیانی انجام ندهند به سادگی می‌توانند سیستم خود را خراب کنند. این صفحه فهرستی از اشتباهات متداول که از سوی کاربران تازه‌کار رخ می‌دهد را فهرست کرده است.

برخی از چیزهایی که اینجا آمده‌اند تنها در صورتی می‌توانند به روشی امن انجام شوند که شناخت و تجربه کافی تعمیر سیستم در حالت خرابی را داشته باشید.

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

یکی از مزیت‌های اساسی دبیان مخزن مرکزی آن با هزاران بستهٔ نرم‌افزاری است. اگر از سیستم‌عامل دیگری به دبیان مهاجرت کردید ممکن است پیش از این نرم‌افزارهایی را از وب‌سایت‌های متفرقه دریافت و روی سیستم‌عامل خود نصب کرده باشید.


اخطار:

روی یک سیستم دبیان نصب نرم‌افزار از وب‌سایت‌های متفرقه عادت بدی است.

همواره بهتر است در صورت امکان از نرم‌افزارهایی که در مخازن رسمی دبیان موجود هستند استفاده کنید. بسته‌های نرم‌افزاری مخازن دبیان به کارکرد عالی و نصب کامل مشهور هستند.

همچنین استفاده از نرم‌افزارهای موجود در مخازن دبیان بسیار امن‌تر از نصب آن‌ها از وب‌سایت‌های متفرقه‌ای است که امکان دارد حاوی بدافزار و سایر مخاطرات امنیتی باشند.

فرانک دبیان نسازید (فرانکشتاین)

فرانکشتاین دبیان

دبیان پایدار نباید با سایر انتشار‌ها ترکیب شود. اگر سعی دارید نرم‌افزاری نصب کنید که در انتشار پایدار کنونی دردسترس نیست اضافه کردن مخازن سایر انتشارهای دبیان ایدهٔ خوبی نیست.

ممکن است مشکلات هم اکنون بروز نکنند و در بار دیگری که به روزرسانی نصب کنید خود را نشان دهند.

دلیل اینکه ممکن است چیزها خراب شوند این است که نرم‌افزاری که برای یک انتشار خاص از دبیان بسته‌بندی و ارائه شده، ساخته شده تا با سایر نرم‌افزارهای آن انتشار هماهنگ باشد.

برای نمونه نصب بسته‌هایی از bullseye روی buster ممکن است نسخه‌ای جدیدتر از کتابخانه‌های اساسی نظیر libc را نیز نصب کند. این مسئله منجر به سیستمی خواهد شد که نه پایدار(stable) است نه آزمایشی(testing) بلکه ترکیب ناقصی است از هردو.

مخازنی که استفاده از آن‌ها روی دبیان پایدار(stable) منجر به ساخت FrankenDebian خواهد شد:

  • انتشار دبیان آزمایشی testing
  • انتشار دبیان ناپایدار unstable (یا sid هم نامیده می‌شود)
  • اوبونتو،‌ مینت و سایر انشعاب‌هایی که با دبیان سازگار نیستند.
  • اوبونتو PPA

از اسکریپت نصب سازنده GPU استفاده نکنید

دبیان شامل راه‌اندازهای آزاد و Opensource ی است که از بیشتر کارت‌های گرافیکی پشتیبانی می‌کند. راه‌اندازهای آزاد بهترین ترکیب را با سایر قسمت‌های دبیان فراهم می‌کنند و برای بیشتر کاربران کاملا عالی کار خواهند کرد.

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

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

  • AtiHowTo دارای دستوراتی برای نصب راه‌اندازهای آزاد و Opensource برای کارت‌های گرافیکی ATI/AMD است.
  • NvidiaGraphicsDrivers دارای دستوراتی برای نصب راه‌اندازهای انحصاری NVIDIA به روش دبیانی است.

سندروم خواستن چیز‌های بسیار جدید نداشته باشید

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

به این معنا که آخرین نسخه‌ از نرم‌افزارها، اغلب در مخازن انتشار دبیان پایدار موجود نیستند اما به این معنا هم نیست که نرم‌افزار به قدری کهنه است که قابل استفاده نباشد.

نکاتی که پیش از تلاش برای نصب آخرین نسخه از نرم‌افزار از جای دیگری به جز مخازن دبیان پایدار در نظر داشته باشید:


  • دبیان اصلاحات امنیتی و reliability را به روش backport اعمال می‌کند.

قضاوت تنها از روی مقایسه شماره نسخه یک (بسته نرم‌افزاری) دبیان با نسخه (upstream) این نکته را در نظر نمی‌گیرد.

  • آخرین نسخه از نرم‌افزاری که سعی در استفاده از آن را دارید ممکن است باگ‌های جدید نیز داشته باشد.
  • این کار توسط تیم امنیت دبیان پشتیبانی نمی‌شود.


اخطار:

توجه کنید که (اگرچه) باگ‌هایی در نرم‌افزارهای کنونی یافت می‌شوند اما تنها انتشارهای جدید یک نرم‌افزار باگ‌ها و آسیب پذیری‌های (کاملا) جدیدی را اضافه می‌کنند

دستور make install ممکن است با بسته‌های نرم‌افزاری تداخل ایجاد کند

به سادگی می‌توانید کد منبع نرم‌افزار را دریافت، کامپایل و روی سیستم خود نصب کنید اما حذف آن همیشه ساده نخواهد بود.

بیش‌تر دستوراتی که همراه با کد منبع نرم‌افزار ارائه می‌شوند از دستورات زیر استفاده می‌کنند.


$ ./configure && make && make install


زمانی که به این روش نرم‌افزار نصب کنید در آینده نمی‌توانید با apt-get یا Synaptic آن را حذف کنید. سیستم بسته‌بندی APT تنها قادر است نرم‌افزارهایی که با APT نصب شده اند را حذف کند.

حتا بدتر این‌که نرم‌افزارهای نصب شده به این روش گاهی با بسته‌های نرم‌افزاری خود دبیان تداخل می‌کنند و همچنین از به‌روزرسانی‌های امنیتی بسته‌های دبیان بی‌بهره اند.

اگر می‌خواهید سیستم خود را بدون کامپایل و نصب مجدد دستی برای هر به روزآوری جدید به روز نگه دارید تنها به بسته‌های دبیان اکتفا کنید.

اسکریپت make install ممکن است مفروضات نامعتبری درمورد محل باینری کامپایل شده و فایل‌های مرتبط با آن در فایل سیستم و شرایط دسترسی و مالکیت برای اجرای آن داشته باشد.

همچنین نرم‌افزار نصب شده با این روش می‌تواند نرم‌افزارهای حیاتی سیستم و سیستم نگه‌داری بسته‌ها را تغییر دهد که این امر تعمیر سیستم با ابزارهای استاندارد دبیان را دشوار می‌کند.

از رهنمودهای بد، کورکورانه پیروی نکنید

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

از اولین توصیه‌‌ای که یافتید یا آموزشی که ساده‌تر به نظر می‌رسد پیروی نکنید. زمانی را صرف مطالعه مستندات و مقایسه تفاوت‌ آموزش‌های مختلف کنید.

بهتر این است که ابتدا زمانی را صرف فهمیدن روش صحیح انجام کار کنید تا این‌که در آینده زمان بسیار بیشتری برای تعمیر سیستم صرف کنید.

شما نباید به غریبه‌ای اجازه دهید به کودک شما غذا دهد، دستورات را بدون اینکه ابتدا بفهمید چه می‌کنند اجرا نکنید.

بلاگ‌ها و پست‌های انجمن‌ها منقضی نمی‌شوند. ممکن است دستوراتی که زمانی در سال‌ها قبل امن بودند لزوما اکنون امن نباشند.

اگر شک دارید، به جستجو ادامه دهید و نسخه مناسب مستندات را مطالعه کنید.

راهنماهای عالی را بخوانید

اغلب مطالعه یک آموزش به تنهایی برای فهمیدن ایده کلی نصب یا استفاده از یک نرم‌افزار کافی است. تقریبا تمام بسته‌های نرم‌افزاری ارائه شده برای دبیان شامل مستندات آماده هستند.

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

  • صفحه اصلی مستندات دبیان: https://www.debian.org/doc/
  • راهنمای دبیان برای مدیر سیستم‌ها: https://debian-handbook.info/browse/fa-IR/stable/
  • دستور apropos برای یافتن صفحات راهنما (man page) کمک می‌کند.
  • دستور man برای خواندن صفحات راهنمای دستوراتی که متوجه نمی‌شوید.
  • برخی از نرم‌افزارها دارای بسته‌ای مجزا به نام package name>-doc> هستند که حاوی مستندات است.
  • هر بسته دبیان که روی سیستم شما نصب می‌شود پوشه‌ای در usr/share/doc/ دارد که اغلب حاوی یک فایل README.Debian با اطلاعاتی درباره نسخه upstream و داده‌هایی بیشتر است.

کورکورانه نرم‌افزاری را حذف نکنید

گاهی وقتی نرم‌افزاری را حذف می‌کنید، چون‌ بسته‌های دیگری به نرم‌افزاری که قصد حذفش را دارید وابستگی دارند، لازم است مدیر بسته، سایر بسته‌های نرم‌افزاری را نیز حذف کند.

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

اخطار:

مطمئن شوید که این فهرست را به دقت مطالعه کردید!

اگر نمی‌دانید بسته‌هایی که حذف می‌شوند برای چه کاری هستند توصیف هریک را بخوانید. زمانی که شک دارید بیش‌تر تحقیق کنید.

برخی از منابعی که برای بررسی کمک می‌کنند:

  • دیدن اطلاعات بسته:


apt-cache show <package name> 


  • ‌ اطلاعات نسخه بسته:


apt-cache policy <package name>


  • وابستگی‌های یک بسته:


apt-cache depends <package name>

فرمان (aptitude(8:

  • نمایش دلیل ناکامل نصب یک بسته:


aptitude why <package name>
  • نمایش دلایل عدم نصب یک بسته:


aptitude why-not <package name>


  • از گزینه simulate-- به همراه (apt-get(8 و aptitude استفاده کنید که مشابه سایر فرامین این فهرست به اجرا با root نیاز ندارند.

قبل از نصب بسته توصیف آن را مطالعه کنید

توصیه می‌کنیم پیش از نصب بسته‌ها توصیف‌شان را مطالعه کنید. گاهی نرم‌افزار شامل بسته‌هایی است که در مخازن دبیان موجود نیستند و هر بسته‌ای نیز به روشی متفاوت تنظیم می‌شود.

توصیف‌های بسته را مطالعه کنید و اسامی مشابه آن را جستجو کنید تا مطمئن شوید چیزی را دریافت می‌کنید که به دنبالش هستید.

به طور خاص این نکته برای بسته‌هایی که ماژول‌های کرنل را نصب می‌کنند اهمیت دارد.

یادداشت بردارید

گام‌هایی که برای انجام کاری روی رایانه خود انجام دادید به سادگی از خاطر خواهید برد مخصوصا ماه‌ها بعد زمانی قصد به روز‌آوری سیستم را داشته باشید.

گاهی اوقات زمانی‌که سعی دارید راه‌های مختلف حل یک مسئله را امتحان کنید روز بعد روش موفقیت آمیز آن را فراموش خواهید کرد.

یک ایده بسیار خوب یادداشت نرم‌افزارهای نصب شده و تغییرات اعمال شده در تنظیمات است. زمانی که فایل‌های تنظیمات را ویرایش می‌کنید، یک ایده خوب ثبت تاریخ انجام تغییرات و اضافه کردن توضیحاتی است که دلیل چنین تغییراتی را روشن می‌سازد.

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

گاهی به نصب نرم‌افزاری که برای دبیان بسته‌بندی و ارائه نشده یا نسخه‌ای جدیدتر از آن‌چه در مخازن دبیان موجود است نیاز داریم.

برخی از راه‌های کاهش ریسک‌هایی که در بالا بیان شدند در اینجا ارائه می‌کنیم.

بسته‌های Backport شده

نسخه‌های تازه‌تر بسته‌ها اغلب در آرشیو (Debian Backports) یافت می‌شوند. این بسته‌ها به اندازه بسته‌های موجود در انتشار دبیان پایدار بررسی نشده اند و باید با اعتدال(احتیاط) نصب شوند.

افرادی با ریسک و مسئولیت پذیری بیشتر گاهی می‌توانند بسته‌های backport خود از آخرین نرم‌افزارهای دبیان را بسازند.

هرچند این کار بدون ریسک نیست اما backport کردن شخصی عموما از سایر روش‌ها امن تر است.

اخطار:

وقتی در حین ایجاد یک backport شخصی، عملیات با شکست روبه رو شود، نشانگر این است که نصب دستی نرم‌افزار (با دستورات make install یا اسکریپت نصبی دیگر) می‌تواند پایداری سیستم دیبان شما را به خطر بی‌اندازد.

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

اگر نرم‌افزاری از کد منبع کامپایل و نصب می‌کنید که از جایی بجز دبیان دریافت کردید روش صحیح این است که ساخت و اجرای آن را با کاربر معمولی و درون home directory مربوط به همان کاربر انجام دهید.

اگر اطلاعات حساس، با ارزش و غیر قابل بازتولید در home directory خود دارید یهتر است که برای این‌کار کاربری جدید بسازید.

دستور automake و سایر build systemها می‌توانند نرم‌افزارهایی را که ساخته اند را در محلی غیر استاندارد نصب کنند.

کار نادرست این است که در زمان ساخت بسته‌ها کاربر root باشید یا از sudo برای نصب نرم‌افزارها در آدرس usr/bin/ یا سایر محل‌های استانداردی که سایر بسته‌ها درآن‌جا فایل قرار می‌دهند استفاده کنید.

تقریبا همواره می‌توانید به جای این‌کار نرم‌افزار را در home directory خود نصب کنید. (با استفاده از این فرمان یا چیزی شبیه به این: configure --prefix=~/.local/. )

اگر متوجه شدید که که چگونه Makefileها را ویرایش کنید می‌توانید به روشی Makefile را تغییر داده تا دستور make install را مناسب سیستم شما تفسیر کند یا به آن گزینه prefix=~/.local را اضافه کنید.

اگر می‌خواهید نرم‌افزار نصب شده برای تمام کاربران (سیستم) قابل دسترسی و استفاده باشد نگذارید که نرم‌افزار در مسیر usr/ نصب شود چون‌که تنها بسته‌های دبیان می‌توانند در این مسیر فایل بسازند.

نصب نرم‌افزار در مسیر usr/local/ آن را برای تمام کاربران قابل دسترسی می‌کند و با مدیر بسته‌ نیز تداخل نخواهد کرد.

بسته stow برای مدیریت نرم‌افزارهای نصب شده در usr/local/ کاربرد دارد.

استفاده از chroot container و ماشین‌های مجازی

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

این عمل نصب نرم‌افزار روی سیستم مجازی دبیان را بدون هیچ‌گونه اثری روی میزبان دبیان درحال اجرا روی رایانه شما ندارد.

دبیان شامل ابزارهای گوناگونی است که درجات متفاوتی از ایزوله سازی سیستم‌عامل میزبان ارائه می‌دهند.

برخی از این‌‌ها:

ابزار Flatpak

برخی از نرم‌افزارها و بازی‌ها در قالب جدید بسته Flatpak موجود هستند. بسته Flatpak می‌تواند با کاربر غیر root، بدون تداخل با سیستم بسته دبیان و به صورت محلی نصب شوند.

همچنین نرم‌افزارهای Flatpak می‌توانند در یک sandbox نیز اجرا شوند.

بسته Flatpak از انتشار stretch روی دبیان موجود است.

بسته gnome-software می‌تواند با gnome-softwae-plugin-flatpak نرم‌افزارهای Flatpak را نصب و به‌روز کند.

برای اطلاعات بیشتر صفحه ویکی فلت پک را ببینید.

ابزار Snap

روش جایگزین دیگر سیستم Snappy توسعه یافته توسط کنونیکال،‌ شرکتی که پشتیبانی از اوبونتو را انجام می‌دهد.

بسته‌های Snappy اساسا مشابه Flatpak هستند اما اکنون مخازن مرکزی اسنپ (snapcraft) نرم‌افزارهای بیشتری از Flathub دارند.


نکته: بسیاری از کاربران نسبت به (استفاده از) بسته‌های اسنپ با احتیاط رفتار می‌کنند. با صلاحدید خودتان استفاده کنید! بسته‌های اسنپ طبق زمان‌بندی خودشان به‌روز می‌شوند و فایل‌ها را در مکان‌هایی غیر استاندارد کپی می‌کنند. استفاده از اسنپ بدون دانش قبلی پیرامون مزایا و معایب و محدودیت‌های آن عملی عاقلانه‌ نیست.

بیشترین بهره را از منابع پشتیبان‌ همسان موجود ببرید

وقتی به دنبال پشتیبانی هستید به یاد داشته باشید که دبیان پروژه‌ای است داوطلبانه و اگر مودب باشید و بیشتر تلاش کنید افراد بیشتری تمایل دارند به شما کمک کنند.

برخی از راهنمایی‌هایی که برای کمک گرفتن مفید هستند:

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

به ویژه در IRC

  • پس از چند کلمه enter نزنید چون دنبال کردن پیام‌ها را دشوار می‌کند(تکه تکه پیام ارسال نکنید).
  • ‌ برای پاسخ گرفتن صبور باشید. عموما افراد پیش از این‌که کسی پاسخ سوالشان را بدهد ناپدید می‌شوند.
  • به جای درج مستقیم (پیام‌ها و کدهای طولانی) از pastebin استفاده کنید.