پاک کردن تاریخچه‌ی run در گنوم

اگر می‌خواهید دستوری یا برنامه‌ای را اجرا کنید ودر محیط گنوم (GNOME) هستید کافیست کلیدهای ALT و F2 را همزمان فشار دهید ، پنجره ای باز می‌شود که Panel run application dialog یا خلاصه‌تر Run dialog نام دارد ، در این پنجره می‌توانید نام برنامه یا دستور مورد نظر خو را تایپ کنید برای نمونه gedit یا هر برنامه‌ی دیگری. بسیار خوب ، اگر بخواهیم تارخچه‌ی این دستورات را پاک کنیم چه؟ چه راه برای این کار وجد دارد؟ برای اینکه بتونید به راحتی این کار را انجامدهید کافیست یک فایل جدید ایجاد کنید و متن یر را در آن کپی کنید. این کار را با هر ویرایشگر متنی می‌توان انجام داد ، برای نمونه از EMACS یا gedit استفاده کنید.

#!/bin/bash
gconftool-2 --type list --list-type string --set /apps/gnome-settings/gnome-panel/history-gnome-run "[]"

تمام کار همین است ، حالا کافیست این فایل را در جایی ذخیره کنید برای نمونه با نام clear_history در دایرکتوری خانگی خودتان ذخیره کنید. هر گاه نیاز به پاک کردن تاریخچه دارید می‌توانید به شاخه‌ای که این فایل در آن قرار دارد رفته و در خط فرمان دستور clear_history/. را اجرا کنید ، با اجرای این دستور تاریخچه‌ی RUN محیط گنوم شما پاک خواهد شد. اگر می‌خواهید این کار در یک سیکل زمانی انجام شود می‌توانید از طریق برنامه ی cron که راهنمای آن نیز در این سایت قرار دارد یک زمان‌بندی برای اجرای دستور ایجاد کنید تا برای مثال هر روز این کار انجام شود.

