Product SiteDocumentation Site

دبیان 9

راهنمای جامع دبیان

Debian Stretch from Discovery to Mastery

ويرايش 1

رافایل هرتزوگ

رولاند ماس

اخطار قانونی

ISBN: 979-10-91414-16-6 (English paperback)
ISBN: 979-10-91414-17-3 (English ebook)
این کتاب تحت دو مجوز منطبق با رویکردهای نرم‌افزار آزاد دبیان قرار دارد.
اطلاعیه مجوز Creative Commons:
این کتاب تحت مجوز Creative Commons Attribution-ShareAlike 3.0 قرار دارد.
اطلاعیه مجوز GPL:
این کتاب یک مستندسازی آزاد به شمار می‌آید: شما می‌توانید تحت مجوز GPL که توسط بنیاد نرم‌افزار آزاد منتشر شده است، آن را بازنشر کنید یا تغییر دهید، خواه نسخه ۲ مجوز یا (اگر صلاح می‌دانید) نسخه‌های بالاتر.
این کتاب با امید به اینکه مفید واقع شود توزیع می‌گردد. اما بدون هیچ تضمینی، حتی گواهی ضمنی که مربوط به خرید و فروش یا انطباق با هدف خاصی باشد. برای اطلاعات بیشتر به مجوز GPL مراجعه کنید.
شما باید یک نسخه رونوشت از مجوز GPL همراه با این نرم‌افزار دریافت کرده باشید. در غیر این صورت، به http://www.gnu.org/licenses/ مراجعه کنید.

قدردانی خود را نشان دهید

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

چكيده

