تبليغاتX
برنامه نویسی و لینوکس

 

این وبلاگ به اینجا منتقل شد

 

وبلاگ من:

www.blog.owhadi.ir

 

 

 

+ نوشته شده توسط معین اوحدی کارشک در یکشنبه ششم دی 1388 و ساعت 9:15 |
با سلام

حتما توی همین وبلاگ مقالاتی رو راجع به کرنل لینوکس دیدید. امروز می خواهم بگویم چطور می توان آن را تغییر داد.

کرنل چیست؟

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

اگر می خواهید کرنل راتغییر دهید(که کار حساسی است) نباید با توضیع های مختلف(فدورا و زوزه و...) کار کنید بلکه باید آن را از اینجا دانلود کنید و سپس روی آن شروع به کار کنید. اما پس از دریافت این فایل حجیم حتما دریافته اید که این کار زیاد هم آسان نیست! پس بهتر است ابتدا آن را مستند سازی کنید. برای این کار نرم افزاری پیشنهاد می شود که می توانید آن را از اینجا دریافت کنید.

پس از مستند سازی آن می توانید کار را از توابع سطح بالاتر شروع کنید .

ادامه ی بحث را به همراه معرفی چند مقاله در این خصوص بعدا می نویسم.

 

+ نوشته شده توسط معین اوحدی کارشک در جمعه سیزدهم شهریور 1388 و ساعت 16:21 |
کاربران لینوکس برای ابزارهای اتصال بی سیم گزینه های فراوانی دارند. اما همانگونه که می دانیم توزیعهای لینوکس و سخت افزارهایی که استفاده می شوند هر کدام برنامه های مختلف را برای اتصال به دستگاه های بی سیم استفاده می کنند.
برخی از این ابزارها وابسته به توزیع لینوکس می باشند ولی برخی نیز وابستگی ندارند. بعضی از آنها برای رومیزی های خاصی طراحی شده اند اما بر روی سایر محیطهای رومیزی نیز کار می کنند.
بسیاری از کاربران لینوکس قادر به استفاده از اتصالات بی سیم تنها با یافتن ابزار مناسب می باشند. لذا در این مقاله 10 ابزار برتری که به شما جهت اتصال کامپیوتر لینوکسی خود به دستگاه های بی سیم کمک می کنند ارائه شده است.
اگر احیاناً یکی از این ابزارها به درستی نصب نشد یا اینکه به خوبی کار نمی کرد، ابزار دیگری را می توانید امتحان کنید. سرانجام می توانید اتصال را برقرار کنید.
1. Gnome NetworkManager (مدیر شبکه گنوم)
Gnome NetworkManager روش پیش فرض اتصال در بسیاری از توزیعهای لینوکس است که محیط رومیزی گنوم به صورت پیش فرض در آنها نصب می شود، است و یکی از بهترین ابزارهای طراحی شده برای این این منظور محسوب می شود. این ابزار در پنل گنوم قرار گرفته و خود را با ابزار اتصال بی سیم به سادگی و اطمینان پذیر تطبیق می دهد.
2. Wicd:
Wicd یکی از محبوب ترین ابزار مدیریت شبکه های بی سیم می باشد. این ابزار در بسیاری از توزیعهای لینوکس و محیطهای رومیزی یا مدیر پنجره ها قابل استفاده است.
همانند ابزار Gnome NetworkManager، ابزار Wicd نیز با هر دو شبکه بی سیم و کابلی کار می کند و می تواند به اکثر برنامه های کد شده متصل شود.
Wicd دارای یک لبه در مدیر شبکه گنوم می باشد که امکان افزودن برنامه کد شده را فراهم می سازد. یکی از جنبه های بسیار مفید Wicd این است که به هیچ وابستگی های نرم افزاری برای نصب بر روی محیطهای گرافیکی KDE و Gnome ندارد.
3. Wifi-Wiz:
اگر شما کاربر سیستمهای دبیان هستید مطمئناً با مزایای استفاده از ابزار Wifi-Wiz صرفنظر از محیط رومیزی مواجه شده اید.
این ابزار با توزیعهای لینوکس زنده نیز به خوبی کار می کند. Wifi-Wiz یک برنامه PYGTK می باشد. یکی از ویژگیهای برجسته Wifi-Wiz این است که شامل یک Daemon است که امان اجرای آن را در پس زمینه برای چک کردن وضعیت اتصال شما را فراهم می کند. به گونه ای که اگر اتصال شما قطع شود، به صورت خودکار سایر شبکه های موجود را چک کرده و اتصال را برقرار می کند.
4. YaST2:
اگر شما کاربر توزیع لینوکس SUSE هستید، حتماً با YaST آشنایی کامل دارید. YaST یکی از ابزراهایی است که ابزارهای مدیریتی زوزه را اجرا می کند. به طور حتم، شبکه نیز از این قاعده مستثنی نیست. ابزار شبکه بی سیم YaST2 یکی از آسانترین ابزارهای مورد استفاده است، حتی اگر کاربر تازه کار باشید. البته برای کاربران حرفه ای نیز بسیار خوشحال کننده است اگر بدانند که این ابزار دارای تنظیمات پیشرفته نیز می باشد.
5. Getwifi:
Getwifi یکی از معدود ابزارهای دستوری در این لیست است. این ابزار مجزا، به صورت یک فایل متنی شبکه را پیکربندی می کند. لذا به اولین شبکه بی سیم قابل ارتباط لیست شده در فایل پیکربندی متصل می گردد.
این ویژگی به صورت دستی انجام می شود چرا که شما مجبور به تحمل زحمت زیاد برای انتخاب شبکه نخواهید بود. گفتنی است که برنامه قابل نصبی برای آن وجود نداد. تنها کافی است فایل اجرایی Getwifi را به آدرس /usr/bin منتقل کرده و سپس فایل پیکربندی موجود در /etc/ Getwifi را پیکربندی کنید.
6. Wireless Tools:
Wireless Tools یکی دیگر از ابزارهای دستوری است. این ابزار شامل iwconfig برای دستکاری ارتباطات بی سیم، iwspy برای لیستی از اطلاعات بی سیم و iwconfig برای درستکاری درایورهای بی سیم می باشد.
این ابزار، بهترین وسیله برای استفاده توسط کاربران حرفه ای است.
7. Wireless Assistant:
Wireless Assistant یک ابزار محیط گرافیکی KDE است که به سادگی پردازش اتصال به شبکه بی سیم را فراهم می کند. اگرچه این ابزار یک برنامه KDE است اما همانند مدیر شبکه گنوم یکپارچه نمی باشد. به همین خاطر، شما مجبور به اجرای برنامه زمانی که می خواهید یک اتصال شبکه ایجاد کنید هستید.
8.Wifi Radar:
Wifi Radar یک ابزار بی سیم استثنایی است که بسته هایی برای دبیان، Gentoo، Open SUSE و اوبونتو دارد.
این ابزار یک برنامه پایتون است که امکان کشیدن شبکه های پیکربندی شده را به منظور اهمیت اتصال فراهم می سازد.
یکی از موارد عجیب Wifi Radar این است که نیازمند اجرای آن با استفاده از sudo می باشید حتی اگر این برنامه را بر روی فدورا نصب کنید بدون sudo اجرا نخواهد شد.
9. GTKWifi:
GTKWifi یک اپلت ساده برای گنوم است که در pythonGTK نوشته شده است. این ابزار بسیار شبیه zeroconf است که در ویندوز XP استفاده می شود.
این ابزار، وضعیت شبکه و اتصالات شبکه های موجود را نمایش می دهد و به شما امکان ارتباط با یکی از آنها را فراهم می کند.
10. Wavemon:
Wavemon اطلاعات بسیاری برای کمک و رفع اشکال اتصال بی سیم را در اختیار شما قرار می دهد حتی اگر ابزاری برای اتصال شما به شبکه بی سیم وجود نداشته باشد.
Wavemon امکان مشاهده اطلاعات زمان واقعی را در سطوح سیگنال به خوبی اطلاعات شبکه های کابلی و بی سیم فراهم می کند.
ابزار محبوب شما کدام است؟
آیا تاکنون با یکی از ابزارهای اشاره شده کار کرده اید؟ آیا ابزار جدیدی که در لیست بالا وجود ندارد را می شناسید که به شما برای مدیریت شبکه بی سیم در لینوکس کمک کرده باشد.
منبع: http://resources.zdnet.co.uk/articles/comment/0,1000002985,39714325-2,00.htm
ترجمه و گرد آوری: بهروز عبادی

 