ارسال پیغام برای کاربران ویندوز در یک شبکه(Send a message to win

در سیستم عامل های مایکروسافتی کاربران شبکه می توانندبا Winpopupیا netsend به یکدیگر پیغام ارسال کنند، اگر شما در یک شبکه هستید و از لینوکس استفاده می کنید بدون داشتن این برنامه ها و فقط از طریق خط فرمان می توانید همین کار را تکرار کنید ،کافیست یک پنجره ی ترمینال باز کنید و بنویسید:


tux@GNUIran:$ echo *Hi Use GNU/Linux and be free my friend* |smbclient -M nebios_name

در حالت کلی پیام های برنامه ی komba2 با همین روش ارسال می شوند.متاسفانه کاربران ویندوز نمی تواند به این وسیله برای کاربران لینوکس شبکه ی خود پیام ارسال کنند،درواقع می توانند اما کاربران لینوکس آن را دریافت نمی کنند!!برای این کار کاربران ویندوز باید از سیستم های پیام رسان فوری (IM) یا پست الکترونیک داخل شبکه ای استفاده کنند!

Picasa برای لینوکس

Google بر طبق گزارش‌های مدیر برنامه‌های بازمتن گوگل یعنی Chris DiBona،‌ابزار مدیریت تصویر Picasa که پیش از این برای سیستم عامل ویندوز مایکروسافت منتشر شده بود،برای لینوکس نیز بومی‌سازی شده است،‌البته این بومی‌سازی به این معنی نیست که Picasaرا از پایه،‌بر اساس کتابخانه‌های QT یا GTK نوشتند،‌بله Picasa با استفاده از شبیه‌ساز بازمتن و قدرتمند wine و با ۲۲۵ وصله که با کمک توسعه‌دهنده‌گان این برنامه و در جهت بکار گیری کل امکانات Picasa از طرف توسعه‌دهنده Wine یعنی CodeWeavers تهیه و منتشر شده،‌بومی‌سازی شده است(این وصله‌‌ها در صفحه جدید wine در code.google.com در دسترس میباشد).

DiBona تشریح کرد که گوگل قادر بود بطور وسیعی با CodeWeavers مشارکت کند تا بومی‌سازی Picasa با Wine را به انجام برساند.با اضافه شدن این بهینه‌سازی‌ها(وصله‌های منتشر شده) به کدهای Wine،‌‌آن بایستی کار را برای دیگر پروژه‌هایی که میخواهند بسته‌های خود را برای لینوکس بومی‌سازی نمایند،‌‌خیلی آسانتر کرده باشد.»‌‌‌‌‌در این میان نیز یکی از مدیران Linux Today سؤالی دراین رابطه از DiBona پرسیده:‌که«‌آیا افزایش بهینه‌سازی در Wine کمکی به توسعه بومی‌سازی Google Earth برای اجرا در لینوکس خواهد کرد یا نه؟‌DiBona پاسخ منفی میدهد و توضیح میدهد که Google Earth بر روی کتابخانه‌ها و کد QT و GL تکیه کرده است،‌بنابراین افزایش پشتیبانی Wine نمیتواند کمکی به ما بکند.ضمنا‌ هنوز فاصله زمانی مشخصی برای انتشار Google Earth اعلام نشده است.‌»این یعنی اینکه Google Earth از پایه نوشته خواهد شد و احتیاجی به شبیه‌ساز Wine نیست.(Google Earth دومین پروژه گوگل برای بومی‌سازی میباشد).‌‌

طبق گفته‌های DiBona،‌این بومی‌سازی به توسعه‌دهنده‌گان دیگر(‌توسعه‌دهنده‌گان ابزارهای گوگل) نیز کمک خواهد کرد تا ابزارهای دیگر را که فقط برای ویندوز مایکروسافت منتشر شده‌اند را برای لینوکس نیز بومی‌سازی نمایند.‌
Picasa بر روی توزیعای دبیان و RedHat و توزیهای مبتنی بر آن همانند Mandriva آزمایش و اجرا شده است.برای بررسی دوربین و مجتمع‌سازی به هسته ۲.۶.۱۳ و hal ۰.۵۶ و gnome-volume-manager یا مشابه آن(در KDE) نیاز خواهید داشت.ضمنا Picasa برای دسترسی به دوربین از gPhoto استفاده میکند.همچنین برای استفاده از Picasa نیازی به نصب و استفاده از wine نیست،‌چون Picasa خود در بر گیرنده کتابخانه wine و موتور Gecko میباشد.‌

Picasa چیست؟‌Picasa ابزاری است که به شما کمک میکند تاسریعا تمامی تصاویر موجود در رایانه‌ی خود را پیدا،‌ویرایش و به اشتراک بگذارید.‌هر وقت شما برنامه Picasa را اجرا نمایید،‌بطور خودکار تمامی‌ مسیرهایی که عکسهای شما در آنجا موجود باشد را بررسی میکند(حتی اگر فراموش کرده باشید که فلان عکس را داشته‌اید)‌ و تصاویر را در قالب آلبومی دیدنی و سازمان یافته همراه با تاریخ و اسم دایرکتوری دسته‌بندی میکند تا تشخیص آن برای شما آسان باشد و....
Picasa در سال ۲۰۰۱ ساخته شد و در جولای سال ۲۰۰۴ بوسیله گوگل خریداری شد.

منبع:http://www.technotux.org

خودکارسازی فرایندها در گنو/لینوکس

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

راه‌حل این مشکلات خودکارسازی امور و نوشتن اسکریپت‌های پوسته برای آنهاست. شما می‌توانید به سیستم گنو/لینوکس خود بگویید هنگامی که شما در خواب هستید، کارهایتان را انجام دهد.

سه ابزار خودکارسازی که بطور معمول وجود دارند، می‌توانند هر برنامه، دستور یا اسکریپتی را اجرا نمایند. هر یک از این ابزارها دارای روش اجرای خاص خودش می‌باشد.

دستور at

دستور at می‌تواند برنامه یا دستور مورد نظر شما را در ساعت خاصی اجرا کند. این دستور تنها می‌تواند دستور داده شده را یکبار اجرا کند. زمان مشخص شده در دستور at می‌تواند هز زمانی در آینده باشد، از ساعت و دقیقه گرفته تا تعداد روز. استفاده از دستور at به دو شکل امکان پذیر است:

$ at [-q letter][-f file][-mlv] TIME

$ at -c job [job...]

جدول ۱ گزینه‌های این دستور را شرح داده است.

گزینه

شرح

m-

پایان اجرای یک دستور را با ارسال یک نامه‌الکترونیکی به کاربر اعلام خواهد کرد. به طور عادی تنها هنگامی نامه‌الکترونیکی ارسال خواهد شد که خطایی رخ دهد یا دستور اجرا شده دارای خروجی باشد

f file-

دستورات را بجای خط فرمان از یک فایل خواهد خواند

q letter-

برنامه را در صف مشخص شده قرار خواهد داد. letter به معنی میزان اولویت دستور برای اجرا می‌باشد. بجای آن باید از حروف a تا z یا A تا Z استفاده کنید. دستوراتی که دارای letter بالاتری هستند، با اولویت پایین‌تری اجرا خواهند شد. صف a برای دستور at و صف b برای دستور batch پیش‌گزیده می‌باشند

v-

زمان اجرای دستور را چاپ خواهد کرد

l-

لیستی از تمامی دستورات در حال انتظار برای اجرا را که متعلق به کاربر جاری است، نمایش خواهد داد

c-

دستورات لیست شده در خط فرمان را به خروجی استاندارد که معمولا صفحه نمایش می‌باشد، ملحق می‌کند

جدول۱ گزینه‌های دستور at

زمان بخشی اجباری در دستور at می‌باشد، به غیر از هنگامی که از گزینه l- استفاده می‌کنید. فرمت زمان وارد شده می‌تواند به صورت ۱۲ ساعته با فرمت hh:mm که پس از آن pm یا am قرار خواهد گرفت و یا با فرمت ۲۴ ساعته به صورت چهار رقمی مانند ۱۶۲۰ باشد. همچنین شما می‌توانید بجای استفاده از زمان‌های عددی، از کلمات کلیدی مانند midnight، noon، teatime یا now نیز استفاده کنید.

با مشخص کردن تاریخ می‌توانید محدوده اجرایی دستور at را باز هم گسترده‌تر نمایید. نام ماه را باید بصورت متنی و روز ماه را بصورت عددی مشخص کنید. این امکان وجود دارد که مشخص کنید دستور در چه روزی از هفته اجرا شود. همچنین امکان بکارگیری کلمات کلیدی today یا tomorrow نیز وجود دارد. در صورتی که تنها زمان مشخص شده باشد، دستور در اولین باری که زمان مشخص شده فرا رسد، اجرا خواهد شد.

امکان دیگر اضافه کردن زمان به صورت مثلا now +2 است. در این مثال، دستور ۲ ساعت بعد از زمان کنونی اجرا خواهد شد. کلمه next نیز به معنی 1+ می‌باشد. برای اینکه کاملا نحوه استفاده از دستور at را درک کنید، در زیر مثال‌هایی ارائه شده‌است:

$ ls -l | at 20:34

$ ls -l | at 4:20 pm November 12

$ ls -l | at 16:25 Oct 16

$ ls -l | at midnight next day

$ ls -l | at midnight +1 day

$ ls -l | at 2 am Monday

$ ls -l | at now

پس از اینکه صف بندی دستورات را به اتمام رساندید، از گزینه l- برای لیست کردن آنها استفاده کنید. برای حذف یک دستور زمان‌بندی شده، از دستور atrm استفاده کنید.

دستور batch

نحوه عملکرد دستور batch بسیار شبیه به دستور at می‌باشد با این تفاوت که دستور شما بجای زمان خاص، هنگامی اجرا خواهد شد که میزان بار سیستم (System Load) به زیر 1.5 برسد. در زیر نحوه استفاده از این دستور را مشاهده می‌کنید:

$ batch [-q letter] [-f file] [-mv] [TIME]

نحوه استفاده از گزینه TIME همانند دستور at بوده با این تفاوت که گزینه‌ای انتخابی است.

دستور cron

در سیستم‌هایی که دائما روشن می‌باشند، مانند سیستم‌های سرویس‌دهنده، وظایف خودکار باید با استفاده از نرم‌افزار cron اجرا شوند. cron هنگام راه‌اندازی سیستم اجرا شده و هر دقیقه بررسی می‌کند که چه دستوری را باید اجرا نماید. دستوراتی را که cron اجرا خواهد کرد، در فایل etc/crontab/ تعریف می‌شوند.

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

# more /etc/crontab

# /etc/crontab: system-wide crontab

# Unlike any other crontab you don't have to run the `crontab'

# command to install the new version when you edit this file.

# This file also has a username field, that none of the other crontabs do.


SHELL=/bin/sh

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin


# m h dom mon dow user command

17 * * * * root run-parts --report /etc/cron.hourly

25 6 * * * root test -x /usr/sbin/anacron || run-parts --report /etc/cron.daily

47 6 * * 7 root test -x /usr/sbin/anacron || run-parts --report /etc/cron.weekly

52 6 1 * * root test -x /usr/sbin/anacron || run-parts --report /etc/cron.monthly

علامت ستاره (*) به معنای هر روز، هفته و ماه می‌باشد. پس از پنج فیلد نخست در هر خط که به ترتیب شامل دقیقه، ساعت، روز درماه، ماه و روز در هفته می‌باشند، نام کاربری که دستور توسط آن اجرا خواهد شد نوشته می‌شود (در مثال بالا کاربر ریشه می‌باشد). سپس دستور به همراه تمامی آرگومان‌ها و اطلاعات مورد نیازش برای اجرا نوشته می‌شود. هنگامی که زمان فعلی با زمان هیر یک از ورودی‌های این فایل یکسان شوند، آن دستور اجرا خواهد شد. جدول ۲ نشاندهنده نحوه نگارش زمان در فایل etc/crontab/ می‌باشد.
در صورتی که دقیقه یا ساعت به صورت یک ستاره (*) تعریف شده باشد، cron آن دستور را در هر دقیقه یا هر ساعت اجرا خواهد کرد. این ممکن است باعث Over Load شدن سیستم در اثر وجود حجم زیادی از پروسه‌ها شود. بنابراین توصیه می‌کنم که علامت ستاره را تنها در فیلد‌های روز درماه، ماه یا روز در هفته استفاده نمایید.

نام فیلد

مقادیر مجاز

m یا دقیقه

۰ تا ۵۹

h یا ساعت

۰ تا ۲۳

dom یا روز در ماه

۱ تا ۳۱

mon یا ماه

۱ تا ۱۲

dow یا روز در هفته

۰ تا ۷ که عدد صفر نشاندهنده یکشنبه می‌باشد

جدول۲ نحوه نگارش زمان در فایل crontab

فایل‌هایی که در شاخه etc/cron.daily/ قرار دارند، بطور روزانه اجرا خواهند شد. در زیر نمونه‌ای از محتویات این دایرکتوری را مشاهده می‌کنید:

# ls -l /etc/cron.daily/

total 52

-rwxr-xr-x 1 root root 311 Jul 30 16:02 0anacron

-rwxr-xr-x 1 root root 429 Feb 2 2004 acct

-rwxr-xr-x 1 root root 502 May 14 2004 bsdmainutils

-rwxr-xr-x 1 root root 782 Apr 26 2004 exim4-base

-rwxr-xr-x 1 root root 419 Oct 27 2003 find

-rwxr-xr-x 1 root root 89 Oct 9 2002 logrotate

-rwxr-xr-x 1 root root 946 May 13 2004 man-db

-rwxr-xr-x 1 root root 86 Aug 18 2002 modutils

-rwxr-xr-x 1 root root 1288 Sep 30 13:00 mysql-server

-rwxr-xr-x 1 root root 495 Nov 19 2001 netkit-inetd

-rwxr-xr-x 1 root root 345 Oct 1 17:45 quota

-rwxr-xr-x 1 root root 2571 Jan 20 2004 standard

-rwxr-xr-x 1 root root 1307 Jul 27 20:00 sysklogd

cron تنها برای مدیران سیستم قابل استفاده نیست و کاربران عادی نیز می‌توانند از آن سود ببرند. هر کاربر می‌تواند فایل crontab خاص خود را با استفاده از دستور crontab filename ایجاد نماید. گزینه‌هایی که به همراه این دستور قابل اجرا هستند عبارتند از گزینه l- برای لیست کردن فایل‌های crontab مخصوص کاربر، گزینه e- جهت ویرایش فایل‌های crontab مخصوص کاربر و گزینه r- برای حذف فایل‌های crontab متعلق به کاربر. فرمت فایل‌های crontab مربوط به کاربران کاملا مشابه با فایل etc/crontab/ می‌باشد. برای اینکه کاربران قادر به استفاده از crontab باشند، باید در فایل etc/cron.allow/ اضافه و یا از فایل etc/cron.deny/ حذف شوند. به اینصورت می‌توانید تعیین کنید که کدامیک از کاربران حق استفاده از cron را خواهند داشت. در صورتی که هریک از این فایل‌ها بر روی سیستم شما وجود ندارند، می‌توانید بطور دستی آنها را ایجاد کنید. ایجاد یکی از فایل‌های cron.allow یا cron.deny کافی خواهد بود. درون این فایل‌ها، هر یک از نام‌های کاربری را در یک خط جداگانه تایپ نمایید.

دستور anacron

در مواردی که کامپیوتر به صورت ۲۴ ساعته روشن و فعال نیست، cron پاسخگوی اجرای امور نخواهد بود، در حالی که ابزار anacron این وابستگی حتمی به روشن بودن ۲۴ ساعته کامپیوتر را ندارد. در صورتی که کامپیوتر در ساعتی که قرار است دستوری اجرا شود خاموش باشد، anacron حتما آنرا به هر حال بعدا اجرا خواهد کرد.

همانند cron، ابزار anacron نیز دارای یک فایل پیکربندی است که دستوراتی را که باید اجرا کند را از درون آن می‌خواند. هر خط این فایل به یک دستور مجزا اختصاص دارد. در زیر یک فایل پیکربندی نمونه anacron که در مسیر etc/anacrontab/ قرار دارد نمایش داده شده‌است:

# more /etc/anacrontab

# /etc/anacrontab: configuration file for anacron

# See anacron(8) and anacrontab(5) for details.


SHELL=/bin/sh

PATH=/sbin:/bin:/usr/sbin:/usr/bin


# These replace cron's entries

1 5 cron.daily nice run-parts --report /etc/cron.daily

7 10 cron.weekly nice run-parts --report /etc/cron.weekly

@monthly 15 cron.monthly nice run-parts --report /etc/cron.monthly

نخستین شماره نشاندهنده وقفه یا فاصله تعداد روزهایی است که بین دو اجرای دستور قرار خواهند گرفت. شماره دوم نمایش دهنده تاخیر پیش از اجرای دستور به مدت ثانیه می‌باشد. پس از این دو شماره نیز دستور با پارامترها و آرگومان‌های مورد نیازش قرار خواهد گرفت.

هنگامی که دستوری اجرا می‌شود، زمان آن ثبت شده و anacron می‌داند که در چه زمانی آنرا اجرا کرده و چه زمانی باید آنرا مجددا اجرا کند. زمان بین دو اجرا نمی‌تواند کمتر از یک روز باشد، زیرا anacron مقایسه خود را بر مبنای روز و نه بر مبنای زمان انجام می‌دهد. هنگامی که اجرای دستوری به اتمام می‌رسد، anacron آنرا با یک پیغام اعلام می‌کند.

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

# anacron [-s][-f][-n][-d][-q][job]...

# anacron -u [job]...

جدول۳ لیستی از گزینه‌های قابل استفاده به همراه این دستور را نمایش می‌دهد. این گزینه‌ها به قابلیت انعطاف این ابزار می‌افزایند. هرچند که anacron یک سرویس بوده و در هنگام بوت شدن کامپیوتر یا تغییر در سطوح اجرایی(runlevels)، اجرا می‌شود. برای تغییر anacron می‌توانید اسکریپت etc/init.d/anacron/ را ویرایش نمایید، ولی این کار را در صورتی انجام دهید که با اسکریپت نویسی آشنایی داشته باشید.

گزینه

شرح

f-

زمان ذخیره شده را در نظر نگرفته و دستورات را اجرا خواهد کرد

u-

زمان‌های ذخیره شده را به زمان فعلی بروز می‌کند، ولی هیچ دستوری را اجرا نخواهد کرد

s-

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

n-

دستورات را اکنون اجرا می‌کند

d-

دستور را در پس‌زمینه انجام نخواهد داد. این گزینه خروجی دستور را نمایش داده و خطاها در syslog ثبت خواهند شد. خروجی دستورات نیز طبق روال پست خواهد شد

q-

جلوی هرگونه ارسال پیام به خروجی استاندارد را خواهد گرفت. این گزینه تنها به همزاه گزینه d- قابل استفاده می‌باشد

جدول۳ گزینه‌های قابل استفاده به همراه دستور anacron

منبع:http://www.technotux.org

چگونه دو توزیع لینوکس را در کنار هم نصب کنیم؟

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

به چه چیزهایی نیاز داریم؟
چیز زیادی لازم نیست! شما حداقل به موارد زیر نیاز خواهید داشت:
۱) سه پارتیشن لینوکس که حداقل یکی از آنها قابل بوت باشد. (برای استفاده به عنوان پارتیشن boot) این در صورتی است که بخواهید تمامی نقاط اتصال مانند var، home و / در یک پارتیشن قرار گیرند. در غیر این صورت تعداد پارتیشن‌های مورد نیاز افزایش خواهد یافت اما همچنان تنها یکی از آنها باید قابل بوت باشد.
۲) حداقل یک توزیع (اگر بخواهید آنرا دوبار نصب کنید!) و ترجیحا دو توزیع مختلف لینوکس.

