انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید

نویسنده موضوع: نصب Debian Debootstrap  (دفعات بازدید: 2750 بار)

0 کاربر و 2 مهمان درحال مشاهده موضوع.

آفلاین norouzi90

  • Hero Member
  • *
  • ارسال: 833
  • جنسیت : پسر
  • Debian 13 + Cinnamon
نصب Debian Debootstrap
« : 12 مهر 1404، 03:40 ب‌ظ »
با سلام و عرض ادب و احترام.

در اینترنت صفحه وبی که آموزش نصب دبیان از طریق Debootstrap را می داد را دیدم:
https://ianlecorbeau.com/blog/debian-debootstrap-install.html
عکس های مربوط به این نصب ایشان را در این ارسالی و ارسال بعدی گذاشته ام.

علاقه‌مند شدم که من هم تلاشم را برای نصب Debian GNU/Linux 13.1.0 _Trixie  را از طریق روشی که ایشان گفته، بکار ببرم.
چون دوست دارم، این ها را در سیستم اصلی ام اجرا می نمایم و نه در ماشین مجازی.
در ارسال های بعدی کارهایی که در اینباره انجام داده ام و اشکالات و سؤالاتی که با آنها مواجه شده ام را خدمتتان ارسال می نمایم.



آفلاین norouzi90

  • Hero Member
  • *
  • ارسال: 833
  • جنسیت : پسر
  • Debian 13 + Cinnamon
پاسخ : نصب Debian Debootstrap
« پاسخ #1 : 12 مهر 1404، 03:43 ب‌ظ »
ادامه عکس ها:

آفلاین رسول سعیدنژاد

  • High Hero Member
  • *
  • ارسال: 3532
  • جنسیت : پسر
  • علی (ع): زَكَاةُ الْعِلْمِ نَشْرُه
پاسخ : نصب Debian Debootstrap
« پاسخ #2 : 12 مهر 1404، 03:56 ب‌ظ »
سال ۲۰۱۵ یک مقاله با همین موضوع در سایت اوبونتو نیوز نوشته بودم. یادش بخیر.
فایل PDFش رو اگه خواستی برات می‌فرستم. هرچند از اون سال تا الان یک سری از موارد قطعاً تغییر کرده ولی سر راست و خلاصه هست.

پ.ن: با این روش شما اوبونتو رو هم می‌تونی نصب کنی. بستگی داره چه مخزنی از توزیع‌های برپایهٔ دبیان بهش بدی.
نرم افزار، یک ابزاره. برای رسیدن به هدف ازش استفاده کنید. نرم افزار هدف شما نیست :) - آزادی، بزرگ‌ترین دروغ بشریت

آفلاین norouzi90

  • Hero Member
  • *
  • ارسال: 833
  • جنسیت : پسر
  • Debian 13 + Cinnamon
پاسخ : نصب Debian Debootstrap
« پاسخ #3 : 12 مهر 1404، 04:06 ب‌ظ »
ممنون آقای سعیدنژاد از محبتتان، ممنون می شوم که فایل مربوطه را برایم بفرستید.

آفلاین رسول سعیدنژاد

  • High Hero Member
  • *
  • ارسال: 3532
  • جنسیت : پسر
  • علی (ع): زَكَاةُ الْعِلْمِ نَشْرُه
پاسخ : نصب Debian Debootstrap
« پاسخ #4 : 12 مهر 1404، 06:09 ب‌ظ »
ممنون آقای سعیدنژاد از محبتتان، ممنون می شوم که فایل مربوطه را برایم بفرستید.

خدمت شما
نرم افزار، یک ابزاره. برای رسیدن به هدف ازش استفاده کنید. نرم افزار هدف شما نیست :) - آزادی، بزرگ‌ترین دروغ بشریت

آفلاین norouzi90

  • Hero Member
  • *
  • ارسال: 833
  • جنسیت : پسر
  • Debian 13 + Cinnamon
پاسخ : نصب Debian Debootstrap
« پاسخ #5 : 12 مهر 1404، 06:25 ب‌ظ »
خیلی محبت فرمودید.

آفلاین norouzi90

  • Hero Member
  • *
  • ارسال: 833
  • جنسیت : پسر
  • Debian 13 + Cinnamon
پاسخ : نصب Debian Debootstrap
« پاسخ #6 : 12 مهر 1404، 07:23 ب‌ظ »
با رخصت و اجازه از استاد عزیزم آقای سعیدنژاد، فعلاً روش  Ian LeCorbeau را ادامه می دهم.


 مرحله 1)
