</>

لینوکس‌پارسی

مرجع فارسی آموزش لینوکس

Gentoo • Arch • Debian • Ubuntu • Kali • Parrot
پرش به محتوای اصلی

Command Palette

Search for a command to run...

مخازن Parrot OS

ساختار مخازن Parrot، پیکربندی sources.list و مدیریت مخازن شخصی و third-party.

متوسط۷ دقیقه مطالعهآخرین بروزرسانی: ۵ تیر ۱۴۰۵ویرایش در گیت‌هاب

مخازن (Repositories) سرورهایی هستند که بسته‌های نرم‌افزاری را برای دانلود در اختیار APT قرار می‌دهند. در این آموزش، ساختار مخازن Parrot OS را بررسی می‌کنیم و روش پیکربندی و افزودن مخازن جدید را یاد می‌گیرید.

ساختار مخازن Parrot#

Parrot OS از دو نوع مخزن استفاده می‌کند:

۱. مخازن Parrot (اختصاصی)#

مخازن رسمی Parrot که ابزارهای امنیتی، پیکربندی‌های خاص و بسته‌های اختیاری Parrot را نگه می‌دارند. این مخازن در deb.parrot.sh میزبانی می‌شوند.

۲. مخازن Debian (پایه)#

مخازن Debian Testing که اکثر بسته‌های استاندارد لینوکس را فراهم می‌کنند. Parrot از این مخازن به‌عنوان پایه استفاده می‌کند و بسته‌های خود را روی آن می‌سازد.

نام مستعار Parrot

هر نسخهٔ Parrot یک نام مستعار دارد (مانند lory یا lorikeet). این نام در فایل sources.list استفاده می‌شود تا با نسخهٔ Debian Testing هماهنگ باشد.

فایل sources.list#

تنظیمات مخازن Parrot در فایل /etc/apt/sources.list.d/parrot.list قرار دارد:

# مشاهدهٔ فایل sources.list
cat /etc/apt/sources.list.d/parrot.list

محتوای نمونه:

deb https://deb.parrot.sh/parrot/ lory main contrib non-free non-free-firmware
deb https://deb.parrot.sh/parrot/ lory-security main contrib non-free non-free-firmware
deb https://deb.parrot.sh/parrot/ lory-backports main contrib non-free non-free-firmware

اجزای مخزن#

هر خط مخزن شامل اجزای زیر است:

جزءتوضیح
debبسته‌های باینری
deb-srcبسته‌های سورس
https://deb.parrot.sh/parrot/آدرس مخزن
loryنام نسخه (کد نام Parrot)
mainبسته‌های اصلی (DFSG-compliant)
contribبسته‌های آزاد با وابستگی غیرآزاد
non-freeبسته‌های غیرآزاد
non-free-firmwareفریم‌ورهای غیرآزاد

شاخه‌های مخزن#

شاخهتوضیح
loryمخزن اصلی Parrot
lory-securityبه‌روزرسانی‌های امنیتی فوری
lory-updatesبه‌روزرسانی‌های معمولی
lory-backportsنسخه‌های جدیدتر از شاخهٔ testing

افزودن مخزن جدید#

روش ۱: ویرایش مستقیم فایل#

# باز کردن فایل parrot.list با ویرایشگر
sudo nano /etc/apt/sources.list.d/parrot.list
 
# افزودن یک خط جدید، مثلاً مخزن Docker
# deb [arch=amd64] https://download.docker.com/linux/debian trieste stable

روش ۲: استفاده از add-apt-repository#

# نصب بستهٔ لازم
sudo apt install software-properties-common
 
# افزودن مخزن PPA
sudo add-apt-repository ppa:user/ppa-name
 
# حذف مخزن
sudo add-apt-repository --remove ppa:user/ppa-name

روش ۳: فایل .list جداگانه#

بهترین روش برای مخازن third-party، ایجاد فایل جداگانه است:

# ایجاد فایل جداگانه برای Docker
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian trieste stable" | sudo tee /etc/apt/sources.list.d/docker.list
 
# به‌روزرسانی فهرست
sudo apt update

مراقب مخازن ناشناس باشید

افزودن مخازن third-party می‌تواند امنیت سیستم را به‌خطر بیندازد. تنها مخازن معتبر و شناخته‌شده را اضافه کنید و همیشه کلید GPG آن‌ها را تأیید کنید.

