loading...
 

شاپ کیپر

شاپ کیپر

  1. شاپ کیپر
  2. شبکه های لینوکسی
بسم الله الرحمن الرحیم
شبیه سازی کنسولهای مختلف در لینوکس:

شبیه سازی بازی های کنسولی بر روی رایانه مقوله تازه ای نیست .شبیه ساز برنامه ایست که سخت افزار و فرم ور(اطلاعات نرم افزاری در حافظه ) یک کنسول بازی را برای اجرایrom (بازی) آن , شبیه سازی(تقلید ) میکند (همانند کنسول بازی سوپر نینتندو).Rom ها همان نمونه های(کپی های) کامپیوتری شده بازی های کنسولی هستند .برای PSx(یا همان پلی استیشن 1 ) و دیگر سیستم های مبنی بر سی دی به رام ها ISO میگویند . این راهنما تنها نوشته های شخصی من در زمینه شبیه سازی بازی های مختلف کنسولی در لینوکس اوبونتو فیستی فان 7.04 میباشد ...

در ابتدا .اگر گیم پد یا دسته ندارید. پیشنهادمیکنم به مغازه محل زندگیتان مراجعه کنید و یکی بخرید .اگر علاقمند به ذخیره پول هستید .تعداد زیادی از منابع آنلاین وجود دارند که میتوانید از انها در این زمینه استفاده کنید (این قسمت مال ما نیست وبیخیال حراجی های انلاین شید و برید و یه دسته از یه جا بخرید ) و نیازی به ذکر این مطلب نیست که شما میتوانید ازدسته های همان کنسول (مثلا پلی استیشن یک ) نیز با استفاده از یک مبدل USB استفاده کنید .من شخصا از یک دسته لاجیتک دوال اکشن (Logitech Dual Action)استفاده میکنم .هیچ تنظیم خاصی غیر از اینکه دسته را در پورت USB قرار دهم و دسته را تنظیم کنم نیاز نیست .این دسته علاوه بر اجرای بازی های شبیه سازی شده در کامپیوتر برای بازی های غیر شبیه سازی هم عالی است .مثل Vdrift (این بازی رو اگه باکیبرد بازی کنید اصلا بهتون حال نمیده و اگه اینو با دسته بازی کنید معتاد میشید ...).


پیداکردن بازی ها (ROmها ):


پیداکردن بازی ها بسیار آسانتر از ** چیزیست که ممکن است فردی تصور کند .سایتهای بسیاری ,هم برای مشترکین بیت تورنت و هم استفاده کنندگان از سایتهای استاندارد HTTP وجوددارد .سایتهایی مانند amuleaMule و minirova.orgmininova.org سایتهای مورد علاقه من در این زمینه تابحال بوده اند .خیلی ساده اسم کنسول و یا بازی (rom)و یا ایزو (Iso) راتایپ کنید .مثلا :snes roms یا Legend of Mania iso psx (البته من این طور توصیه نمیکنم ... پیشنهاد من به شما استفاده از این سایت هست که بسیاری از بازی های پلی استیشن و سگا و میکرو و آتاری و ....رو میتونید پیدا و دنلودکنید .snesoramaSnesorama


سوپر نینتندو Super Nintendo:
برای شبیه سازی سوپر نینتندو .من zsnsZSnes را انتخاب کردم .من بازیی پیدا نکردم که این شبیه ساز نتواند انرا اجرا کند (بیش از 800 عنوان را امتحان کردم ) .ZSnes ***** های گرافیکی بسیاری دارد تا بازی سوپر نینتندوی شما را بسیار زیباتر از آنچه در کنسول است در کامپیوتر شما نمایش داده شود .بخشی برای وارد کردن کد رمز و تقلب و ... نیز در این شبیه ساز وجود دارد ...
برای نصب ZSNes در اوبونتو اینگونه عمل کنیدبترتیب وارد شوید )
System -> Administration -> Synaptic Package Manager -> ZSNES
شما میخواهید که این شبیه ساز را به منو برنامه هایتان اضافه کنید ( بر روی منو برنامه (Application menu) راست کلیک کنید و ادیت منو را بزنید ) و یا اینکه مستقیما انرا با تایپ zsnes در کنسول اجراکنید .


زمانی که شبیه ساز نصب شد .ممکن است شماسایتهای نظیر امیول یا مینی نواو را برای دنلود بازی های خودتان مد نظر قرار دهید .خیلی ساده عبارت "Snes roms" را جستجوکنید و نتیجه کار را مشاهده کنید .(بازی های زیادی رو میبینید که میتونید دنلود کنید ) .torentsسایتهای بسیاری زیادی هستند که خود را وقف انتشار بازی های سوپر نینتندو میکنند..اما تعداد زیادی از بازی های دارای قوانین کپی رایت هستند و شما نیمتوانید بازی های خوبی مثل دنیای سوپر ماریو را دنلودکنید (ناراحت نباشید اون سایت که من معرفی کردم به شما آزادی دنلود هر چیزی رو که بخواهید میده از شیر مرغ تاجون آدمیزاد .پس نگران نباشید ) .
زمانی که شما مجموعه ای از بازی های سوپر نینتندو را جمع آوری کردید .Zsnes را روشن کنید (اجرا کنید ) و و بر روی COnfigو سپس Input#1(برای دسته اول ) کلیک کنید .اگر دسته کنترل شما لاجیتک دوال اکشن باشد .شما این کار (تنظیم دسته ها ) را بسیار آسان خواهید یافت .تنها بر روی "Set Keys" (یعنی تنظیم دسته ها ) کلیک کنید و خودش برای تنظیم دکمه ها پیام لازم را میدهد .بعد از اینکه در این بخش کارتان تمام شد کلید "X" (یا ضربدر ) را بزنید تا پنجره تنظیمات بسته شود .و بر روی Game و سپس Load کلیک کنید و حالا بازی یا rom خود را انتخاب کنید و شروع به بازی کردن کنید .

نینتندو 64 :
تمامی شبیه ساز های نینتندو 64 بطور یکسان ساخته نشده اند . من بهترین تجربه را باpj64pj64 تحت ویندوز داشتم اما تحت لینوکس شبیه ساز Mupen64Mupen64 بهترین نمونه بعدی است .
برای نصب Mupen64 ابتدا آنرا دریافت(Downloadدنلود کنید ) کرده .سپس فایلها را در پوشه ای در دسکتاپ اکسترکت کنید و حال شمامیتوانید آنرا بطور مستقیم اجرا کنید .(میتونید اونو هر جای هاردتون اکسترکت کنید و بعد اجراش کنید .وحی مُنزل نیست که حتما رو دسکتاپ اکسترکتش کنید ).
یک بار دیگه .مینی نووا چند بازی عالی برای n64 دارد .همین الان من چند پلاگین ویدیویی مثل GLN64GLN64 وGlide64Glide64 برای Mupen64 دنلود خواهم کرد .وقتی دنلود شدند .فایلها را به پوشه ای در Mupen64/plugins (پوشه پلاگین در شبیه ساز مامپن64) اکسترکت کنید .شما مجبورید که برای اجرای بازی های مختلف از Other Pluginsپلاگین های دیگری نیز استفاده کنید .من هنوز نتوانستم پلاگین ویدیویی پیداکنم که بتوانم بازی Donkey Kong 64 را بطور مناسب اجراکنم .اگر شما راهی یافتید نظر خود را اعلام کنید تا این پست را در صورت نیاز ویرایش کنم .

شما سویچ کردن بین بازی های مختلف مثل bomber man 64 و Mario64 را امری بسیار خسته کننده خواهید یافت . بطو یکه مجبورید هر بار بر روی Option و سپس Configure کلیک کنید و بعد نوع دیگری از پلاگین ویدیویی را انتخاب و یا ویرایش کنید .برای رفع این مشکل :
زمانی که شما بازی ها و پلاگین ها را دارید . در Mupen64 بترتیب کلیک کنید :
Options>Configure و سپس دایرکتوری (یا دایرکتوریهای ) مربوط به بازی را اضافه کنید .این عمل تمامی بازی های شما را به لیستی اضافه خواهد کرد و این کار بسیار آسانتر از این است که بخواهید هر بار بازیی را جداگانه باز کرده و سپس اجرا کنید .

من تا بحال نتوانسته ام دسته ای پیداکنم که دقیقا مانند دسته اصلی N64 باشد .خصوصا محل قرارگیری دکمه "Z" و دکمه "C" .اگر شما یک طرفدار دو آتشه N64 هستید .پیشنهاد میکنم بدنبال یک مبدل Usb باشید .اگر شما از دسته لایجتک دوال اکشن استفاده کنید .چوبک (همون L3 تو دسته پلی استیشن دو .بقل دکمه Select که اکثراکار جهت های اصلی رو انجام میده ) انالوگ راست بخوبی برای دکمه های C,بالا ,پایین ,چپ و راست کار میکند . من پلاگین ورودی Blights SDLBlight’sSDL را راحت ترین و دقیقترین پلاگین برای تنظیم دسته ها میدانم که شما میتوانید از لینک زیر آنرا دنلود کنید http://www.ngemu.com/n64/mupen64.php?action=plugins
Nintendo DS:

نینتندو دی اس Nintendo DS
DesmuMeDeSmuME گزینه های زیادی دارد و البته از موس شما بجای قلم طراحی پشتیبانی میکند .من باهیچ دسته ای نتوانستم آنرا بکار بگیرم ..برای نصب این شبیه ساز بترتیب کلیک کنید:
Applications -> System -> Administration -> Synaptic Package Manager, و سپس بدنبال عبارت " desmume" بگردید . برای اجرای شبیه ساز DeSmuME کنسول را باز کره و تایپ کنید :
desmume
(این شبیه ساز چندان جالب نیست و بازی های زیادی رو حداقل جالب اجرا نمیکنه ..تو این مورد خاص رفتن و خریدن کنسولش بیشتر میصرفه .مرض اعصاب کمتر میگیرد .از من گفتن بود )

گیم بوی :Nintendo Gameboy
TuxBoyTuxBoy تا بحال در این زمینه بهترین بوده .برای نصب این شبیه ساز .ابتدا ** را دنلود کرده .سپس محتویات فایل زیپ را در پوشه جدید اکسترکت کنید .از کنسول به دایرکتوی که TuxBoy را اکسترکت کردید بروید .تایپ کنید :type: sh ./install (اینجا بایدازتون پسووردroot(یا کاربر ریشه ) بخواد ).حال TuxBoy در منوی گیم در قسمت Applications در دسترس است .اما برای اجرای ** مجبورید که عبارت "TuxBoy romname" را تایپ کنید .
TuxBoy دارای یک Gui است ( که gnboygnboy ندارد ) که بعد از نصب با دسته لاجیتک دوال اکشن من کار کرد .(فکر میکردم که باید دکمه "mode" برو روی دسته را فعال کنم تا بتوانم از روی آنالوگ انرا برداشته و از D-pad استفاده کنم .)
!
نینتندو نس:Nintendo NES
برای نس من شبیه ساز Gfceogfceu را پیشنهادمیکنم .
برای نصب این شبیه ساز بترتیب کلیک کنید :Applications -> System -> Administration -> Synaptic Package Managerو سپس بدنبال عبارت "gfceogfceu" بگردید .برای اجرای این شبیه ساز از کنسول .تایپ کنید :gfceu
در این حال شما با یک رابط کاربری کوچک و دوست داشتنی مواجه خواهید شد که برای یافتن بازی هایNEs و سپس اجرای آنها بکار میرود.

