# آموزش نصب پکیج ها در debian دبیان

- پیوند: https://negarnovin.com/%d8%a2%d9%85%d9%88%d8%b2%d8%b4-%d9%86%d8%b5%d8%a8-%d9%be%da%a9%db%8c%d8%ac-%d9%87%d8%a7-%d8%af%d8%b1-debian-%d8%af%d8%a8%db%8c%d8%a7%d9%86/
- منتشرشده: 2020-11-14T12:22:48+00:00
- نویسنده: نگارنوین

به روزرسانی شده در ۸ آبان ۱۴۰۵

# آموزش نصب پکیج ها در دبیان Debian (راهنمای جامع apt، dpkg و مخازن)

سیستم عامل دبیان (Debian) به عنوان مادر توزیع های محبوبی مثل اوبونتو، لینوکس مینت
و کالی لینوکس، یکی از پایدارترین سیستم عامل های جهان برای راه اندازی سرورهای لینوکسی
است. دلیل اصلی این پایداری کم نظیر، سیستم مدیریت بسته یا همان پکیج منیجر (Package
Manager) بسیار دقیق آن است که تمام وابستگی ها، کتابخانه ها و فایل های پیکربندی را
با نظم خاصی روی هارد دیسک مدیریت می کند.

⚡ پاسخ کوتاه

آموزش نصب پکیج ها در دبیان Debian (راهنمای جامع apt و dpkg) - نگارنوین

📊 **نصب برنامه در دبیان، دستور نصب فایل deb در لینوکس، تفاوت apt و dpkg، رفع خطای
unable to locate package در دبیان، ویرایش فایل sources.list در دبیان ۱۲، حذف پکیج
در دبیان با purge.**