+ نوشته شده توسط معین اوحدی کارشک در دوشنبه دوم شهریور 1388 و ساعت 14:23 |
مطمئنا تاکنون با این مشکل مواجه شده اید که با مشاهده میزان استفاده برنامه ها از CPU، نیازمند یک کارآیی خوب و مناسب از سیستم خود هستید و بعضی زمانها برنامه هایی در سیستم اجرا می شوند که به هیچ وجه نباید متوقف شوند و در این زمان نیازمند منابع آزاد بر روی کامپیوترهای خود هستیم. در این زمان این سوال پیش می آید که چه باید کرد؟

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

 

نحوه نصب:

برای نصب و استفاده از این ویژگی در اوبونتو دستور زیر را اجرا کنید:

$ sudo apt-get install cpulimit

 

برای اجرای آن در دیگر توزیعهای لینوکس، دستور زیر را اجرا کنید:
$ wget http://downloads.sourceforge.net/cpulimit/cpulimit-1.1.tar.gz
$ tar-zxf cpulimit * xxx.tar.gz
$ cd cpulimit-xxx
$ make

 


نحوه اجرا:

برای اجرای آن، نیازمند دانستن نام برنامه یا شماره شناسایی برنامه، PID هستیم.

 

مثالهایی برای استفاده:

اگر بخواهیم که فایرفاکس تنها از ۳۰ درصد CPU استفاده کند، دستورات زیر را اجرا می کنیم:
cpulimit firefox-e-l 30

 


به عبارت دیگر برای محدودیت استفاده از ۴۰ درصد CPU برنامه ای با PID به شماره ۳۶۷۵ می نویسیم:
cpulimit-p 3675-l 40

 


همچنین می توان مسیر کامل برنامه را نیز همانند زیر وارد کرد:
cpulimit-P / l usr/lib/firefox-3.0.11/firefox-30
Limit the process 'bigloop' by executable name to 40% CPU:
cpulimit --exe bigloop --limit 40
cpulimit --exe /usr/local/bin/bigloop --limit 40
Limit a process by PID to 55% CPU:
cpulimit --pid 2960 --limit 55

Launch a process by command line and limit it to 40% (in development version only!):
cpulimit --limit 40 /etc/rc.d/rc.boinc start

cpulimit -e nombreaplication -l 30 o cpulimit -p PID -l 40

 

نکته:

در صورتی که ماشین شما یک پردازشگر دارد امکان ایجاد محدودیت استفاده از CPU از ۰ تا ۱۰۰ درصد وجود دارد. این بدان معناست که اگر شما به عنوان مثال آن را بر روی ۵۰ درصد تنظیم نمایید، پردازشها نمی توانند بیش از 500ms از زمان CPU در هر ثانیه را استفاده کنند.

اما اگر ماشین شما ۴ پردازشگر داشته باشد، درصد می تواند از ۰ تا ۴۰۰ تغییر یابد. بنابراین با تنظیم حدودیت بر روی ۲۰۰٪، استفاده بیش از نیمی از قدرت موجود CPU محدود می گردد.

 

منبع:http://blog.dipinkrishna.info/2009/07/limiting-cpu-usage-of-applications-on.html

 

+ نوشته شده توسط معین اوحدی کارشک در پنجشنبه هشتم مرداد 1388 و ساعت 21:4 |
آیا نیازمند مشاهده کارایی سرور لینوکس هستید؟ تعدادی دستور لینوکس و ابزارهای افزوده می توانند این کار را انجام دهند.
بسیاری از توزیعهای لینوکس با تعدادی از این ابزارها مجهز شده اند. این ابزارها می توانند برای دستیابی به اطلاعات مربوط به فعالیت سیستم استفاده شوند و این ابزارها امکان یافتن دلایل وجود مشکلات در کارایی سیستم را نیز فراهم می کنند.

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

                                                                                          بقیه در ادامه ی مطلب ...


ادامه مطلب
+ نوشته شده توسط معین اوحدی کارشک در پنجشنبه هشتم مرداد 1388 و ساعت 21:3 |
این مقاله نحوه ی به روز رسانی ubuntu8.10  از نسخه 8.04 راکه در سی ام اکتبر ۲۰۰۸ منتشر شده  به شما آموزش می دهد.

 

مقاله در ادامه ی مطلب ...


ادامه مطلب
+ نوشته شده توسط معین اوحدی کارشک در دوشنبه هفتم اردیبهشت 1388 و ساعت 13:5 |
Konsole: یک ترمینال قدرتمند و پر از ویژگی به صورت پیش فرض در محیط KDE می باشد. از ویژگی های آن
شفافیت مجیط رومیزی، تصاویر پس زمینه،پروفایل ها، تب ها، آگاه سازی و بسیاری از رویه های دیگر که می توان از آن انتخاب کرد.

Gnome-Terminal: ترمینال محیط گنوم که از تب و شفافیت محیط رومیزی با یک واسط پاک و ساده برخوردار است.

Yakuake: یک ترمینال شگفت آور برای محیط KDE که از مزیت بزرگ آن مخفی بودن تا زمانی که با F12 صدا زده شود، می باشد. از یک سبک شبیه به ترمینال Quake 3 یا سایر بازی های FPS برخوردار است. از تنظیمات کنسول شامل افکت های شفاف و آگاه سازی استفاده می کند.

Tilda: این یک ترمینال دیگری است که سبکی شبیه به کنسول های Quake دارد. آن را می توان همتای Yakuateنامید. هنگامی که شما برای اولین بار آن را اجرا می کنید، شما با یک پنجره برای تنظیم آن و انتخاب میانبر سراسری برای نمایش و مخفی سازی آن روبرو خواهید شد.

