دبیان را خراب نکنید: تفاوت بین نسخهها
(←فرانک دبیان نسازید (فرانکشتاین)) |
|||
سطر ۲۶: | سطر ۲۶: | ||
دلیل اینکه ممکن است چیزها خراب شوند این است که نرمافزاری که برای یک انتشار خاص از دبیان بستهبندی و ارائه شده، ساخته شده تا با سایر نرمافزارهای آن انتشار هماهنگ باشد. | دلیل اینکه ممکن است چیزها خراب شوند این است که نرمافزاری که برای یک انتشار خاص از دبیان بستهبندی و ارائه شده، ساخته شده تا با سایر نرمافزارهای آن انتشار هماهنگ باشد. | ||
− | برای مثال نصب بستههایی از bullseye روی buster ممکن است نسخهای | + | برای مثال نصب بستههایی از bullseye روی buster ممکن است نسخهای جدیدتر از کتابخانههای اساسی نظیر libc را نیز نصب کند. این مسئله منجر به سیستمی خواهد شد که نه پایدار(stable) است نه آزمایشی(testing) بلکه ترکیب ناقصی است از هردو. |
مخازنی که استفاده از آنها روی دبیان پایدار منجر به ساخت FrankenDebian خواهد شد: | مخازنی که استفاده از آنها روی دبیان پایدار منجر به ساخت FrankenDebian خواهد شد: |
نسخهٔ ۴ مرداد ۱۳۹۹، ساعت ۱۵:۴۶
این صفحه نیازمند ویرایش است.
این نوشته تلاشی است در ترجمه مقاله DontBreakDebian در صورت امکان به تکمیل ترجمه آن کمک کنید.
محتویات
- ۱ توصیههایی برای کاربران تازهکار تا سیستم دبیان خود را خراب نکنند
- ۲ فرانک دبیان نسازید (فرانکشتاین)
- ۳ از اسکریپت نصب سازنده GPU استفاده نکنید
- ۴ سندروم خواستن چیزهای بسیار جدید نداشته باشید
- ۵ دستور make install ممکن است با بستههای نرمافزاری تداخل ایجاد کند
- ۶ از رهنمودهای بد کورکورانه پیروی نکنید
- ۷ راهنماهای عالی را بخوانید
- ۸ کورکورانه نرمافزار را حذف نکنید
- ۹ قبل از نصب بسته توصیف آن را مطالعه کنید
- ۱۰ یادداشت بردارید
- ۱۱ برخی روشهای امنتر نصب نرمافزارهایی که در دبیان پایدار موجود نیستند
- ۱۲ بیشترین بهره را از منابع پشتیبان همسان موجود ببرید
توصیههایی برای کاربران تازهکار تا سیستم دبیان خود را خراب نکنند
گرچه دبیان سیستمی قوی و مطمئن است اما تازهکاران درصورتی که کارها را به روش دبیانی انجام ندهند میتوانند به سادگی سیستم خود را خراب کنند. این صفحه فهرستی از اشتباهات متداول که از سوی کاربران تازهکار رخ میدهد را فهرست کرده است.
برخی از چیزهایی که اینجا آمدهاند تنها در صورتی میتوانند به روشی امن انجام شوند که شما تجربه و شناخت کافی چگونگی تعمیر سیستم در حالت خرابی را داشته باشید.
تم اصلی رهنمودهای این نوشتار این است که، پیامدهای بد همیشه فوری رخ نمیدهند و میتوانند بهروزآوریهای آتی بدون نصب مجدد را غیر ممکن کنند. اگر بهروزآوری سیستم بدون نصب مجدد آن برای شما مهم است توجه کنید، اشتباهاتی که در اینجا بیان شده اند را مرتکب نشوید.
یکی از مزیتهای اساسی دبیان مخزن مرکزی آن با هزاران بسته نرمافزاری است. اگر از سیستمعامل دیگری به دبیان مهاجرت کردید ممکن است پیش از این نرمافزارهایی را از وبسایتهای متفرقه دریافت و روی سیستمعامل خود نصب کرده باشید.
روی یک سیستم دبیان نصب نرمافزار از وبسایتهای متفرقه عادت بدی است.
همواره بهتر است در صورت امکان از نرمافزارهایی که بر روی مخازن رسمی دبیان موجود هستند استفاده کنید. بستههای نرمافزاری موجود در مخزن دبیان به کارکرد عالی و نصب کامل مشهور هستند. همچنین منحصرا استفاده از نرمافزارهای موجود در مخازن دبیان بسیار امنتر از نصب آنها از وبسایتهای متفرقهای است که امکان دارد حاوی بدافزار و سایر مخاطرات امنیتی باشند.
فرانک دبیان نسازید (فرانکشتاین)
دبیان پایدار (stable Debian) نباید با سایر انتشارها ترکیب شود. اگر سعی دارید نرمافزاری نصب کنید که در انتشار پایدار کنونی دردسترس نیست اضافه کردن مخازن سایر انتشارهای دبیان ایده خوبی نیست.
ممکن است مشکلات هم اکنون بروز نکنند و در بار بعدی که به روزرسانی نصب کنید خود را نشان دهند.
دلیل اینکه ممکن است چیزها خراب شوند این است که نرمافزاری که برای یک انتشار خاص از دبیان بستهبندی و ارائه شده، ساخته شده تا با سایر نرمافزارهای آن انتشار هماهنگ باشد.
برای مثال نصب بستههایی از bullseye روی buster ممکن است نسخهای جدیدتر از کتابخانههای اساسی نظیر libc را نیز نصب کند. این مسئله منجر به سیستمی خواهد شد که نه پایدار(stable) است نه آزمایشی(testing) بلکه ترکیب ناقصی است از هردو.
مخازنی که استفاده از آنها روی دبیان پایدار منجر به ساخت FrankenDebian خواهد شد:
- انتشار دبیان آزمایشی testing (در حال حاضر bullseye)
- انتشار دبیان ناپایدار unstable (یا sid هم نامیده میشود)
- اوبونتو، مینت و سایر انشعابهایی که با دبیان سازگار نیستند.
- اوبونتو PPA
از اسکریپت نصب سازنده GPU استفاده نکنید
دبیان شامل راهاندازهای آزاد و Opensource ی است که از بیشتر کارتهای گرافیکی پشتیبانی میکند. راهاندازهای آزاد بهترین ترکیب را با سایر قسمتهای دبیان فراهم میکنند و برای بیشتر کاربران کاملا عالی عمل خواهند کرد.
اگر شما مجبورید که راهانداز انحصاری و Closesource داشته باشید، آنها را مستقیما از سایت سازنده دریافت نکنید. نصب راهاندازها به این نحو تنها برای کرنل کنونی کار خواهد کرد و پس از به روزرسانی بعدی کرنل، تا زمانی که راهانداز گرافیکی مجدد به صورت دستی نصب نشود کار نخواهد کرد.
خوشبختانه راه حلی دبیانی برای نصب راه اندازهای کارت گرافیک استفاده از بستههای داخل مخازن است. با نصب راهاندازها به این شکل اطمینان خواهید داشت که پس از به روز آوری کرنل راه انداز همچنان کار خواهد کرد.
- AtiHowTo دارای دستوراتی برای نصب راهاندازهای آزاد و Opensource برای کارتهای گرافیکی ATI/AMD است.
- NvidiaGraphicsDrivers دارای دستوراتی برای نصب راهاندازهای انحصاری NVIDIA به روش دبیانی است.
سندروم خواستن چیزهای بسیار جدید نداشته باشید
دبیان پایدار به این دلیل بسیار قابل اطمینان است که نرمافزارهای آن قبل از بستهبندی و قرارگرفتن در انتشار به طور گستردهای تست و رفع اشکال میشوند.
به این معنا که آخرین نسخه از نرمافزارها اغلب در مخازن انتشار پایدار دبیان موجود نیست اما به این معنا هم نیست که نرمافزار به قدری کهنه است که قابل استفاده نباشد.
نکاتی که پیش از تلاش برای نصب آخرین نسخه از نرمافزار از جای دیگری به جز مخازن دبیان پایدار در نظر داشته باشید:
- آخرین نسخه از نرمافزاری که سعی در استفاده از آن را دارید ممکن است باگهای جدید نیز داشته باشد.
- نصب نرمافزار از جایی غیر از مخازن رسمی دبیان توسط تیم امنیت دبیان پشتیبانی نمیشود.
دستور 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 و اطلاعاتی بیشتر است.
کورکورانه نرمافزار را حذف نکنید
گاهی وقتی نرمافزاری را حذف میکنید، چونکه بستههای اضافی به بستهای که قصد حذفش را دارید وابستگی دارند، لازم است مدیر بسته، سایر بستههای نرمافزاری را نیز حذف کند.
اگر چنین حالتی رخ دهد، مدیر بسته فهرستی از همه چیزهایی را که حذف خواهند شد نمایش خواهد داد و از شما تایید خواهد گرفت.
مطمئن شوید که این فهرست را به دقت مطالعه کردید!
اگر نمیدانید بستههایی که حذف میشوند برای چه کاری هستند توصیف هریک را بخوانید. زمانی که شک دارید بیشتر تحقیق کنید.
برخی از منابعی که برای بررسی کمک میکنند:
- https://www.debian.org/distrib/packages
- فرامین (apt-cache(8
- دیدن اطلاعات بسته:
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 را نصب و بهروز کند.
برای اطلاعات بیشتر صفحه ویکی Flatpak را ببینید.
ابزار Snap
روش جایگزین دیگر سیستم Snappy توسعه یافته توسط کنونیکال، شرکتی که پشتیبانی از اوبونتو را انجام میدهد.
بستههای Snappy اساسا مشابه Flatpak هستند اما اکنون مخازن مرکزی اسنپ (snapcraft) نرمافزارهای بیشتری از Flathub دارند.
بیشترین بهره را از منابع پشتیبان همسان موجود ببرید
وقتی به دنبال پشتیبانی هستید به یاد داشته باشید که دبیان پروژهای است داوطلبانه و اگر مودب باشید و بیشتر تلاش کنید افراد بیشتری تمایل دارند به شما کمک کنند.
برخی از راهنماییهایی که برای کمک گرفتن مفید هستند:
- ابتدا خودتان درمورد موضوع تحقیق کنید. مواردی مثل: مطالعه مستندات و استفاده از موتورهای جستجو.
- جزئیات ارائه کنید و هوشمندانه بپرسید.
- اگر از حل مسئلهای نا امید شدید، حس ناامیدی را به پاسخ دهنده داوطلبی که درحال کمک به شماست منتقل نکنید هرچند که به نظر برسد او هم دچار ياس شده است.
- انتظار راهنمایی کامل نداشته باشید. اگر خواستار راهنمایی گام به گام هستید نشانگر این است که به خواندن مستندات و آموختن بیشتر نیاز دارید.
- اگر پاسخ پرسش کاربر دیگری را میدانید، توصیه میکنیم که (در بحث) مشارکت کنید و پاسخ دهید.
به طور خاص در IRC
- پس از چند کلمه enter نزنید که دنبال کردن پیامها را دشوار میکند(تکه تکه پیام ارسال نکنید).
- برای پاسخ گرفتن صبر داشته باشید. عموما افراد پیش از اینکه کسی پاسخ سوالشان را بدهد ناپدید میشوند.
- به جای درج مستقیم (پیامها و کدهای طولانی) از pastebin استفاده کنید.