[**سرور مجازی دبیان**](https://negarnovin.com/debian/)

اما کار کردن با دبیان خام (به ویژه در نسخه های Debian ۱۲ Bookworm و Debian ۱۳ Trixie)
با توزیع های دسکتاپ کمی تفاوت دارد. بسیاری از مدیران سرور و برنامه نویسان در ابتدای
کار با خطاهایی مثل پیدا نشدن بسته در مخازن (Unable to locate package)، قفل شدن فایل`
lock-frontend` یا شکستن پیش نیازها هنگام نصب فایل های محلی `.deb` روبرو می شوند.
در این راهنمای عملی از مجله فنی **نگارنوین**، تمامی روش های استاندارد **نصب پکیج
ها در دبیان**، مدیریت مخازن و تکنیک های عیب یابی خط فرمان را بر اساس تجربه واقعی
کار با سرور بررسی می کنیم.

## تفاوت ابزارهای apt، apt-get و dpkg در معماری دبیان

وقتی وارد محیط ترمینال SSH در دبیان می شوید، با سه دستور مختلف برای مدیریت نرم افزارها
روبرو هستید. شناخت تفاوت این سه ابزار به شما کمک می کند در هر سناریو، دستور درست
را انتخاب کنید:

 * **ابزار سطح پایین dpkg:** این برنامه هسته اصلی مدیریت بسته های با پسوند `.deb`
   در دبیان است. ابزار `dpkg` مستقیما فایل نصبی را باز کرده و روی سیستم کپی می کند،
   اما به اینترنت و مخازن دسترسی ندارد؛ یعنی اگر برنامه ای برای نصب به ۳ کتابخانه
   دیگر نیاز داشته باشد، `dpkg` نمی تواند آن ها را خودش دانلود کند.
 * **ابزار سنتی apt-get و apt-cache:** این ابزارها به عنوان یک لایه هوشمند روی `
   dpkg` ساخته شدند تا به مخازن آنلاین متصل شوند، پیش نیازها را به صورت خودکار دانلود
   کنند و سپس نصب نهایی را به `dpkg` بسپارند. امروزه از `apt-get` بیشتر در داخل 
   اسکریپت های اتوماسیون (Bash Scripts) و فایل های Dockerfile استفاده می شود چون
   خروجی آن همیشه ثابت است.
 * **ابزار مدرن apt:** دستور `apt` ترکیب بهینه شده ای از دستورات قدیمی `apt-get`
   و `apt-cache` است که مخصوص کاربری روزمره مدیران سرور در ترمینال طراحی شده است.
   نمایش نوار پیشرفت (Progress Bar) رنگی در پایین صفحه و خلاصه سازی واضح تغییرات،
   کار با آن را بسیار راحت تر کرده است.

## روش اول: آموزش نصب و مدیریت پکیج ها با دستور apt (روش استاندارد)

در ۹۰ درصد مواقع، برنامه ای که به دنبال آن هستید در مخازن رسمی خود دبیان وجود دارد
و امن ترین راه، نصب مستقیم آن از طریق دستور `apt` است.

### ۱. بروزرسانی فهرست مخازن (گام اجباری در سرورهای خام)

وقتی یک سرور مجازی دبیان را تازه تحویل می گیرید، کش محلی مخازن در مسیر `/var/lib/
apt/lists/` کاملا خالی است. اگر بلافاصله دستور نصب برنامه ای را بزنید، سیستم خطا
می دهد که چنین بسته ای وجود ندارد! بنابراین همیشه اولین دستور شما باید دریافت آخرین
لیست پکیج ها از سرورهای دبیان باشد:

    ```
    sudo apt update
    ```

### ۲. جستجوی نام دقیق پکیج و بررسی جزئیات آن

گاهی اوقات شما نام کلی یک ابزار را می دانید اما نام دقیق بسته نصبی آن در دبیان متفاوت
است (مثلا ابزار شبکه `ifconfig` داخل بسته ای به نام `net-tools` قرار دارد). برای
پیدا کردن نام دقیق بسته و مشاهده نسخه و حجم آن پیش از نصب، از دو دستور زیر استفاده
کنید:

    ```
    # جستجوی یک عبارت در نام و توضیحات پکیج ها
    apt search htop

    # مشاهده جزئیات فنی، نسخه، حجم دانلود و پیش نیازهای یک پکیج
    apt show htop
    ```

### ۳. نصب تکی و گروهی پکیج ها

پس از پیدا کردن نام بسته، می توانید یک یا چند پکیج را با قرار دادن یک فاصله بین 
نام آن ها نصب کنید. اضافه کردن سوییچ `-y` باعث می شود سیستم سوال تایید (Y/n) را 
نپرسد و بلافاصله نصب را انجام دهد:

[سرور debian](https://negarnovin.com/debian/)

    ```
    sudo apt install curl git htop tmux -y
    ```

**نکته کاربردی برای سرورهای سبک:** دبیان به صورت پیش فرض علاوه بر پیش نیازهای اصلی(
Depends)، یک سری بسته های پیشنهادی (Recommends) را هم همراه برنامه نصب می کند. اگر
می خواهید هارد سرور شما با پکیج های جانبی پر نشود، از سوییچ زیر استفاده کنید تا 
فقط فایل های ضروری نصب شوند:

    ```
    sudo apt install --no-install-recommends nginx
    ```

![آموزش تصویری نصب پکیج در دبیان با دستور apt install در محیط ترمینال لینوکس](https://
negarnovin.com/wp-content/uploads/debian-apt-install-package-terminal.jpg)

### ۴. نصب مجدد (Reinstall) و ارتقای بسته ها

اگر فایل کانفیگ یا باینری یک سرویس را به اشتباه خراب کرده اید و می خواهید بدون پاک
کردن کل برنامه، فایل های اصلی آن دوباره جایگزین شوند، از سوییچ `--reinstall` استفاده
کنید. همچنین برای آپدیت کردن یک برنامه خاص یا کل سیستم عامل، دستورات زیر کاربرد 
دارند:

    ```
    # بازگردانی و نصب مجدد فایل های یک پکیج آسیب دیده
    sudo apt install --reinstall openssh-server

    # آپدیت کردن فقط یک پکیج خاص بدون دست زدن به بقیه سیستم
    sudo apt install --only-upgrade nginx

    # ارتقای تمام پکیج های نصب شده روی سرور به آخرین نسخه
    sudo apt upgrade -y
    ```

## روش دوم: نصب فایل های محلی .deb با دستور dpkg و رفع خطای پیش نیازها

بسیاری از نرم افزارهای تجاری یا تخصصی (مثل دیتابیس های خاص، پنل های مدیریتی، گوگل
کروم یا ابزارهای مانیتورینگ) در مخازن پیش فرض دبیان قرار ندارند و شرکت سازنده، فایل
نصبی آن ها را با پسوند **`.deb`** برای دانلود مستقیم ارائه می دهد.

### ۱. روش سنتی با dpkg و ترمیم وابستگی های شکسته

فرض کنید یک فایل با نام `package.deb` را با دستور `wget` در سرور خود دانلود کرده
اید. برای نصب آن با ابزار پایه `dpkg` از سوییچ `-i` (مخفف install) استفاده می شود:

    ```
    sudo dpkg -i package.deb
    ```

در اغلب موارد، بعد از زدن این دستور با خطای معروف `dpkg: dependency problems prevent
configuration` روبرو می شوید؛ زیرا همان طور که گفتیم، `dpkg` توانایی دانلود پیش 
نیازهای کسری را ندارد. در این لحظه، پکیج در حالت نیمه کاره (Unconfigured) باقی می
ماند. برای اینکه دبیان به صورت خودکار به اینترنت وصل شود، پیش نیازهای جا مانده را
دانلود کند و نصب آن فایل `.deb` را تکمیل نماید، بلافاصله دستور زیر را وارد کنید:

    ```
    sudo apt --fix-broken install -y
    # یا به صورت خلاصه:
    sudo apt install -f -y
    ```

### ۲. روش مدرن و حرفه ای (نصب فایل .deb مستقیما با دستور apt)

یک ترفند عالی که بسیاری از کاربران از آن بی خبرند این است که در نسخه های جدید دبیان،
اصلا نیازی به استفاده از دستور دو مرحله ای `dpkg -i` و `apt -f` ندارید! شما می توانید
مسیر فایل محلی `.deb` را مستقیما به خود دستور **`apt install`** بدهید.

تنها نکته فنی این است که حتما باید قبل از نام فایل، علامت مسیر فعلی یعنی **نقطه 
و اسلش (`./`)** را قرار دهید تا `apt` متوجه شود منظور شما یک فایل روی هارد است نه
نام یک بسته در اینترنت:

    ```
    sudo apt install ./package.deb
    ```

با اجرای این دستور، `apt` ابتدا فایل محلی شما را بررسی می کند، تمام پیش نیازهای 
آن را از مخازن رسمی دبیان دانلود می کند و در نهایت خود فایل را بدون هیچ خطایی نصب
می نماید.

[⌊آموزش نصب پکیج ها در debian دبیان⌉⌊آموزش نصب پکیج ها در debian دبیان⌉[

آموزش نصب پکیج ها در debian دبیان

## مدیریت مخازن دبیان (فعال سازی بخش های contrib و non-free)

فلسفه سیستم عامل دبیان بر پایه نرم افزارهای ۱۰۰ درصد آزاد و متن باز است. به همین
دلیل، در نصب اولیه دبیان فقط مخزن **`main`** فعال است. اگر بخواهید برنامه ای مثل`
unrar` (برای باز کردن فایل های فشرده RAR)، کدک های صوتی و تصویری یا درایورهای سخت
افزاری را نصب کنید، با خطای `E: Package 'unrar' has no installation candidate` مواجه
می شوید.

برای دسترسی به تمام پکیج ها، باید دو بخش **`contrib`** و **`non-free`** (به همراه`
non-free-firmware` در دبیان ۱۲ به بعد) را در فایل مخازن فعال کنید. فایل مخازن را
با ویرایشگر نانو باز کنید:

    ```
    sudo nano /etc/apt/sources.list
    ```

خطوط استاندارد مخازن در دبیان ۱۲ (Bookworm) پس از اضافه کردن این بخش ها باید به 
شکل زیر باشند:

    ```
    deb http://deb.debian.org/debian bookworm main contrib non-free non-free-firmware
    deb http://security.debian.org/debian-security bookworm-security main contrib non-free non-free-firmware
    deb http://deb.debian.org/debian bookworm-updates main contrib non-free non-free-firmware
    ```

_(نکته: در دبیان ۱۲ و ۱۳ در برخی ایمیج های ابری، فایل مخازن به فرمت جدید DEB822 
در مسیر `/etc/apt/sources.list.d/debian.sources` منتقل شده است که در آن جا هم می
توانید این عبارات را جلوی ردیف `Components:` اضافه کنید)._ پس از ذخیره فایل با `
Ctrl+O`، حتما دستور `sudo apt update` را اجرا نمایید.

### نحوه افزودن مخازن خارجی در دبیان جدید (جایگزین دستور منسوخ شده apt-key)

اگر قصد نصب نسخه جدید نرم افزارهایی مثل Docker، Node.js یا PHP (مخزن Sury) را روی
دبیان دارید، توجه داشته باشید که دستور قدیمی `apt-key add` به دلایل امنیتی در دبیان
۱۲ و ۱۳ به طور کامل حذف شده است. روش استاندارد امروزی، ذخیره کردن کلید GPG در پوشه`/
etc/apt/keyrings/` و ارجاع به آن با پارامتر `signed-by` است:

    ```
    # ۱. ایجاد پوشه استاندارد کلیدها و دانلود کلید مخزن خارجی
    sudo install -m 0755 -d /etc/apt/keyrings
    curl -fsSL https://example.com/repo-key.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/custom.gpg

    # ۲. معرفی مخزن به همراه مسیر کلید اختصاصی آن
    echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/custom.gpg] https://example.com/debian bookworm main" | sudo tee /etc/apt/sources.list.d/custom.list

    # ۳. بروزرسانی لیست و نصب پکیج
    sudo apt update
    ```

## حذف اصولی پکیج ها، پاکسازی کش و قفل کردن نسخه نرم افزار

مدیریت پکیج در سرور فقط به نصب کردن خلاصه نمی شود؛ گاهی لازم است یک سرویس را به 
طور کامل با تمام تنظیماتش پاک کنید و یا برعکس، جلوی آپدیت شدن ناخواسته یک سرویس 
حساس را بگیرید.

### تفاوت remove و purge در حذف پکیج ها

وقتی دستور `sudo apt remove nginx` را می زنید، فایل های اجرایی برنامه پاک می شوند
اما فایل های کانفیگ داخل پوشه `/etc/nginx` دست نخورده باقی می مانند. اگر می خواهید
برنامه به همراه تمام فایل های تنظیمات و لاگ هایش از ریشه حذف شود و همچنین کتابخانه
های اضافی که دیگر هیچ برنامه ای به آن ها نیاز ندارد پاک شوند، از ترکیب زیر استفاده
کنید:

    ```
    # حذف کامل پکیج به همراه تمام فایل های کانفیگ آن
    sudo apt purge nginx -y

    # حذف کتابخانه های یتیم و بدون استفاده (Orphaned Packages)
    sudo apt autoremove --purge -y

    # خالی کردن پوشه کش فایل های دانلود شده در /var/cache/apt/archives
    sudo apt clean
    ```

### قفل کردن نسخه یک پکیج خاص با دستور apt-mark hold

به عنوان مدیر سرور، فرض کنید نسخه خاصی از دیتابیس MariaDB، داکر یا کرنل لینوکس را
روی سرور کانفیگ کرده اید و نمی خواهید وقتی دستور کلی `apt upgrade` را می زنید، این
بسته خاص آپدیت شود و سازگاری پروژه شما به هم بریزد. برای قفل کردن نسخه یک پکیج، 
از ابزار `apt-mark` استفاده کنید:

    ```
    # قفل کردن پکیج برای جلوگیری از آپدیت خودکار
    sudo apt-mark hold mariadb-server

    # مشاهده لیست تمام پکیج هایی که در حال حاضر قفل شده اند
    apt-mark showhold

    # خارج کردن پکیج از حالت قفل در صورت نیاز به آپدیت
    sudo apt-mark unhold mariadb-server
    ```

## جدول خلاصه دستورات مدیریت پکیج در دبیان

در جدول زیر، پرکاربردترین دستورات مدیریت بسته در توزیع دبیان به صورت مقایسه ای گردآوری
شده اند:

  |  عملیات مورد نظر در سرور |  دستور استاندارد در ترمینال |  توضیحات فنی |  
   |  بروزرسانی لیست مخازن |  `sudo apt update` |  دانلود آخرین ایندکس بسته ها از فایل `sources.list` |  
 |  نصب پکیج از مخزن یا فایل محلی |  `sudo apt install pkg_name` |  برای فایل محلی از فرمت `./file.deb` استفاده شود |  
 |  مشاهده لیست پکیج های نصب شده |  `apt list --installed` (یا `dpkg -l`) |  قابل ترکیب با دستور `grep` برای یافتن یک بسته خاص |  
 |  مشاهده فایل های داخل یک پکیج |  `dpkg -L package_name` |  نشان می دهد پکیج در کدام پوشه های لینوکس فایل کپی کرده است |  
 |  ترمیم نصب های ناقص و وابستگی ها |  `sudo apt --fix-broken install` |  رفع خطای پیش نیازها پس از اجرای دستور `dpkg -i` |  
 |  حذف کامل پکیج و وابستگی های اضافی |  `sudo apt autopurge pkg_name` |  ترکیب همزمان دستورات `purge` و `autoremove` |

## عیب یابی ۳ خطای رایج هنگام نصب پکیج در دبیان

در محیط عملیاتی سرور، گاهی فرآیند نصب با خطا متوقف می شود. در ادامه، روش اصولی رفع
سه مورد از پرتکرارترین ارورهای دبیان را مرور می کنیم:

### ۱. رفع خطای Could not get lock /var/lib/dpkg/lock-frontend

این خطا زمانی رخ می دهد که یا یک پروسه آپدیت خودکار در پس زمینه دبیان (سرویس `unattended-
upgrades`) در حال کار است، و یا نشست قبلی SSH شما در حین نصب قطع شده و فایل قفل (
Lock) باز مانده است.

**راه حل اصولی:** هرگز در ثانیه اول فایل های lock را با دستور `rm` پاک نکنید؛ چون
اگر واقعا برنامه ای در حال نوشتن روی دیتابیس dpkg باشد، سیستم عامل آسیب می بیند.
ابتدا با دستور زیر چک کنید که آیا پروسه ای فعال است یا خیر:

    ```
    ps aux | grep -i apt
    ```

اگر هیچ پروسه فعالی وجود نداشت و سیستم قفل مانده بود، با دستورات زیر قفل را آزاد
کرده و دیتابیس بسته ها را بازسازی کنید:

    ```
    sudo rm -f /var/lib/dpkg/lock-frontend /var/lib/dpkg/lock /var/cache/apt/archives/lock
    sudo dpkg --configure -a
    ```

### ۲. پیدا کردن اینکه یک فایل یا دستور خاص در کدام پکیج قرار دارد (ابزار apt-file)

گاهی اوقات هنگام کامپایل یک برنامه یا اجرای یک اسکریپت با خطایی روبرو می شوید که
می گوید فایل هدر یا دستور خاصی (مثلا `nslookup` یا `add-apt-repository`) روی سیستم
یافت نشد، اما نمی دانید این دستور کوچک داخل کدام پکیج دبیان بسته بندی شده است! برای
حل این مشکل، ابزار فوق العاده `apt-file` را نصب کنید:

    ```
    sudo apt install apt-file -y
    sudo apt-file update

    # جستجو کردن اینکه دستور nslookup داخل کدام پکیج است
    apt-file search bin/nslookup
    # خروجی: dnsutils: /usr/bin/nslookup
    ```

### ۳. خطای عدم دسترسی به مخازن یا کندی شدید دانلود در سرورهای داخل ایران

اگر هنگام زدن دستور `apt update` با خطای `Temporary failure resolving 'deb.debian.
org'` یا تایم اوت مواجه شدید، ابتدا فایل `/etc/resolv.conf` سرور را بررسی کنید و
از تنظیم بودن DNS های معتبر مطمئن شوید. همچنین اگر روی سرور نیاز به دانلود پکیج 
هایی دارید که روی آی پی ایران محدود شده اند، استفاده از سرویس های رفع تحریم DNS 
یا تنظیم پروکسی موقت برای apt (از طریق ایجاد فایل در مسیر `/etc/apt/apt.conf.d/proxy.
conf`) مشکل را برطرف می کند.

## عملکرد سریع پکیج منیجر در سرورهای مجازی دبیان نگارنوین

فرآیند دانلود، باز کردن فایل های فشرده (Unpacking) و پیکربندی پکیج ها در دبیان به
دو عامل زیرساختی وابسته است: **پهنای باند شبکه سرور در ارتباط با مخازن جهانی** و**
سرعت خواندن و نوشتن تصادفی (IOPS) روی دیسک**. روی سرورهایی که از هاردهای قدیمی یا
شبکه های پر نوسان استفاده می کنند، اجرای یک دستور ساده `apt upgrade` می تواند دقایق
طولانی در مرحله `Unpacking` متوقف بماند.

در زیرساخت ابری **نگارنوین**، سرورهای مجازی و اختصاصی لینوکس با آخرین نسخه های رسمی**
Debian ۱۲ و ۱۳** بر بستر دیسک های **Enterprise NVMe** و پورت های شبکه پرسرعت عرضه
می شوند. این معماری باعث می شود دانلود پیش نیازهای سنگین (مانند ایمیج های داکر، 
کتابخانه های پایتون و کامپایلرها) و استخراج آن ها توسط `dpkg` در چند ثانیه انجام
شود تا زمان شما در محیط ترمینال تلف نشود.

## سوالات متداول کاربران (FAQ)

### ۱. تفاوت دستور apt upgrade با دستور apt full-upgrade در دبیان چیست؟

دستور `apt upgrade` بسیار محافظه کار است؛ این دستور پکیج های فعلی را آپدیت می کند
اما هرگز برای آپدیت کردن یک برنامه، پکیج دیگری را از روی سیستم حذف نمی کند. در مقابل،
دستور `apt full-upgrade` (معادل `apt-get dist-upgrade` قدیمی) در صورتی که نسخه جدید
یک نرم افزار یا کرنل نیازمند حذف کتابخانه های قدیمی و جایگزینی آن ها با بسته های
جدید باشد، این کار را به صورت هوشمند انجام می دهد.

### ۲. چگونه یک فایل .deb را فقط دانلود کنیم بدون اینکه روی سیستم نصب شود؟

اگر می خواهید فایل نصبی یک برنامه را از مخازن رسمی دبیان دانلود کنید تا آن را به
یک سرور آفلاین دیگر منتقل نمایید، کافی است از دستور `apt download package_name` 
استفاده کنید. با این کار، فایل `.deb` مستقیما در پوشه فعلی شما ذخیره می شود.

### ۳. آیا می توانیم پکیج های جدیدتر را بدون ارتقای کل دبیان نصب کنیم (مخزن Backports)؟

بله. از آنجایی که دبیان به خاطر حفظ پایداری، نسخه نرم افزارها را در طول عمر هر توزیع
ثابت نگه می دارد، گاهی ممکن است به نسخه جدیدتری از کرنل یا یک برنامه خاص نیاز داشته
باشید. برای این کار می توانید خط مربوط به مخزن رسمی **`bookworm-backports`** را 
به فایل `sources.list` اضافه کنید و با دستور `sudo apt -t bookworm-backports install
package_name` فقط همان برنامه را از مخزن جدیدتر نصب نمایید.

## جمع بندی

مدیریت اصولی بسته ها در دبیان بر پایه درک صحیح ابزار `apt` برای ارتباط با مخازن 
آنلاین و ابزار `dpkg` برای کنترل بسته های محلی استوار است. با فعال سازی بخش های `
contrib` و `non-free` در فایل مخازن، استفاده از فرمت `sudo apt install ./file.deb`
برای نصب بی دردسر فایل های دانلودی و به کارگیری `apt-mark hold` برای محافظت از سرویس
های حساس، می توانید سرور دبیان خود را بدون کوچک ترین تداخلی مدیریت کنید. اگر در 
نصب پکیج خاصی روی سرور دبیان با خطای وابستگی یا مخزن روبرو شده اید، متن خطا را در
بخش نظرات بنویسید تا راه حل دقیق آن را بررسی کنیم.

منبع آموزشی: [نگارنوین ( negarnovin.com )](https://negarnovin.com)

### 📌 خلاصه

آموزش نصب پکیج ها در debian دبیان — آموزش نصب پکیج ها در debian دبیان امروز با شما
هستیم با یک آموزش کاربردی دیگر تحت عنوان نحوه نصب پکیج های دیفالت و کلا پکیج های
اضافه در دبیان بعد از اینکه سرور نصب شده و با دسترسی روت و ssh به سرور می خواهیم
پکیج های…

## 🔗 مطالب مرتبط

 * [آموزش نصب source guardian در دایرکت ادمین](https://negarnovin.com/%d8%a2%d9%85%d9%88%d8%b2%d8%b4-%d9%86%d8%b5%d8%a8-source-guardian-%d8%af%d8%b1-%d8%af%d8%a7%db%8c%d8%b1%da%a9%d8%aa-%d8%a7%d8%af%d9%85%db%8c%d9%86/)
 * [آموزش نصب دایرکت ادمین](https://negarnovin.com/%d8%a2%d9%85%d9%88%d8%b2%d8%b4-%d9%86%d8%b5%d8%a8-%d8%af%d8%a7%db%8c%d8%b1%da%a9%d8%aa-%d8%a7%d8%af%d9%85%db%8c%d9%86/)
 * [آموزش نصب CSF در دایرکت ادمین](https://negarnovin.com/%d8%a2%d9%85%d9%88%d8%b2%d8%b4-%d9%86%d8%b5%d8%a8-csf-%d8%af%d8%b1-%d8%af%d8%a7%db%8c%d8%b1%da%a9%d8%aa-%d8%a7%d8%af%d9%85%db%8c%d9%86/)

**📄 نحوهٔ استناد به این صفحه**`آموزش نصب پکیج ها در debian دبیان — نگارنوین (https://
negarnovin.com/%d8%a2%d9%85%d9%88%d8%b2%d8%b4-%d9%86%d8%b5%d8%a8-%d9%be%da%a9%db%
8c%d8%ac-%d9%87%d8%a7-%d8%af%d8%b1-debian-%d8%af%d8%a8%db%8c%d8%a7%d9%86/)، آخرین
به‌روزرسانی 2026-10-30`✓ کپی شد