شروع کار
برای شروع کار، یک نسخه پشتیبان از نقطه اتصال /boot در یک فضای جداگانه مانند home تهیه کنید. این کار را می‌توانید با استفاده از دستور زیر انجام دهید:

# cp -r /boot /home/alan

کافی است بجای home/alan/ مسیر دلخواه خود را قرار دهید. این کار را به این دلیل انجام می‌دهید که ممکن است بخواهید توزیع دوم برنامه مدیر بوت خود را روی سیستم نصب نماید و معمولا اکثر توزیع‌ها نیاز دارند تا قبل از نصب مدیر بوت، پارتیشن بوت را فرمت کنند. اگر بخواهید تنها از دو پارتیشن استفاده نمایید (یکی برای اولین توزیع و دومی برای توزیع دوم) برای اینکه برنامه نصب توزیع دوم آنرا فرمت نکند، مجبور هستید از نصب برنامه مدیر بوت روی دیسک سخت صرف نظر کرده و بجای آن از فلاپی استفاده کنید که فکر نمی‌کنم چندان این کار را دوست داشته باشید!
پس از اینکه کپی دایرکتوری بوت را انجام دادید، نصب توزیع دوم را انجام دهید. اگر فضای خالی بر روی دیسک سخت خود ندارید، باید قبل از آن با استفاده از ابزارهایی مانند qtparted یا cfdisk فضای خالی لازم را ایجاد نمایید. نصب توزیع دوم را ادامه داده و آنرا بر روی پارتیشن جدیدی که ایجاد کرده‌اید (ویا آنرا قبلا داشتید و برای نصب توزیع دوم در نظر گرفته بودید) نصب کنید و اجازه دهید تا برنامه نصب پارتیشن بوت شما را فرمت کرده و مدیر بوت توزیع جدید را به طور عادی روی آن نصب نماید. به اینصورت دیگر لینوکس قدیمی شما قابل دسترسی نخواهد بود! نگران نباشید. آنرا برخواهید گرداند.

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