شبیه ساز سگا ...سگا جینیوس .سگا سی دی ..سیستم های 32X :
GensGensیک شبیه ساز عالی برای سگا جینیوس .سگا سی دی ..سیستم های 32X :است .Downloadبرای نصب ابتدا این بسته دبیان کارامد را دنلود کنید و در پوشه ای ذخیره کنید .(با تشکر از Cronsکرونسودراک بخاطر این هدیه ).سپس در کنسول به دایرکتوی مربوطه (که بسته دبیان رو در آن ذخیره کردید)بروید .و بعد از این کار,عبارت"sudo dpkg -i gens_2.12a-i386.deb" را تایپ کنید .
برای اجرای Gens,خیلی ساده در یک کنسول "gens" تایپ کنید.کار با رابط گرافیکی بسیار ساده و مشخص است(مشخصه چی به چیه!)اطمینان حاصل کنید که کنترل خود را با دسته تا دوباره تنظیم میکنید .(برای اینکار بر روی Option کلیک کرده و سپس Joypads و بعد redefinig the controlls رو انتخاب کنید و دسته خورد را دوباره تنظیم کنید .

پلی استیشن 1 یا PSX یا Playstation
با بازی های عالیی مثل تنچو . فاینال فانتزی 7 , من مجبور به داشتن یک شبیه ساز پلی استیشن بودم.من با Epsxepsx شروع کردم و سراغ شبیه ساز دیگری در این زمینه نرفتم (حتما تا آخر بخونید ) .نصب این شبیه ساز ممکن است کمی سخت باشد و اگر شما چیزی را فراموش کنید ممکن است که مجبور شوید باز از اول تمام مراحل نصب را از سر بگیرید .بنا بر این من هم راهنمای کامل نصب را قدم به قدم بیان میکنم :
1)کنسول را باز کرده و بسته مورد نظر را نصب کنید :تایپ کنید : sudo apt-get install unzip libgtk1.2-common libgtk1.2

2)یک دایرکتوری نصب ایجاد کنید :تایپ کنید :
sudo mkdir ~/Desktop/epsxe

3)به دایرکتوری نصب بروید :تایپ کنید :
cd ~/Desktop/epsxe

4):اطمینان حاصل کنید که تمامی کاربران توانایی نوشتن داشته باشند.پس تایپ کنید :
chmod -R 777 ./

5)شبیه ساز epsx را از لینک زیر دنلودکنید :
http://www.epsxe.com/files/epsxe160lin.zip

6)محتویات فایلی که تازه دنلودکرده اید به دایرکتوری در این مسیر اکسترکت کنید :~/Desktop/epsxe/ directory

7)در کنسول تایپ کنید :
sudo chmod 777 cfg sstates snap memcards

Coolبعد تایپ کنید :
sudo touch memcards/epsxe000.mcr memcards/epsxe001.mcr .epsxerc

