Frequently asked questions (فارسی)
عمومی
ارچ لینوکس چیست؟
به مقاله آرچ لینوکس مراجعه کنید.
چرا نباید از آرچ استفاده کنم؟
ممکن است نخواهید از آرچ استفاده کنید, اگر:
- شما توانایی/زمان/تمایل لازم برای یک توزیع گنو/لینوکس 'do-it-yourself' را ندارید.
- شما به پشتیبانی از معماری غیر از x86_64 نیاز دارید.
- شما موضع محکمی در مورد استفاده از توزیعی دارید که فقط نرمافزارهای آزاد تعریفشده توسط گنو را ارائه میدهد.
- شما معتقدید که یک سیستم عامل باید خودش را پیکربندی کند، به صورت آماده اجرا شود و مجموعهای کامل از نرمافزارها و محیط دسکتاپ را به صورت پیشفرض روی رسانه نصب داشته باشد.
- شما یک توزیع گنو/لینوکس با انتشار غلتان نمیخواهید.
- شما از سیستم عامل فعلی خود راضی هستید.
چرا باید از آرچ استفاده کنم؟
چون آرچ بهترینه.
آرچ از چه معماریهایی پشتیبانی میکند؟
آرچ فقط از معماری x86_64 (که گاهی اوقات amd64 نیز نامیده میشود) پشتیبانی میکند. پشتیبانی از i686 در نوامبر 2017 متوقف شد[۱] .
توزیعهای مشتقشدهای برای معماری i686 [۲] و پردازندههای ARM [۳] وجود دارد که هر کدام کانالهای اجتماعی خود را دارند. آنها توسط آرچ لینوکس پشتیبانی نمیشوند.
اگر مایلید آرچ از معماریهای دیگر پشتیبانی کند، میتوانید در تلاشهای موجود برای پورت کردن کمک کنید یا خودتان شروع به کار کنید. بینید Getting involved#Help porting Arch Linux to other architectures.
آیا آرچ از استاندارد سلسله مراتب فایل سیستم (FHS) بنیاد لینوکس پیروی میکند؟
آرچ لینوکس با استفاده از مدیریت کننده سرویس systemd، سلسله مراتب فایل سیستم را برای سیستم عاملها دنبال میکند. برای توضیح هر دایرکتوری به همراه نام آنها به file-hierarchy(7) مراجعه کنید. به طور خاص، /bin, /sbin و /usr/sbin پیوندهای نمادین به /usr/bin هستند و /lib و /lib64 پیوندهای نمادین به /usr/lib میباشند.
من کاملاً با گنو/لینوکس مبتدی هستم. آیا باید از آرچ استفاده کنم؟
اگر مبتدی هستید و میخواهید از آرچ استفاده کنید، باید مایل باشید برای یادگیری یک سیستم جدید وقت بگذارید و بپذیرید که آرچ به عنوان یک توزیع «خودت انجام بده» طراحی شده است؛ این کاربر است که سیستم را می سازد.
قبل از درخواست کمک، تحقیقات مستقل خود را با جستجو در وب، انجمن و مستندات عالی ارائه شده توسط Arch Wiki انجام دهید. دلیلی وجود دارد که این منابع در وهله اول در دسترس شما قرار گرفته اند. هزاران ساعت داوطلبانه صرف گردآوری این اطلاعات عالی شده است.
همچنین به Arch terminology#RTFM و راهنمای نصب مراجعه کنید.
آیا آرچ برای استفاده به عنوان سرور، دسکتاپ یا ورک استیشن طراحی شده است؟
آرچ برای هیچ نوع استفاده خاصی طراحی نشده است. بلکه، برای نوع خاصی از کاربر طراحی شده است. آرچ کاربران ماهری را هدف قرار میدهد که از ماهیت «خودت انجام بده» آن لذت میبرند و از آن برای شکلدهی سیستم متناسب با نیازهای منحصر به فرد خود بهره میبرند. بنابراین، آرچ در دستان کاربر هدف خود، میتواند تقریباً برای هر هدفی مورد استفاده قرار گیرد. بسیاری از آرچ هم در دسکتاپ و هم در ورک استیشن خود استفاده میکنند. و البته، archlinux.org، aur.archlinux.org و تقریباً تمام زیرساختهای آرچ بر روی آرچ اجرا میشوند.
من واقعاً آرچ را دوست دارم، به جز اینکه تیم توسعه باید ویژگی X را پیادهسازی کند.
وارد عمل شوید، کد/راهکار خود را در اختیار جامعه قرار دهید. اگر مورد توجه جامعه و تیم توسعه قرار گیرد، شاید ادغام شود. جامعه آرچ با مشارکت و به اشتراک گذاری کد و ابزارها رونق میگیرد.
نسخه جدید کی در دسترس قرار خواهد گرفت؟
نسخههای آرچ لینوکس صرفاً یک محیط زنده برای نصب یا بازیابی هستند که شامل بسته meta package base و چند بسته دیگر میشوند. این نسخهها معمولاً در نیمه اول هر ماه منتشر میشوند.
آیا آرچ لینوکس توزیع پایداری است؟ آیا مرتباً با مشکل خرابی مواجه خواهم شد؟
این کاربر است که در نهایت مسئول پایداری سیستم انتشار غلتان خود است. کاربر تصمیم میگیرد چه زمانی ارتقا یابد و در صورت نیاز تغییرات لازم را ادغام کند. اگر کاربر با جامعه تماس بگیرد، اغلب به موقع کمک ارائه میشود. تفاوت بین آرچ و سایر توزیعها در این زمینه این است که آرچ واقعاً یک توزیع «خودت انجام بده» است. شکایات مربوط به خرابی گمراهکننده و بیفایده است، زیرا تغییرات بالادستی مسئولیت توسعهدهندگان آرچ نیست.
برای نکاتی در مورد چگونگی پایدار کردن هرچه بیشتر سیستم آرچ لینوکس، به مقاله System maintenance مراجعه کنید.
آرچ به مطبوعات بیشتری نیاز دارد (مثلاً تبلیغات)
آرچ همین الان هم توجه زیادی را به خود جلب کرده است. هدف آرچ لینوکس بزرگ شدن نیست؛ بلکه رشد ارگانیک و پایدار به طور طبیعی در میان کاربران هدف رخ میدهد.
آرچ به توسعهدهندگان بیشتری نیاز دارد
احتمالاً همینطور است. میتوانید وقت خود را داوطلبانه اختصاص قرار دهید! از forums، کانالهای IRC و mailing lists دیدن کنید و ببینید چه کارهایی باید انجام شود. برای جزئیات بیشتر به بخش Getting involved مراجعه کنید.
نصب
Arch به نصاب نیاز دارد. شاید یک نصب کننده با رابط کاربری گرافیکی؟
یک نصب کننده هدایت شده با یک رابط کاربری مبتنی بر متن در دسترس است. برای جزئیات بیشتر به archinstall مراجعه کنید.
من Arch را نصب کردم و اکنون در یک shell هستم! حالا چی؟
توصیه های عمومی را ببینید.
از کدام محیط دسکتاپ یا مدیریت کننده پنجره استفاده کنم؟
از آنجایی که بسیاری از آنها در دسترس شما هستند، از یکی که به بهترین وجه با نیازهای شما مطابقت دارد استفاده کنید. نگاهی به مقالات Desktop environment و Window manager بیندازید.
چه چیزی Arch را در میان سایر توزیعهای «مینیمال» منحصر به فرد میکند؟
Arch را در مقایسه با سایر توزیع ها ببینید.
System maintenance
System maintenance را ببینید.
چرا اینترنت من در مقایسه با سایر سیستم عامل ها بسیار کند است؟
آیا شبکه شما به درستی پیکربندی شده است؟ نگاهی به مقاله پیکربندی شبکه بیندازید. برای تنظیمات پیشرفته، ممکن است بخواهید به شکلدهی ترافیک نیز توجه کنید.
یکی از رایجترین هستههای مورد استفاده، linux، جدیدتر از هسته سایر توزیعهای لینوکس با ثباتتر است. به همین دلیل، به ندرت ممکن است با رگرسیون هسته یا باگ درایور مواجه شوید، به خصوص اگر از Wi-Fi استفاده می کنید. توجه داشته باشید که اکثریت قریب به اتفاق آن باگها مختص ارچ لینوکس نیستند زیرا ارچ لینوکس فقط ابتداییترین پچ ها را اعمال میکند. این باید در بالادست گرفته شود. رجوع کنید به خطایی در پکیج X پیدا کردم. چه کار کنم؟.
چرا ارچ از تمام رم من استفاده می کند؟
در اصل، رم استفاده نشده، رم هدر رفته است.
بسیاری از کاربران جدید متوجه می شوند که چگونه هسته لینوکس حافظه را متفاوت از آنچه که قبلاً استفاده می کردند، مدیریت می کند. از آنجایی که دسترسی به دادهها از RAM بسیار سریعتر از درایو ذخیرهسازی است، هسته دادههایی را که اخیراً به آنها دسترسی پیدا کرده است، کش میکند. دادههای کش تنها زمانی پاک میشوند که سیستم شروع به تمام شدن حافظه موجود کند و نیاز به بارگیری دادههای جدید باشد.
ما می توانیم تفاوت را از دستور free تشخیص دهیم:
$ free -h
کل used free shared buff/cache available Mem: 377Gi 40Gi 146Gi 1.1Gi 196Gi 337Gi Swap: 377Gi 1.1Gi 376Gi
توجه به تفاوت بین حافظه "رایگان" و "در دسترس" مهم است. در مثال بالا، به نظر می رسد سیستمی با 377 گیگابایت رم از بیش از نیمی از آن استفاده می کند و تنها 146 گیگابایت حافظه آزاد دارد. با این حال، 196 گیگابایت از آن "buff/cache" است. هنوز 337 گیگابایت برای شروع برنامه های جدید بدون تعویض وجود دارد. برای جزئیات بیشتر به free(1) مراجعه کنید. نتیجه همه اینها؟ عملکرد!
اگر کنجکاوی شما برانگیخته شده است، این مقاله فوق العاده را ببینید. همچنین یک وب سایت برای رفع این سردرگمی اختصاص داده شده است: https://www.linuxatemyram.com .
این همه فضای خالی من کجا رفت؟
پاسخ این سوال به سیستم شما بستگی دارد. چند ابزار خوب وجود دارد که ممکن است به شما در یافتن پاسخ کمک کند.
چرا من نمی توانم وارد سیستم شوم؟
آیا رمز عبور خود را اشتباه تایپ کرده اید یا دستور sudo را سه بار در پانزده دقیقه لغو کرده اید؟ اگر چنین است، شما یک مکانیسم پیشگیری را در برابر حملات brute-force راه اندازی کرده اید: برای جزئیات بیشتر به Security#Lock out user after three failed login attempts مراجعه کنید.
آیا ارچ "phone home" میکند؟
به طور خلاصه؟ خیر
در جزئیات بیشتر:
- کاربران NetworkManager باید بدانند که اتصال خودکار را بررسی می کند. URL اتصال پیشفرض توسط Arch ارائه شده است و متعهد به عدم ثبت هرگونه دسترسی است.
- کلاینتهای پروتکل زمان شبکه در پیکربندی پیشفرض خود از یک مجموعه ارایه دهنده از سرورهای NTP ارائه شده توسط پروژه NTP Pool (طبق قوانین آن) استفاده میکنند.
- همانطور که در یادداشت در pacman/Package signing#Upgrade system regularly توضیح داده شده است، یک تایمر systemd یک بار در هفته اجرا می شود تا امضاهای جدید کلیدهای مورد اعتماد را به روز کند. در آنجا نیز هیچ گونه ورود به سیستم وجود ندارد.
- ابزار بهروزرسانی فهرست آینهای Reflector فهرست آینهای را از archlinux.org دانلود میکند. برای محیط نصب زنده، به طور پیش فرض فعال است و به محض برقراری اتصال به شبکه اجرا می شود.
ممکن است بخواهید با مشارکت در پروژه pkgstats که دادههای ناشناس محبوبیت بسته را جمعآوری میکند تا به توسعهدهندگان Arch کمک کند تا تلاش های خود را اولویتبندی کنند، داوطلبانه "phone home" بگیرید.
مدیریت بسته
برای پاسخهای بیشتر به صفحات pacman, pacman/Tips and tricks و Official repositories مراجعه کنید.
من یک خطا در بسته X پیدا کرده ام. چه کاری باید انجام دهم؟
ابتدا، باید بفهمید که آیا این خطا چیزی است که تیم ارچ می تواند آن را برطرف کند. اغلب اینطور نیست (مثلاً خرابی فایرفاکس ممکن است تقصیر تیم موزیلا باشد). به این خطای بالادسته می گویند، دستورالعمل های گزارش اشکال بالادسته یا ارچ را ببینید. اگر مشکل ارچ است، یک سری مراحل وجود دارد که می توانید انجام دهید:
- برای اطلاعات در فروم ها جستجو کنید. ببینید آیا شخص دیگری متوجه آن شده است یا خیر.
- یک گزارش باگ با اطلاعات دقیق در مورد ردیاب باگ ارچ لینوکس در GitLab ارسال کنید.
- اگر مایلید، یک پست فروم بنویسید که در آن مشکل و این که قبلاً آن را گزارش کرده اید، توضیح دهید. این به جلوگیری از گزارش خطای مشابه توسط افراد زیادی کمک می کند.
بسته های ارچ باید از یک قرارداد نامگذاری منحصر به فرد استفاده کنند. ".pkg.tar.zst" خیلی طولانی و/یا گیج کننده است
این مورد در لیست پستی ارچ مورد بحث قرار گرفته است. برخی پسوند فایل .pac را پیشنهاد کردند، اما برنامه ای برای تغییر پسوند بسته وجود ندارد. همانطور که Tobias Kieslich، یکی از توسعه دهندگان ارچ می گوید: "یک بسته یک تاربال " [فشرده] " است! و می توان آن را باز کرد، بررسی کرد و توسط هر برنامه ای با قابلیت دستکاری tar را دارد. علاوه بر این، نوع mime-type به طور خودکار توسط اکثر برنامه ها به درستی شناسایی می شود."
پک من به یک کتابخانه نیاز دارد تا سایر برنامه ها بتوانند به راحتی به اطلاعات بسته دسترسی داشته باشند
پک من یک فرانت اند برای libalpm(3)–مدیریت بسته ارچ لینوکس–کتابخانه است که اجازه میدهد فرانت اندهای جایگزین، مانند یک رابط کاربری گرافیکی، نوشته شوند.
پک من به ویژگی X نیاز دارد!
اگر فکر میکنید ایدهای ارزشش را دارد، میتوانید آن را در pacman-dev مطرح کنید. همچنین برای درخواستهای مربوط به ویژگیهای موجود، به آدرس https://gitlab.archlinux.org/pacman/pacman/-/issues مراجعه کنید.
با این حال، بهترین راه برای اضافه کردن یک ویژگی به پکمن یا آرچ لینوکس، پیادهسازی آن توسط خودتان است. ممکن است پچ یا کد به طور رسمی پذیرفته شود یا نشود، اما شاید دیگران از تلاش شما قدردانی، آن را آزمایش و در آن مشارکت کنند.
من به تازگی بسته X را نصب کردهام. چگونه آن را اجرا کنم؟
اگر از محیط دسکتاپی مانند KDE یا GNOME استفاده میکنید، اگر برنامه در منوی دسکتاپ باشد، باید بهطور خودکار در منوی شما نمایش داده شود. اگر میخواهید برنامه را از طریق ترمینال اجرا کنید و نام باینری آن را نمی دانید، از دستور زیر استفاده کنید:
$ pacman -Qlq package_name | grep /usr/bin/
چرا فقط یک نسخه از هر کتابخانه مشترک در مخازن رسمی وجود دارد؟
چندین توزیع، مانند دبیان، نسخههای مختلفی از کتابخانههای اشتراکی را در قالب بستههای مختلف بستهبندی کردهاند: libfoo1، libfoo2، libfoo3 و غیره. به این ترتیب میتوان برنامههایی را که بر اساس نسخههای مختلف libfoo روی یک سیستم نصب شدهاند، کامپایل کرد.
در مورد توزیعی مانند Arch، فقط آخرین نسخههای بستهبندی شده رسماً پشتیبانی میشوند. با حذف پشتیبانی از نرمافزارهای قدیمی، توسعهدهندگان بسته میتوانند زمان بیشتری را صرف اطمینان از عملکرد صحیح جدیدترین نسخهها کنند. به محض اینکه نسخه جدیدی از یک کتابخانه مشترک از منبع اصلی در دسترس قرار گیرد، به مخازن اضافه میشود و بستههای مورد نظر برای استفاده از نسخه جدید بازسازی میشوند.
چه میشود اگر من یک بهروزرسانی کامل سیستم را اجرا کنم و یک بهروزرسانی برای یک کتابخانه مشترک وجود داشته باشد، اما برای برنامههایی که به آن وابسته هستند، بهروزرسانی وجود نداشته باشد؟
این سناریو اصلاً نباید اتفاق بیفتد. با فرض اینکه برنامهای به نام foobaz در یکی از مخازن رسمی باشد و با موفقیت در برابر نسخه جدیدی از یک کتابخانه مشترک به نام libbaz ساخته شود، همراه با libbaz بهروزرسانی خواهد شد. با این حال، اگر با موفقیت ساخته نشود، بسته foobaz دارای یک وابستگی نسخهبندی شده (مثلاً libbaz 1.5) خواهد بود و به دلیل تداخل، توسط پکمن در طول بهروزرسانی libbaz حذف خواهد شد.
اگر foobaz بستهای است که خودتان ساختهاید و از AUR نصب کردهاید، باید foobaz را در برابر نسخه جدید libbaz بازسازی کنید. اگر ساخت با شکست مواجه شد، اشکال را به توسعهدهندگان foobaz گزارش دهید.
آیا ممکن است که یک بهروزرسانی بزرگ کرنل در مخزن وجود داشته باشد و برخی از بستههای درایور بهروزرسانی نشده باشند؟
خیر، این امکان وجود ندارد. بهروزرسانیهای عمده هسته (مثلاً از linux 3.5.0-1 به linux 3.6.0-1) همیشه با بازسازی تمام بستههای درایور هسته پشتیبانیشده همراه هستند. از سوی دیگر، اگر یک بسته درایور پشتیبانینشده (مثلاً از AUR) روی سیستم خود نصب کردهاید، در صورت عدم بازسازی آن برای هسته جدید، بهروزرسانی هسته ممکن است همه چیز را برای شما خراب کند. کاربران مسئول بهروزرسانی هرگونه بسته درایور پشتیبانینشدهای هستند که نصب کردهاند.
قبل از بهروزرسانی چه باید کرد؟
بخش System maintenance#Upgrading the system را دنبال کنید.
بهروزرسانی بسته منتشر شد، اما پک من میگوید سیستم بهروز است
آینههای پک من بلافاصله همگامسازی نمیشوند. ممکن است بیش از ۲۴ ساعت طول بکشد تا بهروزرسانی برای شما در دسترس قرار گیرد. تنها گزینهها صبور بودن یا استفاده از آینه دیگری است. MirrorStatus میتواند به شما در شناسایی یک آینه بهروز کمک کند.
پروژهی آپاستریم X نسخهی جدیدی منتشر کرده است. چقدر طول میکشد تا بستهی آرچ به آن نسخهی جدید بهروزرسانی شود؟
بهروزرسانیهای بستهها زمانی منتشر میشوند که آماده باشند. این مدت زمان مشخص میتواند از چند ساعت پس از انتشار یک بهروزرسانی رفع اشکال جزئی تا چند هفته پس از بهروزرسانی عمده برای یک گروه بزرگ از بستهها باشد. مدت زمان بین انتشار نسخه جدید تا انتشار یک بسته جدید توسط آرچ، به بستههای خاص و در دسترس بودن مینتینر های بسته بستگی دارد. علاوه بر این، برخی از بستهها مدتی را در مخزن آزمایشی میگذرانند، بنابراین این میتواند زمان قبل از بهروزرسانی یک بسته را طولانیتر کند. مینتینرهای بستهها سعی میکنند به سرعت بهروزرسانیهای پایدار را به مخازن ارائه دهند. اگر بستهای را در مخازن رسمی پیدا کردید که قدیمی است، به صفحه آن بسته در وبسایت بسته بروید و آن را علامتگذاری کنید.
اگر به نسخه قدیمیتری از یک کتابخانه نصبشده نیاز داشته باشم، آیا میتوانم به نسخه جدیدتر لینک نمادین کنم؟
اگر خوش شانس باشید، ممکن است برای مدتی جواب بدهد. در هر صورت، این یک راه حل مناسب نیست، زیرا:
- نسخههای کتابخانهها به صورت تصادفی تغییر نمیکنند - API/ABI احتمالاً تغییر کرده است (احتمالاً با حذف بیتهایی)، و اینکه آیا این تغییرات بر میزان استفاده تأثیر میگذارند یا خیر، فقط به شانس بستگی دارد.
- این لینک نمادین توسط یک مدیریت کننده بسته قابل ردیابی نخواهد بود. مبتدیانی که بلافاصله سعی در هک کردن فایلهای کتابخانه سیستم دارند، در معرض بیشترین خطر ایجاد تغییر ناخواستهای هستند که نمیتوانند آن را تشخیص دهند/رفع کنند، که یک مدیریت کننده بسته به محافظت در برابر آن کمک میکند.
- یک جایگزین جزئی برای ذخیره فایل کتابخانه قدیمی در سیستم فایل، بدون ردیابی، فراموش شده و عدم مشاهده/رفع اشکالات امنیتی احتمال می رود.
در عوض، مثلاً compat (compatibility) package, استفاده کنید/بنویسید که نسخهی کتابخانهی مورد نیاز را ارائه میدهد.
64-بیت
چگونه تشخیص بدهم که پردازنده من با x86_64 سازگار است؟
اگر پردازنده شما با x86_64 سازگار است، پرچم lm (حالت طولانی
) را در proc/cpuinfo/ خواهید داشت. به عنوان مثال،
$ grep -w lm /proc/cpuinfo
در ویندوز، استفاده از نرم افزار رایگان CPU-Z به تشخیص سازگاری CPU شما با 64 بیت کمک می کند. پردازندههای دارای مجموعه دستورالعمل AMD64" AMD" یا راه حل اینتل "EM64T" باید با نسخههای x86_64 و بستههای باینری سازگار باشند.
چرا 64-بیت؟
تحت اکثر شرایط سریعتر است و به عنوان یک امتیاز اضافی همچنین به دلیل ماهیت تصادفی سازی طرح فضای آدرس (ASLR) در ترکیب با کد مستقل از موقعیت (PIC) و NX Bit که در کرنل i686 موجود نیست به دلیل غیرفعال شدن افزونه آدرس فیزیکی (PAE) به طور ذاتی ایمن تر است. اگر رایانه شما بیش از 4 گیگابایت رم داشته باشد، تنها یک سیستم عامل 64 بیتی می تواند به طور کامل از آن استفاده کند.
همچنین برنامه نویسان به طور فزاینده ای تمایل کمتری به 32 بیت ("legacy") دارند زیرا CPU های "جدید" x86 معمولاً از پسوندهای 64 بیتی پشتیبانی می کنند.
دلایل بسیار بیشتری وجود دارد که میتوانیم در اینجا فهرست کنیم تا به شما بگوییم از 32 بیت اجتناب کنید، اما بین کرنل، فضای کاربر و برنامههای جداگانه، فهرست کردن آخرین چیزهایی که 64 بیت این روزها بسیار بهتر انجام میدهند، به سادگی قابل انجام نیست.