نکته ها

کاربران محترم، با توجه به ایجاد موضوع مبادله توزیعهای لینوکس در انجمن های گفتگوی یزدلاگ با هدف دسترسی آسان کاربران به توزیعهای مختلف لینوکس، توسط کاربر محترم RFN، میتوانند با مراجعه به این موضوع ، نیازمندیهای خود را مطرح و یا نیازمندی دیگران را رفع کنند...
صفحه اصلی arrow مقالات arrow لینوکس از ابتدا linux from scratch

لینوکس از ابتدا linux from scratch چاپ ارسال به دوست
رای کاربران: / 2
ضعیفعالی 
مقالات - مقالات
نویسنده صدرالساداتی   
۲۹ فروردين ۱۳۸۷


این مقاله خلاصه ای از کتاب Linux From Scratch  است اصل کتاب را شما می توانید از اینجا دانلود کنید.

کسانی که می خواهند در سیر تکامل یک توزیع باشند حتما باید مقالات زیر را خوانده و سپس کار را شروع کنند.

 

.Software-Building-HOWTO http://www.tldp.org/HOWTO/Software-Building-HOWTO.html

    This is a comprehensive guide to building and installing “generic” Unix software packages under Linux.

The Linux Users' Guide http://www.linuxhq.com/guides/LUG/guide.html

  This guide covers the usage of assorted Linux software

The Essential Pre-Reading Hint http://www.linuxfromscratch.org/hints/downloads/files/essential_prereading.txt

لازم است بگویم این کار برای کسانی خوب است که حداقل آشنایی با دستورات محیط Bash داشته و نیز حتما با قوانین GNU آشنا باشند و آشنا با بعضی از سرویس های اصلی و اگر شد کمی bash scripting  یاد بگیرید.

مقاله Essential Pre-Reading بسیار مهم می باشد حتما خونده شود. من تا این مقاله را نخوانده بودم کیج می زدم و مشکل داشتم.
برای شروع کار بعد از خواندن مطالب ابتدا یکی از توزیع های اصلی همچون centos,RHEL,suse,debian را نصب می کنید توصیه می کنم توزیع centos 5 یا بالاتر را نصب نمایید من روی suse جواب نگرفتم
حتما در هنگام نصب به چند نکته زیر دقت کنید (تجربه خودم است)
۱- حتما برای راحتی کار خود محیط گرافیکی را نصب نمایید ( pdf را بشناسد برای مقاله اصلی انگلیسی اکثر جا ها copy-paste جواب می دهد )
۲- حتما برنامه زیر نصب شود( البته نسخه آن باید حداقل از اعداد جلوی برنامه ها کمتر نباشد)

Bash-2.05a
Binutils-2.12
Bison-1.875
Bzip2-1.0.2
Coreutils-5.0 (or Sh-Utils-2.0, Textutils-2.0, and Fileutils-4.1)
Diffutils-2.8
Findutils-4.1.20
Gawk-3.0
Gcc-3.0.1
Glibc-2.2.5
Grep-2.5
Gzip-1.2.4
Linux Kernel-2.6.x
  Make-3.79.1
Patch-2.5.4
 Sed-3.0.2
Tar-1.14


۳ - حتما قبل نصب یک فضایی بدون پارتیشین بندی برای ساخت توزیع خودتان قرار دهید ۵ گیگ کافی است ولی بیشتر از ۷۰۰ مصرف نمی کند

بعد از نصب لینوکس پایه برای نصب lfs linux خود برای اطمینان از نصب تمامی برنامه هایی که نصب شده از bash script زیر استفاده می کنید حتما در کاربر root این کار انجام شود :
cat > version-check.sh << "EOF"
#!/bin/bash
# Simple script to list version numbers of critical development tools
bash --version | head -n1 | cut -d" " -f2-4
echo -n "Binutils: "; ld --version | head -n1 | cut -d" " -f3-4
bison --version | head -n1
bzip2 --version 2>&1 < /dev/null | head -n1 | cut -d" " -f1,6-
echo -n "Coreutils: "; chown --version | head -n1 | cut -d")" -f2
diff --version | head -n1
find --version | head -n1
gawk --version | head -n1
gcc --version | head -n1
/lib/libc.so.6 | head -n1 | cut -d" " -f1-7
grep --version | head -n1
gzip --version | head -n1
cat /proc/version
make --version | head -n1
patch --version | head -n1
sed --version | head -n1
tar --version | head -n1

EOF
# bash version-check.sh