9)حالا عبارت زیر را تایپ کنید :
sudo chmod 666 memcards/*

10)حالا عبارت "sudo chmod 666 .epsxerc" را تایپ کنید

11)بایوس PSx (فرم ور پلی استیشن ) را دنلود کنید ..میتوانید از جستجوی کلمه scph1001.bin استفاده کنید .بعد از یافتن و دنلود بایوس .** را به ~/Desktop/epsxe/bin/ folder منتقل کنید .

12)بسته شتاب سخت افزاری را از لینک زیر دنلود کرده و سپس به مسیر ~/Desktop/epsxe/plugins/ folder منتقل کنید
فایل:http://www.pbernert.com/gpupetexgl208.tar.gz

13)توجه داشته باشید که فایلهای cfgPeteXGL2 وgpuPeteXGL2.cfg
بایستی در مسیر ~/Desktop/epsxe/cfg/ folder قرار بگیرند .
توجه دو :اگر بسته شتاب سخت افزاری برای شما کار نکرد فایل زیر را دنلود کرده و محتویات انرا به ~/Desktop/epsxe/plugins folder منتقل کنید و فراموش نکنید که حتما cfgPeopsSoft و gpuPeopsSoftX.cfg را به ~/Desktop/epsxe/cfg/ folder منتقل کنید .

14)پلاگین ورودی PadJoy را دنلود کنید .و فایل cfgPadJoy را به پوشه /cfg/ منتقل کنید .همین کار را با libpadJoy-0.8. انجام دهید و ** را در پوشه /plugin/ قرار دهید ...
دنلودکنید :http://members.chello.at/erich.kitzm...wn/xjoypad.zip

15)یک Pluginپلاگین صوتی را دنلود کنید و در این مسیر قرار دهید :
~/Desktop/epsxe/plugins/ folde
توجه :فایل cfgPeopsOSS را به پوشه /Desktop/epsxe/cfg/~ منتقل کنید

حال شما میتوانید epsx را مستقیما از پوشه /Desktop/epsxe/~ اجراکنید
فراموش نکنید که بایوس (scph1001.bin)را در این مسیر قرار دهید :
/Desktop/epsxe/bin/

اگر شما بازی یا ایزویی از پلی استیشن ندارید برای اطمینان حاصل کردن از موفقیت آمیز بودن مراحل نصب بر روی Run BIOS کلیک کنید .اگر همه چیز رو به راه باشد باید پنجره ای همانند آنچه در پلی استیشن یک به هنگام روشن کردن بدون دیسک پلیاستیشن میبینید رخ دهد ..

برای تنظیم دسته هم تنها کاری که من کردم رفتن به Config -> Ext. Game Pad -> Configure و تنظیم دسته ام بود .


قسمت خوب مقاله :
با تشکر از مت .من شبیه سازی بسیار بسیار آسانتر (از نظر مراحل نصب ) پیداکردم . تنها کاری که شما باید انجام دهید این است که فایل زیر را دنلودکرده در پوشه ای ذخیره کنید و سپس شبیه ساز را مستقیما از پوشه مربوطه اجرا کنید ..بله همین .تمام شد .شما شییه ساز پلی استیشن را نصب کردید .تنهامطلبی که باید بخاطر داشته باشید .کپی کردن بایوس در پوشه مربوط به بایوس است و دیگر هیچ تنظیم دیگه ای نیاز ندارد .هیچ پلاگینی نیاز ندارد و تعداد بسیار زیادی از بازی ها را اجرامیکنید

لینک دنلود :http://psxemulator.gazaxian.com/pSX_linux_1_13.tar.bz2
(ویارایش شده در تاریخ 8 سپتامبر 2007)
توجه : من این شبیه ساز روازهمون ورژن های اولیش میشناختم و از ورژن 9 یا 10 بود که ترجمه فارسیشم انجام دادم و تو سایت اصلیش قرار گرفت .اگر احیانا بازی اجرا نشد .سعی کنید اونو با شبیه ساز epsx اجرا کنید .شبیه ساز فعلی که تازه معرفی کردم بازی پلی استیشن یک رو با همون گرافیک پلی استیشن بشما عرضه میکنه و مثل epsx سعی در بالا بردن گرافیک اون نداره ...
امیدوارم این مقاله بتونه شما رو در هر چه بیشتر سرگرم شدن و انس گرفتن با لینوکس یاری کنه .

اگه تو مقاله فوق اشکالاتی بود خوشحال میشم عنوان کنید وهرچی باشه این مقاله تلفیقی از تجربیات شخصی و ترجمه مطلبی با همین عنوان هست .(مطالب بنده از سایتی بنام http://thepemberton.com/ گرفته شده و بخشهایی که نیاز به توضیح داشت رو تو پرانتز بصورت عامیانه نوشتم و سعی کردم تا اونجایی که ممکنه صفر کیلومتر بنویسم تا کسی که وارد نیست دچار مشکل نشه .از علی جان هم تشکر میکنم بخاطر معرفی سایت فوق(در انجمن موشهای سیاه) وامیدوارم همه به راه راست هدایت بشن و لینوکس رو انتخاب کنند یا علی
زینب بازدید : 0 سه شنبه 23 مهر 1398 زمان : ۰۸:۰۰ نظرات (0)
چگونه هسته لینوکس خود را پیکربندی و کامپایل نماییم؟




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









به چه چیزی نیاز دارید؟

برای پیکربندی و کامپایل هسته، چیز زیادی لازم نیست:
۱) کدمنبع کامل هسته
۲) اطلاعات کامل در مورد انواع سخت‌افزارهای نصب شده در سیستم
۳) نرم‌افزارهای توسعه مانند کامپایلر GCC، Make و...
۴) زمان و دقت کافی








دریافت کد منبع هسته

کد منبع کامل هسته سیستم‌عامل لینوکس را همواره می‌توانید از آرشیو آن واقع در آدرس http://www.kernel.org دریافت نمایید. نسخه‌های متعددی از هسته برای دانلود موجود می‌باشد. شما همیشه آخرین نسخه پایدار را دریافت نمایید. کد منبع را به دو صورت می‌توانید دریافت کنید. وصله (patch) و کد منبع کامل (Full). این دو چه تفاوتی باهم دارند؟ کد منبع کامل حدود ۴۰ مگابایت حجم دارد. وصله کد منبع حدود ۲-۳ مگابایت حجم دارد. در صورتی که هیچ کد منبع کاملی از سری مورد نظرتان که آنرا برای نصب روی سیستم در نظر گرفته‌اید ندارید (مانند سری 2.6 که موضوع این مقاله است) باید کد منبع کامل را دریافت نمایید. ولی اگر کد منبع کامل نسخه‌های کمی قبل‌تر (مثلا نسخه پایدار فعلی 2.6.3 است، ولی شما کدهای منبع 2.6.2 را دارید) را دارید و مایلید تا آخرین نسخه را روی سیستم‌تان نصب کنید، لازم نیست تا کل کد‌های منبع را مجددا دریافت و نصب نمایید. در این موارد وصله نسخه مورد نظر را دریافت و بر روی نسخه قدیمی‌تر اعمال می‌کنید. جلوتر این مطلب را بیشتر توضیح خواهم داد.








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

اگر این اطلاعات را نداشته باشید، عملا قادر نخواهید بود هسته خود را به درستی تنظیم کنید و هسته هنگام کارکرد با مشکل مواجه خواهد شد. بنابراین، کافی است که اطلاعات تمامی سخت‌افزارهای نصب شده مانند تراشه‌های برد مادر، درایوهای مختلف، کارت گرافیک، کارت صوتی، مودم و... را از دفترچه‌های موجود تهیه نمایید و یا از اشخاص وارد دقیقا سوال کنید. (مثلا تنها دانستن مدل برد مادر به شما کمکی نخواهد کرد و حتما باید بدانید دارای چه چیپ ستی است و یا برخی کارت‌های صوتی Genius از چیپ ست FM801 استفاده می‌کنند و برخی دیگر از چیپ ست Yamaha. تنها دانستن اینکه کارت صوتی شما Genius است، در چنین مواردی کمکی به شما نخواهد کرد.)








نرم‌افزارهای توسعه

فرقی نمی‌کند که از چه توزیعی استفاده می‌کنید. برای کامپایل کردن هسته، حتما باید ابزارهای Development موجود در توزیع مورد استفاده تان را نصب نمایید. انتظار نداشته باشید بدون داشتن یک کامپایلر هسته‌تان را کامپایل کنید. علاوه بر ابزارهای توسعه، هسته نیز ممکن است به تعدادی نرم‌افزار پیش‌نیاز، نیاز داشته باشد. مثلا هسته 2.6.3 که در این مقاله آنرا نصب خواهیم کرد، به تعدادی ابزار نیاز دارد که برای عملکرد صحیح حتما باید نسخه‌های صحیح آنها را در سیستم خود داشته باشید. برای اطلاعات بیشتر در مورد شماره نسخه‌های ابزارهای لازم و دریافت آنها اینجا را ببینید. (البته اکثر توزیع‌های جدید بیشتر نسخه‌های پیش‌نیاز را دارا هستند و احتمالا تنها ۱ الی ۲ بسته را باید قبل از کامپایل و نصب هسته نصب نمایید، مگر اینکه توزیع مورد استفاده شما بسیار قدیمی باشد!)








زمان و دقت کافی

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








شروع عملیات

اکنون فرض می‌کنیم که کلیه موارد بالا انجام شده و برای شروع عملیات تنظیم و کامپایل هسته آماده هستیم. عملیات تنظیم و کامپایل هسته را می‌توان به مراحل زیر تقسیم کرد:
۱) قرار دادن کد منبع هسته در محل مربوطه و خارج کردن آن از حالت فشرده
۲) تنظیم و پیکربندی هسته که مطلب اصلی مورد بحث ما در این مقاله است
۳) نصب هسته
۴) تنظیم برنامه مدیر بوت جهت اضافه شدن امکان بوت با هسته جدید
یک پنجره ترمینال باز کرده و عملیات را شروع می‌کنیم.








قرار دادن کد منبع در محل مربوطه و خارج کردن آن از حالت فشرده

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





$ su

# cp /home/alan/linux-2.6.3.tar.bz2 /usr/src/





ویا اگر آنر روی CD داشتید:






$ su

# mount /cdrom (or mount /mnt/cdrom)
# cp /cdrom/linux-2.6.3.tar.gz /usr/src/





کد منبع هسته ممکن است در دو حالت فشرده bz2 و یا gzip در اختیار شما قرار گرفته شده باشد که برای خارج کردن آن از حالت فشردگی از دستورات زیر استفاده خواهید کرد:






# cd /usr/src/

# gunzip linux-2.6.3.tar.gz (if file is in tar.gz format)
# bzip2 -d linux-2.6.3.tar.bz2 (if file is in tar.bz2 format)





پس از اجرای دستورات فوق، حاصل کار یک بسته tar خواهد بود که برای بازکردن آن نیز باید از دستور زیر استفاده نمایید:






# tar -xf linux-2.6.3.tar






اکنون در مسیر usr/src/ یک دایرکتوری با نام linux-2.6.3 موجود است. طبق عرف (و نه به اجبار) یک میانبر به نام linux به دایرکتوری linux-2.6.3 ایجاد می‌کنیم:






# ln -s linux-2.6.3 linux






بسیار خوب. تا این مرحله تمامی کارهای اولیه انجام شده و به اتمام رسید. در بالا درمورد وصله‌های هسته صحبت کردم. مثلا اگر شما کد منبع کامل هسته 2.6.2 را دارید و مایل هستید که هسته 2.6.3 را که فعلا آخرین هسته موجود می‌باشد (البته 2.6.4 چند روز دیگر ارائه خواهد شد!) را روی سیستم خود نصب نمایید، لازم نیست تا تمامی کد منبع را مجددا دانلود نمایید. کافی است که وصله (patch) آنرا که معمولا فایلی حدود یا کمتر از ۲ مگابایت است را دریافت کرده و کد منبع هسته موجود را به آن ارتقا دهید. به این صورت که کلیه مراحل گفته شده را برای هستٗ مثلا نسخه 2.6.2 انجام دهید و سپس وصله را از سایت آرشیو هسته دریافت کنید. با اجرای دستورات زیر، کد منبع هسته شما به نسخه 2.6.3 ارتقا پیدا خواهد کرد:






# cd /usr/src/linux

# bzcat /home/alan/patch-2.6.3.tar.bz2 | patch -p1





با اجرای دستور فوق، فایل‌های مورد نیاز به نسخه جدید ارتقا پیدا خواهند کرد. سپس عملیات زیر را انجام دهید (یک نوع تمیزکاری!):






# rm linux

# mv linux-2.6.2 linux-2.6.3
# ln -s linux-2.6.3 linux





البته می‌توانستید همان موقع میانبر را ایجاد نکرده و پس از انجام عمل ارتقا آنرا ایجاد کنید تا دوباره کاری نشود. اکنون همه چیز برای پیکربندی و تنظیم هسته آماده است.









تنظیم و پیکربندی هسته

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





# cd /usr/src/linux

# make xconfig (graphical)
# make gconfig (graphical)
# make menuconfig (text based)





شما می‌توانید همه آنها را آزمایش کنید و با هرکدام که راحت‌تر بودید کار کنید. من شخصا اکثرا از گزینه xconfig و در سیستم‌های متنی (مانند سرویس‌دهنده‌ها یا دستگاه‌های راه دور) از menuconfig استفاده می‌کنم. تصاویر زیر این رابط‌ها را نمایش می‌دهد.












Make Xconfig


















Make Menuconfig











Make Gconfig










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









مسئله این است: ماژول یا کد درونی؟

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








شروع می‌کنیم

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








قدم اول: پردازنده کامپیوتر

نخستین تنظیمی که باید انجام دهید، تعیین نوع پردازنده سیستم است. این کار کدهای ایجاد شده را برای پردازنده شما بهینه کرده و در سرعت هسته تاثیر خواهد گذاشت. بنابراین در بخش Processor type and features پردازنده خود را انتخاب کرده (البته معمولا سیستم بطور خودکار آنرا برای شما انتخاب کرده است) و سپس گزینه Symmetric multi-processing support را غیر فعال نمایید. (البته در صورتی که کامپیوتر شما بیش از یک پردازنده دارد آنرا فعال باقی بگذارید) فعال باقی گذاشتن این گزینه در سیستم‌های تک پردازنده‌ای باعث کاهش سرعت خواهد شد. در صورتی که هسته را برای یک سیستم اداری و میزکار یا سیستم خانگی پیکربندی می‌کنید، گزینه Preemptive Kernel را نیز فعال نمایید که پاسخ‌های سیستم در هنگامی که سیستم زیر بار است سریعتر شود. تنظیمات پردازنده سیستم در این بخش به پایان می‌رسد.








قدم دوم: مدیریت توان

این گزینه‌ها امکان خاموش شدن خودکار سیستم، بکارگیری باطری، سیاست‌های حفاظت انرژی و... را فراهم می‌سازد. در شاخه اصلی، امکان فعال کردن کلی این قابلیت (Power Management Support) و قابلیت‌های ذخیره در دیسک (Suspend-to-disk) وجود دارد. (برای فعال شدن قابلیت مورد نظرتان بصورت کد درونی کلید Y و برای کامپایل آن بصورت ماژول کلید M را فشار دهید). سپس در بخش ACPI می‌توانید گزینه‌های مورد نظرتان را فعال نمایید. من گزینه اصلی ACPI Support و گزینه Button را برای خاموش شدن خودکار سیستم انتخاب نمایید. در صورتی که هسته یک کامپیوتر کیفی را پیکربندی می‌کنید، علاوه بر این گزینه‌ها، گزینه‌های AC Adapter، Battery و Processor را نیز فعال نمایید. در صورتی که کامپیوتر شما از نوع ASUS یا Toshiba است، گزینه‌هایی نیز برای آن وجود دارد که می‌توانید آنرا نیز فعال کنید. گزینه بعدی APM است که توصیه می‌شود برای کامپیوترهای کیفی آنرا فعال نمایید.








قدم سوم: گذرگاه‌های عمومی در این بخش باید گذرگاه‌های PCI، ISA و PCMCIA را فعال نمایید. به این منظور گزینه‌های PCI Support، PCD device name database، ISA Support ( در صورتی ISA را فعال نمایید که برد اصلی شما دارای آن باشد) برای پشتیبانی از PCMCIA، بخش Support for hot-pluggable devices را فعال نموده در زیر آن بخش‌های مربوط به PCMCIA/CardBus support را فعال نمایید. (PCMCIA تنها برای کامپیوترهای کیفی لازم است).








قدم چهارم:

راه‌اندازهای دستگاه‌ها همانطور که از عنوان این بخش پیداست، در این بخش باید راه‌اندازهای ابزارهای مختلف را فعال نمایید. نخستین گزینه‌ای که باید آنرا فعال نمایید، درگاه موازی یا Parallel port support است. در این قسمت بخش‌های PC-style hardware و IEEE 1284 transfer modes را (برای حالت‌های انتقال داده EPP و ECP) فعال نمایید.
قسمت بعدی که باید آنرا تنظیم نمایید، بخش Block Devices است که باید در آن گزینه‌های Normal floppy disk support و Loopback device support را فعال نمایید. در صورت نیاز گزینه‌های RAM disk support و Initial RAM disk support را هم می‌توانید انتخاب کنید.
بخش بعدی تنظیمات مربوط به درایوهای مختلف و دیسک‌های سخت می‌باشد. در بخش ATA/ATAPI/MFM/RLL support گزینه‌های Include IDE/ATA-2 Disk support، Use multi-mode by default، Include IDE/ATAPI CD-ROM، گزینه SCSI emulation support (در صورتی که یک CD-Writer دارید الزامی است) generic/default IDE chipset support و سپس گزینه PCI IDE chipset support را فعال نمایید. در بخش PCI IDE chipset support گزینه‌‌های Sharing PCI IDE interrupts support، Generic PCI bus-master DMA support، Use PCI DMA by default when available و در نهایت نوع تراشه کنترل کننده IDE روی برد اصلی‌تان را تعیین کنید. مثلا من برای برد اصلی خودم که دارای تراشه سری VIA KT133 است، گزینه VIA82CXXX را انتخاب می‌کنم.
قسمت بعدی در این قدم SCSI device support است که باید در آن گزینه‌های legacy /proc/scsi support، SCSI disk support، SCSI CD-ROM support، SCSI generic support، Probe all LUNs on each SCSI device را فعال نمایید. در صورتی که کارت اسکازی خاصی بر روی سیستم‌تان نصب شده است، راه‌انداز آنرا از بخش SCSI low level drivers فعال نمایید.
در مرحله بعد باید پشتیبانی از شبکه (Networking Support) و پروتکل‌های مختلف را فعال نمایید. فعال کردن این بخش حتما به این معنی نیست که باید شبکه یا کارت شبکه داشته باشید. بخش‌هایی از آن حتی برای اتصال Dialup به اینترنت نیز لازم است. در این بخش گزینه‌های Dummy net driver support، PPP، PPP support for async serial ports، PPP support for sync tty ports، PPP deflate compression و PPP BSD Compress compression را فعال نمایید. در صورتی که یک کارت شبکه در کامپیوترتان نصب شده و مایل هستید تا راه‌انداز آنرا نیز فعال نمایید، نام/تراشه آنرا می‌توانید در یکی از دسته‌های Ethernet 10 or 100Mbit، Ethernet 1000 Mbit و Ethernet 10000 Mbit پیدا کنید. مثلا من برای فعال کردن کارت Realtek خود روی گزینه Ethernet 10 or 100 Mbit کلیک کرده و سپس با فعال کردن گزینه EISA, VLB, PCI and on board controllers راه‌انداز کارت مربوطه را فعال می‌کنم.
در مرحله بعدی باید راه‌اندازهای دستگاه‌های ورودی مانند ماوس، Gamepad و... را فعال کنید. بنابراین در بخش Input device support، گزینه‌های Gameport support، Serial port line discipline، Mice و بخش‌های زیر آن یعنی PS/2 و Serial و قسمت Misc بخش PC Speaker support را فعال کنید. در صورتی که دسته بازی دارید گزینه‌های joystick interface و joysticks را نیز فعال کنید.
پس از اتمام بخش Input device support، باید بخش Character devices را فعال کنید. در این بخش گزینه‌‌های Unix98 PTY support، Parallel printer support، /dev/agpgart support و تراشه AGP برد مادر، Direct Rendering Manager و تراشه مربوطه (اگر هیچیک نبود تنها همان گزینه Direct Rendering Manager را نگه دارید) را فعال نمایید. سپس در بخش Serial drivers باید گزینه‌های 8250/16550 and compatible serial support و 8250/16550 device discovery via ACPI namespace را فعال کنید.
در مرحله بعدی باید گزینه‌های Graphics support را که راه‌اندازهای گرافیکی هسته می‌باشد را تنظیم کنید. در این بخش گزینه‌های Support for frame buffer devices و سپس تراشه کارت گرافیکی خود را فعال نمایید.
پس از این مرحله نوبت به کارت صوتی می‌رسد. در بخش Sound گزینه Sound card support را فعال کرده و سپس در قسمت Advanced Linux Sound Architecture گزینه‌های Sequencer support، OSS API emulation، OSS Mixer API، OSS PCM API و OSS Sequencer API را فعال نمایید. (راه‌انداز صوتی پیش‌گزیده در هسته‌های سری 2.6 از OSS به ALSA تغییر کرده است و گزینه‌های OSS Emulation جهت سازگاری با برنامه‌هایی است که از این راه‌نداز استفاده می‌کرده‌اند.) سپس در بخش Generic device قسمت Generic MPU-401 UART driver را فعال کنید. برای فعال شدن راه‌انداز کارت صوتی‌تان، در قسمت PCI Devices نام/تراشه آنرا فعال کنید. (در صورتی که این بخش را فعال کردید و پس از اتمام، کامپایل و نصب هسته صدای شما کار نکرد، تنظیمات Mixer را با برنامه‌ای مانند kmix بررسی نمایید. معمولا صداها در حالت Mutt قرار می‌گیرند)
در مرحله بعدی به مبحث شیرین USB می‌رسیم. در قدم نخست Support for USB و USB device filesystem را فعال نمایید. سپس با توجه به نوع سخت‌افزاری که دارید، یکی از گزینه‌های EHCI، OHCI یا UHCI را فعال کنید (در صورتی که نمی‌دانید تراشه کنترل کننده USB شما در کدام گروه قرار دارد، از دستور lspci -v استفاده نمایید.) در صورتی که ابزارهای صوتی یا بلندگوی USB دارید، گزینه USB Audio support را فعال کنید. در صورتی که مودم شما USB است، گزینه USB Modem را فعال کنید. درصورتی که چاپگر USB دارید، گزینه USB Printer را فعال نمایید. در صورتی که از دیسک‌های همراه USB یا دوربین دیجیتال دارید، گزینه USB Mass Storage support را فعال نمایید. در صورتی که کیبورد و ماوس USB دارید، گزینه USB Human Interface Device را فعال نمایید. برخی دیگر از ابزارهای گرافیکی، شبکه، ویدئو و... نیز پشتیبانی می‌شوند که در صورتی که آنها را در سیستم خود دارید، گزینه مربوط به آنها را نیز می‌توانید فعال کنید. در صورتی که در حال حاضر هیچ ابزار USB ندارید، می‌توانید از این مرحله عبور نمایید.
در مرحله بعدی باید پشتیبانی از فایل سیستم‌های مختلف را فعال نمایید. در بخش File systems گزینه‌های Second extended fs support (برای پشتیبانی از ext2)، سپس Ext3 journaling file system support، به همراه Ext3 extended attributes، سپس ReiserFS support، سپس Quota Support (در صورتی که مایل هستید فضای دیسک مصرفی هر کاربر را محدود نمایید – مانند شبکه‌ها و سرویس‌دهنده‌های عمومی) و در آخر Kernel automounter version 4 support را فعال کنید. برای پشتیبانی از فایل سیستم‌های CD/DVD، در بخش CD-ROM/DVD filesystems، گزینه‌های ISO 9660 و Microsoft Joliet و UDF را فعال نمایید. برای پشتیبانی از پارتیشن‌های DOS/Fat32 و NTFS، گزینه‌های مربوطه را در بخش DOS/FAT/NT filesystems فعال کنید.
سپس در قسمت Pseudo filesystems گزینه‌های proc filesystem support، dev/pts filesystem for unix98 و virtual memory filesystem support را فعال کنید. (این گزینه را فراموش نکنید!) در صورتی که سیستم شما در محیط شبکه قرار دارد و مایل هستید تا به درایوهای شبکه به اشتراک گذاشته شده در سیستم‌های ویندوز و یا سرویس‌دهنده‌های لینوکس دسترسی پیدا کنید، گزینه‌های NFS filesystem support، NFS server support و SMB filesystem support را فعال نمایید. (گزینه NFS Server را در صورتی فعال نمایید که می‌خواهید از سیستم خود بعنوان یک سرویس‌دهنده NFS استفاده کنید).








قدم پنجم: ذخیره تغییرات و خروج

خسته نباشید! قدم پیشین کمی بیشتر از یک قدم شد و به یک راه طولانی بیشتر شبیه است! ببخشید. در این مرحله تنظیمات هسته به پایان رسیده و اکنون باید از برنامه‌های رابط خارج شوید. هنگام خروج از شما درخواست خواهد شد تا تغییرات را ذخیره نمایید. حتما این کار را انجام دهید و اگرنه هر چه را که تاکنون رشته‌اید، پنبه خواهید کرد!









قدم ششم: کامپایل کردن هسته

در این مرحله باید کد منبع هسته را که اکنون تنظیم و آماده شده است، کامپایل نمایید تا به کدهای اجرایی قابل استفاده برای سیستم تبدیل شوند. برای انجام این کار، دستورات زیر را انجام دهید:





# cd /usr/src/linux

# make bzImage && make modules && make modules_install





در صورتی که از یکی از توزیع‌های مبتنی بر دبیان استفاده می‌کنید (مانند دبیان، لیبرانت،蚩ناپیکس، Mepis و...) به سادگی خواهید توانست با وارد کردن دستور زیر بجای دستورات بالا، یک بسته دبیان حاوی هسته جدید و ماژول‌های مربوطه ایجاد نموده و آنرا برای استفاده‌های آتی نیز نگهداری نمایید و در صورتی که نیاز پیدا کردید تا سیستم را مجددا نصب نمایید، تنها همین بسته را برای ارتقاء به هسته جدید نصب خواهید کرد (چه خوب!):






# cd /usr/src/linux

# make-kpkg kernel_image modules_image





مدت زمان لازم جهت عملیات کامپایل هسته کاملا بستگی به قدرت سیستم شما و گزینه‌های انتخاب شده دارد. در سیستم من که یک اتلون تاندربرد 1333 مگاهرتزی است، این عملیات حدود ۸ الی ۹ دقیقه طول می‌کشد. در سیستم‌های قدیمی ممکن است این عملیات ساعت‌ها به طول انجامد. بنابراین کافی است که کمی حوصله به خرج دهید. تصویر زیر هسته را هنگام کامپایل شدن نشان می‌دهد:





















قدم هفتم: نصب هسته

پس از اینکه کامپایل هسته با موفقیت به اتمام رسید، سیستم آماده دریافت فرمان از شما می‌باشد. در حالتی که هسته را با دستور make کامپایل کرده‌اید، برای نصب آن در محل بوت دستورات زیر را وارد نمایید:

# cd /usr/src/linux
# mv arch/i386/boot/bzImage /boot/vmlinuz-2.6.3
# mv System.map /boot/System.map-2.6.3

در حالتی که هسته را با دستور make-kpkg کامپایل کرده‌اید، دستور زیر را برای نصب آن وارد نمایید. توجه داشته باشید در صورتی که از lilo به عنوان مدیر بوت سیستم استفاده نمی‌کنید، سوال پیکربندی lilo را با پاسخ NO و در غیر اینصورت با Yes پاسخ دهید:

# cd /usr/src/
# dpkg -i kernel-image-2.6.3_Custom_i386.deb

البته ممکن است نام بسته دبیان ایجاد شده روی سیستم‌تان با نام فوق متفاوت باشد. بنابراین قبل از صدور این دستور این امر را بررسی کنید. (این کار را می‌توانید با یک دستور ساده ls /usr/src انجام دهید. البته با تایپ dpkg -i kernel و فشار دادن کلید tab نام فایل بطور خودکار تکمیل خواهد شد.)


قدم هشتم: پیکربندی مدیر بوت

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

# vi /boot/grub/menu.lst (in Redhat: /boot/grub/grub.conf)

فایل پیکربندی گراب در ویرایشگر vi باز خواهد شد. احتمالا اکنون خطی همانند خط زیر (البته ممکن است در سیستم شما دارای مقادیر متفاوتی باشد) در این فایل وجود دارد:

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

شما می‌توانید به راحتی این بخش را انتخاب و با کلیک راست ماوس در حافظه کپی نمایید. سپس کلید Insert را فشار داده و اشاره گر را به یک خط خالی در زیر آن انتقال داده و سپس با کلیک راست متن قبلی را Paste کرده و مطابق زیر ویرایش نمایید:

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

پس از اتمام ویرایش، کلید Esc را فشار داده و دستور wq را تایپ نمایید تا تغییرات ذخیره شده و از ویرایشگر vi خارج شوید. پیکربندی مدیر بوت نیز به پایان رسید. اکنون به پایان کار نصب و پیکربندی هسته رسیده‌اید. برای دیدن نتیجه کار خود کافی است که سیستم را بوت کرده و از مدیر بوت گزینه‌ای را که اکنون اضافه نمودید انتخاب کنید. معمولا باید همه چیز به خوبی پیش رود. در صورتی که به خطایی برخورد کردید، مجددا پیکربندی و تنظیمات خود را بررسی نمایید. معمولا با چند بار سعی مجدد مشکلاتتان حل خواهند شد.
زینب بازدید : 0 دوشنبه 22 مهر 1398 زمان : ۰۸:۰۵ نظرات (0)
. روش های نصب برنامه ها در لینوکس [1]
با توجه به گستردگی توزیع های لینوکس مسلما روش های نصب نرم افزار ها نیز متفاوت خواهد بود . در ابتدا به تعریف مفهون کد منبع یا Source Code می پردازم . یک نرم افزار در ابتدا فقط یک سری حروف و کلمات است که یک برنامه نویس آن ها را در محیطی خاص و یایک ویرایشگر متن معمولی می نویسد این نوشته ها " سورس کد" برنامه یا " کد منبع" برنامه نام دارند. این کد ها را می توانید در یک ویرایشگر متن معمولی وارسی کنید ،‌اما برای کامپیوتر معنایی ندارند ! چرا که کامپیوتر شما فقط زبان 0 و 1 را متوجه می شود.بنابراین باید این برنامه ی نوشته شده را به زبان کامپیوتر ترجمه کنیم ،‌ این کار ترجمه را " کامپایل " می گویند.درواقع شما کدمنبع را کامپایل می کنید تا کامپیوتر شما آن رادرک کند. به فایل حاصل از کامپایل فایل "باینری" می گویند. دلیل این نام گذاری این است که فایل حاصل از کامپایل فقط برمبنای دو (Base2) می باشد ،‌یعنی فقط شامل صفر و یک است. بنابراین وقتی می گوییم برنامه ای بازمتن (OpenSourec )است این بدان معناست که کد های منبع آن در اختیار دیگران قرار دارد و در برنام های CloseSource یا سورس بسته این کد های منبع در اختیار شما قرار نمی گیرد وفقط فایل های باینری در اختیار شما قرار می گیرد.

یکی از محبوب ترین راه های نصب نرم افزار در لینوکس نصب از کد منبع یا به اصلاح درست تر کامپایل از سورس کد برنامه است.در ویندوز مایکروسافت شما همواره بسته های باینری را در سیستم خودنصب می کردید ،‌این بسته های باینری که از پیش کامپایل شده اند بر اساس یک استاندارد کلی که سیستم عامل (ویندوز) دارد ،‌ کامپایل شده اند بنابر این شما نمی توانید به راحتی برروی آن ها مانور دهید ،‌اما در لینوکس قضیه کمی متفاوت است ،‌شما می توانید کد منبع را بگیرید و از اول روی سیستم خودتان کامپایل کنید .شاید بپرسید این چه مزیتی دارد؟ زمانی که شما برنامه ای را در سیستم خودتان شخصا کامپایل می کنید می توانید آن را بر اساس نیاز های خودتان تنظیم کنید.(در اصطلاح صحیح تر می توانید نرم افزار راباتوجه به شرایط خود بهینه سازی -optimization-کنید.) حسن این کار در آن است که برنامه ی نصب شده در سیستم شما کاملابا سیستم شما خوانایی دارد و اگر شما به امکاناتی که برنامه ارائه می دهد نیازی ندارید می توانید به سادگی آن امکانات را زمان کامپایل ندیده بگیرید.

بنابراین اولین روش نصب برنامه کامپایل از سورس کد بود ،‌این روش تا حدودی وقت گیر است و نیاز به تجربه دارد تابتوانید به بهترین روش ممکن برنامه ی خود را کامپایل کنید ،‌البته گاهی راهی جز کامپایل نرم افزار ندارید .برای همین توزیع کنندگان لینوکس به فکر ایجاد روشی کاربر پسندتر افتادند تا کاربران بتوانند در زمانی کوتاه تر و با روشی ساده تر برنامه های خود را نصب کنند ، این دیدگاه باعث بوجود آمدن بسته های نرم افزاری RPM و DEB شد . این بسته ها اغلب همانند بسته های نرم افزاری ویندوز از قبل کامپایل شده اند (البته این فقط یک مقایسه ی ناشیانهات و در عمل با بسته های ویندوزی بسیار متفاوتند) و شما از طریق یک مدیر بسته می توانید این بسته ها را مدیریت کنید. مدیر بسته ها در لینوکس تقریبا همان برنامه ی Add/Remove در کنترل پانل ویندوز است که با توجه به توزیع و نوع بسته ی نرم افزاری بسیار مختلف است. البته باید توجه داسته باشید که این بسته ها هم می توانند حاوی سورس کد نیز باشند. نکته ی قابل توجه دیگر این است که این بسته ها می توانند شامل فایل های کمکی (Help) و مستندات دیگر مربوط به برنامه باشند.

شما برنامه ی خود رااز هر راهی که نصب کنید در اغلب موارد فایل های آن در مسیر های usr/bin/ و bin/ و usr/sbin/ قرار می گیرند و فایل های مربوط به پیکره بندی آن در دایرکتوری etc/ قرار می گیرند. بنابراین ما در لینوکس چیز به نام رجیستری نداریم و تنظیمات مربوط به برنامه ها در فایل ها ذخیره می شوند که در بیشتر موارد این فایل هافایل های هستند که به راحتی قابل خواندن و ویرایش کردن با ویرایشگر های معمولی متن می باشند.

بسته ها! چرا به برنامه ها بسته (Pakage) میگویند؟ اغلب برنامه ها امروزه شامل فایل های بسیاری می باشند ،‌از جمله فایل های باینری ،‌فایل های پیکره بندی و فایل های مربوط به راهنما و روش نصب و مجوز های برنامه که به Documentation یا مستندات معروف هستند. بنابراین می بینیم یک برنامه همراه خود تعداد بسیاری فایل به همراه دارد ،‌تمام این فایل ها به صورت فشرده در یک بسته قار می گیرند ،‌خواه این یک بسته ی RPM باشد یا یک بسته ی DEB یا حتی یک بسته ی Tarball باشد. برای آشنایی هرچه بیشتر شما با انواع بسته های نرم افزاری ما در این مقاله به سه نمونه ی عمده ی بسته های نرم افزاری لینوکس اشاره می کنیم ،‌باید توجه داشته باشید که در این مقاله قصد آموزش کار با بسته های نرم افزاری رانداریم و تنها به معرفی انواع بسته ها بسنده خواهیم کرد.

II. بسته های RPM
یکی از معروف ترین بسته های نرم افزاری لینوکس بسته های RPM میباشد.RPM مخفف RedHat Pakage Manager می باشد ،‌همان طور که از اسم آن بر می آید ابداع شرکت RedHat Linux می باشد اما در توزیع های مختلفی از این بسته ها استفاده می شودو جالب تر این که از این بسته ها می توانید در سیستم های شبه یونیکس دیگر مانند FreeBSD و SunSolaries نیز قابل استفاده هستند.بسته های RPM با پسوند rpm شناخته می شوند .
از جمله توزیع هایی که از بسته های rpm استفاده می کنند می توان لینوکس Mandrake وLinuxPCC و لینوکس YellowDog را که بر پایه ی ردهت است و برای سیستم های با پردازنده ی PowerPC طراحی شده و نیز توزیع SuSE را نام برد.البته توزیع های دیگری نیز از این بسته ها استفاده می کنند .برای مدیریت بسته های rpm شما می توانید از مدیر بسته های rpm استفاده کنید. اگر می خواهید در خط فرمان و براساس محیط متنی کار کنید می توانید از دستور rpm برای مدیریت استفاده کنید. اما اگر می خواهید از محیط گرافیکی برای مدیریت استفاده کنید با توجه به توزیع شما این ابزار متفاوت است. کاربران SuSE با ابزار YaST می توانند این کار را بکنند ،‌کاربران Mandrake می توانند با rpmdrake بسته هایشان رامدیریت کنند. البته باید توجه داشته باشید که SuSE و Mandrake گاهی از بسته های rpm مخصوص خود استفاده می کنند که جز آن توزیع در توزیع دیگری قابل استفاده نمی باشد.

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

pakagename-a.b.c-x.arch.rpm

در این نام گذاری همان طور که معلوم است از سمت چپ اولین بخش نام نرم افزار اصلی ماست مثلا xchat یا gaim اما سایر اجزا :
.a.b.c نسخه ینرم افزاری است که دردست دارید، این شماره نسخه را اغلب نویسنده ی برنامه تعیین می کند مثلا 2.2.6 یا 5.6.7a.
x این شاره به شماره ی build number یا relase number معروف است.(شماره ی انتشار !)این شماره در واقع نشان دهنده ی تغییرات کوچکیست که اغلب هم کار نویسنده ی برنامه نیست مثلا یک وصله یا Patch برای رفع یک مشکل (bug) یا یا تغییر یک فایل نصب یا اضافه شدن یک فایل راهنما یا help یا Documentation به فایل .
arch این بخش از نام مربوط می شود به معماری پردازنده ای که از آن استفاده می کنید. بسته های RPM برروی معماری های مختلفی از پردازنده قابل اجراست ،‌از جمله x86 یا SPARC یا Alpha نیزIA-64 بنابر این لازم است که نوع پردازنده ی مورد پشتیبانی را در نام فایل بگنجانیم تا در آینده بتوانیم به راحتی از آن برای پردازنده ی خودمان استفاده کنیم.برای پردازنده های x86 این جا i386 نوشته می شود. این پردازنده ها باقی مانده ی نسل 80386 هستند که شرکت اینتل آن ها را تولید می کند ،‌البته باید خاطر نشان کنم که در حال حاضر وقتی می گوییم x86 منظور ما هر پردازنده ای سازگار با این معماری است از جمله AMD مدل های Duron و Athlon و یا پنتیوم های Pro ,I,II,II,IVو نیز پنتیوم MMX ویا پردازنده های سازگار با x86شرکت Transmeta یا Cyrix!! بنابراین امروزه فقط این اینتل نیست که پردازنده های خانواده ی x86 را تولید می کند. اگر بسته یRPM شما برای پنتیوم بهینه سازی شده باشداین مقدار 1586 و i686 خواهد بود. البته RPMبرای پردازنده های دیگر نیز وجود دارد از جمله PowerPC که با ppc مشخص می شود. نکته ی قابل توجه این است که اگر بسته ی rpm شما محتوی فایل متنی یا Documentation یا هر چیز دیگری باشد که به پردازنده (CPU) بستگی ندارد این مقدار noarch خواهد بود.
برای روشن تر شدن این نام گذاری به نام xbill-2.1.3-85.i386.rpm دقت کنید. xbillنام این نرم افزار است که یک بازی لینوکس است.که بسته ی ما buildشماره ی 85 نسخه ی 2.13 آن است که برای معماری x86 طراحی شده است.
III. بسته های DEB
بسته ی دیگری که بسیار استفاده می شود ،‌بسته ی دبیان یا DEB می باشد ،‌ این بسته ها نیز مانند بسته های RPM هستند و کار کردن با آن ها مانند کار با RPM ها ساده است. این بسته ها را دبیان توسعه داده است و هم اکنون توزیع های فراوانی از لیبرانت تا DammnSmallLinux از این بسته ها استفاده می کنند ،‌در واقع هر توزیع مبتنی بر دبیان از این بسته ها استفاده می کند.بسته های rpm و deb را نمی توان به جای یکدیگر استفاده کرد اما می توان آ نها را به یکدیگر تبدیل کرد ،‌البته این تبدیل نیز همیشه موففقیت آمیز نخواهد بود.بسته های دبیان نیز مانند rpm برای معماریهای متفاوتی نوشته شده است .برای مدیریت بسته های دبیان در خط فرمان از ابزار dpkg استفاده می شود dpkg بسیار شبیه RedHat pakage Manager یا rpm است .(منظور ابزار rpm است که برای مدیریت بسته های RPM استفاده می شود.). البته در دبیان و توزیع های مبتنی بر دبیان ابزار دیگری نیز برای مدیریت بسته های نرم افزاری در خط فرمان وجودداردکه کار با بسته های نرم افزاری را بسیار راحت تر و شیرین تر می کند ،‌این ابزار APT نام دارد.APt مخفف Advanced Pakage Tool می باشد. (تلفظ کنید اپت /æpt/) یکی از خواص بستههای RPM وDEB این است که شما نی توانید به راحتی و از طریق همین ابزار های مدیریت بسته بسته های خودرا در چند ثانیه یاحداکثر چند دقیقه به روز بکنید و لی اگر برنامه ای را از کد منبع آن کامپایل کنید برای هر بار به روز رسانی مجبورید برنامه را از ابتدا کامپایل کنید.البته برای مدیریت بسته های نرم افزاری در دبیان نیز برنامه های مختلفی وجوددارد مانند synaptic ویا برای مدیریت بسته هادر خط فرمان اما کمی راحت تر مانند dselect . نام گذاری بسته های دبیان نیز مانند RPM است با کمی تفاوت در ظاهر که برای طولانی نشدن بحث به آن اشاره نمی کنیم.

IV.بسته های Tarball
در حقیقت بسته های Tarball چیزی جز بسته های آرشیو شده نیستند ، این بسته ها را می توانیددر هر توزیعی استفاده کنید و مانند RPM و DEB وابسته به توزیع نیستند. بسته های Tarball همان بسته هایی هستند که با ابزار tar در خط فرمان تولید می شوندو توسط یکی از برنامه های compres یا gzip یا bzip2 فشرده شده اند. این بسته های فشرده شده فقط حاوی فایل ها هستند و بعد از باز کردن آن ها می توان در باره ی روش نصب آن ها تصمیم گرفت. بسته های tarball می توانند مانند RPM و Debian حاوی سورس کد ،‌ فایل های باینری و همچنین مستندات برنامه باشدالبته در اغلب موارد این بسته ا با gzip فشرده می شوند که پسوند حاصل tar.gz. می شود و البته برای این که حجم اطلاعات رد و دلی در اینترنت کمتر شود از فرمت tar.bz2. استفاده می شود که بسته های آرشیو tar را با برنامه ی bzip2 فشرده کرده اند .(فایل هایی که با Bzip2 فشرده شده اند از فایل هایی که با gzip فشرده شده اند حجم کم تری دارند چرا که الگوریتم فشرده سازی در این دو متفاوت است.)


V.اطلاعات ضروری در زمان نصب برنامه

۱.وابستگی های برنامه (Dependencies)

وابستگی های نرم افزاری یا همان Dependencies در واقع آن برنامه هاو نیاز هایی است که باید داشته باشید تا برنامه ی شما بتواندکار کند!! درواقع شما برای نصب یک برنامه اغلب به یک پیش نیاز احتیاج دارید ،‌ مثلا برای بسیاری از برنامه های لینوکس لازم است تا شما کتابخانه های C را داشته باشید. در واقع وقتی می گوییم یک برنامه فلان وابستگی ها را می خواهد یعنی اولا بدون آن نیازمندی ها نمی تواند کار کند و در ثانی می توان نتیجه گرفت که آن برنامه از برنامههایی که در اصطلاح وابستگی نام دارند برای کار کردن استفاده می کند.

توجه داشته باشید که مفهوم پیشنهادی یا Recommended با وابستگی متفاوت است ،‌اگر وابستگی ها را نصب نکنید برنامه ی شما کار نخواهد کرد اما اگر پیشنهادی ها را نصب نکنید برنامه ی شما کار خواهد کرد. پس این Recommended ها به چه کاری می آیند؟ اگر شما این Recommended هارا نصب کنید برنامه ی شما بهتر کار می کنه یا بهتر بگویم بازدهی برنامه ی شما بیشتر خواهدشد.

یکی از خواص بسته های Debian وrpm هوشمندی آن ها نصبت به شناخت این پیش نیاز هاست ،‌در واقع وقتی شمایک بسته ی Debian را نصب می کنید خودش به دنبال پیش نیاز ها می گردد و پیش نیاز ها را نیز برای شما نصب می کند.البته بسته های RPM این هوشمندی راندارند اما برنامه های مدیریت بسته های rpm این کار را می کنند یعنی زمانی که شما از دستور rpm برای نصب استفاده می کنید این برنامه است که تشخیص می دهد ثبل از نصب باید چه برنامه های دیگری نصب شود و به شمااعلام می کند که این بسته ا را نیز نصب کنیدو یا خودش نصب می کند. اما بسته های دبیان در ذات خود این قابلیت را دارا هستند که پیش نیاز هایشان را تشخیص بدهند و لی بسته های Tarball فاقد این هوشمندی هستند و باید خودتان با مطالعه ی فایل های README و INSATLL ویا دیگر راهنماهای موجود در بسته یا سایت آن پیش نیاز ها را یافته و آن ها را نصب کنید.

۲.کتابخانه ها(Libraries)

کتابخانه ها همان DLL هایی هستند که شما در ویندوز می شناختید.(که اغلب گم شده بودند یا به دلیل خرابیشان برنامها کار نمی کرد!!) در لینوکس نیز کتابخانه ها همان مسئولیت را به عهده دارند اما پسوند خاصی ندارند چرا که هر زبان از کتابخانه های خوداستفاده می کند.خوب این مسئولیت کتابخانه ها چیست؟ کتابخانه ها یکسری فایل هستند که شامل یکسری توابع و روتین برای برنامه می باشند ،‌ شما می توانید یک فایل کتابخانه درست کنید و تمام توابعی که در برنامه ی شما استفاده می شود را در آن قرار دهید و از برنامه ی خود بخواهید که این توابع را از فایل مذکور اجرا کند،‌این کار چه فایده ای دارد؟ فکر کنید همکار شمانیز می خواهد برنامه ای بنویسید او می تواند از ابتدا شروع کند و تمام توابع رادر برنامه ی خود تعریف کند ،‌این کار باعث صرف وقت بیشتر و خستگی بیشتر و نیز حجم بیشتر فایل ها می شود.راه حل هوشمندانه این است که توابع مشترک برنامه ها را در یک فایل کتابخانه ای قرار دهید و هر کسی که به آن توابع احتیاج داشت زمان اجرای برنامه این توابع را فرابخواند. به این ترتیب لازم نیست که شما هر بار تمام توابع را تعریف کنید کافیست یکبار این توابع در کتابخانه ای نوشته شوند و کاربران این کتابخانه ا را در سیستم خودنصب کنند ،‌حالا شما و همارانتان و دیگران بدون دغدغه ی حجم زیاد و تعریف مجدد توابع به نوشتن برنامه مشغول می شوید.(حالا متوجه شدید چرا به این برنامه ها کتابخانه می گویند؟)

از جمله معروف ترین کتابخانه ا می توان به کتابخانه های C اشاره کرد که با نام libc و در توزیع های مدرن تر به نام glibc وجود دارند و یا کتابخانه ی معروف +GTK که شما یک بار نصب می کنید و تمام برنامه های محیط گرافیکی گنوم از آن استفاده می کنند.


۳.ابزار های توسعه(Development Tools)

اگر شما تصمیم به کامپایل یک برنامه گرفته اید باید فایل های کتبخانه ای و ابزار های توسعه ی مربوط به آن برنامه را داشته باشید. مثلا اگر برنامه ای به زبان C دارید باید یک کامپایلر برای C داشته باشید و کتابخانه های مربوط به آن را نیز باید در سیستمتان داشته باشید. اگر شما نیازی به کامپایل برنامه ها ندارید لازم نیست تا ابزار های توسعه رانیز نصب کنید. درواقع وقتی شما یک برنامه را کامپایل می کنید مانند این است که شما برنامه نویسید و برنامه رانوشتیدو کد آن راآماده کردید و می خواهید آن را به زبان ماشین ترجمه کنید،‌خوب برای این کار به ابزاری نیاز دارید به نام Development tools که بوسیله ی آن برنامه ی خودرا کامپایل کنید. برنامه ی معروف gcc جزو این ابزار هاست ،‌ gcc که یک کامپایلر است و تحت مجوز GNU/GPL نیز منتشر سده است مجموعه ای است از کامپایلر های زبان های مختلف،‌ البته این اسم آن نیز معلوم است GNU Compiler Collection!!!!

۴.پایگاه داده ی بسته های نصب شده
پایگاه داده ی بسته های نصب شده یا به زبان ساده تر Installed package Database !! محلی است که اطلاعات بسته های نصب شده ی سیستم در آن قرار دارد. شاید شما بخواهیدبدانید که فایل کتابخانه ای X یا Y آیا نصب شده است یا نه؟ یا می خواهید بدانی چه نسخه ای از برنامه در سیستم شما موجود است ،‌یا حتی می خواهید بدانید برای برنامه ی شما چه نیاز مندی هایی لازم است؟ تمام این اطلاعات و اطلاعات دیگر در یک پایگاه داده ذخیره می شود.برای بسته های Debian این مسیر اغلب در مسیر var/lib/dpkg/ است و برای RPM این مسیر var/lib/rpm/ است ،‌اما برای Tarball هیچ پایگاهی وجود ندارد!! البته توزیع SlackWare خودش توسط برنامه ای به نام slackware Package Tool یا pkgtool برای بسته های Tarball ای که از طریق این برنامه نصب می شوند یک پایگاه داده می سازد اما این فقط مختص توزیع است و این امکان در تمام توزیع ها موجود نیست.به همین دلیل است که اغلب بسته های Slackware را جزو بسته های هوشمند به شمار نمی آورند چرا که تنها یک آرشیو فشرده است و حتی نمی تواند وابستگی ها یا Dependency های خود را پیدا کند.


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


[1].مخاطبین محترم باید توجه داشته باشند که این مقاله برای کابران ناآشنا به لینوکس و مبتدی نوشته شده است ،‌بنابراین اگر گاهی در مقایسات اغراقی شده است فقط برای ارائه ی مطلب به زبانی ساده تر بوده
زینب بازدید : 6 دوشنبه 28 مرداد 1398 زمان : ۲۲:۴۰ نظرات (0)
VLAN مدیریت آسان تر ، امنیت بیشتر ،کارایی و بهره وری افزون تری را به شبکه و مدیریت ما اعطا می کند.دلیل و توجیه استفاده از VLAN نسبت به نیاز و طراحی شبکه متغیر است .VLAN در تعریف ساده تقسیم شبکه موجود به چندین شبکه مجزا از هم یا زیر شبکه می باشد.
برای اطلاعات بیشتر در مورد نحوه کانفیگ و راه اندازی VLAN در سوییچ های سیسکو به لینک زیر مراجعه کنید:
VLAN چیست و چطور از آن بهره گیریم؟
گاهی نیاز است که از طریق یک سرور به چندیدن VLAN دسترسی داشته باشیم یا به آنها سرویس دهیم.بدین منظور در این آموزش شیوه نصب و راه اندازی VLAN را در لینوکس دنبال می کنیم.

* نصب در ردهت ، فدورا و CentOS

ابتدا نصب بودن بسته VConfig که برای راه اندازی VLAN مورد نیاز است را بررسی کنید:

[[email protected]~]# rpm -qa | grep vconfig
vconfig-1.9-3

در صورتیکه در خروجی بسته vconfig را مشاهده نکردید،برای نصب بدین ترتیب عمل کنید:

yum install vconfig

* راه اندازی VLAN

تنظیمات VLAN را می توان به دو صورت موقت و دائم انجام داد.
تنظیمات موقت :
فرض کنید می خواهید به VLAN شماره 10 از طریق اینترفیس eth0 دسترسی داشته باشید،
مرحله اول : VLAN را ایجاد کنید

vconfig add eth0 10

مرحله دوم : اینترفیس را ایجاد و از رنج VLAN 10 یک آدرس IP ست کنید.

ifconfig eth0.10 192.168.100.1 netmask 255.255.255.0 broadcast 192.168.100.255 up

تنظیمات دائم :
مرحله اول : ایجاد فایل تنظیمات اینترفیس

touch /etc/sysconfig/network-scripts/ifcfg-eth0.10

مرحله دوم : فایل ifcfg-eth0.10 را به صورت زیر کامل کنید:
DEVICE=eth0.100
IPADDR=192.168.100.1
NETMASK=255.255.255.0
VLAN=yes
ONBOOT=yes
BOOTPROTO=none
برای وارد شدن به فایل و قرار دادن تنظیمات می توانید از یک ادیتور مانند nano بدین شکل استفاده کنید :

nano /etc/sysconfig/network-scripts/ifcfg-eth0.10

نکته :
توجه داشته باشید که اینترفیس eth0 حتما باید up باشد.
می توانید برای این منظور اینترفیس را بدین ترتیب تنظیم کنید :

nano /etc/sysconfig/network-scripts/ifcfg-eth0

محتویات فایل :
DEVICE=eth0
ONBOOT=no
TYPE=Ethernet
مرحله سوم :
سرویس network را شروع مجدد کنید :

[[email protected] ~]# service network restart
Shutting down interface eth0.8: Removed VLAN -:eth0.10:-
[ OK ]
Shutting down interface eth0: [ OK ]
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ]
Bringing up interface eth0: [ OK ]
Bringing up interface eth0.10: Added VLAN with VID == 10 to IF -:eth0:-
[ OK ]
[[email protected] ~]#

* نصب در دبین و اوبونتو

ابتدا نصب بودن بسته vlan را بررسی کنید:

PersianAdmins:~# dpkg -l | grep vlan
ii vlan 1.9-3 user mode programs to enable VLANs on your e

در صورتیکه در خروجی بسته vlan را مشاهده نکردید،برای نصب بدین ترتیب عمل کنید:

apt-get install vlan

* راه اندازی VLAN

تنظیمات VLAN را می توان به دو صورت موقت و دائم انجام داد.
تنظیمات موقت :
فرض کنید می خواهید به VLAN شماره 10 از طریق اینترفیس eth0 دسترسی داشته باشید،
مرحله اول : VLAN را ایجاد کنید

vconfig add eth0 10

مرحله دوم : اینترفیس را ایجاد و از رنج VLAN 10 یک آدرس IP ست کنید.

ifconfig eth0.10 192.168.100.1 netmask 255.255.255.0 broadcast 192.168.100.255 up

تنظیمات دائم :
در فایل etc/network/interfaces/ دستورات زیر را اضافه کنید :
# VLAN 10
auto vlan10
iface vlan10 inet static
address 192.168.100.1
netmask 255.255.255.0
network 192.168.100.0
broadcast 192.168.100.255
vlan_raw_device eth0
برای وارد شدن به فایل و قرار دادن تنظیمات می توانید از یک ادیتور مانند nano بدین شکل استفاده کنید :

nano /etc/network/interfaces

و در آخرسرویس networking را شروع مجدد کنید :

PersianAdmins:~# /etc/init.d/networking restart
Reconfiguring network interfaces...Removed VLAN -:vlan10:-
if-up.d/mountnfs[eth0]: waiting for interface vlan10 before doing NFS mounts (warning).
Set name-type for VLAN subsystem. Should be visible in /proc/net/vlan/config
Added VLAN with VID == 10 to IF -:eth0:-
done.
PersianAdmins:~#

* گزارش گیری

مشاهده VLAN های ساخته شده :

PersianAdmins:~# cat /proc/net/vlan/config
VLAN Dev name | VLAN ID
Name-Type: VLAN_NAME_TYPE_PLUS_VID_NO_PAD
vlan10 | 10 | eth0
PersianAdmins:~#

مشاهده اطلاعات اینترفیس VLAN از قبیل مقدار بسته ها و دیتاهای ورودی و خروجی :

PersianAdmins:~# cat /proc/net/vlan/vlan10
vlan10 VID: 10 REORDER_HDR: 1 dev->priv_flags: 1
total frames received 0
total bytes received 0
Broadcast/Multicast Rcvd 0
total frames transmitted 6
total bytes transmitted 492
total headroom inc 0
total encap on xmit 6
Device: eth0
INGRESS priority mappings: 0:0 1:0 2:0 3:0 4:0 5:0 6:0 7:0
EGRESSS priority Mappings:
PersianAdmins:~#

تنظیمات فوق در CentOS 5.5 و دبین 5 تست شده است.

* راه اندازی InterVLAN Routing

بعد از ساخت VLAN ها برای راه اندازی InterVLAN Routing کافیست ip_forwarding را فعال کنید،برای بررسی این موضوع دستور زیر را اجرا کنید :

cat /proc/sys/net/ipv4/ip_forward

باید جواب 1 باشد ،در غیر اینصورت دستور زیر را در ترمینال وارد کنید :

echo 1 > /proc/sys/net/ipv4/ip_forward

دستور فوق را باید در etc/rc.local/ هم قرار دهید.
روش دوم فعال ip_forward :
در فایل etc/sysctl.conf/ خط net.ipv4.ip_forward=1 را قرار دهید و دستور sysctl -p را اجرا کنید.

* بررسی فعال بودن 802.1q در کرنل :

[[email protected] ~]# lsmod | grep 802
8021q 25033 0
[[email protected] ~]#

اگر خروجی وجود نداشت دستور زیر را اجرا کنید :

modprobe 8021q

* منابع مورد استفاده :

https://wiki.ubuntu.com
FedoraProject
FrontPage - Debian Wiki
نگارنده : رضا بهروزی
زینب بازدید : 7 جمعه 25 مرداد 1398 زمان : ۰۷:۱۵ نظرات (0)


Hairpin NAT چیست؟

برای درک این مطلب ابتدا Masquerade یا همان src-Nat را بیاد آورید Masquerade عمل NATی میباشد که برای ترجمه آیپی های شبکه داخلی ۱۹۲.۱۶۸.۱.۰/۲۴ به آیپی های شبکه خارجی ۱.۱.۱.۱ که برای ایجاد دسترسی اینترنت برای کاربران داخلی بکار میرود. دوم PortForward یا همان Dst-Nat که برای ایجاد دسترسی از شبکه ای خارجی ۲.۲.۲.۲ به یک آیپی داخلی ۱۹۲.۱۶۸.۱.۲
کد: /ip firewall nat add chain=dstnat dst-address=1.1.1.1 protocol=tcp dst-port=80 action=dst-nat to-address=192.168.1.2 add chain=srcnat out-interface=WAN action=masquerade
در مرحله اول پکت با مبدا ۲.۲.۲.۲ و مقصد ۱.۱.۱.۱ (آیپی روتر)
در مرحله دوم پکت با مبدا ۲.۲.۲.۲ و مقصد ۱۹۲.۱۶۸.۱.۲ (آیپی سرور – در بین مرحله اول و دوم PortForward انجام گرفته است)NAT
درمرحله سوم پکت با مبدا ۱۹۲.۱۶۸.۱.۲ و مقصد ۲.۲.۲.۲
در مرحله چهارم پکت با مبدا ۱.۱.۱.۱ و مقصد ۲.۲.۲.۲ (در بین مرحله سوم و چهارم Masquerade انجام گرفته است )NAT

مشکل

درصورتی کاربران شما از طریق شبکه داخلی به ۱.۱.۱.۱ متصل شوند مشکل زیر به وجود می آید

در مرحله اول پکت با مبدا ۱۹۲.۱۶۸.۱.۱۰ و مقصد ۱.۱.۱.۱ (آیپی روتر)
در مرحله دوم پکت با مبدا ۱۹۲.۱۶۸.۱.۱۰ و مقصد ۱۹۲.۱۶۸.۱.۲ (آیپی سرور – در بین مرحله اول و دوم PortForward انجام گرفته است)NAT
درمرحله سوم پکت با مبدا ۱۹۲.۱۶۸.۱.۲ و مقصد ۱۹۲.۱۶۸.۱.۱۰
در اینجا کلاینت انتظار دارد از آیپی ۱.۱.۱.۱ جواب بگیرد ولی جواب دریافتی از ۱۹۲.۱۶۸.۱.۲ میباشد
در این حالت Masquerade انجام نشده و پکت اولیه که مقصدش ۱.۱.۱.۱ بوده با مبدا ۱۹۲.۱۶۸.۱.۲ جواب داده میشود. در این صورت این پکت نامعتبر (invalid) بوده و از دور خارج میشود.
راه حل اضافه کردن یک NAT برای زمانی که کلاینت و سرور در یک ساب نت (شبکه) باشند
برای رفع مشکل از روش زیر استفاده میشود
کد: /ip firewall nat add chain=srcnat src-address=192.168.1.0/24 dst-address=192.168.1.2 protocol=tcp dst-port=80 out-interface=LAN action=masquerade
در مرحله اول پکت با مبدا ۱۹۲.۱۶۸.۱.۱۰ و مقصد ۱.۱.۱.۱ (آیپی روتر)
در مرحله دوم پکت با مبدا ۱۹۲.۱۶۸.۱.۱۰ و مقصد ۱۹۲.۱۶۸.۱.۲ (آیپی سرور – در بین مرحله اول و دوم PortForward انجام گرفته است)NAT
درمرحله سوم پکت با مبدا ۱۹۲.۱۶۸.۱.۲ و مقصد ۱۹۲.۱۶۸.۱.۱
در مرحله چهارم پکت با مبدا ۱.۱.۱.۱ و مقصد ۱۹۲.۱۶۸.۱.۱۰ (در بین مرحله سوم و چهارم Masquerade انجام گرفته است )NAT
زینب بازدید : 18 يكشنبه 12 اسفند 1397 زمان : ۰۷:۱۰ نظرات (0)
NTFS در لینوکس




فایل سیستم New Technology File System یا NTFS که در ویندوزهای سری NT مایکروسافت (شامل NT, XP, 2000, 2003 Server) برای ذخیره و نگهداری اطلاعات از آن استفاده شده است، شکل متمایزی از سایر فایل سیستم های این شرکت بوده است. در این فایل سیستم از شیوه نامگذاری یونیکد حمایت می‌شود، امنیت اطلاعات در آن نسبت به فایل سیستم های FAT/FAT32 بیشتر است و از فشرده سازی و کد گذاری اطلاعات نیز پشتیبانی می شود ولی تنها بوسیله ویندوز های بخش NT مایکروسافت قابل خواندن است و شاید بزرگترین ضعف NTFS نیز همین باشد.

از بهینه سازی های انجام شده در NTFS می توان به افزایش سقف نگهداری اطلاعات اشاره کرد. در این فایل سیستم، فایل هایی به بزرگی 263 بایت قابل نگهداری است. پارتیشن ها در این فایل سیستم می توانند حداکثر 263 کلاستر 64 کیلوبایتی داشته باشند و ذخیره سازی اطلاعات تا حدود 500 تریلیون گیگابایت امکان پذیر است!

همانطور که قبلا اشاره شد، به طور عادی امکان مشاهده پارتیشن های NTFS در ویندوزهای 98/95 و DOS وجود ندارد اما در صورتی که اصرار به خرج دهید می توان با استفاده از بسته های نرم افزاری موجود در سایت www.SysInternals.comاین امکان را به سیستم عامل خود اضافه نمود.

برای تبدیل پارتیشن های FAT/FAT32 علاوه بر نرم افزارهایی همچون Partition Magic می‌توان از فرمان زیر در ویندوز استفاده نمود:
Convert : /fs:NTFS
با استفاده از برنامه Partition Magic می‌توانید عمل عکس این تبدیل را نیز انجام دهید.

برای پاک کردن پارتیشن های NTFS در ویندوز های NT/2000/XP در بخش مدیریت کامپیوتر(Computer Management) که در ابزارهای مدیریتی (Administrative Tools) در مرکز منترل قرار دارد این امکان فراهم است. برای انجام این کار در سیستم های قدیمی تر مایکروسافت می بایست از طریق محیط متنی Command Prompt وارد محیط fdisk شوید. پارتیشن های NTFS در آنجا تحت عنوان non-DOS شناخته می شوند و به سادگی قابل پاک کردن هستند.




لینوکس و NTFS




لینوکس می تواند همه نسخه های NTFS را بخواند ولی متأسفانه هنوز برای نوشتن روی این پارتیشنها روش کاملاً امنی ندارد . البته در هسته سری 2.6 این قابلیت اضافه شده ولی هنوز نهایی نشده است. در صورتی که می خواهید اطلاعات خود را بین لینوکس و ویندوز در این پارتیشنها به اشتراک بگذارید ،‌توصیه می شود بجای استفاده از درایورهایی که در لینوکس امکان نوشتن روی پارتیشنهای NTFS را فراهم می سازد ،‌ از ابزارهای استفاده کنید که امکان خواندن پارتیشنهای ext3/ext2 را در ویندوز برای شما فراهم می آورد.برای کسب اطلاعات بیشتر راجع به این درایور می توان به آدرس های زیر مراجعه کنید:

Explore2fs
ext2fsd
winext2fsd

سه بسته ذکر شده برای استفاده از ویندوزهای NT,2000,XP مناسب است .

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

Vmware

[right]

NTFS قابلیتهای بسیار گسترده ای دارد که تنها بخشی از آن توسط لینوکس حمایت می شود. لینوکس از شیوه نامگذاری unicode که در NTFS استفاده شده است حمایت می کند .همچنین از فایلهای فشرده و SPARE نیز پشتیبانی می کند ولی با شیوه کدگذاری و بطور کلی با تدابیر امنیتی ویندوز حال نمی کند!

کرنل اغلب توزیع های لینوکس به استثنای Redhat به صورت پیش فرض از NTFS پشتیبانی می کنند. این به این معناست که نیازی به تغییر Option های مربوط به پشتیبانی از فایل سیستم NTFS نخواهید داشت. در صورتی که از Radhat9 (shrike) 8(psyche) یا 7.3(valhalah) استفاده می کنید با نصب بسته‌های فراهم شده در این آدرس ،می‌توانید این قابلیت را به لینوکس خود اضافه کنید. در غیر اینصورت می بایست مجدداًکرنل را کامپایل کنید.
زینب بازدید : 30 سه شنبه 20 شهريور 1397 زمان : ۰۳:۵۰ نظرات (0)
گام یک:
تجهیزات مورد نیاز
- کابل اتصال لینوکس به گوشی موبایل ( USB )
- گوشی موبایل با قابلیت Gsm/Gprs
گام دو:
فعال کردن GPRS بروش زیر

شرکت ايرانسل از فروردين 86 اقدام به ارائه سرويس اينترنت خود براي تمام مشترکين خط ايرانسل نموده است. نرخ در نظر گرفته شده از سوي ايرانسل، جديداً به ازاي هر کيلوبايتي 5 ريال مي باشد. البته در روزهاي پنجشنبه و جمعه و ساعات 12 تا 6 هر شب به ازاي هر کيلوبايت تنها يک ريال محاسبه مي کند. با اين حساب اگر صفحه گوگل را باز کنيد و سپس از طريق آن به يک سايت معمولي منتقل شويد هزينه بسيار اندکي (بين 5 تا 10 تومان يعني کمتر از يک اس ام اس) برايتان محاسبه مي گردد. در اينجا قصد داريم طريقه تنظيم گوشي براي استفاده از اينترنت را توضيح دهيم. پس با ما همراه باشيد:
به طور کلي دو روش براي آماده کردن گوشيتان جهت استفاده از اينترنت ايرانسل وجود دارد:
روش 1 ـ وارد کردن کد روبرو:
*140*3*6#
بعد از وارد کردن اين کد، پيامي را دريافت مي کنيد که به طور خودکار تنظيمات گوشي شما را براي کار با اينترنت ايرانسل هماهنگ مي کند. بعد از آن کافي است وارد منوي اينترنت خود شويد و يک آدرس اينترنتي را وارد کنيد.

روش 2 ـ تنظيم دستي:

براي ساختن اشتراک GPRS براي استفاده از اينترنت ايرانسل

در گوشي هاي سوني اريکسون

مسير زير را دنبال کنيد :
منو > تنظيمات > اتصال > اشتراک هاي ديتا > اشتراک جديد
سپس يک اسم وارد کنيد ، مثلا Irancell ؛ سپس برروي دکمه ادامه کليد کنيد ، GPRS رو انتخاب کنيد و در صفحه جديد GPRS APN رو با کلمه mtnirancell مقداردهي کنيد . دکمه ذخيره (Save) را زده و به صفحه اشتراک هاي ديتا برگرديد ، حالا اسم کانکشني را که ساختيد پيدا کرده و آن را انتخاب کنيد (دايره کناري آن توپر شود).
دوباره به تنظيمات > اتصال برگرديد و اين دفعه تنظيمات اينترنت رو انتخاب کنيد ، گزينه تنظيم جديد را انتخاب کرده و سپس وارد صفحه جديد شويد ، نامي براي تنظيم انتخاب کرده ، ok کنيد و سپس از قسمت اشتراک ، همان اشتراکي را انتخاب کنيد که قبلا ساختيد در اينجا Irancell مي باشد ، دکمه ذخيره را انتخاب کنيد و به صفحه تنظيمات اينترنت برگرديد ، سپس همان تنظيمي را انتخاب کنيد که در بخش قبل ساختيد (دايره کناري تنظيم بايد توپر شود).
حالا به منوي اصلي برگشته و گزينه اينترنت (شکل کره زمين) رو انتخاب کنيد منتظر بمانيد تا اتصال صورت گيرد.
براي وارد کردن آدرس دکمه "بيشتر (More)" را زده و سپس گزينه "وارد کردن آدرس (Enter URL)" را انتخاب کنيد !!!!
___________________________

نوکيا سري 60 و بالاتر

مسير زير را دنبال کنيد :
Tools > Setting > Coonections > Access Points > New Access Point
و سپس مقادير زير را وارد کنيد :
Connection Name : Irancell
Username & password : خالي
Access Point Name : mtnirancell
Authentication type : Normal
برنامه مرورگر را بازکنيد، اکنون از شما سوال ميشود که آيا ميخواهيد که به اينترنت وصل شويد يا نه ؟ شما Yes رو بزنيد !

_________________________

Motorola

مسير زير رو دنبال کنيد :
Menu > WebAccess >Web Sessions > *----* >New
منظور از *----* فشردن دکمه منو هستش
سپس مقادير زير رو وارد کنيد :
Name : Irancell
Homapage : هر چيزي ، مثلا سايت شگردها
GPRS APN : mtnirancell
بقيه مقادير رو دستکاري نکنيد !!!
سپس دکمه Done زده و به فهرست اتصالات برگرديد سپس Irancell رو پيدا کرده و دکمه Launch رو بزنيد و منتظر بمانيد تا صفحه پيش فرض باز شود.
براي وارد کردن آدرس دکمه منو را فشارداده و گزينه Go to URL را انتخاب کنيد و سپس آدرس را وارد کرده و OK کنيد.

گام سوم:
گرفتن اعتبار و مجوز
جهت ارتباط اینترنتی ایرانسل شرایط زیر را برای انتخاب در دسترس قرار داده است. بدیهی است که پیش نیاز همه آن‌ها شارژ کافی هزینه آن قبل از فعال سازی است .با ارسال هرکدام از شماره زیر ایرانسل پیامی جهت ثبت می فرستدکه در صورت داشتن اعتبار کافی پیام بعدی جهت فعال شدن آن به گوشی شما ارسال می‌گردد وبعد از این مرحله قادر به ایجاد ارتباط بروشهای ذیل می باشید
نامحدود روزانه #1*2*7*3*140*
نامحدودهفتگی #2*2*7*3*140*
نامحدود ماهانه #3*2*7*3*140*
نامحدودشبانه و آخر هفته در مدت یک ماه #4*2*7*3*140*
هزینه هرکدام بترتیب ۱۰۰۰و۵۰۰۰ و ۱۰۰۰۰ و۳۰۰۰ تومان برای اطلاع از تغییرات کد و محدودیت دانلود به سایت ایرانسل مراجعه فرمایید
گام چهارم
:اتصال به اینترنت
روش اول : از طریق kppp یا gonme ppp
کابل را به تلفن متصل کرده و آن را در حالت Pcsuite قرار دهید
الف gonme ppp
برای اینکار شما میتوانید از نرم‌افزار dialup internet connection ) gnome ppp)استفاده نمایید به این صورت که پس از اجرای نرم‌افزار فوق در قسمت نام کاربری OTA و در قسمت رمز عبور ۰۰۰۰ و در قسمت شماره تماس شبکه #۹۸* را وارد نمایید سپس بر روی setup کلیک نموده و در قسمت مودم
/dev/ttyACM0
را وارد نمایید پس از انجام این کار و خروج از صفحه تنظیمات بر روی connect کلیک نموده و اگر همه چیز به خوبی تمام شود که همین طور هم هستش از اینترنت ایرانسل لذت ببرید

اگر مشکلی داشتید شما باید فایل wvdial.conf رو ویرایش کنید.
کد:
sudo gedit /etc/wvidial.conf

توی این فایل باید برای phone شماره #1***99* رو بزارید.
برای پسورد هم یه چیزی دلخواهی بنویسید، چون اگر خالی باشد wvdial کارش را انجام نمی دهد، . بصورت پیش فرض جلوی کلمه Password و Username ویرگول باید حذف بشود.

نمونه ویراش فایل wvidial.conf:
کد:
[Dialer Defaults]
Modem = /dev/ttyACM0
Baud = 460800
Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
ISDN = 0
Modem Type = USB Modem
Phone = *99***1#
Username = user
Password = pass
New PPPD = yes
بعد فایل رو سیو کنید. و دستور wvdial را دوباره اجرا کنید.

ب Kppp
در اینجا از طریق برنامه Kppp به راحتی می‌توان به اینترنت تلفن همراه متصل شده و از اینترنت ایرانسل بهره مند شد .برای این کار ابتدا برنامه Kppp را نصب نموده و سپیس ؛ Kppp را اجرا نموده و سپس دکمه configure را زده و وارد سربرگ Modems شده ودکمه New را می زنیم و پس از نامگذاری آن بطور دلخواه در لیست Modem Device نوع مودم راdev/ttyACM0 برمی گزینیم سپس Query Modem را زده تا نرم افزار مودم گوشی را شناسایی کند .تا اینجا مودم برای برنامه شناسایی شده و نصب شده است .
حال می رسد به قسمتی که باید مشخصات اینترنت را وارد کنیم بنابراین به سربرگ Account رفته و New را زده و سپس گزینه Manual Setup را انتخاب می کنیم در اینجا تنظمیات خاصی لازم نیست فقط باید یک اسم برای اتصال خود انتخاب کرده و در قسمت شماره ، کد 1# ***99*99 را وارد کرده و یک یوزر و پس سوری را وارد کنید. وسپس دکمه OK را زده و دکمه Connect را می زنیم .
روش دوم: network conection
این روش را در م‍پیس و اوبنتو امتحان کردم
در پانل دسکتاپ روی دکمه network connection کلیک کرده در گزینه *** connection قسمت configure *** دکمه mobile Boardbandرا انتخاب کرده را انتخاب کرده و دکمه add را زده و دربخش
set up mobileBoardband connection نوع devise را gprs یا any ودر مرحله بعد کشور را انتخاب می‌کنیم متأسفانه نام ایران در این لیست نیست گزینه no my contry is non listed را برگزیده و سپس نامی برای provider انتخاب می‌کنیم در گام بعدی تنظیم ایرانسل APN = mtnirancell را وارد می‌کنیم بطور خودکار شماره تلفن تماس # 99*ثبت می شود.بعد ا ز دکمه به نامppp settings دکمه configure methods رو کلیک میکنیم و دو تا تیک MSCHAP و MSCHAP V2 رو بر میداریم. می‌توانید auto matically راهم فعال کنید
حالا تنطیمات رو ذخیره میکنیم و تمام! حالا میتونید به اینترنت وصل شید و لذت ببرید.

نویسنده :آزادمن
لینک منبع :استفاده از اینترنت ایرانسل در لینوکس سرعت ۲تا ۸ برابر روش dialup
زینب بازدید : 30 يكشنبه 24 تير 1397 زمان : ۰۹:۱۵ نظرات (0)
1

تعداد صفحات : 1

موضوعات
لینک دوستان
پیوندهی روزانه
  • آرشیو لینک ها
  • صفحات جداگانه
    آمار سیت
  • کل مطالب : 1,446
  • کل نظرات : 0
  • افراد آنلین : 12
  • تعداد اعضا : 0
  • بازدید امروز : 1,960
  • باردید دیروز : 3,874
  • بازدید هفته : 24,747
  • بازدید ماه : 96,995
  • بازدید سال : 514,759
  • بازدید کلی : 738,084