ROXTerm: این ترمینال یک ترمینال نوشته شده با GTK با یک واسط شبیه به یکی از ترمینال های گنوم می باشد.که پس زمینه ها، افکت های شفافیت محیط رومیزی، پروفایل ها، طرح های رنگی و خیلی چیزهای دیگر را پشتیبانی می کند.

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

Eterm: یک ترمینال پیشرو در طراحی شبیه به سبک های روشن می باشد. شما برای اجرای باید از کلمه Eterm با e بزرگ استفاده کنید.

xvt: یک ترمینال پایه که از مقدار حافظه خیلی کم استفاده می کند و شبیه xterm می باشد.

rxvt: مخفف ترمینال توسعه یافته مجازی ما ( our extended virtual terminal )می باشد، که می تواند به عنوان یک جایگزین کوچک تر xterm استفاده گردد.

mrxvt: از تب ها و تصاویر پس زمینه در حالی که حریص حافظه نمی باشد استفاده می کند و وابستگی به کتابخانه های KDE و Gnome ندارد.

rxvt-unicode : از ویژگی های آن می توان به افکت های شفاف اشاره کرد. شامل اسکرول بارها و پشتیبانی از کاراکترهای یونیکد پشتیبانی می کند.

atrem: بعد از ترمینال xvt آمده است. بر پایه xvt می باشد و به حافظه کمتری نسبت به xterm نیاز دارد.

wterm: نمونه ساز ترمینال سبک و ساده دیگری که شامل اسکرول بارها، تصاویر پس زمینه و شفاف می باشد.

منبع:
http://tuxarena.blogspot.com/2008/09/13-terminal-emulators-for-linux.html
ترجمه: احسان شاهرخی
ehsantux@gmail.com

 

+ نوشته شده توسط معین اوحدی کارشک در شنبه بیست و نهم فروردین 1388 و ساعت 20:32 |
مایکروسافت در حال حاضر مشغول تهیه نخستین سرویس‌پک برای ویندوز ویستا است. لذا تا زمانی که این اولین سرویس‌پک ارائه گردد، ویستا فعلا به درستی آماده نیست. احتمالا اواخر سال میلادی جاری این اتفاق بیفتد.

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

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

Trend Micro، Panda، CA و Symantec همگی اعلام نموده‌اند که مجموعه‌های به روز رسانی شده خود را برای دسترسی به ویستا عرضه خواهند کرد.

بازی بر روی ویستا – و پشتیبانی گرافیکی DirectX 10 در ویستا – برای علاقه‌مندان به بازی بسیار جذاب خواهد بود. اما این چیزی است که فقط بعدها این امکان به وجود خواهد آمد.

ادامه ی مقاله را در ادامه ی مطلب بخوانید

 


ادامه مطلب
+ نوشته شده توسط معین اوحدی کارشک در سه شنبه پانزدهم مرداد 1387 و ساعت 20:44 |

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

 


ادامه مطلب
+ نوشته شده توسط معین اوحدی کارشک در چهارشنبه دوم مرداد 1387 و ساعت 18:15 |
نگارش‌های درایور ATI لینوکس:

ATI اخیراً، درایوری رسمی و اداری نداشته است. درایور مربوطه، اوایل سپتامبر، هنگامی‌که نگارش 3.2.5 آن بیرون آمد، تغییر کرد. از آن زمان تاکنون، کاربران از درایورهای غیررسمی استفاده می‌کنند. این درایورها نسبتاً خوب بودند، اما از آنجا که غالباً، تیم beta-tester-ی پشتیبان آنها نبود، تعداد زیادی اشکال (bug) در آنها وجود داشت.

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

مراحلی که باید قبل از نصب درایور، مورد توجه قرار گیرند:

ادامه ی مقاله را در ادامه ی مطلب بخوانید


ادامه مطلب
+ نوشته شده توسط معین اوحدی کارشک در شنبه بیست و دوم تیر 1387 و ساعت 22:27 |
مقدمه

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

ادامه ی مقاله را در ادامه ی مطلب بخوانید 


ادامه مطلب
+ نوشته شده توسط معین اوحدی کارشک در شنبه بیست و دوم تیر 1387 و ساعت 22:25 |
هوش مصنوعی

هوش مصنوعی (artificial intelligence) را باید عرصهٔ پهناور تلاقی و ملاقات بسیاری از دانشها، علوم، و فنون قدیم و جدید دانست. ریشه‌ها و ایده‌های اصلی آن را باید در فلسفه، زبان‌شناسی، ریاضیات، روان‌شناسی، نورولوژی، و فیزیولوژی نشان گرفت و شاخه‌ها، فروع، و کاربردهای گونه‌گونه و فراوان آن را در علوم رایانه، علوم مهندسی، علوم زیست‌شناسی و پزشکی، علوم ارتباطات و زمینه‌های بسیار دیگر

 

ادامه ی مقاله را در ادامه ی مطلب بخوانید

 


ادامه مطلب
+ نوشته شده توسط معین اوحدی کارشک در یکشنبه شانزدهم تیر 1387 و ساعت 21:25 |

محيط مجتمع دات نت فريم ورك 2.0 كه تحت نرم افزار Microsoft Visual Studio .Net 2005 ارائه می گردد، محيطی است كامل و جامع از بهترين و قويترين زبانهای برنامه نويسی ويژوال مانند C#.NET ، C++.Net ، VB.NET ، و نيز ابزاری قدرتمند برای طراحی و انتشار صفحات وب توسط فناوری ASP.NET می باشد.

شايد براي شما نيز جالب باشد كه بدانيد از تمامی خواص زبانهای دات نت می توان در دیگر زبانهای دات نت استفاده كرد! به عنوان مثال فرض كنيد يك کمپوننت به زبان VB.NET نوشته ايد. حال می توانيد از اين بسته بدون هیچ تغییری در زبانهای ديگر مثل C#.NET و C++.NET و . . . استفاده كنيد. اين مساله به آن دليل است كه تمامی كدهايی كه در قالب محيط دات نت نوشته می شوند قبل از كامپايل به كدهايی كه به زبان میانی (Intermediate Language یا IL) معروفند تبديل می شوند. در مورد IL مفصلا بعدا توضيح خواهم داد.


ادامه مطلب
+ نوشته شده توسط در شنبه بیست و پنجم اسفند 1386 و ساعت 22:32 |
در اغلب توزیعهای لینوکس، جاوا هنگام نصب لینوکس، نصب نمی‌شود. جاوا باید برای برنامه‌های اینترنتی مختلفی مانند چت یاهو و یا دیگر کلاینت‌هایی که از جاوا استفاده می‌کنند، اجرا شود. حل این مشکل، شاید برای یک کاربر مبتدی، کمی سخت باشد. کلف کاری که شما باید انجام دهید، رفتن به وب‌سایت جاوا می‌باشد
ادامه مطلب
+ نوشته شده توسط در پنجشنبه پانزدهم آذر 1386 و ساعت 16:11 |
یکی از امکاناتی که غالب افراد می‌خواهند بعد از نصب لینوکس داشته باشند، دسترسی به اینترنت است و این امر، مستلزم درست کار کردن مودم می‌باشد. داشتن یک مودم عملیاتی تحت لینوکس تا حدی پیچیده است. این مشکل از آنجا ناشی می‌شود که اغلب مودمهایی که امروزه ساخته می‌شوند “winmodem‿ هستند و صرفاً با سیستم‌عامل ویندوز سازگاری دارند. مودم ویندوزی (winmodem)، مودمی نرم‌افزاری است. در حالیکه هزینه‌ی زیادی در ازای مودمهای ویندوزی پرداخت می‌شود، اما این مودمها، به دلیل به کار رفتن مدارات الکترونیکی کوچک در آنها، برای سازندگانشان، بسیار ارزان تمام می‌شود. این مسأله، به نوبه‌ی خود فضایی اضافی جهت پردازش روی CPU کامپیوتر شما خواهد گرفت. برای بکار انداختن یک مودم ویندوزی به یک قطعه‌ی نرم‌افزاری به نام “driver‿ نیاز داریم.
ادامه مطلب
+ نوشته شده توسط در پنجشنبه پانزدهم آذر 1386 و ساعت 16:10 |

