تأیید فایل های دانلود شده (PGP)
[Isolinux] اصلاح خط فرمان هسته
نصب GRUB (برای سیستمهای با بایوس
سیستم مدیریت بسته APK در Alpine Linux
راهنمای کاربر آلپاین
آلپین چیست؟
این کتاب راهنمای کاربر Alpine است، تلاشی برای متمرکز کردن اطلاعات مرتبط Alpine Linux. این راهنما حاوی دستورالعملهای نصب برای یک کاربر معمولی و همچنین اطلاعاتی برای کار با اجزای سیستم مربوطه است.این کتابچه راهنما بر سبک سنتی نصب “به دیسک” تمرکز دارد و عمدتاً سیستم های دسکتاپ و سرور را هدف قرار می دهد. اگر مورد استفاده شما متفاوت است، باید به اندازه کافی با لینوکس آشنا باشید و می توانید برای جزئیات بیشتر به دفترچه راهنمای توسعه دهنده و صفحات کتابچه راهنمای کاربر مراجعه کنید.
مقدمه
Alpine Linux یک توزیع لینوکس سبک، ایمن و مبتنی بر معماری میکروکرنل است که به دلیل سرعت، امنیت و کارایی بالا شهرت دارد. این توزیع به عنوان یک سیستم عامل مستقل و همچنین به عنوان پایه برای دیگر توزیعها و سیستمهای جاسازی شده مورد استفاده قرار میگیرد.
ویژگیها
سبکی: Alpine Linux یکی از سبکترین توزیعهای لینوکس موجود است که به دلیل استفاده از بستههای بهینهسازی شده و سیستم فایل فشرده شده است.
امنیت: این توزیع با تمرکز بر امنیت طراحی شده است و از بستههای منبع باز و بررسی شده استفاده میکند. همچنین، از سیستم مدیریت بسته پیشرفتهای برخوردار است که به کاهش آسیبپذیریها کمک میکند.
کارایی: Alpine Linux به دلیل استفاده از هسته لینوکس بهینهسازی شده و سیستم فایل فشرده شده، عملکرد بسیار بالایی دارد.
پشتیبانی از معماریهای مختلف: این توزیع از طیف گستردهای از معماریهای سختافزاری پشتیبانی میکند، از جمله x86، x86_64، ARM، MIPS و PowerPC.
نصب
نصب Alpine Linux نسبتاً ساده است و از طریق محیط کنسول انجام میشود. مراحل نصب شامل پارتیشنبندی دیسک، فرمت کردن پارتیشنها، نصب سیستم پایه و پیکربندی سیستم است.
طبقهبندی و پشتیبانی بستهها
Alpine Linux از یک سیستم طبقهبندی بستهها استفاده میکند که شامل موارد زیر است:
main: شامل بستههای اصلی و پایهای سیستم است.
community: شامل بستههای غیر رسمی و جامعه محور است.
testing: شامل بستههای آزمایشی است که ممکن است باگ داشته باشند.
آرشیوهای بستهها
بستههای Alpine Linux در آرشیوهای مختلفی قرار دارند که شامل موارد زیر است:
آرشیو رسمی: شامل بستههای اصلی و جامعه محور است.
آرشیوهای شخص ثالث: شامل بستههای اضافی و نرمافزارهای غیر رسمی است.
نرمافزارهای شخص ثالث
با وجود اینکه Alpine Linux یک توزیع مینیمالیستی است، اما از طریق آرشیوهای شخص ثالث و ابزارهای مدیریت بسته، امکان نصب نرمافزارهای شخص ثالث وجود دارد.
تاریخچه
Alpine Linux در سال 1992 به عنوان یک پروژه شخصی آغاز شد و در سال 2002 به صورت عمومی منتشر شد. از آن زمان تاکنون، این توزیع به طور مداوم توسعه یافته و بهبود یافته است.
آغاز به عنوان یک پروژه شخصی
Alpine Linux در اوایل دهه 1990 به عنوان یک پروژه شخصی توسط یک توسعهدهنده علاقهمند به سیستمهای عامل کوچک و سبک آغاز شد. هدف اولیه این پروژه، ایجاد یک سیستم عامل پایدار، امن و با عملکرد بالا بود که بتواند در سیستمهای سختافزاری محدود نیز اجرا شود.
انتشار عمومی و رشد
در سال 2002، Alpine Linux به صورت عمومی منتشر شد و در دسترس عموم قرار گرفت. با انتشار عمومی، این توزیع توانست جامعهای از توسعهدهندگان و کاربران را به خود جذب کند. این جامعه به طور فعال در توسعه و بهبود Alpine Linux مشارکت داشتند و باعث رشد و پیشرفت روزافزون آن شدند.
تمرکز بر امنیت و کارایی
از همان ابتدا، امنیت و کارایی دو اصل اساسی در توسعه Alpine Linux بودند. استفاده از بستههای بهینهسازی شده، هسته لینوکس سفارشی و سیستم مدیریت بسته سبک، باعث شد Alpine Linux به عنوان یکی از امنترین و کارآمدترین توزیعهای لینوکس شناخته شود.
مهمترین رویدادهای تاریخی
- 1992: آغاز پروژه به عنوان یک پروژه شخصی.
- 2002: انتشار عمومی Alpine Linux.
- 2006: معرفی سیستم مدیریت بسته APK.
- 2010: انتشار نسخه 2.0 با بهبودهای قابل توجه در عملکرد و امنیت.
- 2015: معرفی نسخه 3.0 با پشتیبانی از معماریهای ARM و PowerPC.
- 2020: انتشار نسخه 3.13 با بهبودهای قابل توجه در پشتیبانی از کانتینرها.
عوامل موفقیت
- جامعه قوی: جامعه فعال و پرشور توسعهدهندگان و کاربران، یکی از مهمترین عوامل موفقیت Alpine Linux بوده است.
- تمرکز بر اصول بنیادی: تمرکز بر امنیت، کارایی و سادگی، باعث شده است Alpine Linux برای بسیاری از کاربران جذاب باشد.
- پشتیبانی از معماریهای مختلف: پشتیبانی از طیف گستردهای از معماریهای سختافزاری، باعث شده است Alpine Linux در کاربردهای مختلفی مورد استفاده قرار گیرد.
- استفاده در پروژههای بزرگ: استفاده از Alpine Linux در پروژههای بزرگ و شناخته شده مانند Docker و Kubernetes، به محبوبیت آن افزوده است.
توزیع
Alpine Linux به صورت رایگان تحت مجوز GNU GPLv2 منتشر میشود.
بستهها
Alpine Linux از سیستم مدیریت بسته مبتنی بر APK استفاده میکند که به کاربران امکان نصب، حذف و بهروزرسانی بستهها را میدهد.
شاخهها
Alpine Linux دارای چندین شاخه است که شامل شاخه اصلی، شاخه پایدار و شاخه آزمایشی است.
برندینگ
Alpine Linux از یک لوگوی ساده و تمیز استفاده میکند که نمایانگر سبک و فلسفه این توزیع است.
سختافزار
Alpine Linux به دلیل سبک بودن و کارایی بالا، برای دستگاههای با سختافزار محدود مناسب است.
سازمان
توسعه Alpine Linux توسط یک گروه کوچک از توسعهدهندگان انجام میشود.
توسعه
توسعه Alpine Linux بر اساس مدل متنباز انجام میشود و جامعه کاربران نقش مهمی در توسعه آن ایفا میکند.
شاخهها و مشتقات
چندین توزیع لینوکس دیگر از Alpine Linux به عنوان پایه استفاده میکنند، از جمله OpenWrt و Buildroot.
منابع
وب سایت رسمی Alpine Linux: https://alpinelinux.org/
توجه: این متن یک معرفی کلی از Alpine Linux است و ممکن است شامل جزئیات کامل نباشد. برای اطلاعات بیشتر، به وب سایت رسمی Alpine Linux مراجعه کنید.
از کجا کمک بگیریم؟
اگر با مشکل مواجه شدید، می توانید در این زمینه کمک بخواهید
یک ایمیل به آلپاین/کاربران
users@lists.alpinelinux.org
چگونه مشارکت کنیم؟
اگر فکر می کنید می توانید در پروژه مستندسازی کمک کنید یا پیشرفت خاصی در ذهن دارید، شما می توانید منابع تمام اسناد را در لینک بدست اوریدنمونه Alpine Gitlab.
https://gitlab.alpinelinux.org/alpine/docs
اصطلاحات
در صورتی که در کامپیوتر یا لینوکس تازه کار هستید.
BIOS
Basic Input-Output System – یک برنامه بسیار ساده که بلافاصله بعد از POST اجرا می شود. در رایانه های قدیمی برای انجام پیکربندی و در ابتدا اجرای بوت لودر استفاده می شود.
بوت لودر
یک برنامه کوچک که وظیفه آن اجرای کرنل، بارگذاری فایل سیستم اولیه زمان اجرا و ارسال هر آرگومان لازم برای اطمینان از بوت شدن است.
DHCP
پروتکل پیکربندی میزبان پویا – یک سیستم رزرو خودکار IP بسیار رایج است. اگر یک روتر مصرف کننده دارید، به احتمال زیاد از آن استفاده می کنید.
شبکه محلی کابلی
یک اصطلاح نسبتاً عمومی که بیشتر به معنای “اینترنت سیمی” است. وایفای بیسیم است، اترنت شامل نوعی سیم است (معمولاً جک سبک RJ45 با کابلهای مسی در داخل).
نام میزبان
نامی که دستگاه شما را مشخص می کند. یک نام میزبان خوب مستقیماً به مالک یا هدف مرتبط نیست. به این فکر کنید که نام یک حیوان خانگی را بگذارید
هسته
برنامه اصلی سیستم عامل – موجود در همه سیستم عامل ها.
NTP
پروتکل زمان شبکه – سرویسی که ساعت رایانه شما را با ساعت دیگر همگام می کند. معمولاً برای همگام سازی با یک استخر تخصصی استفاده می شود که اطلاعات خود را از یک ساعت اتمی بسیار دقیق دریافت می کند.
پست
خودآزمایی روشن – فرآیندی که همه رایانههای مدرن در همان ابتدای فرآیند بوت شدن، بلافاصله پس از فشار دادن دکمه پاور، طی میکنند.
PXE
محیط اجرای پیش از راهاندازی – روشی برای بوت کردن ISO دیسک از شبکه. پشتیبانی از راهاندازی PXE در روترهای مصرفکننده غیرمعمول است، اما احتمال وجود آن در شبکههای تجاری وجود دارد.
ریشه
کاربر ریشه مالک سیستم است – آن را مانند یک مدیر فوق العاده در نظر بگیرید – همه حقوقی را که ممکن است داشته باشد دارد. برای استفاده روزمره در نظر گرفته نشده است.
SLAAC
StateLess Address AutoConfiguration – روشی خاص برای ipv6 برای ایجاد دسترسی محلی (غیرقابل دسترسی از طریق روتر).
پوسته
برنامه ای که می تواند آنچه را که در آن تایپ می کنید به عنوان دستورالعملی برای اجرای دستورات یا برنامه ها روی دیسک خود به روشی خاص تفسیر کند.
SSH
Secure SHell – راهی راحت برای استفاده از پوسته در سیستم دیگری به روشی ایمن. معمولا در لینوکس استفاده می شود.
شبیه ساز ترمینال
یک صفحه نمایش یا پنجره، معمولا با پس زمینه سیاه و فونت سفید، که می تواند میزبان یک پوسته باشد.
UEFI
رابط میانافزار توسعهپذیر یکپارچه – جایگزینی پیچیدهتر و انعطافپذیرتر برای BIOS، که میتواند در برخی شرایط، راهاندازی دستی و خودکار را پیچیدهتر و دشوارتر کند.
انتخاب معماری مناسب
معماری
سخت افزار کامپیوتر، و به طور خاص CPU ها، در چندین معماری مختلف وجود دارند. یک معماری بسیار رایج مصرف کننده به نام x86_64 شناخته می شود – معماری سنتی x86 اینتل با پسوندهای 64 بیتی AMD. اگر Alpine را روی یک رایانه سنتی نصب می کنید، به احتمال زیاد این همان چیزی است که دارید. با این حال، Alpine از چندین معماری دیگر برای اهداف نصب روی دیسک پشتیبانی می کند:
x86_64
رایج ترین معماری دسکتاپ، لپ تاپ و سرور
x86
نوع قدیمیتر x86_64، بهطور فزایندهای کمیابتر و محدود به 4 گیگابایت رم
ppc64le
سیستم های مبتنی بر OpenPower، مانند IBM’s POWER8
s390x
IBM Z
تحت برخی شرایط، میتوانید از معماریهای armhf و aarch64 نیز استفاده کنید – مربوط به تراشههای ARM، به ترتیب 32 بیت و 64 بیت، که دومی ممکن است از UEFI پشتیبانی کند.
نوع ISO
Alpine انواع قابل دانلود را ارائه میدهد.
انواع ISO مربوط به این کتاب راهنما به شرح زیر است:
استاندارد
یک ISO حداقل نصب نیاز به شبکه دارد.
تمدید شده
استاندارد، اما با بسته های اضافی. معماری های موجود کمتر، اما ممکن است راحت تر باشند. اغلب برای نصب بدون دیسک استفاده می شود.
نت بوت
یک ISO netboot که برای استفاده با PXE در نظر گرفته شده است. استفاده از PXE خارج از محدوده این کتاب راهنما است، اما ممکن است به جای ISO استاندارد استفاده شود.
مجازی
ISO استاندارد، اما با استفاده از یک هسته متفاوت، برای محیط های مجازی بهینه شده است.
xen
ISO تخصصی، در نظر گرفته شده برای استفاده در xen dom0.
اگر مطمئن نیستید از چه ISOی استفاده کنید، باید از Extended استفاده کنید، با این فرض که معماری شما پشتیبانی می شود و دستگاه بوت شما به اندازه کافی بزرگ است. در غیر این صورت، باید از ISO استاندارد استفاده کنید.
دانلود
فهمیدن رسانه انتخابی
دانلود ISO در وب سایت رسمی دسترس است
برای اطمینان از سالم بودن فایلهایی که دانلود کردهاید، میتوانید آنچه را که به عنوان «checksum» فایل شناخته میشود محاسبه کنید و آن را با فایلی که عموماً شناخته شده است مقایسه کنید. در کنار دکمه دانلودی که کلیک کردید، یک دکمه جداگانه وجود دارد که روی آن “sha256” نوشته شده است – این یک دانلود مستقیم به یک فایل (بسیار کوچک) است که حاوی هش عمومی گفته شده است.
[لینوکس] محاسبه Sha256
در لینوکس، می توانید هش 256 فایل را با استفاده از آن محاسبه کنیدsha256سودمندی در اینجا یک فرمان مثال است که می توانید در پوسته خود وارد کنید تا مجموع sha256 یک فایل به نام “alpine.iso” را در فهرست فعلی خود محاسبه کنید.
sha256sum alpine.iso
[MacOS] محاسبه sha256
در یک MacOS، می توانید هش 256 فایل را با استفاده از آن محاسبه کنیدshasum در اینجا یک فرمان است که می توانید در پوسته خود وارد کنید تا مجموع sha256 یک فایل به نام “alpine.iso” را در فهرست فعلی خود محاسبه کنید.
shasum -a 256 alpine.iso
[ویندوز] محاسبه sha256
در ویندوز، می توانید هش 256 یک فایل را با استفاده از آن محاسبه کنیداز Get-FileHash PowerShell. در اینجا یک فرمان است که می توانید در PowerShell وارد کنید تا مجموع sha256 یک فایل به نام “alpine.iso” را در فهرست فعلی خود محاسبه کنید.
Get-FileHash .\alpine.iso
تأیید فایل های دانلود شده (PGP)
برای اطمینان از سالم بودن فایلهایی که دانلود کردهاید و توسط توسعهدهندگان امضا شدهاند، میتوانید از فایل امضا استفاده کنید و اعتبار آن را در برابر کلید عمومی امضاکننده و همچنین محتویات ISO بررسی کنید. در کنار دکمه ای که کلیک کردید، یک دکمه جداگانه وجود دارد که روی آن “GPG” نوشته شده است – این یک دانلود مستقیم به یک فایل (بسیار کوچک) است که حاوی امضای گفته شده است.
در حال حاضر، امضاها توسط ncopa انجام می شود که کلید آن در این آدرس موجود است
شما باید این کلید را دانلود و وارد کنید، یا به روش دیگری آن را به زنجیره کلید PGP خود وارد کنید.
با فرض اینکه GnuPG (پیاده سازی PGP) را نصب کرده اید، می توانید امضای “alpine.iso.asc” فایلی به نام “alpine.iso” را که توسط “ncopa.asc” در پوسته امضا شده است، تأیید کنید:
gpg –import ncopa.asc
gpg –verify alpine.iso.asc alpine.iso
با استفاده از ISO
isoفایل به تنهایی خیلی مفید نیست. میتوانید آن را روی یک USB Flash فلش کنید یا آن را روی یک سیدی/دیویدی فیزیکی رایت کنید.
درایو یو اس بی
در ویندوز و MacOS، استفاده از یک ابزار اختصاصی، ماننداچر.
https://www.balena.io/etcher/
در صورت نیاز به جزئیات بیشتر، مستندات آن پروژه را ببینید.
در لینوکس، چنین ابزارهای کمکی وابستگی های زیادی دارند و ممکن است به طور پیش فرض نصب نشوند. به این ترتیب، امکان استفاده دستور dd است و شما باید “ادرس ” فیزیکی درایو USB خود را پیدا کنید. این معمولا به شکل خواهد بود/dev/sdX، که در آن X یک حرف کوچک است، مانند a، b یا c.
هنگامی که دستگاه خود را شناسایی کردید، می توانید فایلی به نام “alpine.iso” را در دستگاه خود فلش کنید (/dev/sdbدر این مثال) با استفاده از دستور زیر:
dd if =alpine.iso of=/dev/sdb
رایت روی CD/DVD
راه دیگری برای استفاده ازisoفایل با رایت آن بر روی سی دی یا دی وی دی است. این همچنین برای سیستم های قدیمی که نمی دانند چگونه از درایو USB بوت شوند مفید است.
در MacOS، می توانید انتخاب کنیدisoفایل، و سپس File Burn Disk Image […] را فشار دهید.
در ویندوز 8 و بالاتر، می توانید روی آن کلیک راست کنیدisoفایل، و سپس Burn Disk Image را فشار دهید.
در لینوکس، هیچ ابزار داخلی پیش فرضی برای رایت ISO وجود ندارد.
[لینوکس] رایت یک فایل ISOی
این کتاب راهنما استفاده از یک ابزار گرافیکی که در داخل آن می توان Tools Burn CD Image را انتخاب کرد.
از طرف دیگر، افرادی که مایل به استفاده از یک محیط گرافیکی برای این کار نیستند، ابزار cdrtoolsبرنامه در اینجا یک دستور مثال است که یک ISO را به اولین درایو دیسک پیدا شده (/dev/sr0) ایجاد میکند.رایت میکند.
cdrecord dev=/dev/sr0 alpine.iso
این باید به صورت روت اجرا شود، مگر اینکه کاربر شما دسترسی نوشتن به دستگاه بلوک خروجی داشته باشد. |
بوت شدن
هنگامی که رسانه نصب مناسب خود را آماده کردید، باید در محیط زنده Alpine Linux بوت شوید. در طول راهاندازی سیستم خود، باید این گزینه را داشته باشید که تنظیمات BIOS/UEFI را در کنار آنچه که اغلب «One Time Boot Override» یا «Boot Selection» نامیده میشود، وارد کنید. همچنین، میتوانید دکمه تنظیمات BIOS/UEFI را فشرده کنید و ترتیب راهاندازی (اغلب مجاز) را برای اولویتبندی رسانه خود تغییر دهید. اگر مشخص نیست کدام دکمه است، میتوانید یکی از این موارد را که معمولاً برای همه این اهداف استفاده میشود
[اختیاری] اصلاح خط فرمان هسته
سناریوهایی وجود دارد که در آنها باید خط فرمان هسته را تغییر دهید. حتی ممکن است به دلایل تشخیصی نیاز به انجام این کار داشته باشید. در دفترچه راهنمای توسعهدهنده میتوانید ببینید چه پارامترهایی در دسترس هستند و چه کاری انجام میدهند.
یکی از دلایل متداول برای تغییر خط فرمان هسته این است که به صراحت به لینوکس بگوییم که به مولد تصادفی CPU که Alpine به طور پیش فرض به آن اعتماد دارد اعتماد نکند. در حالی که دلایل انجام این کار در اینجا مورد بحث قرار نخواهد گرفت، انجام این کار به این معنی است که شما باید آنتروپی را از منابع دیگر جمع آوری کنید. اگر همچنان میخواهید آن را غیرفعال کنید، میتوانید اضافه کنیدrandom.trust_cpu=offبه خط فرمان هسته خود در بوت. |
[Grub] اصلاح خط فرمان هسته
در grub، هنگامی که اعلان راهاندازی به شما نمایش داده میشود، میتوانید e را فشار دهید تا پیکربندی راهاندازی را ویرایش کنید. سپس می توانید خطی را که با آن شروع می شود پیدا کنیدلینوکسو پارامترهایی را از آن خط اضافه یا حذف کنید.
[Isolinux] اصلاح خط فرمان هسته
تحت isolinux، ویرایشگر گرافیکی وجود ندارد، اما میتوانید خط فرمان هسته را مستقیماً مشخص کنید. برای انجام این کار، باید برچسب صحیح را انتخاب کنید (به عنوان مثال،lts) و پارامترهای خود را در آنجا اضافه کنید. به عنوان مثال، اگر می خواهید اضافه کنیدrootflags=noatimeدر خط فرمان هسته شما، خط فرمان isolinux شما باید به این صورت باشد:
boot: lts rootflags=noatime
نصب و راه اندازی
راه اندازی-آلپین ن
اکنون که بوت شده اید، می توانید بدون رمز عبور به عنوان کاربر اصلی وارد شوید. آلپاین فیلمنامه ای به نام داردکه مراحل اولیه نصب را انجام می دهد. این بخش از کتاب راهنما حالت های عملکرد آن و همچنین نحوه استفاده از آن را توضیح می دهد. با این حال، هیچ اسکریپتی کامل نیست، بنابراین توصیه می شود اگر مورد استفاده شما چندان ساده نیست، یا در استفاده از آن با مشکل مواجه شدید، به ادامه بخش بعدی که راه اندازی دستی را پوشش می دهد.
setup-alpine -q
q یا حالت “سریع” ازراه اندازی-آلپین اسکریپت به شخص اجازه می دهد تا یک پیکربندی ساده سیستم را به سرعت اجرا کند و سپس سایر کارهای نصب را، احتمالاً از راه دور، ادامه دهد.
- چیدمان صفحه کلیدخود را تنظیم کنید
- نام میزبان خود را تعیین کنید . مقدار پیش فرض “alpine”.
- رابط اصلی شبکه خود را برای استفاده DHCPتنظیم کنیدو شروع به شبکه سازی کنید
- تنظیمات مختلف سیستم مربوطه را فعال کرده و آنها را راه اندازی کنید
- هاست ایجاد کنید/etc/hosts
- مخزن پیش فرض را فعال کنید
حالت سریع برای آنلاین کردن و عملیاتی کردن یک سیستم بسیار سریع (بنابراین نام) مفید است تا سپس به صورت دستی از آن استفاده کنید.
مراحل پرش در حالت سریع به ترتیب عبارتند از:
- تنظیم رمز عبور ریشه
- تنظیم کردن منطقه زمانی
- راه اندازی یک پروکسی اختیاری
- فعال کردنSSH
- NTPهماهنگ سازی
- پیکربندی دیسک،
- پیکربندی مکانیسم کش apk
نصب کامل
راه اندازی-آلپین در حالت عادی همه مراحل فوق را در برخی شرایط انجام می دهد و بسیار کمتر به مقادیر پیش فرض تکیه می کند.
Setup-alpine
اگر سناریوی شما پیش پا افتاده است، توصیه می شود از این حالت به طور مستقیم استفاده کنید. یک سناریوی بی اهمیت به این صورت تعریف می شود:
- شما یک دیسک فیزیکی (در حال حاضر) دارید و می خواهید روی آن نصب کنید
- اتصال شبکه اصلی شما با DHCP سازگار است
- شما اهمیت زیادی به بوت لودر یا فایل سیستمی که استفاده می کنید ندارید
اگر همه اینها اعمال شوند، می توانید به سادگی اجرا کنید و دستورات را برای راه اندازی سیستم خود دنبال کنید.
پاسخ فایل ها
می توانید پاسخ های مختلف را از قبل برنامه ریزی کنید.
setup-alpine -f ANSWER_FILE
از تنظیمات فایل استفاده خواهد کردANSWER_FILEبه جای پرسیدن سوال به صورت تعاملیsetup-alpine -c ANSWER_FILEیک فایل پاسخ جدید با مقادیر پیش فرض زیر ایجاد می کند. می توانید این فایل را ویرایش کرده و با آن استفاده کنید
setup-alpine -f
# Example answer file for setup-alpine script
# If you don’t want to use a certain option, then comment it out
# Use US layout with US variant
KEYMAPOPTS=”us us”
# Set hostname to alpine-test
HOSTNAMEOPTS=”-n alpine-test”
# Contents of /etc/network/interfaces
INTERFACESOPTS=”auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
hostname alpine-test
”
# Search domain of example.com, Google public nameserver
DNSOPTS=”-d example.com 8.8.8.8″
# Set timezone to UTC
TIMEZONEOPTS=”-z UTC”
# set http/ftp proxy
PROXYOPTS=”http://webproxy:8080″
# Add a random mirror
APKREPOSOPTS=”-r”
# Install Openssh
SSHDOPTS=”-c openssh”
# Use openntpd
NTPOPTS=”-c openntpd”
# Use /dev/sda as a data disk
DISKOPTS=”-m data /dev/sda”
# Setup in /media/sdb1
LBUOPTS=”/media/sdb1″
APKCACHEOPTS=”/media/sdb1/cache”
همچنین می توانید متغیرهای محیطی اضافی را برای پیکربندی رفتار هر ابزار معین اضافه کنید.
نصب نیمه اتوماتیک
اگر اینجا هستید، به این دلیل است که میخواهید alpine را به صورت نیمه خودکار نصب کنید، یا به این دلیل است که با مشکلاتی مواجه شدید.. در هر صورت، این بخش از کتاب راهنما، گام به گام نحوه راهاندازی و راهاندازی یک سیستم را توضیح میدهد. در این بخش کاربردهای مختلف را خواهید دید.
چیدمان صفحه کلید
چیدمان صفحه کلید توسط فایل تنظیمات که در/etc/conf.d/loadkmap(نقشه کلید) تعریف شده است. فایل نامگذاری شده در این متغیر بارگذاری می شود.
نقشه های کلیدی مختلف در بسته وجود دارد
kbd-bkeymaps
usr/share/bkeymaps
در داخل آن دایرکتوری، چندین دایرکتوری با دسته بندی های جهانی برای نقشه های کلید وجود دارد. در داخل آن دایرکتوری ها، انواع محلی هر دسته از نقشه کلید وجود دارد. به عنوان مثال، برای داشتن نوع صفحه کلید معمولی، باید از آن استفاده کنید
usr/share/bkeymaps/us/us.bmap.gz
یک راه آسان برای انتخاب نقشه کلید استفاده از دستور تنظیم-نقشه کلید است. به سادگی اجرای آن باعث میشود نقشههای کلیدی مختلف موجود را مرور کنبد، از شما میخواهد از کدام یکم میخواهید استفاده کنید و سپس پیکربندی کنید.
setup-keymap us us
نام میزبان
نام میزبان شما نام رایانه شما است. مهم است که نام هاست در شبکه محلی شما منحصر به فرد باشد. اگر نیاز دارید که نام میزبان خود را چه چیزی بگذارید،تنظیمات نام میزبان اصلی، محتوایی است که در آن مسیر/etc/hostname هستند. با این حال، برخی محدودیتهای رایج در مورد اینکه چه چیزی باید باشد یا نباید وجود دارد
شما میتوانید آن را بدون هیچ آرگومان درخواستی فراخوانی کنید، یا میتوانید آن را با یک آرگومان برای تنظیم نام میزبان خود اجرا کنید.
به عنوان مثال، اگر می خواهید نام میزبان شما “alpine” باشد، دستور زیر را اجرا کنید:
setup-hostname alpine
اگر میخواهید برخی از عملیات Loopback را تسریع کنید، میتوانید آن فایل را نیز تغییر دهید. برای مثال، اگر میخواهید نام میزبان خود را روی «alpine» تنظیم کنید، بدون دامنه خاصی برای شبکهتانفایل etc/hosts می تواند به این شکل باشد:
127.0.0.1 localhost.localdomain localhost alpine.localdomain alpine
::1 localhost.localdomain localhost alpine.localdomain alpine
با انجام این کار، باید نام میزبان را اعمال کنید و سرویس مربوط را راه اندازی مجددکنید.
rc-service hostname
شبکه سازی
قبل از اینکه بقیه سیستم را پیکربندی کنید، باید شبکه را راه اندازی کنید. به عنوان مثال، این به شما امکان میدهد تا بوتلودرها را دانلود کنید، sshd را پیکربندی کنید.
پیکربندی شبکه بی سیم
اگر سیستم شما پورت (یا اتصال) اترنت در دسترس ندارد، باید اتصال بی سیم را راه اندازی کنید. اکیداً توصیه می شود سعی کنید از این امر اجتناب کنید.
با این حال، در سناریویی که هیچ انتخابی ندارید، قبل از اینکه بتوانید شبکه را پیکربندی کنید، باید با آن ارتباط برقرار کنید.
برای انجام این کار، توصیه می شود از دستورزیر استفاده کنید
setup-interfaces
DHCP
در بیشتر موارد، شما می خواهید از DHCP استفاده کنید. اگر در یک شبکه حرفه ای هستید یا یک روتر خانگی مشترک دارید.. DHCP یک آدرس IP به سیستم شما تخصیص می دهد، یک سرور نام برای پرس و جوهای DNS به آن می دهد و به طور کلی میزان کار مورد نیاز را به میزان زیادی کاهش می دهد. برای یک راهاندازی معمولی DHCP، میتوانید آن را با اجرای سریع تنظیم کنید
setup-interfaces -a
اگر این کار نمی کند (یا در یک شبکه بی سیم هستید)، ممکن است لازم باشد آن را بدون پرچم “a” اجرا کنید. در چنین سناریویی، اسکریپت از شما سوالاتی در مورد توپولوژی شبکه شما می پرسد که می توانید به آنها پاسخ دهید.
IP استاتیک
در برخی موارد، شبکه شما DHCP را در دسترس نخواهد داشت. در آن سناریو، شما باید ویرایش کنید
/etc/network/interfaces
/etc/resolv.conf
پیش فرض (DHCP)/etc/network/interfacesفایل چیزی شبیه به این خواهد بود:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
برای مشخص کردن جزئیات شبکه خود، باید جزئیات زیر را بیابید:
- آدرسی که سیستم شما باید داشته باشد (هنوز نباید گرفته شود)
- آدرس دروازه
- زیرشبکه ماسک شبکه (در اکثر شبکه ها این است255.255.255.0)
شما باید بتوانید بیشتر این موارد را از مدیر شبکه خود بخواهید. در این مثال، ما تعیین کرده ایم که سیستم شما باید IP داشته باشد192.168.0.147، دروازه در است192.168.0.1و زیر شبکه ماسک است255.255.255.0. در آن سناریو،/etc/network/interfacesفایل باید به این شکل باشد:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.0.147
netmask 255.255.255.0
gateway 192.168.0.1
DNS
اگر از DHCP استفاده نکردید، باید DNS را نیز تنظیم کنید. این کار با ویرایش این فایل انجام می شود.
//etc/resolv.conf
در بیشتر موارد می توانید از1.1.1.1،8.8.8.8یا9.9.9.9به عنوان سرور DNS استفاده کنید.
به عنوان مثال/etc/resolv.conf
nameserver 1.1.1.1
nameserver 8.8.8.8
می توانید ازsetup-dns استفاده کنید
setup-dns
اعمال پیکربندی
هنگامی که تمام موارد فوق در نظر گرفته شد، اکنون می توانید پیکربندی شبکه را شروع کنید.
rc-service
در صورت تمایل، می توانید با استفاده از آن تنظیم کنید تا در هنگام بوت بارگذاری شودrc-update اضافه کردن بوت شبکه.
منطقه زمانی
ممکن است علاقه مند باشید که دستگاهتان از نظر زمانی مکان شما را بداند. در musl، منطقه زمانی با علامت تعریف می شودTZمتغیر محیطی، که باید یک منطقه زمانی به سبک POSIX را بیان کند، یا مستقیماً به یک فایل اشاره کنید یا یک استاندارد داشته باشد
/usr/share/zoneinfo
/share/zoneinfo
به عنوان مثال، اگر منطقه انتخابی شما است آمریکا/نیویورک، شما این را اجرا کنید:
install -Dm 0644 /usr/share/zoneinfo/America/New_York /etc/zoneinfo/America/New_York
در نهایت، شما باید متغیر محیطی TZ را به سیستم خود اضافه کنید. می توانید این کار را با اجرای موارد زیر با مثال منطقه زمانی انجام دهید:
export TZ=’America/New_York’
echo “export TZ=’$TZ'” >> /etc/profile.d/timezone.sh
مخازن
اگر می خواهید بتوانید بسته ها را نصب کنید، می خواهید چند مخزن داشته باشید. به طور پیش فرض، رسانه بوت شما دارای یک مخزن داخلی است که در خود رسانه بوت قرار دارد. با این حال، اکنون که شبکه دارید، ممکن است بخواهید بسته هایی را خارج از poll نسبتا کوچک موجود در رسانه بوت نصب کنید. مخازن برای مدیر بسته (apk) در فایلی به نام پیکربندی می شوند/etc/apk/repositoriesو کلیدهای امضای معتبر در زیر قرار دارند/etc/apk/keys/. رسانه بوت شما باید دارای کلیدهای از پیش پیکربندی شده معتبر باشد، اما نه مخازن خارجی. در حال حاضر، می توانید لیست آینه های موجود و وضعیت آنها را در اینجا مشاهده کنید
به عنوان مثال/etc/apk/repositoriesفایل، که از تمام مخازن پایدار از آینه اصلی آخرین نسخه نسخه استفاده می کند:
http://dl-cdn.alpinelinux.org/alpine/v3.13/main
http://dl-cdn.alpinelinux.org/alpine/v3.13/community
با فرض اینکه پیکربندی شبکه شما انجام شده است، می توانید از آن نیز استفاده کنیدsetup-apkreposابزار، که لیستی از مخازن معتبر را دریافت می کند و به شما امکان انتخاب بین آنها را می دهد (و گزینه هایی مانند “تصادفی”).
setup-apkrepos
رمز عبور ریشه
در این مرحله، باید رمز عبور root را تنظیم کنید. انجام این کار آسان است – به سادگی اجرا کنیدpasswdو دستورات را دنبال کنید.
SSH
داشتن SSH بسیار راحت است – به این معنی که شما می توانید در راحتی شبیه ساز ترمینال خود باشید، نه یک getty خام (شبیه ساز تمام صفحه که هنگام راه اندازی یک رسانه نصب آلپاین نشان داده می شود). اکنون که شبکه داریم، می توانیم یک شبح ssh راه اندازی کنیم.
در حال حاضر دو دیمون پوسته ایمن اصلی وجود دارد – openssh و dropbear. دومی سادهتر است، اما قالب کلیدی (ناسازگار) خود را دارد و فقط از طریق آرگومانهای خط فرمان قابل پیکربندی است – به این ترتیب، برای مبتدیان توصیه نمیشود. می توانید با استفاده از یکی از آنها را نصب کنیدapk اضافه کردن نام، جایی که نام به ترتیب “dropbear” یا “openssh” است
توجه داشته باشید که این کار را نیز می توان انجام داد.
setup-sshd
NTP
برای اطمینان از اینکه ساعت شما درست است.می توان با استفاده از یک دستور NTP به دست آورد. برخی از موارد رایج وopenntpd هستند. با استفاده از این دستور می توانید آنها را نصب کنید
apk add name
توجه داشته باشید که دستور setup-ntp را نیز این کار را برای شما انجام میدهد.
پارتیشن بندی دیسک
دستور setup-disk می تواند پارتیشن بندی را برای شما انجام دهد. یک جدول پارتیشن روی هارد دیسک شما ایجاد می کند، آن را طبق مشخصات پارتیشن بندی می کند، پارتیشن ها را با سیستم فایل فرمت می کند، سیستم پایه را راه اندازی می کند و بوت لودر را نصب می کند. این بخش نحوه استفاده از آن و همچنین تنظیمات مختلف را توضیح می دهد.
گزینه ها و تنظیمات
setup-disk از طریق آرگومان های خط فرمان و همچنین متغیرهای محیطی پیکربندی می شود. در بیشتر موارد، اگر میخواهید دیسک راهاندازی همه کارها را برای شما انجام دهد، نباید چیزی فراتر از آن را مشخص کنید
متغیرهای محیطی:
boot
فایل سیستم مورد استفاده در/بوت، پیش فرض ext4 است، همچنین ext2، ext3، (مسطح) btrfs، xfs و vfat (الزامی در UEFI) را می دهد.
بوت لودر
بوت لودر برای استفاده پیشفرض syslinux است، اما استفاده از grub را نیز مجاز میداند، مگر اینکه از UEFI استفاده شود که در این صورت گراب مورد نیاز است.
BOOTSIZE
اندازه ی/بوت.
DISKLABEL
نوع جدول پارتیشن مورد استفاده پیشفرض dos است، اما استفاده از gpt را نیز مجاز میداند، مگر اینکه از UEFI استفاده شود، در این صورت gpt لازم است.
ROOTFS
فایل سیستم مورد استفاده در/، پیش فرض ext4 است، همچنین ext2، ext3، (مسطح) btrfs و xfs را مجاز می کند.
USE_EFI
این را برای اجبار با استفاده از UEFI فعال کنید.
گزینه های خط فرمان:
-m |
حالت دیسک مورد استفاده – شما می خواهید-m sys. |
-q |
بی صدا تر عمل کنید |
-s |
اندازه پارتیشن swap را مشخص کنید. |
-v |
نمایش خروجی بیشتر |
Parted
Parted ویرایشگر پارتیشن گنو است. این یک ابزار بسیار مفید است که قادر به انجام ویرایش پارتیشن در انواع مختلف است – . به همین دلیل، این ابزاری است که ما در این بخش استفاده خواهیم کرد. با نصب آن شروع کنید
apk add parted
این نیز بخشی از کتاب راهنما است که در آن باید تعیین کنید که آیا نیاز دارید (یا می خواهید) از UEFI استفاده کنید. این تصمیم به عهده شما خواهد بود، اما می توانید با بررسی اینکه آیا در حال حاضر با استفاده از UEFI بوت شده اید یا نه/sys/firmware/efiپوشه وجود دارد در صورتی که این کار دشوار است، می توانید از قطعه زیر برای دریافت پاسخ مستقیم استفاده کنید:
test -d /sys/firmware/efi && echo UEFI || echo BIOS
هنگامی که تصمیم گرفتید، باید پارتیشنهای غیر مرتبط با بوت شدن را نیز انتخاب کنید (زیرا روش راهاندازی نحوه حرکت قبلی را تعیین میکند). برای مبتدیان، ساخت یک پارتیشن ریشه بزرگ توصیه می شود، و این همان چیزی است که در مثال های بعدی استفاده خواهد شد.
بنابراین ما با 3 گزینه متداول روبرو می شویم:
- نصب بایوس در جدول پارتیشن MS-DOS
- نصب بایوس در جدول پارتیشن GPT
- نصب UEFI در جدول پارتیشن GPT
گزینه های دیگری وجود دارد، اما آنها برای کاربران پیشرفته تر هستند. استفاده از MS-DOS برای نصب بایوس بی اهمیت تر است، اما با محدودیت هایی همراه است (فقط 4 پارتیشن، حداکثر اندازه دیسک 2 ترابایت)، بنابراین هر دو گزینه پوشش داده شده است. همچنین فرض بر این است که دیسک شما به اندازه کافی بزرگ است، که تلفات کوچک (به عنوان مثال ساخت ESP 1 گیگابایت) برای سهولت نصب مرتبط نیست
همچنین توجه داشته باشید که ممکن است متوجه پارتیشنهای “swap” شوید که به عنوان یک پرچم ذکر شده است. “swap” در واقع یک پرچم نیست، بلکه یک نوع سیستم فایل است. این یک فایل صفحه است که برای تکمیل حافظه سیستم شما طراحی شده است. توصیه می شود آن را تا 2 برابر اندازه رم فیزیکی خود بسازید، اما می توان آن را اختیاری در نظر گرفت.
در بخش های زیر کدهایی مانند زیر را مشاهده خواهید کرد:
alias p=”parted -sa optimal /dev/sda”
p mklabel msdos
BIOS + MS-DOS
تحت تنظیمات BIOS با جدول پارتیشن MS-DOS، ما فقط می توانیم 4 پارتیشن اصلی داشته باشیم و به دیسک های 2 ترابایتی محدود می شویم. پارتیشن های توسعه یافته خارج از محدوده این کتاب راهنما هستند. تحت BIOS+MS-DOS، میتوانیم از MBR برای نصب بوت لودر استفاده کنیم، بنابراین فقط باید نگران پارتیشنهای داده واقعی باشیم.
شما می توانید این طرح پارتیشن بندی را در درایوی به نام تولید کنید/dev/sdaبا استفاده از قطعه زیر:
alias p=”parted -sa optimal /dev/sda”
p mklabel msdos
p mkpart p 0G 1G
p mkpart p 1G 5G
p mkpart p 5G 100%
p set 1 boot
mkfs.ext4 /dev/sda1
mkswap /dev/sda2
mkfs.ext4 /dev/sda3
این بخش آخر فایل سیستم ها را ایجاد می کند. در این مثال از ext4 برای استفاده می کنیم/boot/- می توانید از هر یک از فایل سیستم های پشتیبانی شده استفاده کنید. |
|
توجه کنید که «3» در «/dev/sda3» این سومین پارتیشنی است که ما ایجاد کردهایم (همچنین دارای 3 در عدد جدول برنامهریزی بالا است). |
BIOS + GPT
تحت تنظیمات BIOS با جدول پارتیشن GPT، ما MBR نداریم، بنابراین باید یکی را ایجاد کنیم. در اینجا نمونه ای از طرح پارتیشن بندی آورده شده است:
Partition Number |
Start |
End |
Mount |
Flags |
1 |
1M |
2M |
none |
bios_grub |
2 |
2M |
1G |
/boot |
boot |
3 |
1G |
5G |
none |
swap |
4 |
5G |
-0G |
/ |
شما می توانید این طرح پارتیشن بندی را در درایوی به نام تولید کنید/dev/sdaبا استفاده از قطعه زیر:
alias p=”parted -sa optimal /dev/sda”
p mklabel gpt
p mkpart p 1MiB 2MiB
p mkpart p 2MiB 1G
p mkpart p 1G 5G
p mkpart p 5G 100%
p set 1 bios_grub
p set 2 boot
mkfs.ext4 /dev/sda2
mkswap /dev/sda3
mkfs.ext4 /dev/sda4
این بخش آخر فایل سیستم ها را ایجاد می کند. در این مثال از ext4 برای استفاده می کنیم/بوتو/- می توانید از هر یک از فایل سیستم های پشتیبانی شده استفاده کنید.
توجه کنید که «3» در «/dev/sda3» چگونه ناشی از این واقعیت است که این سومین پارتیشنی است که ما ایجاد کردهایم (همچنین دارای 3 در عدد جدول برنامهریزی بالا است).
UEFI + GPT
تحت تنظیمات UEFI، باید از GPT با یک پارتیشن ESP استفاده کنید. باید فرمت FAT32 داشته باشد و می تواند به عنوان پارتیشن بوت شما استفاده شود. در اینجا نمونه ای از طرح پارتیشن بندی آورده شده است:
Partition Number |
Start |
End |
Mount |
Flags |
1 |
0G |
1G |
/boot |
esp,boot |
2 |
1G |
5G |
none |
swap |
3 |
5G |
-0G |
/ |
شما می توانید این طرح پارتیشن بندی را در درایوی به نام تولید کنید/dev/sdaبا استفاده از قطعه زیر:
alias p=”parted -sa optimal /dev/sda”
p mklabel gpt
p mkpart p 0G 1G
p mkpart p 1G 5G
p mkpart p 5G 100%
p set 1 esp
mkfs.vfat -F32 /dev/sda1
mkswap /dev/sda2
mkfs.ext4 /dev/sda3
کارنهایی
اکنون که فایل سیستم های شما فرمت شده اند، باید آنها را در یک نقطه نصب (معمولا/mnt). مونت کنید.
در اینجا مثالی از نحوه نصب آن آورده شده استUEFI + GPTتنظیم زیر/mnt:
mount /dev/sda3 /mnt
mkdir /mnt/boot
mount /dev/sda1 /mnt/boot
swapon /dev/sda2
توصیه های پس از نصب
اکنون که نصب Alpine Linux شما راه اندازی شده است، می توانید کار با آن را شروع کنید. بخشهای زیر فهرستی از توصیههای کلی را برای سهولت تجربه تعاملی شما ارائه میکنند – همه آنها اختیاری هستند. بخشهای باقیمانده نحوه استفاده (در سطح کاربر) راهحلهای مختلف بومی آلپاین، مانند مدیر بسته، فایروال و غیره را شرح میدهند.
ایجاد یک کاربر عادی
اکنون که سیستم راهاندازی شد و میخواهید یک کاربر معمولی و غیر روت بیشتر کارهای روزانه را با آن انجام دهد. می توانید از ابزار داخلی busybox استفاده کنید
در اینجا نمونه هایی برای ایجاد یک کاربر (به ترتیب با نام های “جان” و “جین”) با استفاده از ابزارهای کمکی آورده شده است.
adduser -h /home/john -s /bin/ash john
هر دو-h /home/johnو-s /bin/ashبخش ها ممکن است اختیاری باشند. با این حال، توصیه می شود هر دو را مشخص کنید، زیرا ممکن است پیش فرض ها مطلوب نباشند. useradd -m -U -s /bin/ash jane |
||
اعطای دسترسی مدیریتی به کاربر
گاهی اوقات، ممکن است نیاز داشته باشید کاری انجام دهید که به اختیارات مدیریتی نیاز دارد.
در حالی که میتوانید به یک tty متفاوت سوئیچ کرده و به عنوان root وارد شوید، این اغلب ناخوشایند است. میتوانید به صورت موقت با استفاده از ابزار داخلی busybox به نام su یا ابزار خارجی رایج doas که در پکیجی با همین نام موجود است، امتیازات root را کسب کنید. doas برخلاف su به پیکربندی اضافی نیاز دارد. تفاوت بین doas و su به این برمیگردد که مجوزها از کجا میآیند – su به شما اجازه میدهد موقتاً به عنوان کاربر دیگری وارد شوید (و بنابراین نیاز دارد که رمز عبور کاربری که میخواهید به عنوان آن وارد شوید را وارد کنید)، در حالی که doas به شما اجازه میدهد دستورات (از جمله پوستههای ورود) را به عنوان کاربر هدف اجرا کنید، با فرض اینکه پیکربندی به شما این حق را بدهد (یعنی رمز عبور شما برای احراز هویت استفاده میشود). در اینجا مثالهایی از نحوه استفاده از su و نحوه پیکربندی و استفاده از doas (به صورت کوتاه شده) آورده شده است:
su -l root
su –
apk add doas
echo ‘permit :wheel’ > /etc/doas.d/doas.conf
adduser joe -G wheel
su -l joe
doas command with arguments
به دست آوردن یک محیط گرافیکی
اکثر مردم اغلب چیزی بیشتر از یک tty خام میخواهند.
این بخش نحوه دریافت یک رابط گرافیکی پشتیبانیشده و همچنین برخی یادداشتهای اضافی (به عنوان مثال، نحوه استفاده از نوع دیگری از GUI) را توضیح میدهد. اگر سیستم شما برای استفاده به عنوان سرور، دروازه یا دستگاه مشابه در نظر گرفته شده است، نباید این کار را انجام دهید – این دستگاهها به رابطهای گرافیکی نیاز ندارند و نباید داشته باشند. اگر به چیزی بصریتر نیاز دارید، میتوانید بخش acf را ببینید.
ابتدا، آمادهسازی سیستم ضروری است – درایورها در هسته لینوکس ساخته شدهاند، اما برای سرور X – ارائه دهنده سیستم پنجرهای – قابل دسترسی نیستند. روی اکثر سختافزارها، میتوانید این کار را با اجرای setup-xorg-base به سرعت انجام دهید. این به طور خودکار تشخیص میدهد که چه نوع پردازنده گرافیکی نصب شده است و شتابدهنده درایور xorg مناسب را نصب میکند. اگر این کار برای شما کار نکرد یا با مشکلات دیگری مواجه شدید، میتوانید طبق معمول از کانالهای پشتیبانی رسمی درخواست کمک کنید. پس از انجام این کار، میتوانید تنظیمات گرافیکی توصیه شده و پشتیبانی شده را با نصب (و در نتیجه اجرا) apk add alpine-desktop نصب کنید. این چندین ابزار مرتبط با سیستم و همچنین مدیر دسکتاپ lxdm و محیط دسکتاپ xfce4 را نصب میکند. در صورتی که DE یا DM دیگری میخواهید، باید آنها را اکنون نصب کنید.
پس از انجام این کار، باید مدیر دسکتاپ انتخابی خود را به عنوان یک سرویس فعال کنید. برای lxdm اینطور به نظر میرسد: rc-update add lxdm و rc-service lxdm start. اولی باعث میشود که آن هنگام بوت شدن شروع شود و دومی آن را بلافاصله شروع میکند.
نصب رابط گرافیکی
1. راهاندازی ماشین مجازی و بوت با تصویر نصب
- تصویر نصب Alpine Linux را به عنوان رسانه بوت برای ماشین مجازی تنظیم کنید.
- ماشین مجازی را راهاندازی کنید.
2. ورود به سیستم و راهاندازی نصب
- بدون نیاز به رمز عبور به عنوان کاربر root وارد شوید.
- دستور setup-alpine را برای راهاندازی نصب اجرا کنید.
- دستورالعملهای راهنما را دنبال کنید و پارتیشن دیسک را به عنوان sys انتخاب کنید.
3. راهاندازی مجدد سیستم
پس از تکمیل نصب، سیستم را با دستور reboot راهاندازی مجدد کنید.
4. نصب ابزارهای ضروری
- ویرایشگر متن nano را با دستور apk add nano نصب کنید.
5. پیکربندی مخازنها
- فایل اصلی مخازن /etc/apk/repositories را با دستور rm /etc/apk/repositories حذف کنید.
- ویرایشگر nano را برای پیکربندی مخازن جدید با دستور nano /etc/apk/repositories باز کنید.
- کد زیر را کپی و جایگذاری کنید:
#/media/cdrom/apks
http://pkg.adfinis.com/alpine/v3.20/main
http://pkg.adfinis.com/alpine/v3.20/community
http://alpinelinux.mirror.garr.it/v3.20/main
http://alpinelinux.mirror.garr.it/v3.20/community
@testing https://dl-cdn.alpinelinux.org/alpine/edge/testing
- فایل پیکربندی را ذخیره کنید.
6. بروزرسانی مخازن و نصب ابزارهای کمکی
- مخازنها را با دستور apk update بروزرسانی کنید.
- دستور apk add doas را برای نصب ابزار مدیریت دسترسی doas اجرا کنید.
- برای ایجاد لینک نمادین (symbolic link) بین doas و sudo و poweroff و shutdown دستورات زیر را اجرا کنید (اختیاری):
ln -s /usr/bin/doas /usr/bin/sudo
ln -s /sbin/poweroff /sbin/shutdown
8. نصب ابزارهای تکمیلی
- کد زیر را کپی و جایگذاری کنید تا بستههای زیر نصب شوند:
apk add \
-completion \
docs \
git \
man-pages \
mandoc \
mandoc-apropos \
musl-locales \
musl-utils \
nano \
rsync \
shadow
این بستهها شامل موارد زیر هستند:
- تکمیل خودکار
- مستندات سیستم
- کنترل کننده کد منبع Git
- صفحات راهنما (man pages)
- ابزارهای فرمتبندی مستندات
- تنظیمات محلی
- ابزارهای کاربردی مفید
- ویرایشگر متن nano
- ابزار همگامسازی فایل rsync
- مدیریت کاربران و رمز عبور
9. افزودن کاربر حسین به گروه
- کاربر خود را به گروه wheel و سایر گروههای لازم با دستورات زیر اضافه کنید (گروههای دیگر اختیاری هستند):
adduser hossein cdrom
adduser hossein games
adduser hossein input
adduser hossein users
adduser hossein video
adduser hossein wheel
نصب محیط دسکتاپ XFCE4
- برای نصب محیط دسکتاپ XFCE4 و ابزارهای مرتبط، دستور زیر را اجرا کنید:
apk add \
elogind \
lightdm-gtk-greeter \
polkit-elogind \
xfce4 \
xfce4-screensaver \
xfce4-terminal \
xfce4-whiskermenu-plugin
- برای نصب ابزارهای اضافی مانند تنظیمات صفحه نمایش و مدیریت زبان، دستورات زیر را اجرا کنید:
apk add \
setxkbmap \
xdg-user-dirs \
xrandr
- سرویسهای dbus و lightdm را فعال و راهاندازی کنید:
rc-update add dbus
rc-service dbus start
rc-update add lightdm
rc-service lightdm start
نصب Spice-vdagent
- برای استفاده از ویژگیهای اضافی مانند کپی و چسباندن بین ماشین مجازی و میزبان، و تغییر اندازه پنجره ماشین مجازی، بسته spice-vdagent را نصب کنید:
apk add \
spice-vdagent \
spice-vdagent-openrc
- سرویس spice-vdagentd را فعال و راهاندازی کنید:
rc-update add spice-vdagentd
rc-service spice-vdagentd start
تغییر پوسته پیشفرض به
- به عنوان کاربر عادی وارد شوید:
exit
- پوسته پیشفرض را به تغییر دهید:
chsh -s /bin/
نصب ابزارهای توسعه
- برای نصب Node.js، npm و pnpm (مدیریت بستههای Node.js) دستورات زیر را اجرا کنید:
doas apk add nodejs npm
doas npm i pnpm -g
- برای نصب Visual Studio Code، دستور زیر را اجرا کنید:
doas apk add code-oss@testing
doas ln -s /usr/bin/code-oss /usr/bin/code
- برای نصب مرورگر Firefox، دستور زیر را اجرا کنید:
doas apk add firefox
نصب GRUB (برای سیستمهای با بایوس
- برای نصب GRUB در سیستمهای با بایوس، دستورات زیر را اجرا کنید:
apk add grub grub-bios
grub-install /dev/sda
- سیستم را راهاندازی مجدد کنید تا تغییرات اعمال شود.
نکته: این راهنما یک راهنمای کلی است و ممکن است برای سیستمهای مختلف نیاز به تنظیمات اضافی داشته باشد. برای اطلاعات بیشتر، به مستندات رسمی Alpine Linux و پروژههای مرتبط مراجعه کنید.
سیستم مدیریت بسته APK در Alpine Linux
سیستم مدیریت بسته APK (Alpine Package Kit) یکی از ستونهای اصلی توزیع سبکوزن و امن Alpine Linux است. این سیستم به کاربران امکان میدهد تا به سادگی و با دقت، بستههای نرمافزاری را نصب، حذف و بهروزرسانی کنند.
ویژگیهای کلیدی APK
- سادگی و کارایی: APK با رابط خط فرمان ساده و روانی طراحی شده است که به کاربران امکان میدهد به سرعت و به راحتی با بستههای نرمافزاری تعامل داشته باشند.
- سرعت: APK به دلیل استفاده از پایگاه دادههای کوچک و الگوریتمهای بهینهسازی شده، سرعت نصب و بهروزرسانی بستهها را به شدت افزایش میدهد.
- امنیت: APK با تمرکز بر امنیت طراحی شده است و از مکانیزمهای مختلفی برای تأیید صحت و اصالت بستهها استفاده میکند.
- انعطافپذیری: APK از منابع مختلفی برای دریافت بستهها پشتیبانی میکند، از جمله آرشیوهای رسمی Alpine Linux و آرشیوهای شخص ثالث.
دستورات اصلی APK
- نصب یک بسته:
apk add <نام_بسته>
مثال:
apk add nano
این دستور ویرایشگر متن Nano را نصب میکند.
- حذف یک بسته:
apk del <نام_بسته>
مثال:
apk del nano
این دستور ویرایشگر متن Nano را حذف میکند.
- بروزرسانی یک بسته:
apk upgrade <نام_بسته>
مثال:
apk upgrade
این دستور بسته را به آخرین نسخه موجود بهروزرسانی میکند.
- بروزرسانی تمام بستهها:
apk upgrade
این دستور تمام بستههای نصب شده را به آخرین نسخه موجود بهروزرسانی میکند.
- جستجوی یک بسته:
apk search <کلمه_کلیدی>
مثال:
apk search vim
این دستور بستههایی را که در نام یا توضیحات آنها کلمه “vim” وجود دارد، جستجو میکند.
منابع بستهها
APK از چندین منبع برای دریافت بستهها پشتیبانی میکند، از جمله:
- آرشیو رسمی Alpine Linux: این آرشیو شامل بستههای اصلی و پایهای سیستم است.
- آرشیوهای شخص ثالث: برخی از پروژهها و کاربران، آرشیوهای بستههای سفارشی خود را ایجاد میکنند که میتوانند توسط APK استفاده شوند.
- فایلهای محلی: شما میتوانید بستههای نرمافزاری را به صورت محلی دانلود کرده و با استفاده از APK نصب کنید.
مزایای استفاده از APK
- سادگی: APK با رابط کاربری ساده و شهودی، استفاده از آن را برای کاربران آسان میکند.
- سرعت: APK به دلیل بهینهسازیهای انجام شده، سرعت نصب و بهروزرسانی بستهها بسیار بالا است.
- امنیت: APK با استفاده از مکانیزمهای مختلف، امنیت سیستم را تضمین میکند.
- انعطافپذیری: APK از منابع مختلفی برای دریافت بستهها پشتیبانی میکند و به کاربران امکان میدهد تا سیستم خود را به دلخواه شخصیسازی کنند.