$ su
# mount /dev/hda3 /mnt

در صورتی که فایل‌های موجود در آنرا بررسی نمایید، فایل‌هایی با نام System.map-2.x.x، vmlinuz-2.x.x و احتمالا initrd-2.x.x را مشاهده خواهید کرد. بجای x شماره‌های نسخه هسته سیستم قرار خواهند گرفت. ابتدا بررسی نمایید که این فایل‌ها همنام با فایل‌های موجود در پارتیشن boot توزیع دوم نباشند. در اینصورت آنها را در آنجا کپی کنید. در صورتی که نام آنها یکسان بود می‌توانید آنها را تغییر نام داده و سپس عمل کپی را انجام دهید:

# cp /mnt/alan/boot/System.map.2.6.3 /boot
# cp /mnt/alan/boot/vmliniz-2.6.3 /boot

پس از این مرحله باید فایل پیکربندی مدیر بوت را ویرایش کرده و توزیع اول خود را در آن اضافه کنید. فایل پیکربندی مدیر بوت grub در آدرس boot/grub/menu.lst قرار دارد. (البته در لینوکس ردهت این آدرس در boot/grub/grub.conf است.) فایل پیکربندی مدیر بوت لیلو نیز در etc/lilo.conf قرار دارد. نظر به اینکه اکثریت توزیع‌های جدید لینوکس از گراب بعنوان مدیر بوت پیش‌گزیده استفاده می‌کنند، ما این مدیر بوت را بررسی خواهیم کرد. البته همین عملیات برای لیلو هم قابل انجام است. (تنها پس از اتمام ویرایش فایل پیکربندی باید دستور lilo را اجرا نمایید.)
ابتدا فایل پیکربندی گراب را با یک ویرایشگر متنی مانند vi باز می‌کنیم:

# vi /boot/grub/menu.lst

گزینه مربوط به توزیع جدید به این صورت است:

title Mepis Linux
root (hd0,1)
kernel /vmlinuz-2.4.22 root=/dev/hda9 ro hdb=scsi
savedefault
boot

می‌توانید به راحتی و با ماوس این قسمت را انتخاب و با کلیک راست در حافظه کپی کنید. سپس کلید Insert را فشار داده (برای ورود به حالت ویرایش در ویرایشگر vi) و با کلیک راست در یک فضای خالی paste نمایید. سپس آنرا مطابق با فایل‌ها و مسیر ریشه توزیع اول خود ویرایش کنید. برای مثال:

title Libranet GNU/Linux 2.8.1 , kernel 2.6.3
root (hd0,1)
kernel /vmlinuz-2.6.3 root=/dev/hda3 ro hdb=scsi
savedefault
boot

همانطور که توجه دارید، آدرس پارتیشن / توزیع اول من hda3 است و فایل vmlinuz-2.6.3 نیز اضافه شده است. پس از انجام ویرایش، کافی است با زدن کلید ESC و سپس کلیدهای wq تغییرات را ذخیره کرده و خارج شوید. خوب اکنون اگر بوت کنید، گزینه مربوط به بوت توزیع اول نیز در مدیر بوت اضافه شده که با انتخاب آن خواهید توانست از توزیع اول خود نیز استفاده نمایید.

منبع:http://www.technotux.com