تمامی سرویسدهندههای وب (Web Servers)، جهت استاندارد و یکسان بودن در نحوه ارسال، دریافت و پردازش دادهها، از یک پروتکل ساده موسوم به Hypertext Transfer Protocol یا HTTP استفاده میکنند. این پروتکل نرمافزارهای سرویسگیرنده وب را که به مرورگرهای وب (Web Browser) موسوم هستند، قادر میسازد تا بدون اینکه بدانند با چه سرویسدهنده وبی در حال ارتباط هستند، به تبادل داده بپردازند.
سرویسدهنده وب آپاچی نخستین بار جهت اصلاح و وصله کردن سرویسدهنده وب NCSA ایجاد شد و طی سالها توسعه، به موقعیت کنونی خود به عنوان یک سرویسدهنده وب بسیار قابل اطمینان و پر استفادهترین سرویسدهنده وب جهان با آمار استفاده حدود ۷۰ درصد (http://www.netcraft.com)، دست یافته است و به نوبه خود یکی از موفقترین پروژههای نرمافزارهای بازمتن نیز میباشد.
نصب سرویسدهنده آپاچی
نصب سرویسدهنده وب آپاچی در توزیعهای لینوکس همانند نصب سایر بستههای نرمافزاری است. کافی است بستههای آنرا از روی دیسکهای نصب توزیع مورد استفاده خود بر روی سیستم نصب نمایید. در دبیان گنو/لینوکس کافی است دستور زیر را بصورت کاربر ریشه جهت نصب آپاچی صادر نمایید:
# apt-get install apache
روش دیگر نصب سرویسدهنده وب آپاچی دریافت و کامپایل آن بطور کامل از کد منبع میباشد. جدیدترین نسخههای Apache را میتوانید از وب سایت پروژه آن در آدرس http://www.apache.org دریافت نمایید. البته شخصا این کار را به دلیل دشواری در بروز نگه داشتن سرویسدهنده از نظر امنیتی توصیه نمیکنم.
در صورتی که نصب سرویسدهنده آپاچی با موفقیت انجام پذیرد، اکنون میتوانید با هدایت مرورگر خود به آدرس سرویسدهنده که همان آدرس IP یا DNS آن خواهد بود، صفحه test آپاچی را مشاهده نمایید. در صورتی که بر روی سرویسدهنده خود محیط X را ندارید، میتوانید برای آزمایش از مرورگرهای متنی مانند lynx استفاده نمایید.
سرویسدهنده آپاچی همچنین به صورت یک نسخه با پشتیبانی از SSL یا Secure Socket Layer نیز ارائه میشود که نصب آن همانند نسخه معمولی آپاچی بوده با این تفاوت که تبادل دادهها بین سرویسدهنده و سرویسگیرنده بصورت رمزنگاری شده انجام میشود. نسخه SSL دارای برخی ماژولها و Directive های اضافهتر نسبت به نسخه معمولی است. جهت نصب آن در دبیان کافی است دستور زیر را تایپ نمایید:
# apt-get install apache-ssl
باید در نظر داشته باشید که برای استفاده رسمی از قابلیتهای SSL باید یک Certificate مربوط به SSL را در سایتهایی که اینگونه خدمات را ارائه میدهند، ثبت نمایید تا قابلیت SSL سایت شما در مرورگرهای وب معتبر شناخته شود. در غیر اینصورت، تنها میتوانید از قابلیتهای ساده رمزنگاری SSL بر روی سرویسدهنده خود استفاده نمایید. مانند رمزنگاری سیستمهای مدیریتی مبتنی بر وب.
فایلهای پیکربندی آپاچی
تنظیمات سرویسدهنده آپاچی در فایلهایی متنی ذخیره میشود که به آنها اصطلاحا فایلهای پیکربندی یا Configuration Files اطلاق میگردد. فایلهای پیکربندی اصلی آپاچی عبارتند از:
- httpd.conf : تنظیمات اصلی سرویسدهنده
- modules.conf : تنظیمات مربوط به فعال و غیر فعال سازی ماژولهای آپاچی
- access.conf : میتواند حاوی تنظیمات دسترسی باشد
- srm.conf : حاوی برخی تنظیمات دیگر آپاچی مانند DocumentRoot
نکتهای که باید به آن توجه داشته باشید این است که تمام این فایلهای پیکربندی در تمام توزیعها وجود ندارند و یا از آنها استفاده نمیشود. مثلا در دبیان تنها از httpd.conf و modules.conf استفاده میشود.
با اینکه بستههای نرمافزاری آپاچی بسیاری از تنظیمات لازم برای آنرا برای شما انجام میدهند، هنوز تنظیمات زیادی وجود دارند که شما میتوانید با استفاده از آن از سرویسدهنده خود برای امور بیشتری مانند ارتباطات رمزنگاری شده، دسترسی حفاظت شده یا Virtual Hosting استفاده نمایید.
توجه داشته باشید که apache-ssl دارای فایلهای پیکربندی مخصوص به خودش ولی مشابه با فایلهای پیکربندی apache است که در مسیر /etc/apache-ssl/ موجود هستند.
کنترل سرویسدهنده آپاچی
در بسته دبیان آپاچی اسکریپتی به نام apachectl برای کنترل راهاندازی و توقف سرویسدهنده گنجانده شده است. این اسکریپت ممکن است در سایر توزیعها نیز وجود داشته باشد. از طریق این دستور و دستورات دیگر میتوانید سرویسدهنده آپاچی را کمترل نمایید:
# apachectl
usage: /usr/sbin/apachectl (start|stop|restart|fullstatus|status|graceful|configtest|help)
-start :راه اندازی سرویسدهنده آپاچی
-stop: توقف سرویسدهنده آپاچی
-restart: راهاندازی مجدد . یا راهاندازی در صورت متوقف بودن سرویسدهنده
-fullstatus: نمایش یک صفحه وضعیت کلی از سرویسدهنده. به مرورگر lynx و ماژول mod_status نیاز میباشد
-status: نمایش یک خلاصه وضعیت از سرویسدهنده. به مرورگر lynx و ماژول mod_status نیاز میباشد.
-configtest: آزمایش فایلهای پیکربندی جهت نبود خطا پیش از بکارگیری آن در سرویسدهنده
در صورتی که در توزیع شما دستور apachectl وجود ندارد، میتوانید از این دستور استفاده نمایید:
# /etc/init.d/apache
Usage: /etc/init.d/apache {start|stop|reload|reload-modules|force-reload|restart}
فایل پیکربندی httpd.conf
تنظیمات اصلی سرویسدهنده آپاچی در این فایل قرار دارند. مانند تنظیمات نوع سرویسدهنده، محل فایلهای ثبت رخداد، نام کاربر اجرا کننده سرویسدهنده و...
- ServerType: این گزینه یا directive تعیین کننده چگونگی اجرای سرویسدهنده آپاچی شما بر روی ماشین است. در صورتی که سرویسدهنده به صورت Standalone اجرا میشود، برای اجرا یا توقف آن از اسکریپتهای ثانویه دیگری استفاده میشود و تنها کاربر ریشه میتواند سرویسدهنده را اجرا یا متوقف نماید. انتخاب دیگری که در این بخش قابل استفاده است، inetd است. در این صورت، تنها هنگامی که درخواستی به سرویسدهنده ارسال شود، اجرا خواهد شد و پس از اتمام تقاضا، سرویسدهنده تا دریافت درخواست بعدی متوقف خواهد شد. این حالت برای محیطهای توسعه نرمافزار مناسب است تا یک سرویسدهنده درگیر وب.
ServerType standalone
- Port : شماره درگاهی که سرویسدهنده شما به آن گوش خواهد داد. پیش گزیده آن درگاه شماره ۸۰ میباشد.
Port 80
- HostnameLookups : در صورتی که این گزینه بر روی On تعریف شده باشد، در فایلهای ثبت رخداد، بجای آدرس IP، نام واقعی Host سرویسگیرندهها درج خواهد شد. تنظیم آن بر روی On مفید است، مخصوصا هنگامی که بخواهید بدانید که بازدید کنندهای از چه سایتی است.
HostnameLookups Off
- مالکیت (User/Group) : این گزینه نقش بسیار مهمی بر روی امنیت سیستم شما خواهد داشت. سرویس وب بصورت ریشه اجرا شده و سپس سطح دسترسی خود را به یک کاربر و گروه خاص کاهش میدهد. این بخش تعیین کننده نام و گروهی است که در این مورد استفاده خواهد شد. در دبیان، هنگام نصب بسته آپاچی، کاربر و گروهی به نام www-data ایجاد و از آن به این منظور استفاده خواهد شد. دلیل استفاده از این کاربر و گروه جلوگیری از نفوذ به درون سیستم از طریق سرویسدهنده وب میباشد. حساب www-data دارای حقوق دسترسی بسیار پایینی است.
User www-data
Group www-data
- ServerAdmin : این گزینه حاوی آدرس پست الکترونیک شخص اداره کننده سرویسدهنده است که باید یک آدرس پست الکترونیک معتبر باشد تا امکان گزارش اشکالات یا درخواستها به آن فراهم شود.
- ServerRoot : این گزینه نشاندهنده مسیری است که فایلهای مربوط به سرویسدهنده، مانند فایلهای پیکربندی در آن قرار دارند. بطور پیشگزیده etc/apache/ میباشد.
- BindAddress : سرویسدهنده آپاچی امکان ارائه سرویس به بیش از یک آدرس IP یا دامین اینترنتی را داراست. این گزینه تعیین کننده آدرسهای IP یا نامهای دامنهای است که سرویسدهنده آپاچی وظیفه سرویسدهی به آنها را بر عهده دارد. این گزینه را میتوان همراه با Virtual Hosting بکار برد.
- Listen: این امکان را فراهم میسازد تا بتوان آپاچی را بر روی درگاهها و شمارههای IP متنوعی به کار گرفت. این گزینه بسیار شبیه به BindAddress میباشد.
- ثبت رخداد: ثبت رخدادها به دلایلی بسیار مهم است. این دلایل عبارتند از: پیدا کردن و رفع اشکال در سرویسدهنده، ضبط فعالیت سایتها و سرویسدهنده. در این بخش از فایل پیکربندی httpd.conf محل و مسیر فایلهای ثبت رخداد تنظیم میشود. مسیر پیشگزیده فایلهای ثبت رخداد آپاچی، مسیر var/log/apache/ است. دو فایل ثبت رخداد اصلی در آپاچی وجود دارد. error.log جهت ذخیره خطاهایی که در سرویسدهنده رخ میدهد (مانند خطاهای شماره ۵۰۰) و access.log که تمامی دسترسیهای صورت گرفته به سرویسدهنده در آن ذخیره خواهد شد. این فایلها را میتوانید با استفاده از یک ویرایشگر متنی ساده بررسی نمایید و یا با دستور زیر آنرا مانیتور نمایید:
# tail -f /var/log/apache/error.log
فایلهای ثبت رخداد apache-ssl در مسیر /var/log/apache-ssl/ قرار دارند.
- ServerName : این گزینه تعیین کننده این مطلب است که سرویسدهنده با چه نامی روی شبکه اینترنت شناخته میشود و شامل یک نام ثبت شده میباشد. این گزینه بصورت پیشگزیده غیر فعال بوده و شما باید آنرا بصورت دستی فعال نمایید.
- CacheNegotiatedDocs : این بخش حاوی چندین گزینه سیستمی است. گزینه نخست که میباشد، باعث خواهد شد تا سرویسدهنده Proxy صفحات سرویسدهنده را Cache نماید.
- Timeout: همیشه ممکن است ارتباطات در اینترنت به دلایلی مانند ترافیک، خرابیها و... دچار تاخیر گردند. گزینه Timeout تعیین کننده مدت زمانی است که یک درخواست قادر است به سرویسدهنده وارد شده و از آن خارج شود. (ثانیه). سرویسدهنده قادر است درخواستهایی را که از زمان مجاز عبور کردهاند، متوقف نماید.
Timeout 300
- KeepAlive : هنگامی که این گزینه بر روی On تعریف شده باشد، سرویسدهنده قادر خواهد بود تا چندین تراکنش را بر روی یک Connection اجرا نماید. این گزینه به طرز فزایندهای سرعت کار سرویسدهنده را افزایش خواهد داد، زیرا به ازای هر درخواست یک اتصال جداگانه ایجاد نخواهد شد.
KeepAlive On
- MaxKeepAliveRequests : این گزینه حداکثر درخواستهای ارسالی از سمت یک سرویسگیرنده را تعیین خواهد نمود.
- Server Pool : این بخش چگونگی اجرای دیمن آپاچی را تعیین میکند. گزینههای MinSpareServers و MaxSpareServers تعیین کننده تعداد پروسههای child سرویسدهنده آپاچی است. این گزینه برای بهبود Performance سرویسدهنده هنگام افزایشهای ناگهانی بار بسیار مفید است. اعداد پیشگزیده ۵ و ۱۰ سرویسدهنده child میباشد. گزینه StartServers نیز تعیین کننده تعداد سرویسدهندههای child در هنگام آغاز به کار آپاچی میباشد. در صورتی که مقدار StartServers کمتر از MinSpareServers تعیین شود، سرویسدهنده با مقدار تعیین شده در MinSpareServers راهاندازی خواهد شد.
MinSpareServers 5
MaxSpareServers 10
StartServers 5
- MaxClients : حداکثر تعداد سرویسگیرندههایی که میتوانند به طور همزمان به سرویسدهنده متصل شوند را تعیین میکند.
MaxClients 150
- DocumentRoot : مسیر اصلی قرار گیری فایلها و صفحات وب در سرویسدهنده آپاچی.
DocumentRoot /var/www
- AddCharset : تعیین کننده کاراکتر ستهای قابل پشتیبانی در آپاچی است که صفحات وب پردازش شده را تحت تاثیر قرار خواهد داد. باید AddCharset UTF-8 .utf8 برای پشتیبانی از utf8 فارسی در این بخش اضافه گردد:
AddCharset UTF-8 .utf8
- AddDefaultCharset : در صورتی که بر روی on تنظیم شده باشد، سرویسدهنده صفحات را بطور پیشگزیده با کاراکترست ISO-8859-1 پردازش خواهد نمود. برای پشتیبانی از utf8 باید بر روی off تنظیم شود.
- DirectoryIndex : فایلهایی که بصورت Index هر دایرکتوری شناخته خواهند شد، در این بخش تعریف میشوند. مانند index.html یا default.html. در برخی از نسخههای Apache در برخی از توزیعها باید گزینه index.php را بطور دستی اضافه نمایید.
DirectoryIndex index.html index.htm index.shtml index.cgi index.php
- UserDir : در صورتی که این گزینه فعال باشد، تمامی کاربران سیستم قادر خواهند بود تا صفحات وب مربوط به خود را بر روی سرویسدهنده داشته باشند که با آدرس http://localhost/~userid قابل دسترسی خواهد بود. localhost میتواند با آدرس IP یا نام دامنه تعویض گردد. کافی است تا هر کاربر یک پوشه public_html در دایرکتوری خانگی خود ایجاد نموده و صفحات وب مربوط به خود را در آنجا قرار دهد. برای استفاده از این قابلیت، ماژول UserDir باید در آپاچی فعال باشد:
LoadModule userdir_module /usr/lib/apache/1.3/mod_userdir.so
- Redirection and aliasing : این امکان شرایطی را فراهم میسازد تا بتوان فایلها و صفحات وب را در جایی غیر از جایی که سرویسگیرنده به آن اشاره مینماید ذخیره کرد. گزینه Redirect امکان هدایت یک آدرس URI خاص را به یک آدرس URL فراهم میسازد. مثلا ممکن است بر روی سرویسدهنده خود یک آدرس قدیمی داشته باشید که به آدرسی دیگری تغییر کرده باشد. با استفاده از این قابلیت قادر خواهید بود تا کاربرانی را که هنوز به آدرس قدیمی مراجعه مینمایند، بطور خودکار به آدرس جدید هدایت نمایید:
Redirect /data/ http://www.technotux.com/docs/
Alias به فایلهایی که خارج از DocumentRoot سرویسدهنده قرار دارند، اشاره مینماید. به این معنی که در صورتی که نیاز داشته باشید تا فایلهای را که خارج از DocumentRoot سرویسدهنده قرار دارند از داخل سرویسدهنده آپاچی قابل دسترسی نمایید، از این کلمه کلیدی استفاده مینمایید:
Alias /doc/ /usr/share/doc/
گزینه ScriptAlias همانند Alias کار میکند با این تفاوت که تنظیم کننده موقعیت اصلی اسکریپتهای وب میباشد. مانند اسکریپتهای cgi:
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
- AddType : این گزینه برای اضافه کردن نوع فایل خاصی به فایلهای قابل شناسایی توسط سرویسدهنده میباشد. برای مثال در زیر تنظیم مربوط به فایلهای php را مشاهده مینمایید:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
- ErrorDocument : این گزینه جهت سفارشی سازی صفحات نمایش پیغامهای خطا بکار میرود. مانند نمایش یک صفحه HTML خاص و یا Redirect به آدرس وب خاص.
ErrorDocument 404 /missing.html
منبع:http://www.technotux.org
چند روز پیش موفق به دانلود دیسک زنده SLAX نسخه 4.0.1 شدم. این دیسک زنده مبتنی بر لینوکس Slackware یکی از پرطرفدارترین توزیعها میباشد. با توجه به خصلتهای خاص Slackware یعنی خلوص، پایداری و سرعت بالا انتظار داشتم همین مشخصات را در SALX ببینم. ولی قابلیتهای این دیسک ۱۸۵ مگابایتی فراتر از انتظار من بود!
حجم کم این دیسک، سرعت بسیار بالا (گاهی فکر میکنید که برنامههای آن روی دیسک سخت نصب شدهاند!) دو محیط گرافیکی KDE 3.2 و Fluxbox، یک مجموعه اداری کامل، برنامههای چند رسانهای برای پخش صوت و ویدئو که بسیار عالی کار میکنند، سیستم ذخیره تنظیمات و بازگرداندن تنظیمات ذخیره شده، قابلیت اجرای این دیسک از روی دیسکهای USB و... این مجموعه را بسیار عالی میسازد.
نکته توجه من بر روی KDE 3.2 معطوف شده است! واقعا تیم توسعه KDE با ارائه این نسخه قدم بسیار مهمی به جلو برداشته است و SLAX به افرادی که هنوز نتوانستهاند تا آنرا آزمایش یا نصب کنند، فرصتی استثنایی برای آزمایش قابلیتهای آن اعطا میکند.
سعی شده تا اکثر نیازهای یک کاربر میزکار در یک مجموعه ۱۸۵ مگابایتی جمع آوری شده و کنار هم قرار گیرد که این کار به طور بسیار زیبایی با کمک KDE 3.2 و کیفیت Slackware انجام شده است.
همانطور که گفتم، بیش از همه سرعت این دیسک مرا متعجب ساختهاست. مطمئن شما هرگز یک Live CD به این روانی را تجربه نکردهاید. بخشی از نرمافزارهای موجود به همراه این دیسک عبارتند از:
Xfree86 4.3.0
KDE 3.2 final
KOffice 1.3 final
KDE games
mplayer 1.0pre3
kopete ICQ/AIM/Y!/IRC
midnight commander
rdesktop (rscp in KDE)
hotplug support
cdrtools
k3b burning GUI for KDE
imagemagick
mutt email client
wget
بعلاوه هسته 2.4.25. توسعه دهندگان این دیسک زنده امکاناتی را فراهم کردهاند که شما نیز بتوانید توسط آنها یک دیسک زنده جدید و مبتنی بر SLAX ایجاد نمایید که این ابزارها همراه با دیسک موجود میباشد. مستندات لازم برای توسعه این دیسک را میتوانید اینجا مطالعه نمایید.
این دیسک قادر است به سرعت تمام سختافزارهای موجود بر روی سیستم شما را شناسایی کرده و آنها را فعال نماید. تمامی سختافزارهای من بطور صحیح نصب شدند و تنها چرخ اسکرول ماوس من کار نکرد.
SLAX برای اجرا شدن نیازی به دیسک سخت ندارد، ولی تمامی پارتیشنهای دیسکهای سخت موجود را شناسایی کرده و بصورت r/w متصل میکند. در صورتی که شما پارتیشن swap لینوکس در روی دیسک سخت خود داشته باشید، آنرا بطور خودکار شناسایی کرده و استفاده میکند.
یکی دیگر از قابلیتهای بسیار خوب این توزیع امکان ذخیره و بازیابی تنظیمات میزکار بصورت خیلی آسان میباشد. با استفاده از دو دستور configsave و configrestore قادر خواهید بوت تمامی تنظیمات میزکار خود را هنگام استفاده مجدد دیسک ذخیره نمایید. این تنظیمات را خواهید توانست بر روی دیسک سخت، فلاپی و یا USB ذخیره نمایید.
باز کمی در مورد KDE 3.2 صحبت کنیم. در این نسخه تغییرات و بهینه سازیهای زیادی صورت گرفته و واقعا یک میزکار عالی را برای کاربران فراهم ساخت است. سرعت اجرای KDE بسیار بهبود پیدا کرده به نحوی که حتی در این دیسک زنده شما شک میکنید که آیا برنامهها از روی دیسک سخت اجرا میشوند یا CD-ROM؟!! در این نسخه از KDE امکانات فارسی بهتری فراهم شده و تقویم هجری شمسی نیز بصورت توکار در KDE گنجانده شده است. این به این معنی است که شما اکنون در برنامههای کاربردی مختلف KDE خواهید توانست از تاریخ شمسی استفاده کنید. چیزی بهتر از این؟
تصویر بالا تقویم هجری/شمسی KDE را نمایش میدهد. همچنین تصویری نیز از یک داده آزمایشی در Korgnizer تهیه کردهام که آنرا در پایین مشاهده میکنید:
شما با استفاده از مرکز کنترل KDE قادر هستید تا زبان فارسی را فعال کرده و قلمهای فارسی را به سادگی نصب کنید و چون تمامی پارتیشنهای دیسک سخت شما آماده و در دسترس هستند، این کار برایتان بسیار آسان خواهد بود. همانطوری که در بالا اشاره شد، مجموعه Koffice 1.3 به همراه SLAX ارائه شده است که میتوانید در آن بخوبی از امکانات فارسی استفاده کنید:
حافظه مورد نیاز برای اجرای SLAX بصورت محیط متنی ۳۲ مگابایت، برای استفاده از Fluxbox حدود ۶۴ مگابایت و برای استفاده از KDE حداقل ۱۲۸ مگابایت میباشد. SLAX در محیط متنی بوت شده و شما پس از ورود بصورت کاربر root قادر هستید تا Fluxbox یا KDE را اجرا نمایید. بازگرداندن تنظیمات نیز پیش از اجرای محیط گرافیکی باید صورت گیرد.
در مجموع من دیسک SLAX را به تمامی کاربران مخصوصا کاربرانی که در انتظار آزمایش KDE 3.2 بسر میبرند توصیه میکنم که علاوه بر آن یک دیسک زنده بسیار عالی و سریع را نیز در اختیار خواهند داشت. در صورت علاقه مندی قادر خواهید بود تا SLAX را از بخش دیسکهای لینوکس سایت تهیه نمایید.
منبع:http://www.technotux.org
ابزار Gparted در حقیقت یک رابط گرافیکی برای GNU/Parted میباشد. GNU/Parted ابزاری برای ایجاد، پاک کردن، تغییر اندازه، بررسی و کپی پارتیشنها و فایل سیستمهای موجود بر روی آنهاست. این ابزار انجام عملیات ایجاد فضا برای نصب سیستمعاملهای جدید و تنظیم مجدد فضاهای پارتیشنهای مختلف را تسهیل میکند. علاوه بر پارتیشنها و فرمتهای مورد پشتیبانی GNU/Parted، ابزار Gparted قادر است تا از فرمتها و فایل سیستمهای دیگری را که در سیستمی که در آن اجرا میشود، مورد پشتیبانی هستند، استفاده کند. برای مثال GNU/Parted مستقیما قادر به تغییر اندازه یا ویرایش پارتیشنهای NTFS نیست، ولی در صورتی که بر روی سیستم مجموعه ntfsprogs نصب باشد، Gparted میتواند از آن برای ایجاد و تغییر اندازه پارتیشنهای NTFS استفاده کند.
Gparted ابزار مناسبی برای کسانی است که حوصله سر و کله زدن با ابزار GNU/Parted در خط فرمان را ندارند.
Gparted به زبان ++C و با استفاده از کتابخانه gtkmm نوشته شده است و تحت مجوز GNU/GPL منتشر میشود. تصویر زیر پنجره اصلی Gparted را نمایش میدهد.
نصب Gparted
صفحه خانگی پروژه Gparted در نشانی http://gparted.sf.net قرار دارد. از این نشانی میتوانید کدهای منبع یا بستههای قابل نصب آنرا دریافت کنید. برخی از توزیعها Gparted را در مخازن خود به صورت آماده برای نصب ارائه میکنند. برای مثال در صورتی که از دبیان یا توزیعهای مبتنی بر آن استفاده میکنید، میتوانید با دستور زیر آنرا نصب کنید:
# apt-get install gparted
ویژگیهای Gparted
همانطور که بالاتر نیز اشاره شد، Gparted ابزاری جهت ایجاد، تغییر اندازه، کپی، انتقال و حذف پارتیشنهای دیسکها میباشد. جدول زیر وضعیت پشتیبانی از فایل سیستمهای مختلف را در Gparted نمایش میدهد. همانطور که میبینید، برخی از فایل سیستمها بصورت درونی پشتیبانی شده و برخی از آنها تنها در صورت نصب بودن بسته ابزارهای مربوطه قابل پشتیبانی هستند.
Create |
Grow |
Shrink |
Move |
Copy |
Required software |
|
ext2 |
X |
X |
X |
X |
X [1] |
|
ext3 |
X |
X |
X |
X |
X [1] |
|
fat16 |
X |
X [4] |
X [4] |
X [4] |
X [1] |
|
fat32 |
X |
X [4] |
X [4] |
X [4] |
X [1] |
|
hfs |
X |
-- |
-- |
-- |
X [1] |
|
jfs |
X |
X [2] |
-- |
-- |
X [1] |
|
linux-swap |
X |
X |
X |
X |
X [1] |
mkswap (part of util-linux) |
ntfs |
X |
X |
X |
-- |
X |
|
reiserfs |
X |
X |
X |
-- |
X [1] |
|
xfs |
X |
X [2] |
-- [3] |
-- |
X |
[1] کپی توسط ابزار dd انجام میگیرد.
[2] به پشتیبانی هسته از این فایل سیستم نیاز میباشد.
[3] امکان جمع کردن مستقیم پارتیشنهای XFS وجود ندارد، ولی میتوانید این پارتیشنها را با کپی کوچک کنید.
[4] بصورت درونی توسط GNU/Parted پشتیبانی میشود.
یکی دیگر از قابلیتهای Gparted توانایی آن در تبدیل فایل سیستمهای پارتیشنها به یکدیگر میباشد. البته Gparted برای این کار پارتیشنها را فرمت میکند و طبیعتا دادههای موجود در آن از بین خواهد رفت.
نکته: برای انجام هر گونه عملیات بر روی پارتیشنهای مختلف، باید آن پارتیشن را از حالت اتصال (mount) خارج کنید. در صورتی که میخواهید عملیات تغییر اندازه را بر روی پارتیشن ریشه یا پارتیشن دیگری که امکان unmount کردن آن وجود ندارد انجام دهید، باید سیستم را با استفاده از دیسکهای زنده بوت کرده و تغییرات خود را بر روی پارتیشن اعمال کنید. دیسک زنده Parsix به همراه این ابزار ارائه شده است.
در بالای پنجره اصلی Gparted وضعیت پارتیشنهای مختلف و در جدول زیر آن نیز جزئیات دقیق پارتیشن مانند فرمت، فضای استفاده شده و فضای آزاد و اطلاعات دیگری نمایش داده میشود. برای انجام هر گونه عملیات بر روی پارتیشن مورد نظرتان کلیک راست کرده و عملیاتی را که مد نظر دارید، اجرا کنید. برای مثال برای تغییر اندازه یک پارتیشن بر روی آن کلیک راست کرده و گزینه Resize/Move را انتخاب کنید. پنجره جدیدی نمایش داده شده و بوسیله آن میتوانید با استفاده از ماوس یا وارد کردن مقادیر عددی، اندازه جدید پارتیشن را وارد کنید.
پس از اتمام انتخاب تمامی عملیاتهای مورد نیاز، برای اعمال تغییرات باید بر روی دگمه Apply موجود بر روی نوار ابزار برنامه کلیک کنید. توجه داشته باشید پیش از کلیک بر روی دگمه Apply امکان انصراف از انجام تغییرات با کلیک بر روی دگمه Undo وجود دارد.
با اینکه Gprarted هنوز در مراحل بسیار اولیه توسعه است، بسیار خوب کار میکند و من به شخصه در موارد زیادی از آن استفاده کرده و به مشکلی بر نخوردهام
منبع:http://technotux.com
امروزه با افزایش تنوع توزیعهای لینوکس و همچنین فراهم شدن دسترسی به بخشی از این توزیعها در ایران، کاربران زیادی مایل هستند تا دو یا چند توزیع را درکنار هم نصب کرده و ویژگیها و امکانات آنها را بررسی نمایند و توزیع مناسب برای نیازهایشان را انتخاب کنند. بنابراین لازم دیدم تا در یک مقاله تشریحی، نحوه نصب دو یا چند توزیع لینوکس را در کنار هم شرح دهم.
به چه چیزهایی نیاز داریم؟
چیز زیادی لازم نیست! شما حداقل به موارد زیر نیاز خواهید داشت:
۱) سه پارتیشن لینوکس که حداقل یکی از آنها قابل بوت باشد. (برای استفاده به عنوان پارتیشن 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 تغییرات را ذخیره کرده و خارج شوید. خوب اکنون اگر بوت کنید، گزینه مربوط به بوت توزیع اول نیز در مدیر بوت اضافه شده که با انتخاب آن خواهید توانست از توزیع اول خود نیز استفاده نمایید.
نزدیکی انتشار ویندوز ویستا با جلوههای ویژه شیشهای، همراه با تکنولوژی تازه از راه رسیده XGL و Compiz در آخرین نسخه منتشر شده SUSE، من را متقاعد میکند که برنامهنویسان برداشت اشتباهی از رایانه رومیزی دارند. بعضی دلایل موجب میشود که کاربران گنو/لینوکس در پی رقابت شانه به شانه با ویژگیهای ویستا باشند، در حالی که اپل و مایکروسافت در تلاشند که گرافیک بیشتری داخل سیستمعاملهای متمرکز بر گرافیکشان بکنند. اینچنین است که شما به شدت نیاز به کارت گرافیکهایی با پشتیبانی از حالت سهبعدی (و با درایور انحصاری) و رایانههای نسبتاً سریعی دارید تا فقط بتوانید محیط گرافیکی داشته باشید. پس کارایی و سرگرمی چه می شود؟
ما نیازی به گرافیک متعفن نداریم
یک لحظه صبر کنید و این سوال را از خود بپرسید: جلوههای شیشهای، XGL/Compiz، و ظاهر جهنده/شکننده OS X چطور شما را کاراتر یا بازیها را سرگرمکنندهتر میکنند؟ زیبایی یا جذابیت رایانه یا نرمافزارتان را برای لحظهای فراموش کنید - رایانه که شخص یا اثر هنری نیست - و به این فکر کنید که از رایانهتان چه استفادهای میکنید. میزبانی جلوههای سهبعدی چه چیزی به آن کاربردها میافزاید؟
جواب من این است: هیچ. در واقع جلوههای سهبعدی XGL/Compiz محیط کاری من را تباه میکند چون خیلی گیجکننده است و سرعت پردازش فریم را در بازیهای سهبعدی کم میکند. گذشته از این XGL باعث ناپایداری بعضی سیستمها شده و ممکن است نصب و تنظیم صحیح آن دشوار باشد. پس چرا باید چنین چیزی را بخواهم؟
به نظر میرسد جلوههای گرافیکی فقط برای تبلیغات مفیداند، وقتی که میخواهید به دوستانتان تمام شعبدهبازیهای کامپیوترتان را نشان دهید.
موضوع نرمافزارها هستند
آنچه که قلمرو محیط رومیزی گنو/لینوکس (و BSD) نیاز دارد بالابردن کارایی و قابلیتهایش است نه حقههای احمقانه. برنامههای ویژه و شایستهای که محیط کاربری را به وسیلهای اجتنابناپذیر بدل کنند. در حال حاضر گنو/لینوکس جالبترین نرمافزارها را در خود دارد و برای بسیاری از مدیران شبکه اولین انتخاب بعنوان سیستمعامل سِرور است اما اجتنابناپذیر نیست. اگر گنو/لینوکس فردا ناپدید شود بیشتر افرادی که به آن تکیه دارند بدون اینکه دچار مشکلات زیادی شوند می توانند به FreeBSD، OpenBSD، NetBSD یا Solaris مهاجرت کنند. در بیشتر موارد همه این سیستمعاملها منافع استفاده از گنو/لینوکس - امنیت بالا، تعداد زیادی ابزارهای پورت شده، ابزارهای مدیریت شبکه توکار و دسترسی به کد منبع - را دارند. شاید حتی بتوانید بیشتر اسکریپتها و سایر تغییرات سفارشی خودتان بر گنو/لینوکس را حفظ کنید یا در نهایت مجبور به اندکی تغییر شوید.
OpenBSD و NetBSD زمینههای مشخص و متمرکزی دارند: بترتیب، امنیت و قابلیت انتقال که هیچ سیستمعامل دیگری این زمینهها را به راحتی پوشش نمیدهد. FreeBDS اعتبار سرور وب بون را با خود داشت اما تمرکز بر این حیطه را از دست داده و در حال حاضر نوعی لینوکس از دنیای BSD است - و این به آن معناست که همانقدر که روی FreeBSD کار میشود درباره گنو/لینوکس هم بحث میشود. هر دو همهکاره و هیچکارهاند. بعضی توزیعهای گنو/لینوکس نقاط تمرکز کماهمیتی را معرفی میکنند. اما غیر از چند توزیع گنو/لینوکس مناسب برای محیط رومیزی، من چری که به واقع وزنهای در کاربردی خاص باشد نیافتهام. به عنوان مثال من توزیعی میخواهم که بطور کامل مخصوص سرویسهای وب باشد با امکان افزودن FTP، rsync و سایر خدمات تحت وب. هسته، ابزارهای خط فرمان و محیطهای گرافیکی (اگر یکی دارد و باید باشد)، همه کاملاً مخصوص تنظیم، اجرا و نظارت بر این سرویسهای وب. در حال حاضر آنچه ما داریم توزیعهای غولآسا با پوشش حیطههای وسیعی است که خودمان حرس کرده و برای کاربردهای مورد نظر سفارشی میکنیم.
علاوه بر این ما برنامههای غولآسایی چون OpenOffice.org هم داریم که برای کاربردهای کوچکی استفاده میکنیم. OpenOffice.org شهریار فربهی و تقلید است. آیا OOo بعنوان مجموعهای از ابزارها که افراد به طور اعم در یک دفتر به آن نیاز دارند طراحی شده است؟ نه. بلکه برای کپی کردن هر چه در Microsoft Office هست طراحی شده بدون توجه به اینکه انجام این کار فایدهای دارد یا نه. اگر به واقع یک مجموعه دفتری بود باید برنامهای برای ایجاد چارتها و گرافیکهای مورد نیاز در کسب و کار، برنامهای برای نوشتن نامههایی با سربرگهای از پیش تعیین شده، یک پیغامرسان فوری، و یک برنامه مدیر اطلاعات شخصی و ایمیلخوان میداشت. OOo هیچ کدام از این ابزارهای ویژه را ندارد.
اگر چند نسل اول رایانههای اپل مکینتاش را به خاطر داشته باشید احتمال میدهم که آنها را به عنوان ماشینهای ناشر میشناختید. این زمینهای بود که مکها در آن نامآور بودند: نشر رومیزی عالی که در آن زمان جایگزینهای اندکی برایش بود یا شاید هم جایگزینی نبود بخصوص با قیمتی قابل رقابت. مهندسان ضبط صدا و هنرمندان، سختافزار و نرمافزار اپل را ترجیح میدادند. اپل بیهیچ دلیلی آن بازار را کنار گذاشت. مانند تمام موارد دیگر در دنیای رایانههای رومیزی مکینتاش تمرکز خود را از دست داد.
نباید اینطور باشد. مثل مکینتاش اواسط دهه ۸۰، گنو/لینوکس هم میتواند به سادگی خود را به عنوان سکویی اجتنابناپذیر جا بیاندازد اما نه فقط برای نشر رومیزی بلکه برای منظورهای گوناگون:
توسعهدهندگان نرم افزار: در حال حاضر گنو/لینوکس به لطف جنبش نرم افزار آزاد در این زمینه بسیار قدرتمند است ولی باز هم روشهای زیادی وجود دارد که میتواند آن را برای توسعهدهدگان نرم افزار دلپذیرتر کند. به عنوان مثال میتوان یک محیط رومیزی (یا یک توزیع کامل گنو/لینوکس) مخصوص توسعهنرمافزار فراهم کرد. در حال حاضر شما باید ابزارهای برنامهنویسی را خودتان سرهم کرده و سفارشی کنید و سپس رابط گرافیکی را (اگر از چنین رابطی استفاده میکنید) بیارایید تا بتوانید به راحتی به ابزارهای مورد استفادهتان دسترسی پیدا کنید. خوشبختانه محیطهای برنامهنویسی مجتمع شده عالی برای زبانهای برنامهنویسی متنوع وجود دارد، همچنین کامپایلرها و دیباگرهای بینظیر و محیطهای ماشین مجازی مناسب. Java Desktop Machine محصول SUN Microsystems که بر پایه نسخههای قدیمی SUSE است به سکوی ایدهآل برنامهنویسان – بخصوص برای جاوا – نزدیک شده اما هنوز زواید غیرضروری زیادی دارد.
نویسندگان حرفهای: این مورد به وضوع بالای لیست شخصی آرزوهای من است اما فقط من نیستم. نویسندگان گروه بزرگ فراموش شدهای از کاربران رایانهاند. بطور مداوم ایمیلهایی از سایر نویسندگان و روزنامهنگاران دریافت میکنم که از همین موضوع شکایت دارند: برنامههای قوی یا محیطهای سفارشی شده برای نویسندگان وجود ندارد. ما بین نرمافزارهای انباشته از امکانات مثل OpenOffice.org و ابزارهای خشک و خالی مثل Vim و Aspell گیر افتادهایم و مجبوریم عادات کاری خود را عوض کنیم تا با محدودیتهای این برنامهها جور دربیاید. ما باید مجموعه ابزارهای ویژه ادبیات داشته باشیم؛ یکی برای چرکنویس کردن، طرح نوشتن و طراحی Storyboard. یکی برای ویرایش کردن (درستنویسی، دستور زبان و نشانهگذاری). و یکی برای نشر (صفحهبندی، طراحی و غیره). نمایشنامهنویسان را فراموش نکنید. آنها هم باید ابزارهای ویژه کار خودشان را داشته باشند. برنامههایی مثل Jedit و LyX در بسیاری از موارد بکار میآیند اما هنوز گنو/لینوکس ابزارهای پرکاربر چرکنویسی و ویرایش به انگلیسی را در خود ندارد.
طراحان گرافیک: GIMP برای گرافیکی کامپیوتری مناسب است اما برای گرافیک چاپی قوت لازم را ندارد یا حداقل این چیزی است که هر وقت یک طراح گرافیک نقدی بر گیمپ مینویسد به آن اشاره میکند. مطمئن نیستم که ابزارهای طراحی گرافیک پیشرفته مناسب، لزوماً در گنو/لینوکس غایب باشند. اما یافتن و بکار بستن آنها برای کاربردهای ویژه بایستی بسیار سادهتر باشد. این کم و بیش شبیه گلایه نویسندگان در چند سطر بالا است. آنچه لازم است مجموعهای از برنامههاست که هر کدام گروه کوچکی از عملیات خاص را بخوبی انجام دهند. و به مانند برنامهنویسان محیط رومیزی مخصوص یا توزیع ویژه ممکن است مفید باشد.
بسیاری از این موارد را میتوان با سفارشیسازی مناسب توزیعهای گنو/لینوکس به انجام رساند پس باید زوایدشان را چید و متمرکزشان کرد. اما چه کسی چنین خواهد کرد؟ قبول دارم که تماشای گاه و بیگاه DVDهای خوانندههای سوپرانو وقتی که نصفه شب برای تفریح در حال نصب OpenBSD یا Gentoo بر یک نوتبوک هستم ممکن است جالب و جذاب باشد اما فقط وقتی که راهنماهای مناسب فنی برای این کار داشته باشم.
اگر این ایده را گسترش دهیم یک شرکت خلاق بخصوص میتواند سختافزاری طراحی کند که قادر باشد با توزیع گنو/لینوکس سفارشیسازی شده کار کند و در نتیجه رایانه مناسب اهدافی خاص خلق نماید. به نظر من اکثر کاربران چیزی بیش از یک ابزار میخواهند. چیزی که آزارشان ندهد، بههمریخته نباشد یا مجبورشان نکند که ساعتها وقت برای نگهداری از آن صرف کنند.
حتی اگر حرفهایها و برنامهنویسان با من موافق نباشند عقیده من این است که آینده گنو/لینوکس در انباشتن برنامههای موجود از امکانات جدید یا سرگرمیهای گرافیکی نیست. آینده همان جایی است که همیشه بوده: آینده در دست یافتن به درجه بالاتری از مفید به فایده بودن برای کسانی است که از کامپیوتر در زمینههایی غیر از برنامهنویسی هم استفاده میکنند. این اواخر توسعهدهندگان بدلیل حسودی به امکانات ویندوز ویستا که در چند ماه آینده منتشر خواهد شد نزدیکبین و پریشان خاطر شدهاند. نمیتوانم تا آخر این بازی صبر کنم. شاید بعد از این جریان بشود پی نرمافزاری به واقع نوآور گشت بجای برنامههایی با کاربردها یا ظواهر مشابه [نمونه ویندوزی] که مرا از دنیای ویندوز فراری داد.
منبع:http://irantux.com