مدیریت کلیدهای GPG#

هر مخزن باید با کلید GPG امضا شود تا APT اصالت بسته‌ها را تأیید کند.

روش قدیمی (apt-key)#

# دریافت و افزودن کلید (روش قدیمی)
wget -q -O - https://example.com/key.gpg | sudo apt-key add -

روش جدید (signed-by)#

روش توصیه‌شده در Parrot 6 و Debian جدیدتر:

# دانلود کلید و ذخیره در keyring
curl -fsSL https://example.com/key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/example-archive-keyring.gpg
 
# افزودن مخزن با ارجاع به کلید
echo "deb [signed-by=/usr/share/keyrings/example-archive-keyring.gpg] https://example.com/debian stable main" | sudo tee /etc/apt/sources.list.d/example.list

تغییر mirror مخزن#

اگر سرور رسمی Parrot کند است، می‌توانید از mirror دیگری استفاده کنید:

# لیست mirrorهای رسمی
# https://mirrors.parrotsec.org/
 
# تغییر mirror به mirror آلمانی
sudo sed -i 's|deb.parrot.sh|parrot.mirror.garr.it|g' /etc/apt/sources.list.d/parrot.list
 
# به‌روزرسانی
sudo apt update

انتخاب mirror نزدیک

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

جدول mirrorهای رسمی Parrot#

Mirrorکشورآدرس
Officialجهانیdeb.parrot.sh
GARRایتالیاparrot.mirror.garr.it
Yamatoژاپنftp.yz.yamagata-u.ac.jp
switchسوئیسmirror.switch.ch

پین کردن بسته (APT Pinning)#

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

# ایجاد فایل پین
sudo nano /etc/apt/preferences.d/docker
 
# محتوا:
# Package: docker*
# Pin: origin download.docker.com
# Pin-Priority: 700
اولویترفتار
> 1000نصب نسخه‌های قدیمی‌تر هم ممکن است
990-1000اولویت پیش‌فرض برای نصب
100-500نصب فقط اگر نسخه‌ای نصب نباشد
< 0نصب ممنوع
< -1نصب ممنوع حتی اگر نصب شده باشد

خطاهای رایج#

خطای NO_PUBKEY#

W: An error occurred during the signature verification.
GPG error: https://example.com stable InRelease: NO_PUBKEY ABC123DEF456

راه‌حل:

# دریافت کلید گم‌شده
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ABC123DEF456
# یا روش جدید
gpg --keyserver keyserver.ubuntu.com --recv-keys ABC123DEF456
gpg --export ABC123DEF456 | sudo tee /usr/share/keyrings/example.gpg > /dev/null

خطای 404 در مخزن#

E: The repository 'https://deb.parrot.sh/parrot lory Release' does not have a Release file.

راه‌حل:

# بررسی نام نسخه
cat /etc/os-release | grep VERSION_CODENAME
 
# اصلاح sources.list با نام صحیح
sudo nano /etc/apt/sources.list.d/parrot.list
sudo apt update

مخزن غیرامن (insecure)#

W: Conflicting distribution: https://example.com stable InRelease (expected stable but got oldstable)

راه‌حل: نام نسخه را در sources.list اصلاح کنید یا مخزن را حذف کنید.

خطای Duplicate source#

W: Target Packages is configured multiple times in /etc/apt/sources.list.d/parrot.list:1 and /etc/apt/sources.list:5

راه‌حل: خط تکراری را از یکی از فایل‌ها حذف کنید:

# مشاهدهٔ خطوط تکراری
grep -rn "deb.parrot.sh" /etc/apt/sources.list /etc/apt/sources.list.d/

خلاصه و مرحلهٔ بعد#

مخازن Parrot از پایهٔ Debian Testing و بسته‌های اختصاصی Parrot تشکیل شده‌اند. با درک ساختار sources.list و نحوهٔ افزودن مخازن و کلیدهای GPG، می‌توانید سیستم خود را با نرم‌افزارهای موردنیاز گسترش دهید.

به‌عنوان گام بعدی:

اشتراک‌گذاری:

این صفحه در تاریخ ۵ تیر ۱۴۰۵ به‌روزرسانی شده است.