ابتدا یکی از دبیان های  لایو را از لینک زیر دانلود کردم.:
https://cdimage.debian.org/images/release/current-live/amd64/iso-hybrid/

من  debian-live-13.1.0-amd64-cinnamon.iso  را انتخاب کردم.



مرحله 2) 

 نرم‌افزار tmux  را نصب می کنیم:
 sudo apt install tmux
مرحله 3)  عکس 1

از این به بعد من از نرم‌افزار tmux استفاده می نمایم. کافیست در ترمینال tmux را بنویسید و اینتر را بزنید تا این برنامه اجرا شود.
بسته های debootstrap  و   arch-install-scripts  را نصب می نمایم:
# apt update && apt install debootstrap arch-install-scripts -y
مرحله 4) عکس های 2 ، 3 ، 4 و 5


چون من می خواهم به روش EFI ، دبیان را نصب کنم، پس بهتر است که پارتیشن های EFI و
swap و root و home را بسازم.

برای من پارتیشن بندی ها به این نحو خواهد شد:

dev/sda1 برای پارتیشن EFI
dev/sda2 برای پارتیشن swap
dev/sda3 برای پارتیشن  root
dev/sda4 برای پارتیشن home
 
یادتان باشد برای اینکه خطا ندهد، پارتیشن ها را unmount کنید.
من در اینجا از این دستورات استفاده کردم:
#  mkfs.fat -F 32 /dev/sda1

# mkswap /dev/sda2

# swapon /dev/sda2

# mkfs.ext4 /dev/sda3

# mkfs.ext4 /dev/sda4



سوال:
با توجه به
نقل‌قول
Do yourself a favor before starting, and either use tmux or drop to a tty. Reason: some terminals might misbehave when chrooted in the bootstrapped environment due to some missing packages. Using tmux or a TTY is quicker and simpler than hunting down those missing packages which will inevitably get installed later when you’re finished with this process.

آیا پیشنهاد می کنید که به‌طور کل همیشه  بجای ترمینال از  tmux استفاده کنیم؟

سوال:
ایشان در اینجا
    On EFI systems:

# mkfs.fat -F 32 /dev/sdX1
# mkswap /dev/sdX2
# swapon /dev/sdX2
# mkfs.ext4 /dev/sdX3
# mkfs.ext4 /dev/sdX4

# mount /dev/sdX3 /mnt
# mkdir -p /mnt/{boot,home}
# mount /dev/sdX1 /boot/efi
# mount /dev/sdX4 /mnt/home

    On legacy/bios systems:

# mkswap /dev/sdX1
# swapon /dev/sdX1
# mkfs.ext4 /dev/sdX2
# mkfs.ext4 /dev/sdX3

# mount /dev/sdX2 /mnt
# mkdir -p /mnt/home
# mount /dev/sdX3 /mnt/home

 برای پارتیشن بندی هم روش EFI systems و هم روش legacy/bios systems را گفته است. هر چند که من می خواهم از روش EFI استفاده نمایم، آیا می شود دبیان 13 را به حالت legacy/bios  نصب کرد؟ چرا ایشان روش  legacy/bios را هم گفته است؟

« آخرین ویرایش: 12 مهر 1404، 08:50 ب‌ظ توسط norouzi90 »

آفلاین norouzi90

  • Hero Member
  • *
  • ارسال: 833
  • جنسیت : پسر
  • Debian 13 + Cinnamon
پاسخ : نصب Debian Debootstrap
« پاسخ #7 : 12 مهر 1404، 09:30 ب‌ظ »
مرحله 5)
بعد از فرمت کردن پارتیشن ها، این سه دستور با موفقیت انجام شد: عکس 1
# mount /dev/sda3 /mnt

# mkdir -p /mnt/{boot,home}

# mount /dev/sda4 /mnt/home



اشکال:
ولی در این دستور خطا داد: عکس 2
# mount /dev/sda1 /boot/efi

آفلاین Chappie

  • Jr. Member
  • *
  • ارسال: 95
  • جنسیت : پسر
پاسخ : نصب Debian Debootstrap
« پاسخ #8 : 12 مهر 1404، 10:14 ب‌ظ »
این خروجی دقیقاً نشان می‌دهد چرا mount خطا داده :
mount: /boot/efi: mount point does not exist.
یعنی پوشه‌ای به نام /boot/efi در حال حاضر در سیستم زنده (Live Debian) وجود ندارد.
اما نکته مهم‌تر این است که شما باید در مسیر هدف نصب (یعنی داخل /mnt) مونت کنید، نه در مسیر سیستم زنده.
اگر root را روی /dev/sda3 مونت کرده‌اید (همان‌طور که گفتید)، مراحل درست به ترتیب این است:
# mount /dev/sda3 /mnt
# mkdir -p /mnt/{boot,home}
# mount /dev/sda4 /mnt/home
# mkdir -p /mnt/boot/efi
# mount /dev/sda1 /mnt/boot/efi
/boot/efi باید داخل /mnt ساخته شود، چون هنوز دارید محیط جدید دبیان را آماده می‌کنید، نه سیستم فعلی لایو را.

