━━━━━━━━━━━━━━━━━━ 🎨 1️⃣1️⃣ طراحی Waybar ━━━━━━━━━━━━━━━━━━
در:
~/.config/waybar/style.css
میتوانید موارد زیر را تنظیم کنید:
🔹 Font
🔹 Size
🔹 Padding
🔹 Border
🔹 Radius
🔹 Background
🔹 Module Spacing
💡 بهتر است رنگهای Waybar با Theme کلی سیستم هماهنگ باشند.
━━━━━━━━━━━━━━━━━━ 🔎 1️⃣2️⃣ شخصیسازی Wofi ━━━━━━━━━━━━━━━━━━
فایل:
~/.config/wofi/style.css
در اینجا میتوانید ظاهر Launcher را تغییر دهید.
🎨 موارد قابل تنظیم:
🔹 Width
🔹 Height
🔹 Font
🔹 Border
🔹 Radius
🔹 Spacing
🔹 Background
━━━━━━━━━━━━━━━━━━ 💻 1️⃣3️⃣ تنظیم Kitty ━━━━━━━━━━━━━━━━━━
فایل:
~/.config/kitty/kitty.conf
میتوانید:
🔤 Font
📏 Font Size
🎨 Colors
🖱️ Mouse
📐 Window Padding
✨ Opacity
را تنظیم کنید.
📌 بهتر است Theme ترمینال با Theme کلی دسکتاپ هماهنگ باشد.
━━━━━━━━━━━━━━━━━━ 🔔 1️⃣4️⃣ تنظیم Mako ━━━━━━━━━━━━━━━━━━
فایل:
~/.config/mako/config
در این فایل میتوانید:
🔔 Notification Position
⏱️ Timeout
📏 Size
🎨 Colors
🔤 Font
را مشخص کنید.
━━━━━━━━━━━━━━━━━━ 🖼️ 1️⃣5️⃣ مدیریت Wallpaper ━━━━━━━━━━━━━━━━━━
اگر از Hyprpaper استفاده میکنید:
~/.config/hypr/hyprpaper.conf
قرار میگیرد.
📌 بهتر است Wallpaperها را در یک مسیر مشخص نگه دارید.
مثلاً:
~/Pictures/Wallpapers/
ساخت پوشه:
mkdir -p ~/Pictures/Wallpapers
━━━━━━━━━━━━━━━━━━ 🔒 1️⃣6️⃣ Hyprlock ━━━━━━━━━━━━━━━━━━
Configuration مربوط به Hyprlock را در محل مناسب خودش قرار دهید.
📌 میتوانید:
🔐 Password Prompt
🕐 Clock
🔋 Battery
🖼️ Background
را شخصیسازی کنید.
━━━━━━━━━━━━━━━━━━ ⏳ 1️⃣7️⃣ Hypridle ━━━━━━━━━━━━━━━━━━
Hypridle برای مدیریت Idle سیستم استفاده میشود.
سناریوهای رایج:
⏱️ بعد از چند دقیقه → خاموش کردن Display
🔒 بعد از مدت مشخص → Lock
🌙 بعد از مدت طولانیتر → Suspend
📌 Configuration آن را جدا نگه دارید تا مدیریت سیستم آسانتر باشد.
━━━━━━━━━━━━━━━━━━ 🎨 1️⃣8️⃣ ساخت Theme یکپارچه ━━━━━━━━━━━━━━━━━━
برای داشتن یک Setup حرفهای، همه اجزا باید ظاهر هماهنگ داشته باشند:
🌀 Hyprland
📊 Waybar
🔎 Wofi
💻 Kitty
🔔 Mako
🔒 Hyprlock
مثلاً یک Theme:
🌑 Dark
🟣 Purple
🔵 Blue
🟢 Green
انتخاب کنید و همان Palette را در تمام برنامهها استفاده کنید.
━━━━━━━━━━━━━━━━━━ 📦 1️⃣9️⃣ Git برای Dotfiles ━━━━━━━━━━━━━━━━━━
برای مدیریت نسخهها:
sudo pacman -S git
یک Repository بسازید:
mkdir ~/dotfiles
cd ~/dotfiles
سپس:
git init
📌 Configurationهای موردنظر را در این Repository قرار دهید.
مثلاً:
dotfiles/
├── hypr/
├── waybar/
├── wofi/
└── kitty/
━━━━━━━━━━━━━━━━━━ 💾 2️⃣0️⃣ Backup ━━━━━━━━━━━━━━━━━━
قبل از تغییرات بزرگ:
cp -r ~/.config/hypr ~/.config/hypr-backup
اگر مشکلی ایجاد شد، Backup قبلی را دارید.
💡 بهتر است قبل از تغییرات مهم، از فایلهای Configuration نسخه پشتیبان داشته باشید.
━━━━━━━━━━━━━━━━━━ 🔗 2️⃣1️⃣ Symlink ━━━━━━━━━━━━━━━━━━
یکی از روشهای حرفهای برای مدیریت Dotfiles استفاده از Symbolic Link است.
مثلاً:
ln -s ~/dotfiles/hypr ~/.config/hypr
📌 در این حالت Configuration اصلی داخل Repository قرار دارد و Hyprland از مسیر ~/.config/hypr آن را میخواند.
⚠️ اگر مقصد از قبل وجود داشته باشد، ابتدا باید آن را مدیریت یا جابهجا کنید.
━━━━━━━━━━━━━━━━━━ 🔄 2️⃣2️⃣ Reload ━━━━━━━━━━━━━━━━━━
بعد از تغییر تنظیمات:
hyprctl reload
برای بررسی وضعیت:
hyprctl version
برای بررسی Monitor:
hyprctl monitors
برای مشاهده Workspaceها:
hyprctl workspaces
━━━━━━━━━━━━━━━━━━ 🧹 2️⃣3️⃣ اصول یک Dotfiles حرفهای ━━━━━━━━━━━━━━━━━━
✅ فایلها را دستهبندی کنید.
✅ تنظیمات را با Comment توضیح دهید.
✅ از Configurationهای بسیار طولانی و بینظم خودداری کنید.
✅ قبل از تغییرات مهم Backup بگیرید.
✅ Dotfiles را با Git مدیریت کنید.
✅ Configuration نسخه Hyprland خودتان را در نظر بگیرید.
❌ Configuration ناشناس را کورکورانه اجرا نکنید.
❌ Scriptهای ناشناس را با sudo اجرا نکنید.
━━━━━━━━━━━━━━━━━━ 📂 ساختار نهایی پیشنهادی ━━━━━━━━━━━━━━━━━━
~/dotfiles/
├── hypr/
│ ├── hyprland.conf
│ ├── appearance.conf
│ ├── keybinds.conf
│ ├── monitors.conf
│ ├── rules.conf
│ └── programs.conf
│
├── waybar/
│ ├── config
│ └── style.css
│
├── wofi/
│ └── style.css
│
└── kitty/
└── kitty.conf
━━━━━━━━━━━━━━━━━━ 🏆 نتیجه ━━━━━━━━━━━━━━━━━━
با این ساختار:
╭━━━━━━━━━━━━━━━━━━━━━━╮ 🏔️ ARCH LINUX | پست نهم 🌐 اتصال به اینترنت هنگام نصب ╰━━━━━━━━━━━━━━━━━━━━━━╯
📡 یکی از مهمترین مراحل نصب Arch Linux، برقراری اتصال اینترنت است.
در این پست تمام روشهای مهم را بررسی میکنیم:
🔌 Ethernet
📶 Wi-Fi
📱 Hotspot موبایل
📡 USB Tethering
📲 مودم 4G/5G
🔐 Wi-Fi مخفی
🌐 DHCP
🧮 IP ثابت
🛠️ iwd / iwctl
🖥️ NetworkManager / nmcli
📟 nmtui
🔗 PPPoE
🚫 rfkill
🧪 عیبیابی DNS و اینترنت
━━━━━━━━━━━━━━━━━━ ⚠️ قبل از شروع ━━━━━━━━━━━━━━━━━━
بعد از Boot کردن ISO رسمی Arch، ابتدا بررسی کنید کارت شبکه شناسایی شده است:
ip link
یا:
ip addr
معمولاً Interfaceها چیزی شبیه این هستند:
🔌 Ethernet:
enp3s0
📶 Wi-Fi:
wlan0
یا:
wlp2s0
📌 اسم Interface روی هر سیستم متفاوت است.
❗ در دستورات زیر، اگر اسم کارت شبکه شما متفاوت است، همان نام واقعی سیستم خودتان را جایگزین کنید.
━━━━━━━━━━━━━━━━━━ 1️⃣ 🔌 روش اول: Ethernet ━━━━━━━━━━━━━━━━━━
سادهترین و معمولاً مطمئنترین روش در زمان نصب Arch، استفاده از کابل شبکه است.
🔌 کابل Ethernet را وصل کنید.
سپس:
ip link
را اجرا کنید.
اگر Interface شما مثلاً:
enp3s0
است، بررسی کنید وضعیت آن UP باشد.
سپس:
ip addr
و در نهایت اتصال را تست کنید:
ping -c 4 ping.archlinux.org
اگر Reply دریافت کردید:
✅ اینترنت برقرار است.
📌 در ISO رسمی Arch، DHCP برای Ethernet بهصورت پیشفرض توسط systemd-networkd پشتیبانی میشود.
━━━━━━━━━━━━━━━━━━ 2️⃣ 📶 روش دوم: Wi-Fi با iwctl ━━━━━━━━━━━━━━━━━━
این روش، روش استاندارد و بسیار رایج در محیط ISO رسمی Arch است.
ابتدا:
iwctl
وارد محیط iwd میشویم.
حالا:
device list
📌 کارت Wi-Fi خود را پیدا کنید.
مثلاً:
wlan0
سپس:
station wlan0 scan
بعد:
station wlan0 get-networks
لیست Wi-Fiهای اطراف نمایش داده میشود.
حالا اتصال:
station wlan0 connect YOUR_WIFI
به جای:
YOUR_WIFI
نام شبکه خودتان را وارد کنید.
مثلاً:
station wlan0 connect MyWifi
🔐 اگر رمز داشته باشد، از شما Password میخواهد.
━━━━━━━━━━━━━━━━━━ 3️⃣ 🚪 خروج از iwctl ━━━━━━━━━━━━━━━━━━
بعد از اتصال:
exit
یا:
Ctrl + D
سپس اینترنت را تست کنید:
ping -c 4 ping.archlinux.org
📌 اگر Ping پاسخ داد، آماده ادامه نصب هستید.
━━━━━━━━━━━━━━━━━━ 4️⃣ 📡 Wi-Fi با SSID مخفی ━━━━━━━━━━━━━━━━━━
اگر نام Wi-Fi در لیست نمایش داده نمیشود و Hidden است:
iwctl
سپس:
station wlan0 connect-hidden YOUR_WIFI
بعد Password را وارد کنید.
📌 نام Interface را با Interface واقعی Wi-Fi خودتان جایگزین کنید.
━━━━━━━━━━━━━━━━━━ 5️⃣ 🧰 اگر Wi-Fi پیدا نمیشود ━━━━━━━━━━━━━━━━━━
ابتدا:
ip link
سپس:
rfkill list
اگر دیدید:
Soft blocked: yes
میتوانید:
rfkill unblock wifi
یا:
rfkill unblock all
سپس دوباره:
ip link
و:
iwctl
را امتحان کنید.
📌 ArchWiki نیز توصیه میکند قبل از اتصال بیسیم بررسی کنید کارت توسط rfkill مسدود نشده باشد.
━━━━━━━━━━━━━━━━━━ 6️⃣ 📡 روشن کردن Wi-Fi از iwctl ━━━━━━━━━━━━━━━━━━
داخل:
iwctl
میتوانید دستگاهها را ببینید:
device list
اگر دستگاه خاموش باشد:
device wlan0 set-property Powered on
سپس:
station wlan0 scan
و:
station wlan0 get-networks
📌 قابلیت تکمیل خودکار با کلید Tab در iwctl بسیار مفید است.
━━━━━━━━━━━━━━━━━━ 7️⃣ 📱 اتصال از طریق Hotspot موبایل ━━━━━━━━━━━━━━━━━━
اگر مودم یا اینترنت ثابت ندارید، میتوانید از گوشی استفاده کنید.
📱 در گوشی:
Settings → Hotspot → Mobile Hotspot → ON
سپس در Arch:
iwctl
device list
station wlan0 scan
station wlan0 get-networks
و:
station wlan0 connect PHONE_HOTSPOT
رمز Hotspot را وارد کنید.
سپس:
exit
و تست:
ping -c 4 ping.archlinux.org
━━━━━━━━━━━━━━━━━━ 8️⃣ 🔗 USB Tethering ━━━━━━━━━━━━━━━━━━
اگر Wi-Fi سیستم مشکل دارد، USB Tethering یکی از بهترین راههای جایگزین است.
📱 گوشی را با USB به کامپیوتر وصل کنید.
در گوشی:
Settings → Hotspot & Tethering → USB Tethering
را فعال کنید.
سپس در Arch:
ip link
Interface جدید را پیدا کنید.
مثلاً:
enp0s20f0u2
سپس:
ip addr
و:
ping -c 4 ping.archlinux.org
📌 این روش برای زمانی که درایور Wi-Fi مشکل دارد، بسیار کاربردی است.
━━━━━━━━━━━━━━━━━━ 9️⃣ 📲 مودم 4G / 5G ━━━━━━━━━━━━━━━━━━
اگر از Modem یا WWAN استفاده میکنید، محیط نصب Arch ابزار ModemManager را نیز در اختیار دارد.
بررسی مودم:
mmcli -L
اگر مودم شناسایی شد، میتوانید از ModemManager برای مدیریت اتصال استفاده کنید.
📌 روش دقیق اتصال به Provider به نوع مودم، SIM و APN بستگی دارد.
━━━━━━━━━━━━━━━━━━ 🔟 🖥️ NetworkManager + nmcli ━━━━━━━━━━━━━━━━━━
اگر ترجیح میدهید از NetworkManager استفاده کنید، این روش بسیار کاربردی است.
📦 ابتدا در صورت نیاز:
pacman -Sy networkmanager
سپس:
systemctl enable --now NetworkManager
مشاهده Interfaceها:
nmcli device
مشاهده Wi-Fi:
nmcli device wifi list
اتصال:
nmcli device wifi connect "YOUR_WIFI" password "YOUR_PASSWORD"
مثلاً:
nmcli device wifi connect "MyWifi" password "12345678"
سپس:
ping -c 4 ping.archlinux.org
📌 NetworkManager ابزارهای nmcli و nmtui را نیز ارائه میکند.
⚠️ اگر در محیط نصب از NetworkManager استفاده میکنید، مراقب اجرای همزمان چند Network Manager باشید.
━━━━━━━━━━━━━━━━━━ 1️⃣1️⃣ 🖥️ NetworkManager با nmtui ━━━━━━━━━━━━━━━━━━
اگر با دستورات nmcli راحت نیستید:
nmtui
یک رابط متنی باز میکند.
سپس:
Activate a connection
را انتخاب کنید.
Wi-Fi خود را انتخاب کنید.
Password را وارد کنید.
و Connect شوید.
📌 nmtui برای کسانی که محیط گرافیکی ندارند بسیار ساده و کاربردی است.
━━━━━━━━━━━━━━━━━━ 1️⃣2️⃣ 🧠 تفاوت iwctl و nmcli ━━━━━━━━━━━━━━━━━━
🟢 iwctl
مربوط به:
iwd
است و در ISO رسمی Arch بهصورت آماده در دسترس است.
🟢 nmcli
مربوط به:
NetworkManager
است.
📌 برای نصب استاندارد Arch در محیط ISO، معمولاً ابتدا همان روش iwctl کافی است.
━━━━━━━━━━━━━━━━━━ 1️⃣3️⃣ 🌐 DHCP چیست؟ ━━━━━━━━━━━━━━━━━━
بیشتر شبکههای خانگی از DHCP استفاده میکنند.
DHCP بهصورت خودکار اطلاعاتی مثل:
📍 IP Address
🚪 Gateway
🌐 DNS
🛣️ Route
را دریافت میکند.
در ISO رسمی Arch، systemd-networkd برای DHCP پیکربندی شده است.
بنابراین معمولاً بعد از اتصال Ethernet یا Wi-Fi نیازی به وارد کردن دستی IP ندارید.
━━━━━━━━━━━━━━━━━━ 1️⃣4️⃣ 🧮 IP ثابت ━━━━━━━━━━━━━━━━━━
اگر شبکه شما DHCP ندارد یا مجبور هستید IP ثابت استفاده کنید، باید موارد زیر را مشخص کنید:
📍 IP Address
مثلاً:
192.168.1.50
🛣️ Gateway
مثلاً:
192.168.1.1
🌐 DNS
مثلاً DNS ارائهشده توسط شبکه شما.
📌 تنظیم IP ثابت در Arch روشهای مختلفی دارد و باید متناسب با Network Manager یا systemd-networkd انتخاب شود.
━━━━━━━━━━━━━━━━━━ 1️⃣5️⃣ 🔍 بررسی IP ━━━━━━━━━━━━━━━━━━
برای دیدن IP:
ip addr
یا:
ip a
مثلاً:
inet 192.168.1.20/24
📌 اگر Interface متصل است ولی IP ندارد، احتمالاً مشکل در DHCP یا Network Configuration وجود دارد.
━━━━━━━━━━━━━━━━━━ 1️⃣6️⃣ 🛣️ بررسی Route ━━━━━━━━━━━━━━━━━━
دستور:
ip route
باید چیزی شبیه Default Route مشاهده کنید:
default via 192.168.1.1
📌 اگر IP دارید اما Default Route ندارید، دسترسی به اینترنت ممکن است برقرار نشود.
━━━━━━━━━━━━━━━━━━ 1️⃣7️⃣ 🌐 مشکل DNS ━━━━━━━━━━━━━━━━━━
گاهی اینترنت وجود دارد اما DNS کار نمیکند.
اول:
ping -c 4 1.1.1.1
اگر جواب گرفتید، سپس:
ping -c 4 archlinux.org
را تست کنید.
🔹 اگر IP کار میکند ولی Domain کار نمیکند:
احتمالاً مشکل DNS دارید.
📌 این تست کمک میکند مشکل DNS را از مشکل کلی شبکه جدا کنید.
━━━━━━━━━━━━━━━━━━ 1️⃣8️⃣ 🧪 تست نهایی اینترنت ━━━━━━━━━━━━━━━━━━
بهتر است برای بررسی کامل:
ping -c 4 ping.archlinux.org
و:
ping -c 4 archlinux.org
را امتحان کنید.
اگر هر دو پاسخ دادند:
✅ Network
✅ Routing
✅ DNS
احتمالاً درست کار میکنند.
━━━━━━━━━━━━━━━━━━ 1️⃣9️⃣ 🔧 بررسی DNS ━━━━━━━━━━━━━━━━━━
برای بررسی وضعیت Resolver:
resolvectl status
در محیط نصب Arch، systemd-resolved برای DNS استفاده میشود.
━━━━━━━━━━━━━━━━━━ 2️⃣0️⃣ 🖥️ اگر Interface اصلاً دیده نمیشود ━━━━━━━━━━━━━━━━━━
اگر:
ip link
کارت شبکه شما را نشان نمیدهد:
🔹 BIOS/UEFI را بررسی کنید.
🔹 اگر Wi-Fi است، Airplane Mode را بررسی کنید.
🔹 rfkill را بررسی کنید:
rfkill list
🔹 برای سختافزار PCI:
lspci -k
🔹 برای USB:
lsusb
📌 اگر Kernel Driver مربوط به کارت شبکه وجود نداشته باشد، مشکل صرفاً تنظیم Wi-Fi نیست و باید Driver/Firmware سختافزار بررسی شود.
━━━━━━━━━━━━━━━━━━ 2️⃣1️⃣ 🧩 مشکل Firmware ━━━━━━━━━━━━━━━━━━
اگر کارت شبکه شناسایی نمیشود، بررسی کنید آیا Firmware مناسب در ISO موجود است یا خیر.
اطلاعات سختافزار:
lspci -k
یا:
lsusb
📌 مخصوصاً در برخی کارتهای Wi-Fi، مشکل میتواند از Firmware یا Driver باشد.
━━━━━━━━━━━━━━━━━━ 2️⃣2️⃣ 🔐 Wi-Fi با رمز WPA/WPA2 ━━━━━━━━━━━━━━━━━━
در حالت معمول:
iwctl
سپس:
station wlan0 connect WIFI_NAME
Password را وارد کنید.
📌 iwd اطلاعات شبکههای ذخیرهشده را مدیریت میکند و Profileهای آن در /var/lib/iwd/ قرار میگیرند.
━━━━━━━━━━━━━━━━━━ 2️⃣3️⃣ 🏢 شبکه دانشگاه، شرکت یا هتل ━━━━━━━━━━━━━━━━━━
برخی شبکهها فقط Password ساده ندارند.
ممکن است از:
🔐 WPA-Enterprise
🔑 802.1X
🌐 Captive Portal
استفاده کنند.
📌 در این حالت اتصال اولیه Wi-Fi لزوماً به معنی دسترسی کامل به اینترنت نیست.
ممکن است بعد از اتصال نیاز باشد:
🌐 Browser
را باز کرده و در صفحه Login هتل/دانشگاه/شرکت احراز هویت کنید.
━━━━━━━━━━━━━━━━━━ 2️⃣4️⃣ 🌐 Captive Portal ━━━━━━━━━━━━━━━━━━
در هتل، فرودگاه، دانشگاه و بعضی شبکههای عمومی ممکن است Wi-Fi متصل باشد اما اینترنت هنوز فعال نباشد.
نشانه:
ping شاید کار کند یا نکند، اما Web Login لازم است.
📌 بعد از اتصال، یک سایت HTTP یا صفحه Login شبکه را از Browser باز کنید.
━━━━━━━━━━━━━━━━━━ 2️⃣5️⃣ 🔗 PPPoE ━━━━━━━━━━━━━━━━━━
در برخی سرویسهای اینترنتی، مخصوصاً بعضی اتصالات DSL/FTTH، ممکن است PPPoE استفاده شود.
اطلاعات موردنیاز:
👤 Username
🔑 Password
🌐 Interface
📌 روش پیکربندی PPPoE به Network Manager یا ابزار شبکه انتخابی شما بستگی دارد.
در NetworkManager میتوان اتصال PPPoE را از طریق nmcli یا nmtui پیکربندی کرد.
━━━━━━━━━━━━━━━━━━ 2️⃣6️⃣ 🚫 از چند Network Manager همزمان استفاده نکنید ━━━━━━━━━━━━━━━━━━
این یکی از مهمترین نکات است. ⚠️
مثلاً همزمان:
❌ NetworkManager
❌ systemd-networkd
❌ dhcpcd
❌ netctl
را برای مدیریت یک Interface فعال نکنید.
این کار میتواند باعث:
💥 تداخل DHCP
💥 Route اشتباه
💥 DNS مشکلدار
💥 قطع و وصل شدن شبکه
شود.
ArchWiki نیز درباره اجرای همزمان Network Managerها و DHCP Clientها هشدار میدهد.
━━━━━━━━━━━━━━━━━━ 2️⃣7️⃣ 🧹 اگر NetworkManager انتخاب کردید ━━━━━━━━━━━━━━━━━━
اگر بعداً تصمیم گرفتید در سیستم نصبشده از NetworkManager استفاده کنید، سرویس شبکه دیگری که همان Interface را مدیریت میکند نباید همزمان فعال باشد.
مثلاً:
systemctl status NetworkManager
و:
systemctl status systemd-networkd
را بررسی کنید.
📌 فقط یک راهکار اصلی برای مدیریت Interface انتخاب کنید.
━━━━━━━━━━━━━━━━━━ 2️⃣8️⃣ 🧪 چکلیست عیبیابی ━━━━━━━━━━━━━━━━━━
اگر اینترنت ندارید، این مراحل را به همین ترتیب انجام دهید:
① کارت شبکه:
ip link
⬇️
② بررسی Block:
rfkill list
⬇️
③ IP:
ip addr
⬇️
④ Route:
ip route
⬇️
⑤ DNS:
resolvectl status
⬇️
⑥ Ping به IP:
ping -c 4 1.1.1.1
⬇️
⑦ Ping به Domain:
ping -c 4 archlinux.org
⬇️
⑧ اگر Wi-Fi است:
iwctl
⬇️
device list
⬇️
station wlan0 get-networks
━━━━━━━━━━━━━━━━━━ 2️⃣9️⃣ 🏆 بهترین روش برای هر شرایط ━━━━━━━━━━━━━━━━━━
🔌 کابل Ethernet دارید؟
🥇 Ethernet + DHCP
📶 Wi-Fi دارید؟
🥇 iwctl
📱 Wi-Fi مشکل دارد؟
🥈 USB Tethering
📱 کابل USB ندارید؟
🥉 Mobile Hotspot + iwctl
📲 مودم 4G/5G دارید؟
→ ModemManager / NetworkManager
🏢 شبکه Enterprise دارید؟
→ بررسی 802.1X / WPA-Enterprise
🌐 شبکه Login دارد؟
→ Captive Portal
🧮 DHCP ندارید؟
→ Static IP
━━━━━━━━━━━━━━━━━━ ⚠️ 3️⃣0️⃣ یک نکته بسیار مهم ━━━━━━━━━━━━━━━━━━
📌 اتصال اینترنت در محیط نصب Arch ISO با شبکه سیستم نصبشده یکی نیست.
در ISO رسمی:
iwd
systemd-networkd
systemd-resolved
ModemManager
از قبل آماده/پیکربندی شدهاند. اما پس از نصب سیستم، این سرویسها لزوماً به همان شکل فعال و آماده نیستند.
بنابراین:
❌ تصور نکنید چون Wi-Fi در ISO با iwctl کار کرده، بعد از نصب هم همه چیز خودکار آماده است.
بعد از نصب باید یک روش مدیریت شبکه برای سیستم انتخاب کنید.
━━━━━━━━━━━━━━━━━━ 📌 3️⃣1️⃣ دستورهای طلایی ━━━━━━━━━━━━━━━━━━
🔍 مشاهده کارت شبکه:
ip link
📡 بررسی Block:
rfkill list
📍 مشاهده IP:
ip addr
🛣️ مشاهده Route:
ip route
🌐 بررسی DNS:
resolvectl status
📶 ورود به Wi-Fi:
iwctl
📡 لیست Wi-Fi:
station wlan0 get-networks
🔗 اتصال Wi-Fi:
station wlan0 connect WIFI_NAME
🧪 تست اینترنت:
ping -c 4 ping.archlinux.org
🧪 تست DNS:
ping -c 4 archlinux.org
━━━━━━━━━━━━━━━━━━ 🌐 منابع رسمی ━━━━━━━━━━━━━━━━━━
📚 ArchWiki — Installation Guide https://wiki.archlinux.org/title/Installation_guide
🌐 ArchWiki — Network Configuration https://wiki.archlinux.org/title/Network_configuration
📶 ArchWiki — iwd https://wiki.archlinux.org/title/Iwd
🖥️ ArchWiki — NetworkManager https://wiki.archlinux.org/title/NetworkManager
━━━━━━━━━━━━━━━━━━
🏔️ ARCH LINUX 🌐 NETWORKING
📌 قبل از نصب Arch، این پست را ذخیره کنید.
اگر اینترنت در محیط نصب قطع شد، از بالا به پایین چک کنید:
ip link ⬇️ rfkill ⬇️ iwctl ⬇️ ip addr ⬇️ ip route ⬇️ resolvectl ⬇️ ping
🐧 اول شبکه را درست کن؛ بعد Arch را نصب کن.
#ArchLinux #ArchWiki #Linux #Network #WiFi #Ethernet #iwd #iwctl #NetworkManager #nmcli #Wayland #لینوکس #آرچ_لینوکس
╭━━━━━━━━━━━━━━━━━━━━━━╮ 🏔️ ARCH LINUX | پست دهم 🛠️ آموزش کامل Archinstall ╰━━━━━━━━━━━━━━━━━━━━━━╯
🎯 نصب آسان و اصولی Arch Linux با Archinstall
اگر نصب دستی Arch Linux برایتان طولانی یا پیچیده است، ابزار رسمی archinstall میتواند بیشتر مراحل نصب را بهصورت تعاملی انجام دهد.
⚠️ اما یک نکته مهم:
archinstall قرار نیست Arch Linux را به یک توزیع کاملاً گرافیکی تبدیل کند؛ همچنان باید با مفاهیمی مثل:
🔹 پارتیشنبندی
🔹 UEFI
🔹 Bootloader
🔹 Filesystem
🔹 User / Root
🔹 Network
🔹 Package Manager
آشنا باشید.
همچنین ArchWiki توصیه میکند کاربران جدید نصب دستی را هم یاد بگیرند، چون نصب دستی درک بسیار بهتری از ساختار Arch Linux میدهد.
━━━━━━━━━━━━━━━━━━
1️⃣ پیشنیازهای نصب
قبل از اجرای archinstall باید:
✅ از ISO رسمی Arch Linux بوت شده باشید
✅ اینترنت داشته باشید
✅ دیسک موردنظر را شناسایی کرده باشید
✅ از اطلاعات مهم Backup گرفته باشید
✅ در صورت استفاده از Wi-Fi، اتصال شبکه برقرار باشد
برای بررسی دیسکها:
lsblk
یا:
fdisk -l
برای بررسی اینترنت:
ping -c 4 archlinux.org
اگر Ping موفق بود، آماده نصب هستید. نصب Arch به اتصال اینترنت نیاز دارد چون پکیجها از مخازن دریافت میشوند.
━━━━━━━━━━━━━━━━━━
2️⃣ اجرای Archinstall
در محیط ISO فقط کافی است اجرا کنید:
archinstall
اگر نسخهٔ ISO قدیمی باشد، میتوان نسخهٔ موجود archinstall را قبل از اجرا بهروزرسانی کرد:
pacman -Sy archinstall
⚠️ توجه:
بهتر است در صورت امکان از ISO جدید Arch Linux استفاده کنید؛ چون ISO ماهانه منتشر میشود و نسخهٔ همراه archinstall ممکن است با نسخهٔ فعلی تفاوت داشته باشد.
━━━━━━━━━━━━━━━━━━
3️⃣ انتخاب Keyboard Layout ⌨️
در ابتدای نصب باید Layout کیبورد را مشخص کنید.
برای اکثر کاربران:
us
مناسب است.
اگر Keyboard Layout خاصی نیاز دارید، میتوانید آن را انتخاب کنید.
💡 برای نصب و کار با ترمینال، us معمولاً انتخاب سادهتری است؛ مخصوصاً اگر زیاد با Command Line کار میکنید.
━━━━━━━━━━━━━━━━━━
4️⃣ Mirror Region 🌍
در این بخش Mirrorهای Arch را انتخاب میکنید.
بهتر است کشورها یا Regionهای نزدیک به موقعیت جغرافیایی خود را انتخاب کنید.
مثلاً برای کاربران اروپا میتوان چند Mirror اروپایی را انتخاب کرد.
🎯 هدف:
سرعت بهتر دانلود پکیجها و کاهش احتمال Timeout.
━━━━━━━━━━━━━━━━━━
5️⃣ Locale و Language 🌐
در این قسمت معمولاً تنظیمات Locale سیستم مشخص میشوند.
برای یک سیستم انگلیسی استاندارد میتوان از:
en_US.UTF-8
استفاده کرد.
⚠️ توجه:
Locale سیستم با Keyboard Layout یکی نیست.
مثلاً:
Keyboard → us Locale → en_US.UTF-8
کاملاً طبیعی است.
━━━━━━━━━━━━━━━━━━
6️⃣ انتخاب Drive 💾
یکی از حساسترین مراحل نصب!
Archinstall دیسکهای موجود را نمایش میدهد و باید دیسکی که قرار است Arch روی آن نصب شود را انتخاب کنید.
مثلاً:
/dev/nvme0n1
یا:
/dev/sda
⚠️⚠️⚠️ هشدار بسیار مهم
اگر Automatic Partitioning را انتخاب کنید، اطلاعات موجود روی دیسک ممکن است حذف شوند.
قبل از تأیید نهایی حتماً بررسی کنید:
lsblk
و مطمئن شوید دیسک صحیح را انتخاب کردهاید.
━━━━━━━━━━━━━━━━━━
7️⃣ Partitioning 🧩
Archinstall معمولاً امکان استفاده از Partitioning خودکار یا دستی را فراهم میکند.
🟢 گزینه سادهتر: Automatic Partitioning
برای نصب معمولی روی یک دیسک:
Use best-effort default partition layout
میتواند انتخاب مناسبی باشد.
اما برای کاربران حرفهای یا سیستمهای چندبوت، Partitioning دستی کنترل بیشتری میدهد.
━━━━━━━━━━━━━━━━━━
8️⃣ ساختار پیشنهادی UEFI 🖥️
برای یک سیستم UEFI معمولی میتوان ساختاری مشابه این داشت:
EFI System Partition ↓ FAT32 ↓ /boot Linux filesystem ↓ ext4 ↓ /
مثلاً:
/dev/nvme0n1p1 → EFI /dev/nvme0n1p2 → /
اگر Swap جداگانه نیاز داشته باشید، میتوان آن را نیز در نظر گرفت.
💡 در سیستمهای جدید، Swapfile هم میتواند گزینه مناسبی باشد و الزاماً نیازی به پارتیشن Swap جداگانه نیست.
━━━━━━━━━━━━━━━━━━
9️⃣ Filesystem 🗂️
در هنگام نصب باید Filesystem را مشخص کنید.
گزینههای رایج:
🔹 ext4
🔹 btrfs
🔹 xfs
🔹 f2fs
⭐ برای نصب ساده:
ext4
انتخاب بسیار خوبی است.
🚀 برای سیستمهای پیشرفتهتر:
btrfs
امکاناتی مانند:
🔹 Snapshot
🔹 Subvolume
🔹 Compression
🔹 قابلیتهای پیشرفته مدیریت فایلسیستم
را فراهم میکند.
اما Btrfs نیازمند آشنایی بیشتر با ساختار آن است.
━━━━━━━━━━━━━━━━━━
🔟 Disk Encryption 🔐
اگر لپتاپ دارید یا اطلاعات حساسی روی سیستم نگهداری میکنید، Encryption میتواند بسیار مهم باشد.
در صورت پشتیبانی گزینه موردنظر در نسخهٔ archinstall شما، میتوانید رمزگذاری دیسک را فعال کنید.
⚠️ رمز Encryption را فراموش نکنید!
از دست دادن کلید/رمز میتواند به معنی از دست رفتن دسترسی به اطلاعات باشد.
━━━━━━━━━━━━━━━━━━
1️⃣1️⃣ Bootloader 🚀
Bootloader وظیفه دارد سیستمعامل را هنگام Boot اجرا کند.
در تنظیمات فعلی archinstall، انتخاب پیشفرض میتواند systemd-boot باشد.
در یک سیستم UEFI معمولی:
systemd-boot
انتخاب ساده و مناسبی است.
⚠️ اگر سیستم چندبوت دارید یا نیاز خاصی به GRUB دارید، قبل از انتخاب Bootloader ساختار سیستم خود را بررسی کنید.
━━━━━━━━━━━━━━━━━━
1️⃣2️⃣ Hostname 🖥️
Hostname نام سیستم شما در شبکه است.
مثلاً:
archlinux
یا:
my-pc
یا:
my-laptop
مثلاً:
archlinux
انتخاب سادهای است.
━━━━━━━━━━━━━━━━━━
1️⃣3️⃣ Root Password 🔑
در این مرحله میتوانید برای کاربر root رمز تعیین کنید.
⚠️ اگر رمز Root را خالی بگذارید، حساب Root غیرفعال میشود و برای دسترسی مدیریتی باید از sudo استفاده کنید.
بنابراین اگر چنین ساختاری انتخاب میکنید، حتماً یک کاربر معمولی با دسترسی sudo بسازید.
━━━━━━━━━━━━━━━━━━
1️⃣4️⃣ ساخت User 👤
اکنون یک کاربر معمولی بسازید.
مثلاً:
Username: ali
و برای آن Password تعیین کنید.
سپس اگر گزینهای مانند:
Superuser
یا دسترسی مدیریتی وجود داشت، در صورت نیاز آن را فعال کنید.
🎯 ساختار پیشنهادی:
root ↓ administrator ali ↓ normal user + sudo
💡 استفاده روزمره از Root توصیه نمیشود.
━━━━━━━━━━━━━━━━━━
1️⃣5️⃣ Network 🌐
در این مرحله Archinstall میتواند شبکه سیستم نصبشده را تنظیم کند.
اگر در محیط ISO با iwctl به Wi-Fi متصل شده باشید، Archinstall میتواند تنظیم شبکه موجود را در سیستم نصبشده منتقل کند. برای اتصال سیمی نیز میتواند تنظیم مربوط به رابط شبکه را پیکربندی کند.
قبل از ادامه مطمئن شوید:
ping -c 4 archlinux.org
کار میکند.
⚠️ نکته مهم:
در سیستم نصبشده نباید چند Network Manager را همزمان برای یک Interface فعال کنید.
━━━━━━━━━━━━━━━━━━
1️⃣6️⃣ Network Configuration
بسته به نسخهٔ archinstall ممکن است گزینههایی برای انتخاب Network Configuration ببینید.
برای سیستمهای ساده میتوانید از تنظیم پیشفرض استفاده کنید.
اگر میخواهید بعداً از:
NetworkManager
استفاده کنید، میتوانید آن را بعد از نصب نیز نصب و فعال کنید:
sudo pacman -S networkmanager
و سپس:
sudo systemctl enable --now NetworkManager
━━━━━━━━━━━━━━━━━━
1️⃣7️⃣ انتخاب Kernel 🧠
یکی از مهمترین قسمتها انتخاب Kernel است.
معمولاً:
linux
انتخاب استاندارد است.
اما بسته به نیاز میتوانید Kernelهای دیگری مانند:
linux-lts
را نیز در نظر بگیرید.
⭐ پیشنهاد
برای بیشتر کاربران:
linux
کافی است.
برای سیستمهایی که پایداری بلندمدت Kernel برایشان اهمیت بیشتری دارد:
linux-lts
میتواند گزینه مناسبی باشد.
━━━━━━━━━━━━━━━━━━
1️⃣8️⃣ Profile 🖥️
یکی از جذابترین قسمتهای Archinstall!
میتوانید برای سیستم خود Profile انتخاب کنید.
بسته به نسخه و Profileهای موجود، ممکن است گزینههایی برای محیطهای دسکتاپ یا Window Managerها مشاهده کنید.
مثلاً:
KDE Plasma GNOME Xfce Hyprland
⚠️ لیست Profileها ثابت نیست و ممکن است بین نسخههای مختلف archinstall تغییر کند. Profileهای ارائهشده متعلق به خود Archinstall هستند و جزئیات و پشتیبانی آنها را باید متناسب با نسخه بررسی کرد.
━━━━━━━━━━━━━━━━━━
1️⃣9️⃣ Desktop Environment 🎨
اگر هدف شما یک سیستم دسکتاپ آماده است، میتوانید در صورت وجود Profile مربوطه، Desktop Environment موردنظر را انتخاب کنید.
KDE Plasma
برای کاربرانی که یک Desktop کامل و قابل شخصیسازی میخواهند:
KDE Plasma
انتخاب بسیار خوبی است.
GNOME
برای تجربهای سادهتر:
GNOME
Xfce
برای سیستمهای سبکتر:
Xfce
Hyprland
برای کسانی که Window Manager مدرن و Tiling میخواهند:
Hyprland
💡 اگر Profile موردنظر شما در نسخه فعلی archinstall وجود نداشت، میتوانید Arch را پایهای نصب کرده و Desktop/WM را بعداً دستی نصب کنید.
━━━━━━━━━━━━━━━━━━
2️⃣0️⃣ Audio 🔊
در صورت وجود گزینه مربوط به Audio، معمولاً:
PipeWire
انتخاب مناسبی برای سیستم دسکتاپ مدرن است.
PipeWire برای مدیریت Audio و در بسیاری از سناریوها Video/Media routing نیز استفاده میشود.
━━━━━━━━━━━━━━━━━━
2️⃣1️⃣ Additional Packages 📦
یکی از مفیدترین قسمتها!
میتوانید پکیجهای اضافی را هنگام نصب مشخص کنید.
مثلاً:
git vim nano curl wget
یا:
networkmanager git base-devel
یا حتی پکیجهای موردنیاز محیط دسکتاپ.
⚠️ نکته مهم:
قسمت Additional Packages برای پکیجهای مخازن Arch است و نباید آن را با نصب مستقیم پکیجهای AUR اشتباه گرفت. Archinstall پکیجهای اضافی را پس از نصب Base System نصب میکند.
━━━━━━━━━━━━━━━━━━
2️⃣2️⃣ Time Zone 🕐
Timezone سیستم را مشخص کنید.
برای مشاهده Timezoneها:
timedatectl list-timezones
مثلاً:
Europe/London
یا:
Asia/Tehran
را بسته به موقعیت خود انتخاب کنید.
━━━━━━━━━━━━━━━━━━
2️⃣3️⃣ NTP ⏱️
اگر گزینه NTP وجود دارد، فعال بودن آن برای همگامسازی ساعت سیستم مفید است.
ساعت صحیح برای:
🔹 TLS/SSL
🔹 Login
🔹 Logs
🔹 Package Management
🔹 سرویسهای شبکه
اهمیت دارد.
━━━━━━━━━━━━━━━━━━
2️⃣4️⃣ Swap 💾
Swap برای زمانی است که RAM کافی در دسترس نیست یا برای برخی سناریوهای مدیریت حافظه مورد استفاده قرار میگیرد.
سه انتخاب رایج:
No Swap Swap Partition Swapfile
برای سیستمهای معمولی، Swapfile میتواند انتخاب سادهای باشد.
💡 اگر قصد استفاده از Hibernation دارید، موضوع Swap نیازمند بررسی دقیقتری است و صرفاً داشتن یک Swap کوچک کافی نیست.
━━━━━━━━━━━━━━━━━━
2️⃣5️⃣ بررسی نهایی Configuration 🔍
قبل از اجرای نصب، تمام تنظیمات را یکبار دقیق بررسی کنید.
مخصوصاً:
🚨 Disk
🚨 Partition
🚨 Filesystem
🚨 Encryption
🚨 Bootloader
🚨 Username
🚨 Network
🚨 Kernel
🚨 Profile
🚨 Timezone
این قسمت آخرین فرصت شما برای جلوگیری از اشتباهات پارتیشنبندی است.
━━━━━━━━━━━━━━━━━━
2️⃣6️⃣ شروع Installation 🚀
پس از تأیید Configuration، Archinstall شروع به نصب میکند.
در این مرحله:
📦 Packageها دانلود میشوند
💾 Filesystem ساخته میشود
🗂️ فایلها نصب میشوند
⚙️ تنظیمات سیستم اعمال میشوند
👤 User ساخته میشود
🚀 Bootloader نصب میشود
مدت زمان نصب به:
🌐 سرعت اینترنت
💿 سرعت SSD/HDD
🖥️ سختافزار
🌍 سرعت Mirror
وابسته است.
━━━━━━━━━━━━━━━━━━
2️⃣7️⃣ مشاهده Log 📜
اگر در هنگام نصب مشکلی رخ داد، Log بسیار مهم است.
Archinstall معمولاً Logهای خود را در:
/var/log/archinstall/
ذخیره میکند.
یکی از فایلهای مهم:
/var/log/archinstall/install.log
است.
⚠️ قبل از انتشار Log در Forum یا Issue Tracker، اطلاعات حساس موجود در آن را بررسی و حذف کنید.
━━━━━━━━━━━━━━━━━━
2️⃣8️⃣ پایان نصب ✅
وقتی نصب با موفقیت تمام شد، Archinstall اعلام میکند که سیستم آماده Reboot است.
سپس:
reboot
⚠️ قبل از Boot مجدد:
💿 فلش USB نصب Arch را خارج کنید.
سپس سیستم باید از دیسک نصبشده Boot شود.
━━━━━━━━━━━━━━━━━━
2️⃣9️⃣ اولین ورود به Arch Linux 🏔️
پس از Boot، وارد سیستم شوید.
بررسی Kernel:
uname -r
بررسی سیستم:
hostnamectl
بررسی دیسکها:
lsblk
بررسی IP:
ip addr
بررسی اینترنت:
ping -c 4 archlinux.org
بررسی وضعیت Boot:
systemctl --failed
اگر محیط دسکتاپ نصب کرده باشید، باید بتوانید وارد Desktop شوید.
━━━━━━━━━━━━━━━━━━
3️⃣0️⃣ نصب Archinstall به چه درد میخورد؟ 🤔
archinstall برای این افراد بسیار مناسب است:
✅ کسانی که میخواهند سریع Arch نصب کنند
✅ نصب روی سیستم شخصی
✅ نصب روی ماشین مجازی
✅ تست Arch Linux
✅ نصب چندباره روی سیستمهای مختلف
✅ کاربرانی که ساختار Arch را میشناسند ولی نمیخواهند هر بار Partition و pacstrap را دستی انجام دهند
اما اگر هدف شما یادگیری عمیق Arch Linux است، نصب دستی همچنان ارزش بسیار زیادی دارد.
━━━━━━━━━━━━━━━━━━
3️⃣1️⃣ اشتباهات رایج ❌
❌ انتخاب اشتباه Disk
یکی از خطرناکترین اشتباهات!
همیشه:
lsblk
را قبل از Partitioning بررسی کنید.
❌ فراموش کردن Boot Mode
اگر سیستم را در حالت UEFI بوت کردهاید، تنظیمات نصب را نیز متناسب با UEFI انجام دهید.
❌ نداشتن Internet
Archinstall برای دریافت Packageها به اینترنت نیاز دارد.
قبل از شروع:
ping -c 4 archlinux.org
❌ ساختن User بدون دسترسی مدیریتی
اگر Root را غیرفعال کردهاید، مطمئن شوید User شما امکان استفاده از sudo را دارد.
❌ نصب چند Network Manager
مثلاً:
NetworkManager systemd-networkd dhcpcd netctl
را بدون دلیل و همزمان برای یک Interface فعال نکنید.
این کار میتواند باعث Conflict در مدیریت شبکه شود.
❌ انتظار نصب AUR از Additional Packages
مثلاً:
yay
یا پکیجهای AUR را نباید مانند پکیجهای رسمی Arch در این بخش در نظر گرفت.
AUR مرحله و روش نصب متفاوتی دارد.
━━━━━━━━━━━━━━━━━━
3️⃣2️⃣ یک Configuration پیشنهادی ⭐
برای یک سیستم Desktop معمولی:
Keyboard → us Mirror → نزدیکترین Region Disk → SSD موردنظر Partitioning → Best-effort / Automatic Filesystem → ext4 Bootloader → systemd-boot Hostname → archlinux Root Password → تنظیم شود User → ساخته شود Network → فعال Kernel → linux Audio → PipeWire Desktop → KDE / GNOME / ... Timezone → منطقه شما NTP → Enabled Swap → طبق نیاز
📌 این فقط یک نمونه Configuration است؛ انتخاب واقعی باید بر اساس سختافزار، نوع Boot، چندبوت بودن سیستم، نیاز به Encryption و نوع استفاده انجام شود.
━━━━━━━━━━━━━━━━━━
3️⃣3️⃣ نکته حرفهای 🧠
archinstall یک Installer است، نه جایگزین کامل دانش Arch Linux.
بعد از نصب همچنان باید مفاهیمی مثل:
pacman systemctl journalctl fstab systemd NetworkManager users/groups permissions bootloader kernel AUR
را بشناسید.
همچنین اگر هنگام درخواست پشتیبانی اعلام کنید که سیستم با archinstall نصب شده، ارائهٔ Log نصب میتواند برای عیبیابی بسیار مفید باشد.
━━━━━━━━━━━━━━━━━━
🧪 چکلیست نهایی نصب
قبل از زدن Install:
☑️ اینترنت وصل است
☑️ Disk درست انتخاب شده
☑️ اطلاعات مهم Backup شده
☑️ Partitionها درست هستند
☑️ EFI درست تنظیم شده
☑️ Filesystem صحیح است
☑️ Bootloader مشخص شده
☑️ Username ساخته شده
☑️ Passwordها مشخص هستند
☑️ Network تنظیم شده
☑️ Kernel انتخاب شده
☑️ Profile بررسی شده
☑️ Timezone صحیح است
☑️ Packages اضافی بررسی شده
بعد از Reboot:
☑️ سیستم Boot میشود
☑️ Login انجام میشود
☑️ اینترنت برقرار است
☑️ sudo کار میکند
☑️ Kernel صحیح است
☑️ سرویسهای مهم Running هستند
☑️ Desktop Environment در صورت نصب اجرا میشود
━━━━━━━━━━━━━━━━━━
🏔️ جمعبندی
archinstall یکی از سادهترین روشهای نصب Arch Linux است؛ اما سادهتر بودن نصب به معنی بینیاز شدن از شناخت سیستم نیست.
اگر درست از آن استفاده کنید، میتوانید در مدت کوتاهی یک سیستم Arch تمیز و قابل استفاده بسازید؛ در عین حال بهتر است ساختار نصب دستی Arch را هم بشناسید تا هنگام Troubleshooting وابسته به Installer نباشید.
📚 منبع اصلی و مرجع: ArchWiki — Archinstall
━━━━━━━━━━━━━━━━━━
🏔️ ARCH LINUX 🧠 Learn • Build • Customize
#ArchLinux #Archinstall #Linux #ArchWiki #LinuxInstallation #GNU #LinuxDesktop #KDE #GNOME #Hyprland
╭━━━━━━━━━━━━━━━━━━━━━━╮ 🏔️ ARCH LINUX | پست یازدهم 💾 Filesystem • Partitioning • Kernel ╰━━━━━━━━━━━━━━━━━━━━━━╯
📌 فایلسیستم چیست؟ پارتیشنبندی چیست؟ GPT چیست؟ cfdisk چیست؟ کدام Kernel مناسب است؟
در این پست همه را کوتاه و کاربردی مرتب میکنیم 👇
━━━━━━━━━━━━━━━━━━
1️⃣ اول این ۴ مفهوم را جدا کنیم 🧠
💿 Disk
خود دیسک فیزیکی:
/dev/sda /dev/nvme0n1
🧩 Partition Table
جدولی که ساختار پارتیشنهای دیسک را مشخص میکند:
GPT MBR
📦 Partition
بخشی از Disk که برای یک کاربرد مشخص جدا میشود:
EFI / home swap
🗂️ Filesystem
روشی که فایلها داخل یک Partition ذخیره و مدیریت میشوند:
ext4 btrfs xfs f2fs FAT32
یعنی:
Disk ↓ Partition Table ↓ Partitions ↓ Filesystem ↓ Files & Directories
━━━━━━━━━━━━━━━━━━
2️⃣ GPT یا MBR؟ 🧩
دو نوع اصلی Partition Table:
🟢 GPT
GUID Partition Table
نسخه مدرنتر و انتخاب پیشنهادی برای سیستمهای جدید است.
مزایا:
✅ مناسب UEFI
✅ مناسب دیسکهای بزرگتر از 2TiB
✅ تعداد پارتیشن بیشتر
✅ دارای GUID برای دیسک و پارتیشن
✅ بدون محدودیت قدیمی Primary/Extended/Logical
در GPT بهصورت پیشفرض فضای جدول برای 128 پارتیشن در نظر گرفته میشود و در صورت نیاز قابل افزایش است.
🟠 MBR
Master Boot Record
استاندارد قدیمیتر است.
محدودیتهای مهم:
❌ مناسب نبودن برای دیسکهای بسیار بزرگ
❌ محدودیت ساختار قدیمی Primary/Extended
❌ مناسب نبودن برای بسیاری از سیستمهای UEFI مدرن
📌 برای سیستم جدید:
UEFI → GPT ⭐
و برای سیستمهای بسیار قدیمی BIOS/Legacy ممکن است:
BIOS → MBR
انتخاب شود.
━━━━━━━━━━━━━━━━━━
3️⃣ ساختار پیشنهادی GPT برای Arch 🏔️
برای یک سیستم UEFI ساده:
/dev/nvme0n1 │ ├── p1 → EFI System Partition │ FAT32 │ 512MiB │ └── p2 → Root / ext4 یا Btrfs
در Arch وجود / الزامی است و در حالت UEFI وجود EFI System Partition نیز لازم است.
اگر Swap جدا بخواهیم:
p1 → EFI → FAT32 p2 → Swap p3 → Root / → ext4
اگر Home جدا بخواهیم:
p1 → EFI → FAT32 p2 → Root / → ext4 p3 → /home → ext4
📌 داشتن /home یا Swap بهصورت Partition جدا اجباری نیست.
Swap میتواند به شکل Swapfile یا حتی zram بعد از نصب تنظیم شود.
━━━━━━━━━━━━━━━━━━
4️⃣ پارتیشنهای مهم 📋
PartitionکاربردFilesystemEFIبوت UEFIFAT32/سیستم اصلیext4 / Btrfs / .../homeفایلهای کاربرانext4 / Btrfs / ...Swapحافظه مجازیswap/bootKernel و فایلهای Bootبسته به Bootloader
📌 EFI System Partition باید FAT32 باشد.
━━━━━━━━━━━━━━━━━━
5️⃣ پارتیشنبندی خودکار 🤖
در Archinstall میتوانید از:
Automatic / Best-effort partitioning
استفاده کنید.
مزایا:
✅ سریع
✅ مناسب نصب ساده
✅ مناسب کاربران تازهکار
✅ احتمال خطای کمتر در ساخت Layout
معایب:
❌ کنترل کمتر
❌ مناسب نبودن برای همه Dual Bootها
❌ کنترل کمتر روی اندازه Partitionها
❌ مناسب نبودن برای Layoutهای پیچیده
⭐ برای نصب ساده روی یک SSD:
Automatic → انتخاب خوب
⚠️ اگر اطلاعات مهم روی دیسک دارید، قبل از تأیید حتماً Disk و Partitionها را بررسی کنید.
━━━━━━━━━━━━━━━━━━
6️⃣ پارتیشنبندی دستی 🛠️
در روش Manual خودتان مشخص میکنید:
Partition Size Partition Type Filesystem Mount Point Swap Boot
مثلاً:
512 MiB → EFI → FAT32 → /boot 50 GiB → Root → ext4 → / باقی فضا → Home → ext4 → /home
مزیت:
🎯 کنترل کامل
مناسب برای:
✅ Dual Boot
✅ چند دیسک
✅ Encryption
✅ Btrfs
✅ LVM
✅ RAID
✅ سرور
✅ سیستمهای خاص
ArchWiki نیز تأکید میکند که قبل از پارتیشنبندی باید Layout را متناسب با نیاز بلندمدت سیستم طراحی کرد.
━━━━━━━━━━━━━━━━━━
7️⃣ cfdisk چیست؟ 🖥️
cfdisk یک ابزار متنی تعاملی برای مدیریت Partitionهاست.
اجرای آن:
cfdisk /dev/nvme0n1
یا:
cfdisk /dev/sda
محیط آن نسبت به fdisk سادهتر و بصریتر است.
برای ایجاد GPT:
cfdisk ↓ gpt
سپس میتوانید:
New Delete Resize Type Write Quit
را انجام دهید.
cfdisk بخشی از مجموعه util-linux است و از GPT و MBR پشتیبانی میکند.
━━━━━━━━━━━━━━━━━━
8️⃣ ابزارهای مهم Partitioning 🛠️
ابزارGPTMBRنوعfdisk✅✅CLIcfdisk✅✅TUIgdisk✅❌CLIcgdisk✅❌TUIsgdisk✅❌Scriptparted✅✅CLI
⭐ برای کاربر تازهکار:
cfdisk
⭐ برای کنترل بیشتر:
fdisk / gdisk
ArchWiki این ابزارها را بهعنوان ابزارهای اصلی پارتیشنبندی معرفی میکند.
━━━━━━━━━━━━━━━━━━
9️⃣ Filesystem چیست؟ 🗂️
Filesystem مشخص میکند اطلاعات چگونه روی Partition ذخیره شوند.
چند مورد مهم:
ext4 btrfs xfs f2fs FAT32 exFAT
هرکدام کاربرد و ویژگی متفاوتی دارند.
━━━━━━━━━━━━━━━━━━
🔟 ext4 ⭐
GPT │ ├── EFI 512 MiB FAT32 ├── Root 40+ GiB ext4 └── Home باقی فضا ext4
📌 اندازهها قانون ثابت نیستند و باید بر اساس استفاده و فضای دیسک تعیین شوند. ArchWiki برای یک Root مستقل، حدود 23–32 GiB را حداقل پیشنهادی عمومی میداند؛ نیاز واقعی بسته به Desktop، برنامهها و دادهها بیشتر میشود.
━━━━━━━━━━━━━━━━━━
2️⃣2️⃣ فرمول ساده برای انتخاب 🧠
اگر تازهکار هستید:
UEFI ↓ GPT ↓ EFI + / ↓ FAT32 + ext4 ↓ linux
اگر حرفهایتر هستید:
UEFI ↓ GPT ↓ EFI + Btrfs ↓ Subvolumes ↓ linux / linux-lts
━━━━━━━━━━━━━━━━━━
⚠️ چند نکته بسیار مهم
🚨 Partition ≠ Filesystem
پارتیشن را میسازید:
/dev/nvme0n1p2
سپس روی آن Filesystem ایجاد میکنید:
mkfs.ext4 /dev/nvme0n1p2
🚨 Format کردن Partition اطلاعات قبلی را از بین میبرد.
🚨 برای UEFI معمولاً:
GPT + EFI System Partition + FAT32
انتخاب استاندارد است.
🚨 قبل از هر تغییر:
lsblk
و:
lsblk -f
را بررسی کنید.
🚨 برای شناسایی پایدار دیسکها در تنظیمات Mount، UUID و PARTUUID معمولاً بهتر از نامهایی مانند /dev/sda هستند.
━━━━━━━━━━━━━━━━━━
📌 خلاصه نهایی
💿 DISK ↓ 🧩 GPT / MBR ↓ 📦 PARTITIONS ↓ 🗂️ FILESYSTEM ↓ 📁 MOUNT POINT ↓ 🐧 LINUX
⭐ پیشنهاد برای اکثر کاربران:
Partition Table → GPT Boot → UEFI EFI → FAT32 Root → ext4 Kernel → linux Partitioning → Automatic یا Manual
🧠 برای کاربران حرفهای:
GPT + Btrfs + Subvolumes + Encryption + linux + linux-lts
🏔️ ARCH LINUX 🧠 Understand the system, then customize it.
#ArchLinux #ArchWiki #Partitioning #GPT #cfdisk #Filesystem #ext4 #Btrfs #LinuxKernel #linux #linuxlts #linuxzen
یکی از سادهترین انتخابها برای Arch Linux.
مزایا:
✅ پایدار
✅ ساده
✅ Performance مناسب
✅ ابزارهای فراوان
✅ مناسب Desktop و Server
✅ مدیریت آسان
برای نصب معمولی:
EFI → FAT32 Root → ext4
یکی از سادهترین Layoutهاست.
ساخت:
mkfs.ext4 /dev/nvme0n1p2
━━━━━━━━━━━━━━━━━━
1️⃣1️⃣ Btrfs 🚀
Btrfs یک Filesystem مدرن Copy-on-Write است.
امکانات مهم:
✅ Subvolume
✅ Snapshot
✅ Compression
✅ Checksum
✅ مدیریت پیشرفتهتر
برای کاربر حرفهای بسیار جذاب است.
مثلاً:
@ → / @home → /home
اما:
⚠️ مدیریت آن نسبت به ext4 پیچیدهتر است.
Btrfs قابلیتهای پیشرفتهای دارد و همچنان در حال توسعه است؛ بنابراین برای استفاده حرفهای بهتر است ساختار آن را بشناسید.
━━━━━━━━━━━━━━━━━━
1️⃣2️⃣ XFS 🟣
Filesystem قدرتمند و مناسب برای:
✅ Storage بزرگ
✅ Server
✅ Workloadهای سنگین
نکته مهم:
⚠️ XFS را نمیتوان کوچک کرد؛ افزایش اندازه امکانپذیر است اما Shrink پشتیبانی نمیشود.
برای Desktop معمولی معمولاً انتخاب اول نیست.
━━━━━━━━━━━━━━━━━━
1️⃣3️⃣ F2FS ⚡
Flash-Friendly File System
برای حافظههای مبتنی بر Flash طراحی شده است.
مناسب برای:
📱 Flash Storage
💾 SSD
📦 برخی دستگاههای Embedded
اما:
⚠️ قابلیت Shrink ندارد.
━━━━━━━━━━━━━━━━━━
1️⃣4️⃣ FAT32 / VFAT 🟡
معمولاً برای:
EFI System Partition
استفاده میشود.
مثلاً:
/dev/nvme0n1p1 ↓ FAT32 ↓ EFI
📌 برای Root لینوکس انتخاب مناسبی نیست؛ کاربرد اصلی آن در سیستم Arch مدرن، EFI و رسانههای سازگار با سیستمهای مختلف است.
━━━━━━━━━━━━━━━━━━
1️⃣5️⃣ یک مقایسه سریع Filesystem ⚖️
Filesystemمناسب برایویژگیext4⭐ Desktop عمومیساده و پایدارBtrfs⭐ کاربران حرفهایSnapshot / SubvolumeXFSServer / Storageمناسب حجمهای بزرگF2FSFlashFlash-orientedFAT32EFIاستاندارد ESP
🎯 اگر نمیدانید چه انتخاب کنید:
Root → ext4
انتخاب ساده و مطمئنی است.
━━━━━━━━━━━━━━━━━━
1️⃣6️⃣ Kernel چیست؟ 🧠
Kernel هسته اصلی سیستمعامل است و بین:
Hardware ↕ Kernel ↕ Software
قرار میگیرد.
Arch چند Kernel رسمی و پشتیبانیشده ارائه میکند.
━━━━━━━━━━━━━━━━━━
1️⃣7️⃣ انواع Kernel در Arch 🐧
🟢 linux
Kernel استاندارد Arch:
pacman -S linux
مناسب:
✅ اکثر کاربران
✅ Desktop
✅ Laptop
✅ Gaming
✅ Server
⭐ انتخاب پیشفرض پیشنهادی برای اکثر کاربران
━━━━━━━━━━━━━━━━━━
🔵 linux-lts
نسخه Long-Term Support:
pacman -S linux-lts
مناسب برای:
✅ پایداری بیشتر در طول زمان
✅ بعضی سیستمهای Production
✅ برخی Moduleهای خارج از Kernel که با نسخههای جدید دیرتر سازگار میشوند
━━━━━━━━━━━━━━━━━━
🟠 linux-zen
Kernel با تمرکز بر تجربه سیستمهای روزمره و پاسخگویی:
pacman -S linux-zen
مناسب برای:
🎮 Desktop
🎵 Multimedia
🖥️ استفاده روزمره
اما الزاماً به معنی «سریعتر بودن در همه سیستمها» نیست.
━━━━━━━━━━━━━━━━━━
🔴 linux-hardened
Kernel با تمرکز بیشتر روی امنیت:
pacman -S linux-hardened
هدف:
🔐 Hardening
🛡️ کاهش برخی Attack Surfaceها
🔒 امنیت بیشتر
برای سیستمهایی که امنیت اولویت اصلی است مناسبتر است.
━━━━━━━━━━━━━━━━━━
🟣 linux-rt
Kernel مخصوص Real-Time:
linux-rt linux-rt-lts
برای کاربردهای خاصی که Latency قابل پیشبینی اهمیت زیادی دارد.
مثلاً برخی:
🎚️ Audio
🏭 Industrial
⚙️ Real-Time workloads
این Kernel برای Desktop معمولی ضروری نیست.
━━━━━━━━━━━━━━━━━━
1️⃣8️⃣ بهترین Kernel کدام است؟ 🤔
برای بیشتر کاربران:
🥇 linux
اگر LTS میخواهید:
🥈 linux-lts
اگر میخواهید Zen را آزمایش کنید:
🥉 linux-zen
برای امنیت بیشتر:
🔐 linux-hardened
برای Real-Time:
🎛️ linux-rt
📌 هیچ Kernelای برای همه سیستمها «بهترین مطلق» نیست؛ انتخاب به نوع استفاده و سختافزار بستگی دارد.
━━━━━━━━━━━━━━━━━━
1️⃣9️⃣ امکان نصب چند Kernel وجود دارد؟ ✅
بله!
مثلاً:
linux linux-lts
همزمان میتوانند روی سیستم نصب باشند.
مزیت:
اگر Kernel اصلی دچار مشکل شد، میتوانید از Kernel دیگر Boot کنید.
⭐ برای سیستمهای مهم:
linux + linux-lts
میتواند یک ترکیب کاربردی باشد.
━━━━━━━━━━━━━━━━━━
2️⃣0️⃣ چک کردن Kernel فعلی 🔍
uname -r
مثلاً:
6.x.x-arch1-1
برای دیدن Kernelهای نصبشده:
pacman -Q | grep '^linux'
━━━━━━━━━━━━━━━━━━
2️⃣1️⃣ نمونه Layout پیشنهادی ⭐
💻 Desktop ساده
GPT │ ├── EFI 512 MiB FAT32 │ └── Root باقی فضا ext4
🚀 Desktop حرفهای با Btrfs
GPT │ ├── EFI 512 MiB FAT32 │ └── Root Btrfs ├── @ └── @home
💾 سیستم با Home جدا