پارتیشن های لازم را بسازید (حالا با هر نرم افزاری که بود مثل partition magic ,fdisk,cfdisk,... )
با کاربر ریشه وارد شود
حال می خواهیم این پارتیشن ها را فعال و نیز فرمت کنیم برای این کار از دستور های زیر استفاده می کنیم

mke2fs -jv /dev/<xxx>

با این دستور شما فایل سیستم ext3 را به نام آن پارتیشنی که در <xxx> قرار دادید تخصیص می دهید.

شاید از خود پرسیده باشید که اگر خواسته باشیم تعداد دیگری پارتیشن نیز داشته باشیم چه باید کرد ؟  مشکلی نیست با دستور بالا پارتیشن های دیگرتان را فرمت کنید.

درصورتی که پارتیشنی دیگری را نیز می خواهید برای swap توزیع خود قرار دهید از دستور زیر استفاده کنید ( در صورتی تعیین نکردن swap طبق پیش فرض از swap سیستم عامل پایه استفاده می کند )

mkswap /dev/<yyy>

به جای <yyy> از نام پارتیشنی که برای این منظور قرار داده اید. استفاده کنید.
حال می خواهیم چند پوشه را به عنوان پوشه روت و زیر پوشه های دیگر به اصطلاح mount کنیم
به کاربر ریشه سیستم عامل مبنا رفته و دستور زیر را تایپ کنید (در اینجا ما می خواهیم پوشه ریشه خود را که با نام LFS می شناسیم را متغیری محیطی با نام LFS برای آن تعریف کنیم (البته برای سادگی کار))

export LFS=/mnt/lfs

حال شاخه / سیستم عامل ساخت شما با دستور زیر خواهید ساخت

mkdir -pv $LFS (توزیع جدید در این شاخه ساخته می شود )


mount -v -t ext3 /dev/<xxx> $LFS

به جای <xxx> نام پارتیشنی را که در مرحله قبل برای / سیستم عامل خود ظرفیت تعیین کرده بودید را بنویسید.


در صورتی که مثلا پارتیشنی را برای usr/ قرار دهید از دستور های زیر استفاده کنید

mkdir -pv $LFS
mount -v -t ext3 /dev/<xxx> $LFS
mkdir -v $LFS/usr
mount -v -t ext3 /dev/<yyy> $LFS/usr


 xxx و yyy همان پارتیشنهای شماست

حال در صورتی که خواسته باشید یک swap پارتیشن هم داشته باشد دستور زیر را برای راه اندازی آن بنویسد تام zzz نام پارتیشن آن است
<sbin/swapon -v /dev/<zzz/

 

مراحل اولیه به پایان رسید حال می خواهیم فایل ها و پکیج های مورد نظر خود را دانلود کنیم.
برای این کار از بسته آماده lfs-package-6.3.tar که در آدرس ftp://ftp.planetmirror.com/pub/lfs/lfs-packages/lfs-packages-6.3.tar استفاده کنید البته لازم است این مطلب را ذکر نمایم که این بسته مربوط به سال ۲۰۰۷ است و  اکثر پکیج های داخل آن نسخه های آن سال یا ماقبل می باشد . شما برای اینکه مشکلی از بابت نصب ایجاد نشود بهتر است برای نصب اولیه از همین پکیج های داده شده استفاده نموده سپس بعد از نصب کامل لینوکس خود نسخه جدید آن را دریافت کرده و نصب نمایید.
مسیر دانلود سورس پکیج های خود را با دستور زیر بسازید:

mkdir -v $LFS/sources

با دستور زیر دسترسی های لازم به پوشه sources دهید:

chmod -v a+wt $LFS/sources

حال پکیج دانلود شده را در مسیر بالا کپی کرده و دستور زیر را اجرا کنید:

tar xvf lfs-packages-6.3.tar

ادامه دارد.........



Image



بازدید: 1093

اولین یادداشت برای این مطلب
 RSS یادداشت ها

ایجاد یادداشت
  • لطفا نظرات خود را در مورد این مطلب در اینجا ثبت کنید
نام:
پست الکترونیکی شما:
وب سایت شما:
عنوان:
BBCode:Web AddressEmail AddressBold TextItalic TextUnderlined TextQuoteCodeOpen ListList ItemClose List
یادداشت



کد امنیتی: (کد مقابل را داخل کادر وارد کنید)* Code
ارسال یک رونوشت از یادداشت به پست الکترونیک شما

آخرین بروز رسانی ( ۰۹ ارديبهشت ۱۳۸۷ )
<قبل   بعد>