اگر بعد از این دستورات خروجی mount را اجرا کنید:

mount | grep sda


باید چیزی شبیه به این ببینید:
/dev/sda3 on /mnt type ext4 (...)
/dev/sda4 on /mnt/home type ext4 (...)
/dev/sda1 on /mnt/boot/efi type vfat (...)

که نشان می‌دهد همه چیز درست مونت شده و آماده اجرای debootstrap است.
What is the Internet?
It's a thing in a computer. Lets you look up shit you don't know.
I want it! I want that Internet.

آفلاین norouzi90

  • Hero Member
  • *
  • ارسال: 833
  • جنسیت : پسر
  • Debian 13 + Cinnamon
پاسخ : نصب Debian Debootstrap
« پاسخ #9 : 12 مهر 1404، 10:52 ب‌ظ »
آفرین برآقای Chappie .
با توضیحات شما الان متوجه شدم!!!
همچنانکه در عکس 1 ،گذاشته ام نویسنده مطلب بجای /mnt/boot/efi  از  /boot/efi  استفاده کرده بود، و
همچنین پوشه /mnt/boot/efi را نساخته بود و من از ایشان کپی کرده بودم و خطا داده بود.
ممنون.

آفلاین Chappie

  • Jr. Member
  • *
  • ارسال: 95
  • جنسیت : پسر
پاسخ : نصب Debian Debootstrap
« پاسخ #10 : 12 مهر 1404، 11:03 ب‌ظ »
✋🙏
What is the Internet?
It's a thing in a computer. Lets you look up shit you don't know.
I want it! I want that Internet.

آفلاین Chappie

  • Jr. Member
  • *
  • ارسال: 95
  • جنسیت : پسر
پاسخ : نصب Debian Debootstrap
« پاسخ #11 : 13 مهر 1404، 09:40 ق‌ظ »
در مورد اون دو سوالی که بالاتر بولد کردید :
جواب سوال اول :
وقتی داخل محیط زنده (Live) یا SSH هستی:
اگر ارتباط قطع شود یا ترمینال بسته شود، دستوراتی که در حال اجرا هستند متوقف می‌شوند.
در محیط chroot برخی ابزارها (مثل terminfo, ncurses, locale) هنوز نصب نشده‌اند، و ترمینال گاهی رفتار عجیبی دارد.
اما وقتی از tmux استفاده کنی:
جلسه‌ی کاری تو در حافظه می‌ماند، حتی اگر ترمینال بسته شود.
می‌توانی دوباره با tmux attach به همان نقطه برگردی.
در صورت خطا در ترمینال، tmux از قطع شدن ارتباط جلوگیری می‌کند.
- - -
جواب سوال دوم :
دبیان ۱۳ (Trixie) هم مثل نسخه‌های قبل از هر دو روش UEFI و Legacy BIOS (CSM) پشتیبانی می‌کند.
چون روش debootstrap «نصب دستی» است، نه محدود به نوع خاصی از سیستم.
او خواسته که مقاله‌اش برای هر دو نوع سخت‌افزار (قدیمی و جدید) قابل استفاده باشد.
مثلاً:
اگر کسی لپ‌تاپ جدید دارد → از روش EFI استفاده کند.
اگر کسی سیستم قدیمی‌تر دارد (یا با VirtualBox کار می‌کند که BIOS emulation دارد) → روش legacy را بزند.
به عبارت بهتر دلیلش اینه که هر دو مدل را در مقاله اش گفته باشد . دلیل خاصی ندارد .
- - -
What is the Internet?
It's a thing in a computer. Lets you look up shit you don't know.
I want it! I want that Internet.

آفلاین norouzi90

  • Hero Member
  • *
  • ارسال: 833
  • جنسیت : پسر
  • Debian 13 + Cinnamon
پاسخ : نصب Debian Debootstrap
« پاسخ #12 : 13 مهر 1404، 09:40 ق‌ظ »
اصلاح مرحله 5)

همانطور که آقای Chappie گفتند، ترتیب درست این مرحله بدین صورت است:
عکس 1
# mount /dev/sda3 /mnt
# mkdir -p /mnt/{boot,home}
# mount /dev/sda4 /mnt/home
# mkdir -p /mnt/boot/efi
# mount /dev/sda1 /mnt/boot/efi
   