KMail، یک mail-client با قابلیتهای فوق‌العاده است، مناسب برای محیط KDE است و قابلیتهای بی‌شماری دارد که در ادامه به بیان آنها می‌پردازیم. آخرین نگارش پایدار آن، KMail 1.8 است که به صورت یک پکیج جدا در دسترس نمی‌باشد، و قسمتی از پکیج kdepim 3.4 است. در واقع در حال حاضر، هیچ پکیجی، وجود ندارد که صرفاً، شامل KMail باشد. برای استفاده از این mail client، به kdelibs و kdebase نیز نیاز است. در اینجا شما می‌توانید اطلاعاتی در مورد نحوه‌ی دانلود و نصب آن کسب کنید.


ادامه مطلب
+ نوشته شده توسط در پنجشنبه پانزدهم آذر 1386 و ساعت 16:8 |
فارسي‌نويسي يكي از اولين نيازمندي‌هاي كاربران فارسي‌زبان لينوكس است .من توزيعي پيدا نمي‌كنم كه از زبان‌فارسي پشتيباني نكند و نتوان در آن فارسي‌نويسي كرد. فقط بايد زبان‌ فارسي را براي توزيع فعال نموده و فونت‌هاي موردعلاقه خود را نصب كنيد . در ويندوز نيز بايد اين مراحل را طي كنيد تا بتوانيد زبان ‌فارسي داشته باشيد . در ادامه سعي كردم با توضيح كمتر و استفاده بيشتر از شكل‌ مراحل كار را دنبال كنيم . براي شروع بايد لايه ‌فارسي را به محيط KDE اضافه كنيم. در گام ‌بعدي كليد‌هاي‌تركيبي را تعريف مي‌كنيم و در مرحله پاياني، پركاربردترين فونت‌ها را نصب خواهيم كرد. چون بيشتر كاربران لينوكس، از نرم‌افزار اپن‌آفيس براي تايپ استفاده مي‌كنند، پس از فعال كردن زبان‌فارسي براي كار با برنامه Writer، بايد ابزار (‌ RTL (Right-to-Left فعال شود كه اين تكنيك را هم در آخر توضيح مي‌دهم. براي شروع، با محيط گرافيكي ‌KDE وارد سيستم شويد.
ادامه مطلب
+ نوشته شده توسط در پنجشنبه پانزدهم آذر 1386 و ساعت 15:53 |
نصب ساده MySQL , Apache و PHP از کد منبع در لینوکس

وب سرور Apache , پایگاه داده MySQL و پردازشگر زبان اسکریپت نویسی PHP یکی از محبوب ترین و کاربردی ترین مجموعه ها برای طراحی و پیاده سازی وب سایت با صفحات دینامیک و پویا هستند .از ویژگی های این سه ابزار می توان به استواری بالا , قابلیت انعطاف زیاد , سطح بالایی از امنیت و قابل اجرا بر روی تعداد زیادی platform اشاره کرد .
در این مقاله سعی شده است که روش ساده نصب Apache , MySQL و PHP شرح داده شود . روشی که در این مقاله توضیح داده خواهد شد روشی عمومی است و در صورتی که شما مایل باشید که از حداکثر توانایی های این سه نرم افزار قدرتمند استفاده کنید بهترین راه استفاده از Documentation بسیار غنی این سه پروژه متن باز می باشد.

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

اولین کاری که باید انجام داد دریافت کدهای منبع این سه نرم افزار برای کامپایل از پایه است . این سه نرم افزار به فرمت های باینری کامپایل شده و اماده نصب مانند RPM و DEB نیز وجود دارند ولی نصب از روی بسته های باینری توصیه نمی شود . توصیه ما این است که برای عملکرد بهتر حتما این سه نرم افزار را از پایه برای سیستم خود کامپایل کنید. بنابراین مطمئن شوید که حتما کدهای منبع این مجموعه را download می کنید.
برای download کردن کدهای منبع به لینک های زیر رجوع کنید . شماره نسخه ای که مشاهده می کنید نسخه هایی هستند که در هنگام تهیه این مقاله موجود بوده اند .

Apache
current version : 2.0.54
URL : http://httpd.apache.org/download.cgi

MySQL
current version : 4.1.12
URL : http://www.mysql.com/downloads/mysql-4.1.html

PHP
current version : 5.0.4
URL : http://www.php.net/downloads.php

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

نصب کردن با کدهای منبع

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

tar -xzvf httpd-2.0.54.tar.gz
tar -xzvf mysql-4.1.12.tar.gz
tar -xzvf php-5.0.4.tar.gz

از این مرحله به بعد بهتر است که با حساب کاربری root کار را ادامه دهید.برای این کار از دستور su استفاده کنید.

کامپایل Apache

با استفاده از دستور زیر وارد دایرکتوری کد منبع Apache شوید که در مرحله قبل با استفاده از دستور tar ایجاد شده بود.

cd httpd-2.0.54

سپس دایرکتوری زیر را با استفاده از دستور زیر ایجاد کنید.

mkdir /usr/local/apache2

این دایرکتوری محل نصب Apache بعد از کامپایل می باشد.می توانید هر مسیر دیگری را نیز برای این منظور داشته باشید . این مسیر را باید در دستور بعدی به اسکریپت configure معرفی کنید. در صورت ایجاد مسیر دیگری نیازی به ایجاد دایرکتوری مذکور در دستور بالا را نخواهید داشت.سپس اسکریپت configure را به صورت زیر اجرا کنید.

configure --prefix=/usr/local/apache2 --enable-mods-shared=most/.

این دستور باعث می شود که Apache پس از کامپایل در مسیر /usr/local/apache2 نصب شود. همچنین ورودی --enable-mods-shared=most اعلام می کند که بیشتر ماژول های قابل load اپاچی نصب خواهند شد.ورودی های بسیار زیادی را می توان به configure داد ولی برای نصب به حالت عمومی همین تعداد کافی می باشد.بعد از اجرای بدون خطای configure دستور زیر را اجرا کنید.

make

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

make install

هم اکنون Apache در مسیر مربوط نصب شده است . برای عملکرد صحیحApache به خصوص با PHP باید تغییراتی در فایل httpd.conf ایجاد کنیم.ابتدافایل زیر را با یک ویرایشگر مانند vim باز کنید.

vim /usr/local/apache2/conf/httpd.conf

به ترتیب قسمت های LoadModule , DirectoryIndex و AddType را پیدا کرده و به صورت زیر ویرایش کنید . در صورت پیدا نکردن اضافه کنید.

LoadModule php5_module modules/libphp5.so

DirectoryIndex index.html index.html.var index.php

AddType application/x-httpd-php .php

کار مربوط به Apache تمام شده است . فایل httpd.conf را ذخیره کرده و ببندید.

کامپایل MySQL

با استفاده از دستور cd وارد دایرکتوری کد منبع MySQL شوید.

cd mysql-4.1.12

سپس مانند مرحله قبل دایرکتوری زیر را ایجاد کنید . مانند مرحله قبل می توانید این دایرکتوری را ایجاد نکنید و MySQL را در مسیر دیگری نصب کنید.

mkdir /usr/local/mysql

سپس اسکریپت configure را به صورت زیر اجرا کنید.

configure --prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/data --disable-maintainer-mode --with-mysqld-user=mysql --enable-large-files-without-debug

در صورت عدم خطا با استفاده از دستور make عمل کامپایل را اغاز کنید.

make

عمل کامپایل MySQL ممکن است کمی طولانی باشد.بسته به سرعت پردازنده شما بین 15 دقیقه تا یک ساعت می باشد.پس از کامپایل موفق و بدون خطا با استفاده از دستور زیر MySQL را در مسیر مربوطه نصب نمایید.

make install

نصب MySQL تمام شده است . در ادامه دستورات زیر موجب اجرای صحیح این پایگاه داده خواهد شد.در ابتدا گروهی به نام mysql می سازیم و سپس کاربری با همین نام می سازیم و به ان مربوط می سازیم.

usr/sbin/groupadd mysql/

usr/sbin/useradd -g mysql mysql/

و سپس فایل های پایگاه داده را با استفاده از دستور زیر نصب می کنیم.

scripts/mysql_install_db/.

و با دو دستور زیر مالک و گروه دو دایرکتوری مذکور را تنظیم می کنیم.

chown -R root:mysql /usr/local/mysql
chown -R mysql:mysql /usr/local/mysql/data

اخرین کاری که برای نصب MySQL بایستی انجام دادویرایش فایل ld.so.conf می باشد.برای این کار ابتدا فایل زیر را باز کنید.

vim /etc/ld.so.conf

و خط زیر را در انتهای این فایل اضافه کنید.

usr/local/mysql/lib/mysql/

اکنون تمام مراحل نصب و تنظیم MySQL به پایان رسیده است . شما اکنون می توانید ان را با کاربر mysql که خود ساخته اید به صورت زیر اجرا کنید.

& usr/local/mysql/bin/mysqld_safe --user=mysql/

و با دستور زیر می توانید برای کاربر ریشه MySQL کلمه عبور تنظیم کنید که new_password کلمه عبوری است که شما تنظیم خواهید کرد.

usr/local/mysql/bin/mysqladmin -u root password new_password/

کامپایل PHP

ابتدا وارد دایرکتوری کد منبع PHP شوید.

cd php-5.0.4

سپس مانند مراحل قبل دایرکتوری نصب PHP را به صورت زیر ایجاد کنید.

mkdir /usr/local/php

و بعد از ان اسکریپت configure را به صورت زیر اجرا کنید.

configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql

بعد از اجرای بدون خطای configure برای کامپایل php دستور زیر را اجرا کنید.

make

اگر نتیجه دستور make با خطایی همراه نبود دستور زیر را برای نصب PHP در مسیر مربوط اجرا کنید.

make install

پس از اجرای این دستور PHP نصب شده است . مانند مراحل قبل بایستی یک سری تنظیمات انجام داد.ابتدا فایل php.ini را به صورت زیر در مسیر زیر کپی کنید.

cp php.ini-recommended /usr/local/php/lib/php.ini

سپس این فایل را باز کرده و ویرایش نمایید.

vim /usr/local/php/lib/php.ini

ابتدا doc_root را در این فایل پیدا کرده و به صورت زیر تنظیم کنید.

doc_root="/usr/local/apache2/htdocs/"

سپس file_uploads را در این فایل پیدا کنید. این گزینه را هم می توانید در حالت on و هم در حالت Off قرار دهید. این مورد بستگی به کاربرد شما دارد.ولی بهتر است به دلایل امنیتی ان را در حالت Off قرار دهید.

file_uploads=Off

اکنون مراحل نصب این سه نرم افزار به پایان رسیده است . می توانید با خیال راحت از انها استفاده نمایید.

یک تست کوتاه

اکنون MySQL شما در حال اجراست . برای اجرای وب سرور Apache دستور زیر را اجرا کنید.

usr/local/apache2/bin/apachectl start/

با اجرای این دستور وب سرور Apache شروع به کار می کند. اکنون می خواهیم یک فایل ساده PHP بنویسیم و از صحت کارکرد نرم افزار هایی که نصب کردیم اطمینان حاصل کنیم. بنابراین ابتدا وارد دایرکتوری زیر شوید.

cd /usr/local/apache2/htdocs

سپس با یک ویرایشگر فایلی به نام test.php در این دایرکتوری ایجاد کنید.

vim test.php

و خطوط زیر را در ان بنویسید . در این کد PHP ما فقط از یک تابع PHP به نام phpinfo استفاده کردیم.


php?><?

;()phpinfo
>?

فایل را ذخیره کرده وببندید . در این مرحله مرورگر وب خود را باز کرده و در قسمت نشانی , نشانی زیر را بنویسید .

localhost/test.php

شما بایستی یک سری اطلاعات به صورت یک سری جدول در مورد PHP , APache و MySQL و ... بر روی صفحه نمایش ببینید . در غیر این صورت مشکلی به وجود امده است . برای پیدا کردن مشکل به Log file های MySQL و Apache رجوع کنید .

اجرای Apache و MySQL به طور خودکار

مشکلی که هم اکنون وجود دارد اینست که ما Apache و MySQL را به صورت دستی راه اندازی کردیم . اکنون در این قسمت به این مورد می پردازیم که چگونه می توان کاری کرد که این دو سرویس هنگام بوت سیستم خود به خود شروع به کار کنند. برای این منظور مراحل زیر پیش روی شماست.
ابتدا دوباره وارد دایرکتوری کد منبع MySQL شوید.

cd mysql-4.1.12

و سپس فایل زیر را در مسیر مربوطه به صورت زیر کپی نمایید.

cp support-files/mysql.server /etc/init.d/mysql

دستورات زیر لینک هایی برای شروع خودکار MySQL برای runlevel های 3 و 5 ایجاد می کند.

cd /etc/rc3.d

ln -s ../init.d/mysql S85mysql

ln -s ../init.d/mysql K85mysql

cd /etc/rc5.d

ln -s ../init.d/mysql S85mysql

ln -s ../init.d/mysql K85mysql

cd ../init.d

chmod 755 mysql

حال مراحل مشابهی را برای Apache با دستورات زیر طی می کنیم.

cd /usr/local/apache2/bin

cp apachectl /etc/init.d/httpd

و مانند مرحله قبل لینک هایی برای شروع Apache برای runlevel های 3 و 5 ایجاد می کنیم.

cd /etc/rc3.d

ln -s ../init.d/httpd S85httpd

ln -s ../init.d/httpd K85httpd

cd /etc/rc5.d

ln -s ../init.d/httpd S85httpd

ln -s ../init.d/httpd K85httpd

اکنون همه چیز تنظیم شده است . اگر سیستم خود را reboot نمایید خواهید دید که deamon های mysqld و httpd به صورت خودکار شروع به اجرا می کنند.
در اینجا این مقاله به پایان می رسد. امیدوارم که مورد فایده واقع شود.

تذکر :

این مقاله فقط با هدف نصب این سه نرم افزار بسیار کاربردی به صورت عمومی تهیه شده است . برای نصب حرفه ای تر به سایت ها و انجمن هایی که برای کار های تخصصی در این زمینه وجود دارند مراجعه کنید . یکی از موارد این سایت ها سایت فارسی http://www.iranphp.net می باشد که حاوی مقالات بسیار مناسب در این زمینه می باشد .

منابع :


1- http://www.hostlibrary.com/installing_apache_mysql_php_on_linux
2- http://www.linuxhelp.net/guides/lamp/
+ نوشته شده توسط در چهارشنبه سیزدهم تیر 1386 و ساعت 21:48 |
آموزش نحوه برنامه نویسی و اجرا++C در لینوکس.

برای برنامه نویسی ++C در لینوکس کافی است شما اطلاعاتی در مورد برنامه نویسی را داشته باشید.

برای نوشتن یک برنامه ++C ابتدا یک ادیتور مثل vim یا kate را باز کنید و یک برنامه خیلی ساده مثل برنامه خوش آمد گویی را تایپ کنید. مثال زیر یک برنامه بسیار ساده می باشد.

#include <iostream.h>

int main()

{

cout << “welcome to c++n�?;

returne 0;

}

سپس این برنامه را با یک نام دلخواه و با پسوند cpp ذخیره کرده و از محیط ادیتور خارج شوید.

مرحله کد نویسی تمام شده حالا باید برنامه نوشته شده را کامپایل و اجرا کنید. برای این کار یک کنسول یا ترمینال باز کنید. برای کامپایل کردن برنامه از دستور ++g استفاده می کنیم.

[root@babapour]# g++ -o t2 test1.cpp

دستور مقابل از چند ستون تشکیل شده است. ستون اول ++g مربوط به دستور کامپایل کردن می باشد. در ستون دوم سوئیچ o- برای ساختن فایل خروجی یا اجرایی بعد از کامپایل کردن مورد استفاده قرار گرفته است. در ستون سوم t2 اسم فایلی است که بعد از کامپایل کردن ایجاد می شود و یک فایل اجرایی می باشد. و در ستون اخر test1.cpp اسم فایلی است که شما برنامه ++C را در آن ذخیره کرده اید.

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

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

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

[root@babapour]# g++ -o t2 test1.cpp

In file included from /usr/lib/gcc/i386-redhat-linux/3.4.2/../../../../include/c++/3.4.2/backward/iostream.h:31,

from test1.cpp:1:

/usr/lib/gcc/i386-redhatg-linux/3.4.2/../../../../include/c++/3.4.2/backward/backward_warning.h:32:2: warning: #warning This file includes at least one deprecated or antiquated header. Please consider using one of the 32 headers found in section 17.4.1.2 of the C++ standard. Examples include substituting the <X> header for the <X.h> header for C++ includes, or <iostream> instead of the deprecated header <iostream.h>. To disable this warning use -Wno-deprecated.

test1.cpp:6:2: warning: no newline at end of file

حالا می توانید فایل ساخته شده را اجرا کنید و نتیجه کار را ببینید.
+ نوشته شده توسط در چهارشنبه سیزدهم تیر 1386 و ساعت 21:47 |
کرنل لینوکس

مقدمه

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

علاوه بر همه‌ی اینها ما مشکلاتی مثل باگهای موجود در پنتیوم F00F داریم، و اشکالات به پروتکل TCP-IP منتقل خواهند شد.
نگارشهای کرنل به صورت X.Y.Z نامگذاری می‌شوند. Z، شماره‌های تجدیدنظرهای فرعی است، Y، نشان می‌دهد که آیا کرنل آزمایشی است (شماره فرد)، یا به مرحله تولید و محصول رسیده است (شماره زوج)، و X، تجدیدنظرهای اصلی را نشان می‌دهد.
اکیداً توصیه شده است که از کرنلهای 2.2.x و بالاتر استفاده شود. سری 2.2.x نسبت به 2.0.x پیشرفتها و بهبودهای قابل ملاحظه‌ای پیدا کرده است.
استفاده از کرنل 2.2.x همچنین امکان دسترسی به ویژگیهای جدیدتر، مثل ipchains (به جای ipfwadm) و دیگر قابلیتهای امنیتی پیشرفته را می‌دهد.
سری 2.0.x از ژوئن 1999 متوقف شده است. برای دریافت آخرین اخبار و پیشرفتها در مورد کرنل، دستور زیر را اجرا کنید:

[seifried@mail kernel-patches]$ finger @linux.kernel.org
[linux.kernel.org]
The latest stable version of the Linux kernel is: 2.2.13
The latest beta version of the Linux kernel is: 2.3.29
The latest prepatch (alpha) version *appears* to be: 2.3.30-3
ارتقاء کرنل و کامپایل آن

ارتقاء کرنل، عبارت است از: دریافت یک کرنل جدید به همراه ماژولها، ویرایش /etc/lilo.conf و اجرای مجدد LILO برای نوشتن یک MBR جدید. کرنل معمولاً در شاخه /boot و ماژولها نیز در /lib/modules/kernel.version.number/ جای خواهند گرفت.
دریافت کرنل جدید، و ماژولها به دو راه انجام می‌گیرد: با داونلود پکیج کرنل مربوطه و نصب آن، یا با داونلود کد منبع از آدرس ftp://ftp.kernel.org/ و کامپایل کردن آن.
· کامپایل کردن و نصب کرنل

cd /usr/src

یک symlink بنام “linux�?- که به دایرکتوری حاوی کرنل جاری اشاره می‌کند- در دایرکتوری فوق باید وجود داشته باشد، آن را حذف نمایید؛ اگر احیاناً نبود، مشکلی وجود ندارد.

ممکن است بخواهید با دستور “mv�?، دایرکتوری لینوکس را به /usr/src/linux-kernel.version.number منتقل کرده، لینکی اشاره‌کننده به /usr/src/linux در آن ایجاد نمایید.

کد منبع را با استفاده از Tar و gzip باز کنید، حال شما یک /usr/src/linux دارید که در حدود 50 مگابایت کد منبع در آن وجود دارد. مرحله بعدی، ایجاد پیکربندی کرنل لینوکس می‌باشد. (/usr/src/linux.config)، این امر با استفاده از دستورات “make config�?، “make menuconfig�? یا “make xconfig" انجام خواهد شد.

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

برای پشتیبانی سخت‌افزار لیستی از سخت‌افزارهایی که روی این کرنل اجرا خواهند شد را تهیه کنید

( به عنوان نمونه: P166, Adaptec 2940 SCSI Controller, NE2000 Ethernet card, etc.) و گزینه‌های مورد نظر را فعال نمایید. برای پشتیبانی خدمات، باید سیستم فایلها را معین کنید (fat، ext2، minix، و غیره).

حال که کار پیکربندی کرنل به اتمام رسید، یابد آنرا کامپایل کنید:

make dep #(makes dependencies)
make clean #(cleans out previous cruft)
make bzImage #(make zImage pukes if the kernel is to big, and 2.2.x kernels tend to be pretty big)
make modules #(creates all the modules you specified)
make modules_install #(installs the modules to /lib/modules/kernel.version.number/)

سپس باید /usr/src/linux/arch/i386/boot/bzImage یا (zImage) را در /boot/vmlinuz-kernel.version.number کپی نمایید. آنگاه، /etc/lilo.conf را ویرایش نمایید
و یک ورودی جدید برای کرنل جدید به آن اضافه کرده، آنرا در ایمن‌ترین حالت، پیشفرضimage، تنظیم کنید.
(با استفاده از دستور defult=X، در غیر این صورت، اولین کرنل موجود در لیست، بوت خواهد شد.
اگر با مشکل مواجه شد، می‌توانید دوباره بوت کنید و به کرنل در حال کار قبلی برگردید.

boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
default=linux
image=/boot/vmlinuz-2.2.9
label=linux
root=/dev/hda1
read-only
image=/boot/vmlinuz-2.2.5
label=linuxold
root=/dev/hda1
read-only

حال که ویرایش /etc/lilo.conf را تمام کرده‌اید، باید /sbin/lili را جهت بازنویسی MBR، اجرا کنید. هنگامیکه LILO اجرا می‌شود، خروجی زیر را دارید:

Added linux *
Added linuxold

کلیه image-هایی که در داده‌های موجود در MBR لیست شده‌اند را- با علامت * که نشان‌دهنده پیشفرض است- برمی‌گرداند.
نگارشهای کرنل

در حال حاضر نگارشهای پایدار کرنل، سریهای 2.2.x، و نگارشهای در حال تولید، سریهای 2.3.x می‌باشند. سریهای 2.1.x، به دلیل اشکالات زیاد و ناپایداری، توصیه نمی‌شوند.
سری 2.0.x از کرنلها، خیلی قدیمی و فاقد برخی قابلیتها می‌باشد، متأسفانه، ارتقاء از 2.0.x به 2.2.x گام نسبتاً بزرگی است.
پکیج‌های نرم‌افزاری زیادی باید بروز شوند، همچنین کتابخانه‌ها، ماژولها و ... .
علاوه بر حفظ کرنل قدیمی در حال کار، باید یک ورودی به فایل lilo.conf، به عنوان “linuxold�? یا چیزی مشابه این، اضافه شود.
انتظار نداشته باشید که سریهای 2.2.x عاری از اشکال و خطا باشد؛ 2.2.9 شامل رخنه‌هایی هست که آنرا منسوخ خواهد ساخت.

به هر حال،سطوح مختلفی از patch-های کرنل، موجود می‌باشد که امنیت سیستم لینوکس را بالا می‌برد؛ برخی از آنها از موارد سرریز بافر جلوگیری می‌کنند و برخی دیگر، crypto-های قوی برای سیستم فراهم می‌کنند
Patch-های کرنل

Patch-های کرنل متنوعی وجود دارد که رابطه مستقیمی با امنیت دارند.
· Patch کرنل لینوکس امن
این patch تعداد زیادی از مشکلات را حل می‌کند و سطح امنیتی دیگری برای سیستم فراهم می‌آورد.
این patch برای سریهای کرنل 2.0 و 2.2 در دسترس می‌باشد و از اینجا قابل دریافت است.

· Patch کرنل بین‌المللی
این patch (که اندازه‌ی آن بیشتر از یک مگابایت است) حجم زیادی crypto-ی قوی و قدرتمند و آیتم‌های مربوطه اضافه می‌کند.
این patch چندین الگوریتم رمزگشایی دارد که AES کاندید آن بود. از اینجا می‌توانید آنرا دریافت کنید.

· LIDS (Linux Intrusion Detection System Patch)
این patch برخی قابلیتهای جالب و آشکارکننده‌هایی برای کشف حملات دارد.
می‌توانید file mounts، firewall، و گزینه‌های متنوع و جالب دیگری را که موجودند، “lock�? کنید. این patch را از اینجا دریافت نمایید.

· RSBAC
Rule Set Based Access Control یک مجموعه جامع و کامل از patch-ها و ابزارهایی برای کنترل جنبه‌های مختلف سیستم است. آنرا از آدرس http://www.rsbac.de/rsbac دریافت کنید.

· LoMAC
LOMAC (Low Water-Mark Mandatory Access Control for Linux) مجموعه‌ای از patch-ها کرنل برای افزایش امنیت سیستم لینوکس می‌باشد. آنرا از اینجا دریافت کنید.

· Audited
Audited به شما امکان استفاده از تسهیلات loging را می‌دهد. می‌توانید پیغامهای mail، رخدادهای سیستم و آیتمهای نرمالی که syslog پوشش می‌دهد، را log کنید. برنامه در اینجا قابل دسترس می‌باشد.

· Fork Bomb Defuser
یک ماژول کرنل قابل لود شدن که به شما امکان می‌دهد تا حداکثر تعداد فرایند به ازای هر کاربر و حداکثر تعداد fork-ها را کنترل کنید؛ این ماژول برای سرورهایی که کاربران غیر قابل اطمینان دارد بسیار مفید می‌باشد. آنرا از اینجا دریافت کنید.
اشکال‌زدایی کرنل لینوکس

· KDB v0.6 (اشکال‌زدای کرنل Built-in)
یک اشکال زدای کرنل SGI، در این اینجا موجود می‌باشد.

· KGDB (اشکال‌زدای کرنل راه دور)
SGI ابزاری نوشته است که امکان اشکال‌زدایی کرنل را، از راه دور، می‌دهد. آنرا از این آدرس دریافت کنید.
+ نوشته شده توسط در چهارشنبه سیزدهم تیر 1386 و ساعت 21:47 |
QTParted چیست؟

QTParted یک ابزار برای پارتیشن بندی است که به زبان C++ و با استفاده از Qt toolkit نوشته شده است. برنامه‌ای با نام “parted�? وجود داشت که امکان ایجاد، بازسازی و حذف پارتیشن‌ها را می‌داد.
اما واسط این برنامه، خط فرمان (Command line) است که کار را برای یک کاربر مبتدی دشوار می‌سازد.

با این توصیف، تولیدکنندگان “parted�? تصمیم گرفتند که هسته‌ی برنامه را از واسط آن جدا کنند.
بنابراین “parted�?، چیزی جز یک واسط خط فرمان libparted نیست. Libparted هسته‌ای است که کار ویرایش پارتیشن‌ها را انجام می‌دهد. QTParted یک GUI است که بر مبنای libparted و به QT نوشته شده است.

اگر می‌خواهید QTParted را بسازید، ابتدا باید libparted را نصب و اجرا نمایید و سرآیند library و SDK کامل QT را نیز داشته باشید.
از تنظیمات و مقداردهی صحیح متغیرهای محیطی QTDIR و QMAKESPEC اطمینان حاصل کنید.

REISERFS/NTFS/JFS/EXT3 در QTParted پشتیبانی می‌شوند، حتی اگر libparted این فایل سیستمها را پشتیبانی ننماید، QTParted می‌تواند از عهده‌ی این کار برآید؛
البته این کار با استفاده از ابزارهای خارجی انجام می‌گیرد. جدول زیر آخرین وضعیت پشتیبانی از سیستم فایلها را نشان می‌دهد:
سیستم فایل
ایجاد
قابلیت تغییر اندازه
توضیحات

Ntfs
P
P
به mkntfs و ntfsresize نیاز است. (linux-ntfs)

ReiserFS
P
P
به (progsreiserfs) در کنار libparted نیاز است.

JFS
P

به mkfs.jfs نیاز است. (jfsutils)

Ext2/Ext3
P

به mkfs.ext3 نیاز است. (e2fsprogs)

XFS
P

به mkfs.xfs نیاز است. (xfsprogs)




اسکرین‌شات‌ها












دریافت نرم‌افزار

نگارش غیر پایدار
QtParted-0.4.4

Source
qtparted-0.4.4.tar.bz2

دبیان
qtparted_0.4.3_i386.deb

Rpm
web page with RPMS made by erkaN



اخطار تولیدکننده‌ی نرم‌افزار: لازم به ذکر است که این نگارش، یکی از نسخه‌های اصلی منتشر شده خواهد بود. قابلیتهای زیادی در این نگارش در نظر گرفته شده‌اند.
یکی از اشکالات عمده‌ای که غالباً پیش می‌آید، اصرار برای بکار بردن یک ابزار در حالت ‘busy�?، و یا به عبارت دیگر ابزاری با یک پارتیشن mountشده است. تنها کاری که به کاربر پیشنهاد داده می‌شود، فرستادن تکی هر یک از عملیات و ری‌بوت کردن سیستم پس از مشاهده‌ی هر گونه “commit error�? است.
این مورد، اشکال نرم‌افزار QTParted نیست! بنظر می‌سد که کرنل قادر به بازخوانی جدول پارتیشن "ابزار busy" نمی‌باشد. در ضمن، برای اجرای qtparted 0.4 به libparted 1.6.6 یا جدیدتر نیاز است.

کدهای کامپایل: قبل از نصب QtParted، باید ورژن GNU Parted آنرا نصب نمایید:

صفحه مربوط: http://www.gnu.org/software/parted

QtParted به Parted-1.6 نیاز دارد: download parted-1.6

شما، همچنین به دیگر ابزارهای fstools (xfsprogs, jfsutils, ntfsprogs, progsreiserfs, ...)، به منظور پشتیبانی از فایل سیستمهای مورد نظرتان، نیاز دارید.

قبل از اجرای ./configure، متغیرهای محیطی QTDIR را چک کنید تا برای شما دایرکتوری Qt را تعریف نماید (دستور "env | grep QTDIR" مقدار جاری را به شما خواهد داد).
اگر این متغیر درست تعریف نشده، مجدداً با دستوری مشابه "export QTDIR=/usr/qt/3-embedded/ ; ./configure" آنرا تعریف کنید. اگر می‌خواهید به جای Qt-x11 از نگارش Qt-embedded استفاده نمایید، لازم است گزینه زیر را در پیکربندی اضافه کنید:

"./configure --enable-embedded"

برای کامپایل QtParted باید Qt-3.0 را بکار گیرید، البته Qt-3.3 توصیه می‌شود. اگر، حین کامپایل، با مشکلی مواجه شدید، می‌توانید به این forum رجوع کنید.

ممکن است با این خطا نیز مواجه شوید: configure: error: *** uuid library (libuuid) not found

Uuid یکی از کتابخانه‌های e2fsprogs می‌باشد که برای parted و Qtparted لازم است و باید با کامپایل کدهای زیر آنرا نصب نمایید:

./configure --prefix=/usr ; make ; make install ; make install-libs

اطلاعات بیشتر را در مورد پروژه می‌توانید در آدرس http://sourceforge.net/projects/qtparted مشاهده نمایید.
+ نوشته شده توسط در چهارشنبه سیزدهم تیر 1386 و ساعت 21:42 |
فیلمبرداری از میزکار لینوکس

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



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



مدتی قبل که نیاز داشتم یک سی دی آموزشی از یک برنامه تحت وب بسازم، به دنبال برنامه‌های فیلمبردای از میز کار می‌گشتم و یک برنامه عالی که قابلیت تصویر برداری با فرمت فلش (Shockwave Flash -swf) را داشت یافتم. آقای Yusuke Shinyama یک برنامه نویس ژاپنی نرم افزاری آزاد نوشته است که می‌تواند این کار را انجام دهد نام این برنامه VNC2SWF است و تحت مجوز آزاد گنو (GNU/GPL) منتشر شده است.



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



نحوه‌ی کار برنامه به این صورت است که ابتدا باید روی سیستمی که می‌خواهیم از آن فیلم بگیریم یک سرور VNC راه اندازی کرده باشیم. برای این کار می توانیم از TightVNC, X11VNC, Vino و یا هر سرور VNC دیگری استفاده کنیم. برنامه VNC2SWF ابتدا به یک سرور VNC متصل می شود و به جای نمایش دادن آن به شما شروع به ذخیره کردن آن به فرمت فلش می‌کند.



این قابلیت مزایای زیادی دارد, مثلا شما می‌توانید سرویس دهنده VNC را روی یک کاپیوتر در شبکه نصب کنید و از طریق شبکه و توسط کامپیوتر دیگری تصویر را ذخیره کنید. و یا به راحتی تصویر دریافتی از سیستم عامل‌های مختلف مثل Mac OSX , ویندوز و لینوکس را ذخیره کنید.فقط کافی است روی سیستم هدف یک سرویس دهنده VNC راه بیاندازید.



در اینجا ما قصد داریم از میزکار لینوکس ubuntu نسخه‌ی Edfgy Eft فیلم تهیه کنیم. برای این کار ابتدا باید سرویس دهنده VNC فعال شود، از آنجایی که ubuntu از میزکار گنوم استفاده می‌کند به راحتی می‌توانید از Remote Desktop موجود برروی میزکار GNOME استفاده کرد، برای این کار به منوی Preferenc >Remote Desktop بروید و گزینه‌های لازم را فعال کنید. برای فعال کردن می‌توانید مطابق شکل شماره‌ی (۱) اقدام کنید. شما می‌توانید کلمه عبوری برای VNC تعیین نکنید ولی در عوض حتما گزینه Ask for confirmation را تیک بزنید تا تصویر برداری با هماهنگی شما شروع شود.


+ نوشته شده توسط در چهارشنبه سیزدهم تیر 1386 و ساعت 21:32 |