کتابی جامع از توزیع دبیان، که از نصب اولیه تا تنظیمات سرویس‌ها را شامل می‌شود.
مقدمه
پیشگفتار
1. چرا این کتاب؟
2. این کتاب برای چه افرادی است؟
3. رویکرد عمومی
4. ساختار کتاب
5. سپاسگزاری
5.1. اندکی تاریخچه
5.2. تشکر ویژه از مشارکت‌کنندگان
5.3. تشکر از مترجمان
5.4. قدردانی‌های شخصی از طرف رافائل
5.5. قدردانی‌های شخصی از رولاند
1. پروژه دبیان
1.1. دبیان چیست؟
1.1.1. یک سیستم عامل چندسکویی
1.1.2. کیفیت نرم‌افزار آزاد
1.1.3. چارچوب قانونی: یک سازمان غیرانتفاعی
1.2. اسناد بنیادین
1.2.1. تعهد نسبت به کاربران
1.2.2. دستورالعمل‌های نرم‌افزار آزاد دبیان
1.3. شیوه اجرایی داخلی در پروژه دبیان
1.3.1. توسعه‌دهندگان دبیان
1.3.2. نقش فعال کاربران
1.3.3. تیم‌ها و پروژه‌های جانبی
1.4. پیگیری اخبار دبیان
1.5. نقش توزیع‌ها
1.5.1. نصب‌کننده: debian-installer
1.5.2. کتابخانه نرم‌افزار
1.6. چرخه‌حیات یک انتشار
1.6.1. وضعیت شاخه آزمایشی
1.6.2. وضعیت شاخه ناپایدار
1.6.3. مهاجرت به شاخه تحت آزمون
1.6.4. ارتقاء از شاخه تحت‌آزمون به پایدار
1.6.5. وضعیت شاخه‌های پایدار سابق و پایدار قدیمی
2. ارائه مورد مطالعاتی
2.1. نیازهای درحال رشد فناوری اطلاعات
2.2. طرح اصلی
2.3. چرا یک توزیع گنو/لینوکس؟
2.4. چرا توزیع دبیان؟
2.4.1. توزیع‌های تجاری و مبتنی بر جامعه کاربری
2.5. Why Debian Stretch?
3. بررسی ابزار نصب‌شده موجود و مهاجرت
3.1. همزیستی در محیط‌های ناهمگون
3.1.1. ادغام با ماشین‌های ویندوز
3.1.2. ادغام با ماشین‌های OS X
3.1.3. ادغام با سایر ماشین‌های لینوکس/یونیکس
3.2. چگونگی مهاجرت
3.2.1. نظرسنجی و شناسایی خدمات
3.2.2. پشتیبان‌گیری از فایل‌های پیکربندی
3.2.3. سازوکار در اختیار گرفتن یک سرور دبیان موجود
3.2.4. نصب دبیان
3.2.5. نصب و پیکربندی سرویس‌های انتخاب شده
4. نصب
4.1. روش‌های نصب
4.1.1. نصب با استفاده از CD-ROM/DVD-ROM
4.1.2. راه‌اندازی از USB
4.1.3. نصب با راه‌اندازی شبکه
4.1.4. سایر شیوه‌های نصب
4.2. نصب قدم به قدم
4.2.1. شروع و راه‌اندازی برنامه نصب
4.2.2. انتخاب زبان
4.2.3. انتخاب کشور
4.2.4. انتخاب ساختار صفحه‌کلید
4.2.5. شناسایی سخت‌افزار
4.2.6. بارگیری کامپوننت‌ها
4.2.7. شناسایی سخت‌افزار شبکه
4.2.8. پیکربندی شبکه
4.2.9. گذرواژه مدیر
4.2.10. ایجاد اولین کاربر
4.2.11. پیکربندی ساعت
4.2.12. شناسایی دیسک‌ها و سایر دستگاه‌ها
4.2.13. ابزار پارتیشن‌بندی
4.2.14. نصب سیستم پایه
4.2.15. پیکربندی مدیر بسته (apt)
4.2.16. مسابقه محبوبیت بسته‌های دبیان
4.2.17. انتخاب بسته‌ها برای نصب
4.2.18. نصب راه‌انداز GRUB
4.2.19. پایان فرآیند نصب و راه‌اندازی مجدد
4.3. پس از اولین راه‌اندازی سیستم
4.3.1. نصب سایر نرم‌افزارها
4.3.2. بروزرسانی سیستم
5. سیستم بسته‌بندی: اصول و ابزارهای بنیادین
5.1. ساختار یک بسته باینری
5.2. اطلاعات-جانبی بسته
5.2.1. توضیح: فایل control
5.2.2. اسکریپت‌های پیکربندی
5.2.3. Checksums، فهرستی از فایل‌های پیکربندی
5.3. ساختار یک بسته سورس
5.3.1. قالب
5.3.2. کاربرد در دبیان
5.4. مدیریت بسته‌ها با استفاده از dpkg
5.4.1. نصب بسته‌ها
5.4.2. حذف بسته
5.4.3. فراخوانی پایگاه‌داده dpkg و جستجوی فایل‌های .deb
5.4.4. فایل لاگ dpkg
5.4.5. پشتیبانی از چند-معماری
5.5. همزیستی با سایر سیستم‌های بسته‌بندی
6. نگهداری و بروزرسانی: ابزار APT
6.1. پر کردن فایل sources.list
6.1.1. شیوه استفاده
6.1.2. مخازنی برای کاربران Stable
6.1.3. مخازنی برای کاربران Testing و Unstable
6.1.4. Using Alternate Mirrors
6.1.5. منابع غیر-رسمی: mentors.debian.net
6.1.6. پروکسی کش برای بسته‌های دبیان
6.2. aptitude, دستورات apt-get و apt
6.2.1. راه‌اندازی
6.2.2. نصب و حذف
6.2.3. بروزرسانی سیستم
6.2.4. گزینه‌های پیکربندی
6.2.5. مدیریت اولویت بسته‌ها
6.2.6. کار با چندین توزیع مختلف
6.2.7. ردیابی خودکار بسته‌های نصب شده
6.3. دستور apt-cache
6.4. رابط‌های کاربری: aptitude و synaptic
6.4.1. aptitude
6.4.2. synaptic
6.5. بررسی صحت بسته‌ها
6.6. بروزرسانی کلی از یک توزیع پایدار به دیگری
6.6.1. فرآیند توصیه‌شده
6.6.2. بررسی مشکلات پس از بروزرسانی کلی
6.7. بروز نگهداشتن یک سیستم
6.8. بروزرسانی‌های خودکار
6.8.1. پیکربندی dpkg
6.8.2. پیکربندی APT
6.8.3. پیکربندی debconf
6.8.4. مدیریت شیوه تعامل با خط فرمان
6.8.5. ترکیب جادویی
6.9. جستجو برای بسته‌ها
7. حل مشکلات و یافتن اطلاعات مرتبط
7.1. منابع مستندات
7.1.1. صفحات راهنما
7.1.2. اسناد info
7.1.3. مستندات خاص
7.1.4. وبسایت‌ها
7.1.5. آموزش‌های (HOWTO)
7.2. فرآیندهای متداول
7.2.1. پیکربندی یک برنامه
7.2.2. نظارت بر فرآیندهای پس‌زمینه
7.2.3. درخواست راهنمایی در میلینگ لیست
7.2.4. گزارش باگ زمانی که مشکل بیش از اندازه دشوار باشد
8. پیکربندی اولیه: شبکه، حساب‌های کاربری، چاپ و ...
8.1. پیکربندی سیستم برای یک زبان دیگر
8.1.1. تنظیم زبان پیش‌فرض
8.1.2. پیکربندی صفحه‌کلید
8.1.3. مهاجرت به UTF-8
8.2. پیکربندی شبکه
8.2.1. رابط Ethernet
8.2.2. Wireless Interface
8.2.3. برقراری ارتباط با PPP از طریق مودم PSTN
8.2.4. برقراری ارتباط از طریق مودم ADSL
8.2.5. پیکربندی خودکار شبکه برای کاربران
8.3. تنظیم Hostname و پیکربندی Name Service
8.3.1. تخصیص نام
8.4. پایگاه‌داده‌های کاربران و گروه‌ها
8.4.1. فهرست کاربران: /etc/passwd
8.4.2. فایل رمزگذاری‌شده و مخفی گذرواژه‌ها: /etc/shadow
8.4.3. تغییر یک حساب کاربری موجود یا گذرواژه آن
8.4.4. غیرفعال‌سازی یک حساب‌کاربری
8.4.5. فهرست گروه: /etc/group
8.5. ایجاد حساب‌های کاربری
8.6. محیط پوسته
8.7. پیکربندی چاپگر
8.8. پیکربندی راه‌انداز اولیه
8.8.1. شناسایی دیسک‌ها
8.8.2. پیکربندی LILO
8.8.3. پیکربندی GRUB2
8.8.4. برای رایانه‌های مکینتاش (PowerPC): پیکربندی Yaboot
8.9. سایر پیکربندی‌ها: همگام‌سازی زمان، گزارش‌ها، دسترسی اشتراکی...
8.9.1. منطقه‌زمانی
8.9.2. همگام‌سازی زمان
8.9.3. چرخش فایل‌های گزارش
8.9.4. اشتراک‌گذاری دسترسی سطح بالا
8.9.5. فهرست نقاط اتصال
8.9.6. locate و updatedb
8.10. کامپایل یک کرنل
8.10.1. مقدمه و پیش‌نیاز
8.10.2. دریافت منابع
8.10.3. پیکربندی کرنل
8.10.4. کامپایل‌کردن و ساختن بسته
8.10.5. کامپایل‌کردن ماژول‌های خارجی
8.10.6. اعمال یک وصله در کرنل
8.11. نصب یک کرنل
8.11.1. ویژگی‌های یک بسته کرنل در دبیان
8.11.2. نصب با استفاده از dpkg
9. سرویس‌های یونیکس
9.1. راه‌اندازی سیستم
9.1.1. سیستم راه‌انداز systemd
9.1.2. سیستم راه‌انداز System V
9.2. دسترسی از راه‌دور
9.2.1. ورود امن از راه‌دور: SSH
9.2.2. استفاده از میزکارهای گرافیکی راه‌دور
9.3. مدیریت دسترسی
9.4. رابط‌های مدیریتی
9.4.1. مدیریت سیستم با استفاده از یک رابط تحت-وب: webmin
9.4.2. پیکربندی بسته‌ها: debconf
9.5. syslog رویدادهای سیستمی
9.5.1. اصل و مکانیزم
9.5.2. فایل پیکربندی
9.6. ابر-سرور inetd
9.7. زمان‌بندی وظیفه‌ها با cron و atd
9.7.1. قالب یک فایل crontab
9.7.2. استفاده از دستور at
9.8. زمان‌بندی وظیفه‌های غیرهمزمان: anacron
9.9. سهمیه‌بندی
9.10. پشتیبان‌گیری
9.10.1. پشتیبان‌گیری با استفاده از rsync
9.10.2. بازیابی رایانه‌هایی که فایل پشتیبان ندارند
9.11. اتصال سریع: hotplug
9.11.1. مقدمه
9.11.2. مشکل نامگذاری
9.11.3. چگونگی کارکرد udev
9.11.4. یک مثال کامل
9.12. مدیریت نیرو؛ پیکربندی پیشرفته و رابط کار با نیرو (ACPI)
10. زیرساخت شبکه
10.1. Gateway
10.2. شبکه خصوصی مجازی
10.2.1. OpenVPN
10.2.2. VPN به همراه SSH
10.2.3. IPsec
10.2.4. PPTP
10.3. کیفیت سرویس
10.3.1. اصول و مکانیزم
10.3.2. پیکربندی و پیاده‌سازی
10.4. مسیریابی پویا
10.5. IPv6
10.5.1. تونل‌زنی
10.6. سرورهای نام دامنه (DNS)
10.6.1. اصول و مکانیزم
10.6.2. پیکربندی
10.7. DHCP
10.7.1. پیکربندی
10.7.2. DHCP و DNS
10.8. ابزار بررسی شبکه
10.8.1. بررسی محلی: netstat
10.8.2. بررسی راه‌دور: nmap
10.8.3. اسنیفرها: tcpdump و wireshark
11. سرویس‌های شبکه: Postfix، Apache، NFS، Samba، Squid، LDAP، SIP، XMPP، Turn
11.1. سرور ایمیل
11.1.1. نصب Postfix
11.1.2. پیکربندی دامنه‌های مجازی
11.1.3. محدودیت برای ارسال و دریافت
11.1.4. برپایی فهرست خاکستری
11.1.5. سفارشی‌سازی فیلترها مبتنی بر گیرنده
11.1.6. یکپارچه‌سازی آنتی‌ویروس
11.1.7. SMTP احرازهویت شده
11.2. سرور وب (HTTP)
11.2.1. نصب آپاچی
11.2.2. پیکربندی گروه‌های مجازی
11.2.3. عبارت‌های متداول
11.2.4. تحلیلگرهای گزارش
11.3. سرور فایل FTP
11.4. سرور فایل NFS
11.4.1. ایمن‌سازی NFS
11.4.2. سرور NFS
11.4.3. برنامه NFS
11.5. راه‌اندازی اشتراک‌های ویندوز با Samba
11.5.1. سرور سامبا
11.5.2. برنامه سامبا
11.6. پروکسی HTTP/FTP
11.6.1. نصب
11.6.2. پیکربندی یک حافظه نهان
11.6.3. پیکربندی یک فیلتر
11.7. دایرکتوی LDAP
11.7.1. نصب
11.7.2. پرکردن دایرکتوری
11.7.3. مدیریت حساب‌ها با LDAP
11.8. سرویس‌های ارتباطی بلادرنگ
11.8.1. تنظیمات DNS برای سرویس‌های RTC
11.8.2. سرور TURN
11.8.3. سرور پروکسی SIP
11.8.4. سرور XMPP
11.8.5. اجرای سرویس‌ها روی درگاه ۴۴۳
11.8.6. افزودن WebRTC
12. مدیریت پیشرفته
12.1. RAID و LVM
12.1.1. RAID نرم‌افزاری
12.1.2. LVM
12.1.3. RAID یا LVM؟
12.2. مجازی‌سازی
12.2.1. Xen
12.2.2. LXC
12.2.3. مجازی‌سازی با KVM
12.3. نصب خودکار
12.3.1. نصب‌کننده تمام خودکار (FAI)
12.3.2. گردآوری debian-installer
12.3.3. Simple-CDD: یک راهکار جامع
12.4. مانیتورینگ
12.4.1. راه‌اندازی Munin
12.4.2. راه‌اندازی Nagios
13. رومیزی
13.1. پیکربندی سرور X11
13.2. سفارشی‌سازی رابط گرافیکی
13.2.1. انتخاب یک مدیر نمایش
13.2.2. انتخاب یک مدیر پنجره
13.2.3. مدیریت منو
13.3. محیط‌های گرافیکی
13.3.1. GNOME
13.3.2. KDE and Plasma
13.3.3. Xfce و دیگران
13.4. ایمیل
13.4.1. Evolution
13.4.2. KMail
13.4.3. Thunderbird و Icedove
13.5. مرورگرهای وب
13.6. توسعه
13.6.1. ابزارهای +GTK در GNOME
13.6.2. ابزارهای Qt در KDE
13.7. کار مشارکتی
13.7.1. کا در گروه‌ها: groupware
13.7.2. کار مشارکتی با استفاده از FusionForge
13.8. مجموعه‌های اداری
13.9. شبیه‌سازی ویندوز: Wine
13.10. نرم‌افزار ارتباط بلادرنگ
14. امنیت
14.1. تعریف خط‌مشی امنیتی
14.2. فایروال یا فیلترینگ بسته
14.2.1. عملکرد Netfilter
14.2.2. شیوه نگارش iptables و ip6tables
14.2.3. ایجاد قوانین
14.2.4. اجرای قوانین در هر مرتبه راه‌اندازی
14.3. نظارت: پیشگیری، شناسایی، بازدارندگی
14.3.1. مانیتورینگ گزارش‌ها با استفاده از logcheck
14.3.2. فعالیت مانیتورینگ
14.3.3. تشخیص تغییرات
14.3.4. تشخیص نفوذ (IDS/NIDS)
14.4. مقدمه‌ای بر AppArmor
14.4.1. اصول
14.4.2. فعال‌سازی و مدیریت پروفایل‌های AppArmor
14.4.3. ایجاد یک پروفایل جدید
14.5. مقدمه‌ای بر SELinux
14.5.1. اصول
14.5.2. راه‌اندازی SELinux
14.5.3. مدیریت یک سیستم SELinux
14.5.4. انطباق قوانین
14.6. سایر ملاحظات مرتبط با امنیت
14.6.1. خطرات ذاتی در برنامه‌های تحت وب
14.6.2. انتظار چه چیزی را داشته باشیم
14.6.3. انتخاب آگاهانه نرم‌افزار
14.6.4. مدیریت یک ماشین به صورت کلی
14.6.5. کاربران به عنوان بازیکنان اصلی
14.6.6. امنیت فیزیکی
14.6.7. مسئولیت قانونی
14.7. مواجهه با یک ماشین نفوذپذیر
14.7.1. شناسایی و مشاهده نفوذ خرابکار
14.7.2. خاموش کردن سرور
14.7.3. نگهداری هر آنچه که می‌تواند به عنوان مدرک استفاده شود
14.7.4. نصب مجدد
14.7.5. بررسی و تحلیل قضایی
14.7.6. بازسازی سناریوی حمله
15. Creating a Debian Package
15.1. Rebuilding a Package from its Sources
15.1.1. Getting the Sources
15.1.2. Making Changes
15.1.3. Starting the Rebuild
15.2. Building your First Package
15.2.1. Meta-Packages or Fake Packages
15.2.2. Simple File Archive
15.3. Creating a Package Repository for APT
15.4. Becoming a Package Maintainer
15.4.1. Learning to Make Packages
15.4.2. Acceptance Process
16. Conclusion: Debian's Future
16.1. Upcoming Developments
16.2. Debian's Future
16.3. Future of this Book
A. توزیع‌های مشتق شده
A.1. سرشماری آماری و همکاری
A.2. اوبونتو
A.3. لینوکس مینت
A.4. ناپیکس
A.5. اپتوزید و سیداکشن
A.6. Grml
A.7. تیلز
A.8. کالی لینوکس
A.9. دیوان
A.10. تانگلو
A.11. دودو لینوکس
A.12. رسپبیان
A.13. و بسیاری دیگر
B. درس کاربردی کوتاه
B.1. خط فرمان و دستورات ابتدایی
B.1.1. مرور ساختار درختی و مدیریت فایل‌ها
B.1.2. نمایش و تغییر فایل‌های متنی
B.1.3. جستجو به دنبال فایل‌ها و محتویات آن‌ها
B.1.4. مدیریت فرآیندها (پروسه‌ها)
B.1.5. اطلاعات سیستم: حافظه، فضای ذخیره‌سازی، هویت
B.2. سازماندهی سلسله‌مراتب فایل‌سیستم
B.2.1. دایرکتوری ریشه
B.2.2. دایرکتوری خانه کاربر
B.3. طرزکار داخلی یک رایانه: لایه‌های مختلفی درگیر هستند
B.3.1. عمیق‌ترین لایه: سخت‌افزار
B.3.2. راه‌انداز: BIOS یا UEFI
B.3.3. کرنل
B.3.4. فضای کاربری
B.4. برخی از وظایفی که کرنل به آن‌ها رسیدگی می‌کند
B.4.1. مدیریت سخت‌افزار
B.4.2. فایل‌سیستم‌ها
B.4.3. توابع اشتراکی
B.4.4. مدیریت فرآیندها (پروسه‌ها)
B.4.5. مدیریت مجوز
B.5. فضای کاربری
B.5.1. فرآیند
B.5.2. فرآیندهای پس‌زمینه
B.5.3. ارتباطات بین‌-فرآیندی
B.5.4. کتابخانه‌ها
C. راهنمای دبیان برای مدیر سیستم‌ها
D. کتاب دریافت
D.1. خرید نسخه چاپی انگلیسی
D.2. دانلود نسخه الکترونیک
D.3. دانلود کتاب