و برای اینکه ببینیم  همه چیز درست مونت شده و آماده اجرای debootstrap است، از این دستور استفاده می کنیم:
عکس 2
mount | grep sda

آفلاین norouzi90

  • Hero Member
  • *
  • ارسال: 833
  • جنسیت : پسر
  • Debian 13 + Cinnamon
پاسخ : نصب Debian Debootstrap
« پاسخ #13 : 13 مهر 1404، 01:09 ب‌ظ »
با تشکر از آقای Chappie ، بخاطر پاسخ‌گویی به دو سؤال قبلی.


مرحله 6)
 ابتدا بایستی مشخص کنیم که آیا  debootstrap ، نسخه ی دبیانی که ما می خواهیم نصب کنیم، را پشتیبانی می کند یا نه؟
نقل‌قول
debootstrap شامل اسکریپت‌هایی است که به جز Debian، توانایی راه‌اندازی سایر توزیع‌ها از جمله Ubuntu و Devuan را دارد. برای بررسی نسخه‌های مختلف پشتیبانی شده از توزیع‌های مذکور می‌توان از دستور زیر استفاده کرد.


$ ls /usr/share/debootstrap/scripts/

https://wiki.ubuntu-ir.org/wiki/Debootstrap

با این دستور اجرا کنید:
# ls  /usr/share/debootstrap/scripts/
همانطورکه در عکس 1 می بینید از  Debian Trixie ، پشیبانی می کند.


« آخرین ویرایش: 14 مهر 1404، 11:06 ق‌ظ توسط norouzi90 »

آفلاین norouzi90

  • Hero Member
  • *
  • ارسال: 833
  • جنسیت : پسر
  • Debian 13 + Cinnamon
پاسخ : نصب Debian Debootstrap
« پاسخ #14 : 14 مهر 1404، 01:53 ب‌ظ »
مرحله 7)

در ادامه می رسیم به:
Deboostrap
With the disk partitioned and partitions mounted, we now run the debootstrap command.
We will need a cli text editor in the chroot to modify some files,
so we include one already. I use vim, but choose whatever floats your boat.

# /usr/sbin/debootstrap --variant=minbase --include=vim bookworm \
# /mnt http://deb.debian.org/debian/

ولی دو دستوری که در اینجا قرار داده شده برای من به‌درستی کار نکرد. هرچند که بجای bookworm از کلمه trixie استفاده کردم، ولی بهرحال درست کار نکرد.

بنابراین من از دستور دیگری استفاده می نمایم:
# /usr/sbin/debootstrap  --variant=minbase --include=vim  trixie  /mnt  http://deb.debian.org/debian/
عکس 1 و 2 و 3
اینبار بنظرم با این دستور نتیجه دلخواه را گرفتیم.
بنظر من برای اینکه ببینیم که آیا این دستور به‌درستی کار کرده است یا نه، باید توجه کنیم که در   آخر خروجی دستور بالا این جمله  Base system installed successfully نوشته شده باشد.
و دیگر اینکه برویم در دایرکتوری mnt و نگاه کنیم که دایرکتوری های مربوطه واقعا نصب شده است یا نه. عکس 3 نشان می دهد که با این دستور دایرکتوری های مربوطه نصب شده اند.
با مقایسه بین عکس 3 که ماحصل دستور Deboostrap  با عکس 4 که مربوط به دایرکتوری های ریشه توزیع زنده دبیان است، در همان نگاه اول می توان دید که دو فایل
initrd.img  و  vmlinuz
هنوز در سیستمی که می خواهیم طراحی کنیم، ایجاد نگردیده اند.

توضیح اضافی:
variant=minbase-- یعنی فقط بسته های ضروری و apt را نصب کن.
include=vim--  یعنی اینکه نرم‌افزار vim  ( که در chroot لازممان می شود) را هم برایم نصب کن.
trixie  نام دبیانی که می خواهیم نصب شود است.
mnt/  مسیری که بایستی فایل های دانلود شده در آن ریخته شود.
/http://deb.debian.org/debian  برو به این آدرس و فایل ها و پوشه های مربوطه را برایم دانلود کن.

سوال:
اگر بخواهیم برای ساختارهای دیگر، دبیان را پیکربندی کنیم، آیا می توانیم از آپشن های زیر استفاده کنیم:
arch amd64--
arch arm--

سوال:
سازندگان توزیع های نشأت گرفته از دبیان مانند ubuntu و mint و antix و …  آیا برای ساخت توزیع اشان از
Deboostrap استفاده می کنند؟