مجموعه ترفندهای ♦ لینوکس ♦
تغییر Keyboard Layout پیشفرض گنوم 3 به Ctrl+Shift یا Alt+Shift در فدورا 20
دستور بالا Keyboard Layout را به Ctrl+Shift تغییر می دهد و دستور زیر آنرا به Alt+Shift تغییر می دهد.
برای تغییر از محیط گرافیکی نخست برنامه dconf-editor را با دستور زیر نصب کنید.
و پس از نصب شدن، برای بازکردن آن نخست کلید Super Key یا همان Window Key را کلیک کنید و نام dconf-editor را جستجو کنید.
پس از باز شدن برنامه مسیر دایرکتوری های زیر را دنبال کنید و سپس از پنل سمت راست مقدار کلید xkb options را مانند مقادیر بالا تغییر دهید.
فعال کردن دکمه های Minimize و Maximize در گنوم 3
نشان دادن مقدار پیشفرض (فعلی) کلید button-layout و تغییر آن با دستور dconf
با استفاده از مجوز root دستور dconf زیر را برای نشان دادن مقدار فعلی کلید button-layout استفاده کنید. button-layout بعنوان کلید و یکی یا هر سه عبارت minimize یا maximize یا close به عنوان مقادیر آن کلید هستند. گزینه read از دستور dconf مقدار فعلی یک کلید را در خط فرمان چاپ می کند. مسیر منهی به کلید button-layout دایرکتوری های org/gnome/shell/overrides/button-layout/ می باشد.
شکل زیر خروجی دستور بالا یعنی تنها مقدار close از کلید button-layout را نشان می دهد.
برای تغییر آن باید از دستور dconf به همراه سوئیچ write مقدار های minimize و maximize را به کلید button-layout اضافه کنید. شکل زیر ساختار کلید ها را نشان می دهد. مقادیر میان ” ” و با یک : شروع می شوند. خط شکل زیر دقیقا همان است که در حالت گرافیکی به کادر مقدار کلید در پنجره برنامه dconf-editor وارد می کنیم.
دستور زیر چگونگی اجرا را نشان می دهد.
اعمال تغییرات با رابط گرافیکی dconf-editor
یا می توانید از dconf-editor استفاده کنید. نخست لازم است آنرا با دستور زیر در فدورا نصب کنید.
دستور dconf-editor را در خط فرمان اجرا کنید یا اینکه کلید Super Key یا همان Window Key را کلیک کنید و نام dconf-editor را جستجو کنید.
از مسیر زیر کلید button-layout را پیدا کنید.
همانطور که می بینید مقدار آن بر روی Close است و باید مطابق با شکل زیر آنرا تغییر دهید.
تغییر زمان قفل شدن خودکار دسکتاپ گنوم 3 در فدورا 20
بطور پیش فرض پس از 5 دقیقه یا 300 ثانیه دسکتاپ گنوم 3 در صورت بی کار بودن قفل خواهد شد. برای تغییر آن باید پایگاه داده dconf را توسط یکی از روش های زیر تغییر دهید. این پایگاه داده چیزی شبیه به رجیستری ویندوز است (البته نمی توان گفت صد در صد شبیه به هر حال هر دو چیزی متفاوت هستند اما برای معرفی آن چیزی بهتر از قیاس با رجیستری ویندوز وجود ندارد). برای تغییر این مدت زمان یا باید از دستور dconf در خط فرمان یا از برنامه گرافیکی dconf-editor استفاده کنید.dconf بطور پیشفرض نصب شده است اما برای نصب dconf-editor باید آنرا نصب کنید.
تغییر مدت زمان توسط دستور dconf
با کاربر root نخست مقدار پیشفرض را بخوانید (در ترمینال چاپ کنید.).
در واقع idle-delay یک key و 300 مقدار یا Value آن است. مسیر های org/gnome/desktop/session/idle-delay/ نیز بعنوان دایرکتوری هستند. دستور dconf با گزینه read مقدار یک کلید (یا key) را می خواند و روی ترمینال چاپ می کند. برای تغییر آن باید از گزینه write دستور dconf استفاده کنید.
با اجرای دستور بالا مقدار آن به 600 ثانیه یا 10 دقیقه تغییر می کند.
تغییر توسط dconf-editor
اگر dconf-editor بر روی فدورا 20 (یا نسخه 19) نصب نیست آنرا با دستور زیر نصب کنید.
سپس برنامه را با دستور dconf-edirtor از خط فرمان باز کنید یا کلید Super Key که همان Window Key است را کلیک و نام آنرا جستجو کنید.
سپس از برنامه باز شده مسیر زیر را در میان دایرکتوری ها دنبال کنید.
از پنل سمت چپ idle-delay را مانند شکل زیر انتخاب کنید.
و مقدار را از 300 به 600 مانند شکل زیر تغییر دهید.
تبدیل فایل های rpm به فایل های deb در ابونتو
بسته های نرم افزاری deb و rpm بسته های نرم افزاری باینری مورد استفاده در توزیع های ابونتو و دبیان و توزیع های مبتنی بر RHLE برای نصب نرم افزار ها هستند. برای نصب بسته های rpm در توزیع هایی همچون ابونتو دبیان و پارسیكس ابتدا می بایست بسته rpm را به نوع deb تبدیل كنیم و سپس با دستور dpkg انرا نصب كنیم. از alien برای تبدیل فایل های rpm به deb و سپس نصب آنها توسط دستور dpkg از خط فرمان. البته می توانید با alien بسته ها با فرمت های مختلف را به هم تبدیل کنید. مثلن تبدیل deb به rpm نیز می توانید استفاده کنید. لازم است آنرا توسط دستور دستور زیر نصب کنید.
پس از نصب بسته های مورد نیاز با دستور زیر هر بسته rpm را به یك بسته deb تبدیل می كنیم :
خوب ما با دستور پیشین یك بسته rpm رو به یك بسته deb تبدیل كردیم و با دستور زیر هر بسته deb را نصب می كنیم :
برای تبدیل deb به rpm از سوئیچ to-rpm — یا r- استفاده کنید.
دستور alien -h راهنما و سوئیچ های دستور را نشان می دهد.
Package Converter نرم افزاری گرافیکی برای تبدیل بسته های نرم افزاری گوناگون به یکدیگر که در واقع همان alien است. برای نصب آن نخست با دستور زیر بسته نرم افزاری را دانلود کنید.
دستور زیر را اجرا کنید تا بسته نصب شود
دستور زیر را اجرا کنید تا نرم افزار اجرا و شکل زیر نشان داده شود.
پیدا کردن حداکثر ساپورت RAM بایوس یا مادربورد ماشین (سرور)
dmidecode دستوری است که اطلاعات سخت افزاری و اطلاعات بایوس سیستم را به صورت قابل خواندن برای مدیران (human readable) نشان می دهد. درواقع این دستور محتوای جدول DMI سیستم (کامپیوتر) را به فرمتی قابل خواندن نشان می دهد. دو مورد مفیدی که می توان بدست آورد، میزان حاظف RAM موجود و همچنین حداکثر حافظه RAM که توسط سیستم (مادربورد) قابل پشتیبانی است. همچنین می توانید تعداد اسلات های DIMM را نیز ببینید.DMI مخفف Desktop Management interface بوده و توسط Distributed Management Task Force معرفی شده است. همچنین SMBIOS نیز توسط Distributed Management Task Force معرفی شد و دستور dmidecode محتوای جدول DMI را برای خوانده شدن توسط مدیران دیکد می کند. دستور dmidecode را به تنهایی اجرا کنید.
رکوردهای جدول DMI دارای فرمت زیر هستند
record id شماره ای منحصر به فرد برای هر رکورد در جدول DMI.
dmi type id نوع رکورد، مانند Bios یا memory.
record size اندازه رکورد در جدول DMI.
multi line record values برای برخی از رکورد ها که شامل مقدار چند خطی است.
برای پیدا کردن مجموع خطوط درون جدول از دستور زیر استفاده کیند.
هر dmi type id (یا هر نوع رکورد) اطلاع خاصی از یک مولفه سخت افزاری مانند حافظه اصلی را نشان می دهد. سوئیچ t- از دستور dmidecode به صورت کلی زیر برای نمایش یک نوع خاص استفاده می شود.
این فایل شامل تمامی انواع رکورد ها و شماره های (id های) آنها می باشد. بطور مثال برای پیدا کردن حداکثر حافظه RAM قابل پشتیبانی برای ماشین (سرور) از دستور زیر استفاده کنید.
در خروجی شکل بالا Maximum Capacity نشان دهنده حدکثر پشتیبانی و Number of Devices مجموع تعداد اسلات های DIMM است. یا برای بدست آوردن اطلاعات از RAM موجود در سرور (ماشین) از دستور زیر استفاده کنید.
Size میزان حافظه RAM فعلی را نشان می دهد. یا برای بدست آوردن اطلاعاتی از Bios سیستم از دستور زیر استفاده کنید.
یا برای بدست آوردن کارخانه (سازنده) و مدل و Serial Number تجهیزات از دستور زیر استفاده کنید.
smem ابزاری برای مانیتورینگ حافظه فیزیکی
نصب آن در توزیع های ابونتو و دبیان با استفاده از دستور زیر انجام می شود.
و در توزیع های مبتنی بر RHLE به صورت زیر است. باید بسته کد منبع را دانلود کرده و سپس آنرا از حالت فشرده خارج و مجوز اجرایی را به فایل مورد نظر که smem نام دارد اعطا کرد. این فایل شامل متن واضح کد های نوشته شده به زبان Python می باشد. برای اجرای دستور های فوق نیاز به مجوز root دارید.
ساده ترین شکل استفاده اجرای تنهای دستور بدون هیچگونه سوییچی است.
از تصویر بنشان دهنده حافظه مصرفی فر فرایند به ازای هر کاربر می باشد. با استفاده از سوییچ w- خروجی به صورت system wide نشان داده می شود. هر سیستم عاملی فضای حافظه فیزیکی را به دو بخش User Space و Kernel Space تقسیم می کند. User Space برای اجرای فرایند های کاربران مانند مرور گر وب یا پردازشگر متن است. هیچ فرایند کاربری (از User Space) حق دسترسی به فضای Kernel Space را ندارد. البته با استفاده از System Calls ها امکان برقراری ارتباط میان دو ناحیه و ارسال درخواست به فضای کرنل وجود دارد.
برای مشاهده فضای مصرفی به ازای هر کاربر از سوییچ u- استفاده کنید. هر خط متعلق به یک کاربر می باشد و همچنین ستون count تعداد فرایند های متعلق به آن کاربر می باشد.
همچنین امکان نشان دادن خروجی به صورت نمودار ها و گرافیکی وجود دارد. دستور های زیر نمونه هایی هستند.
و همچنین برای خواندن راهنما از دستور smem –help استفاده کنید.
تغییر سطح اجرایی پیش فرض در لینوکس
در این مطلب چگونگی تغییر سطح اجرایی گفته شد، اما استفاده از دستور های runlevel و who -r سطح اجرایی را بطور موقتی تغییر می دهد و پس از راه اندازی مجدد سیستم، سیستم دوباره از همان سطح اجرایی پیش فرض بوت خواهد شد. برای تغییر دایمی سطح اجرای (بطور مثال از سطح اجرایی 2 به 5 در ابونتو یا از سطح اجرایی 3 به 5 در CentOS) باید فایلی را ویرایش کرد.
برای تغییر دایمی سطح اجرایی در ابونتو باید پارامتر DEAFULT_RUNLEVEL را تغییر دهید. این پارامتر در فایل rc-sysinit.conf زیر دایرکتوری etc/init/ قرار دارد. دستور زیر سطح اجرایی پیش فرض را نشان می دهد.
برای تغییر باید با یک ویرایشگر مانند vi فایل را باز کنید و مقدار پارامتر DEFAULT_RUNLEVEL را تغییر دهید. برای تغییر سطح اجرایی پیش فرض در توزیع های RHLE/CentOS/Fedora باید خطی که شامل عبارت initdefault از فایل etc/inittab/ را تغییر داد.دستور زیر خطی که شامل این پارامتر است را نشان می دهد.
عدد 5 نشان دهنده سطح اجرایی پیش فرض است. پس لازم است که آنرا تغییر داد.
ذخیره و بازگردانی Rule های iptables در لینوکس
ذخیره Rule ها با استفاده از دستور iptables-save
برای بازگردانی Rule ها از دستور iptables-restore استفاده کنید.
در توزیع های ابونتو و دبیان بسته نرم افزاری به نام iptables-persistent وجود دارد که این فرایند را بطور خودکار انجام می دهد. بطور پیش فرض فایلی به نام rules.v4 زیر دایرکتوری etc/iptables/ ایجاد می کند و از آن برای ذخیره سازی و بازگردانی Rule ها استفاده می کند.
پس از اجرای دستور بالا و پس از نصب پنجره ای مانند زیر برای پیکربندی (چون برای نخستین بار است، پس برای ذخیره سازی Rule ها) نشان داده می شود. yes را انتخاب کنید تا فایل ایجاد شود. فایل ایجاد شده برای Rule های مربوط به IPv4 خواهد بود.
پس از کلیک روی yes پنجره بالا و ذخیره فایل مربوطه، پنجره ای همانند بالا برای IPv6 نشان داده خواهد شد که اگر آنرا هم yes انتخاب کنید، فایل rules.v6 ایجاد شده و Rule های مربوط به IPv6 را ذخیره می کند.
پس از تکمیل فرایند نصب و پیکربندی، خروجی مانند شکل زیر خواهد بود. یعنی سرویس iptables-presistent فعال (start) می باشد.
سرویس iptabels-presistent تحت کنترل init و توسط دستور های زیر قابل start و flush شدن می باشد.
به هر حال فرمتی که توسط دستور iptables-saves در تمامی توزیع های لینوکسی یا توسط دستور iptables-presistent ایجاد می شود یکسان و همانند شکل زیر است.
Logout خودکار از Bash در لینوکس
و سپس دستور زیر را در آن وارد کنید
خط بالا متغیری readonly به نام TMOUT را با مقدار 600 که معادل 10 دقیقه است، تعریف می کند. سپس با دستور زیر مجوز اجرایی را به اسکریپت ایجاد شده بدهید
bash یا sh پوسته پیش فرض سیستم عامل لینوکس است اما شاید از پوسته csh استفاده کند، همچنین سیستم عامل FreeBSD نیز از csh بطور پیش فرض استفاده می کند پس باید رویه بالا، یعنی ایجاد یک فایل زیر داریکتوری profile.d وسپس تعریف متغیر و اهدای مجوز به فایل را برای Session های ایجاد شده از پوسته csh تعریف کنید با این تفاوت که پسوند فایل csh خواهد بود.
و سپس خط زیر را در آن قرار دهید.
دستور بالا متغیری به نام autologout با مقداری معادل 10 دقیقه از نوع readonly تعریف می کند. و در نهایت مجوز اجرایی را به فایل بدهید.
دو تفاوت : توجه کنید که این تنظیمات در سیستم عامل لینوکس انجام شده است،
- متغیر TMOUT در پوسته bash و متغیر autologout در پوسته csh
- export در bash و set در csh و readonly در bash و r- در csh
هر دوی متغیر ها از نوع متغیر های محیطی بوده و باید به بزرگی و کوچکی حروف دقت کنید.
یکی از مشکلاتی که کاربران دارای سیستم عامل لینوکس به ویژه توزیع اوبونتو با آن درگیر هستند ، عدم کارکرد دکمه های Suspend و Hibernate بر روی لپ تاپ آنهاست. برای حل این مشکل راه حل ساده ای وجود دارد. در این ترفند به معرفی راه حل این روش خواهیم پرداخت.
بدین منظور:
شما ابتدا باید آخرین نسخه بسته نرم افزاری uswsusp را نصب کنید. دستور زیر را برای نصب در ترمینال وارد کنید:
برای suspend دستور زیر را وارد کنید:
* در نسخه جدید اوبونتو s2ram حذف گردیده است. شما می توانید نسخه اصلی uswsusp را از سایت رسمی uswsusp دانلود کرده و نصب کنید. راه دیگر برای استفاده از s2ram نصب نسخه های قدیمی تر uswsusp می باشد. البته شما می توانید از دستور pm-suspend جهت suspend استفاده نمایید.
برای hibernate دستور زیر را وارد کنید:
برای اینکه دکمه های suspend و hibernate نیز از این بسته استفاده کنند، مراحل زیر را دنبال کنید:
ابتدا از اسکریپت های پیش فرض مربوط به hibernate و suspend نسخه پشتیبان تهیه کنید:
sudo cp hal-*-suspend-linux hal-system-power-suspend-linux.bak
sudo cp hal-*-hibernate-linux hal-system-power-hibernate-linux.bak
اکنون اسکریپت ها جدید را جایگزین می کنیم.
برای hal-system-power-suspend-linux:
سپس کد های زیر در داخل فایل قرار دهید و آن را save کنید.
/sbin/s2ram
برای hal-system-power-hibernate-linux:
سپس کد های زیر در داخل فایل قرار دهید (ترفندستان) و آن را save کنید.
/sbin/s2disk
در صورتی که با s2disk یا s2both مشکلی داشتید، بعد از نصب uswsusp از دستور زیر برای تنظیم دوباره آن استفاده کنید:
*نام دیگر uswsusp عبارت µswsusp می باشد.
*دقت هم نمایید کدهای فوق را حتماً کپی و پیست کنید.
۱۰ ترفند خوب برای بالا بردن امنیت سیستم عامل لینوکس
بدون شک یک کامپیوتر رومیزی با لینوکس بسیار امن تر از همان کامپیوتر با سایر سیستم عامل ها خواهد بود. نکته مهم این است که همیشه برای رسیدن به یک سطح خوب امنیتی حتما لازم نیست از نرم افزارهای امنیتی و تکنیک های خاص استفاده کنید. گاهی اوقات آسان ترین را ه ها برای کسب امنیت، آنهایی هستند که به آسانی فراموش می شوند. ممکن است احساس کنید این موارد بسیار عادی هستند اما شاید در همین نکات عادی راه کارهای امنیتی ای بیابید که تاکنون نمی دانستید. اگر یک کاربر تازه کار لینوکس هستید، ۱۰ ترفندی که در ادامه معرفی خواهیم کرد محل خوبی برای شروع است. در نتیجه مطمئن باشید تجربه خوبی از لینوکس خواهید داشت.
اگر تنها کاربر سیستمتان هستید، می توانید به جای خروج، صفحه را قفل کنید. قفل کردن صفحه به سادگی صورت می گیرد و به این معنی است که هنگام بازگشت به سیستم یک پسورد از شما خواسته می شود. فرقی که قفل کردن با خروج از سیستم دارد اینست که می توانید برنامه ها را در حال اجرا رها کنید و صفحه را قفل نمایید. وقتی که با وارد کردن پسورد سیستم را باز می کنید همان برنامه ها کماکان در حال اجرا هستند.
ساختار سیستم فایل لینوکس و یونیکس Linux file system layout
ابزارهای ذخیره سازی مانند فلاپی دیسکها، دیسکهای سخت، درایوهای CD-ROM، درایوهای Zip و... تا قبل از اینکه سیستمعامل سیستم فایل را روی آنها تشکیل دهد، قابل استفاده نیستند.
سیستم فایلهای گوناگونی برای سیستمعاملهای مبتنی بر یونیکس و لینوکس ارائه شدهاند که برخی از آنها عبارتند از ext2، ext3، xfs، reiserfs و غیره. این سیستم فایلها در جزئیات فنی دارای تفاوتهایی با هم هستند ولی از نظر ساختاری که ایجاد میکنند مشابه بوده و تفاوت چندانی باهم ندارند. در این مقاله ما وارد جزئیات فنی هر نوع از سیستم فایلها نشده و تنها ساختار آنها را بررسی خواهیم کرد.
سیستم فایل سیستمعاملهای مبتنی بر یونیکس و لینوکس بصورت یک درخت وارونه پیاده سازی شده است. در یونیکس و لینوکس دیگر شما چیزی به نام درایوهای A ، C و ... ندارید. تمام ابزارها و سیستم فایلها شاخههایی از این درخت وارونه هستند. مرکز این درخت ریشه یا root نام دارد که بالاترین سطح سیستم فایل را تشکیل میدهد. زیر ریشه، پوشههایی قرار دارند که سایر قسمتهای سیستم فایل را تشکیل میدهند که اکنون درباره آنها توضیح میدهم.
در سیستم فایل سیستمعاملهای مبتنی بر لینوکس و یونیکس، دیسکهای سخت میتوانند پارتیشنهای متعددی داشته باشند. در این صورت هر پارتیشن دارای یک نقطه اتصال یا mount point میباشد که در آن نقطه به درخت سیستم فایل متصل میشود. مثلا میتوانید اطلاعات کاربران سیستم را در یک پارتیشن جداگانه ذخیره نموده و نقطه اتصال آنرا home تعیین کنید که محل قرارگیری اطلاعات کاربران است و به همین ترتیب.
بخشهای درخت سیستم فایل
اکنون به بررسی شاخههای سیستم فایل میپردازیم. توجه داشته باشید که دسترسی به اکثر این شاخهها فقط توسط کاربر ریشه امکان پذیر است.
-شاخه bin: در این شاخه، دستورات سیستمعامل که برای تمام کاربران قابل دستیابی هستند و برخی دستورات مدیریتی سیستم قرار میگیرند.
-شاخه boot: این شاخه که میتواند در یک پارتیشن جداگانه بوده و به پوشه boot متصل شده باشد، حاوی برنامه راهنداز بوت سیستم عامل میباشد. مانند Grub و Lilo.
-شاخه dev: محل قرارگیری نقطه دسترسیهای ابزارهای سخت افزاری است. مثلا تمام پورتها، پارتیشنها و... در اینجا دارای یک فایل هستند. برای مثال فایل dev/fd0 نشاندهنده فلاپی درایو سیستم است و به همین ترتیب. بسیاری از برنامههای کاربردی از این فایلهای دسترسی برای خواندن و نوشتن دادهها بر روی ابزار مورد نظرشان استفاده میکنند. مثلا یک برنامه کاربردی فایل dev/fd0 را باز کرده و در آن مینویسد. در حقیقت اطلاعات روی درایو فلاپی و دیسکی که در آن قرار دارد، نوشته خواهد شد.
-شاخه etc:
در این شاخه فایلهای پیکربندی برنامههای سرویس دهنده و برخی فایلهای سیستمی دیگر قرار میگیرند. مثلا فایل پیکربندی سرویس دهنده وب آپاچی در سیستمهای دبیان در etc/apache/http.conf قرار دارد و به همین ترتیب.
-شاخه home:
در این شاخه دایرکتوریهای خانگی کاربران سیستم و اطلاعات آنها قرار میگیرد. بهتر است این شاخه در یک پارتیشن جداگانه قرار گرفته و متصل شود. این کار حفاظت از دادههای کاربران را بالاتر خواهد برد. ضمنا در صورت نیاز به فرمت و نصب مجدد سیستم، اطلاعات کاربران دست نخورده باقی مانده و پس از نصب مجدد، کلیه تنظیمات شخصی و اطلاعات آنها بدون تغییر باقی خواهند ماند.
-شاخه lib:
این شاخه همانطور که از نام آن پیداست، محل قرار گیری فایلهای کتابخانه برنامهها است. این کتابخانهها توسط برنامههای کاربردی و ابزارهای برنامه نویسی بکار گرفته میشوند.
-شاخه mnt:
این شاخه معمولا دارای زیرشاخههایی مانند floppy و cdrom بوده و محل اتصال سنتی درایوهای فلاپی و CD-ROM میباشد. همچنین پارتیشنها دیگر دیسک سخت را نیز میتوانید در این شاخه متصل نمایید. البته اجباری به این کار وجود ندارد. مثلا در سیستمهای مبتنی بر دبیان، درایوهای فلاپی و CDROM در شاخههای floppy و cdrom که در زیر ریشه قرار دارند، متصل میشوند. اتصال و برداشتن اتصال پارتیشنها و درایوها با استفاده از دستور mount صورت میگیرد. اشتراکات شبکه را نیز میتوانید در این شاخه متصل نمایید.
-شاخه proc:
این شاخه یک سیستم فایل مجازی است که برخی اطلاعات مربوط به سیستم و هسته از آن قابل دستیابی میباشد. مثلا فایل version در این شاخه حاوی اطلاعات هسته سیستم عامل مانند نسخه آن و ... میباشد.
-شاخه sbin:
دستورات و برنامههای مدیریتی سیستم در این شاخه قرار میگیرند که مخصوص کاربر root است.
-شاخه tmp:
محل قرارگیری برخی فایلهای موقتی برنامههای کاربردی است.
-شاخه usr:
بسیاری از برنامههای کاربردی در این شاخه نصب میشوند. مثلا Xwindow در این شاخه قرار دارد. همچنین برخی دستورات و دستورات مدیریتی نیز در مسیرهای usr/bin و usr/sbin قرار میگیرند.
-شاخه var:
این شاخه که معمولا در کامپیوترهای سرویس دهنده در یک پارتیشن جداگانه قرار میگیرد، مخصوص برنامههای سرویس دهندهای مانند وب و FTP و بانکهای اطلاعاتی است. مثلا فایلهای مربوط به یک وب سایت میتوانند در var/www قرار گیرند. به دلیل اینکه در برخی از حملات DOS دیسک سخت سیستم با فایلهای آشغال پر میشود، این شاخه را در یک پارتیشن جداگانه قرار میدهند که در صورت قرارگیری تحت حمله و پرشدن احتمالی دیسک سخت، کل سیستم عامل دچار وقفه نگردد و آسیب به همان قسمت محدود شود.
تمامی شاخههایی که در بالا توضیح داده شد، میتوانند در پارتیشنهای جداگانه قرار داده شوند. ولی ضرورتی ندارد.
پارتیشن swap
هنگام نصب لینوکس، پارتیشنی به نام swap میسازید. کاربرد این پارتیشن چیست؟
این پارتیشن که تحت ساختار سیستم فایل جایی متصل نمیشود، محل قرارگیری swapping file لینوکس که همان حافظه مجازی روی دیسک سخت است، میباشد. بهتر است حجم آنرا برابر یا ۲ برابر حافظه سیستم خود تعیین نمایید.
نگاهی دقیقتر به فرایند راهاندازی لینوکس
امروزه شما قادرید براحتی یکی از توزیعهای لینوکس را تهیه کرده و آنرا نصب و استفاده نمایید بدون اینکه واقعا نیاز داشته باشید تا بخشهای فنی سیستمعامل را درک نمایید. مقاله حاضر نگاهی اجمالی به فرایند راهاندازی سیستم لینوکس شما دارد.
اصطلاح فنی راهاندازی کامپیوتر را فرایند بوت یا Boot strapping میگویند و یا بطور خلاصهتر بوت (boot یا booting). بخش آغازین این فرایند توسط کدهای ذخیره شده در ROM کامپیوتر شما انجام میشود. این بخش در همه سیستمعاملها یکسان میباشد. وظیفه این کد بارگذاری مدیر بوت لینوکس (Linux Boot Loader) برای ادامه فرایند میباشد.
برنامههای مدیر بوت
برنامههای مدیر بوت برنامههایی هستند که توسط ROM کامپیوتر (یا همان BIOS) بارگذاری میشوند. در لینوکس دو مدیر بوت رایج وجود دارد.
لیلو (LiLO) مدیر بوت سنتی لینوکس و گراب (Grub) مدیر بوتی جدیدتر میباشد.
هرکدام از این برنامهها ابتدا مقداری اطلاعات پیکربندی را دریافت کرده و سپس هسته لینوکس یا سیستمعامل دیگری را بارگذاری میکند و ادامه فرایند بوت را به آن میسپارد.
مهمترین تفاوت بین لیلو و گراب در نحوه دریافت اطلاعات پیکربندی است. فایل پیکربندی لیلو با اجرای دستور lilo بصورت ثابت ذخیره میگردد. این اطلاعات یا در رکورد بوت اصلی (MBR یا Master Boot Record) دیسک یا در رکورد بوت پارتیشن لینوکس ذخیره میشود. اطلاعات پیکربندی که توسط دستور lilo استفاده میشود، عموما در فایل etc/lilo.conf ذخیره میشود. در زیر یک مثال از این فایل پیکربندی را مشاهده مینمایید.
root=/dev/hda1 # root partition
install=/boot/boot.b
map=/boot/map
delay=50 # 5 second delay before auto-boot
image=/vmlinuz # kernel
label=linux # name to refer to entry
read-only
image=/vmlinuz.old # backup entry
label=old
read-only
در مثال بالا امکان انجام بوت از روی دو هسته مختلف یعنی vmlinuz و vmlinuz.old وجود دارد. هنگام بوت شما میتوانید یکی از این هستهها را انتخاب نمایید. با فشردن کلید TAB در اعلان لیلو، گزینههای موجود لیست میشوند. در صورتی که هسته جدیدی را با ویرایش فایل etc/lilo.conf اضافه کردهاید و یا هر تغییر دیگری در فایل پیکربندی لیلو اعمال کردهاید، باید پس از آن دستور lilo را اجرا نمایید تا این تغییرات اعمال شوند.
گراب فایل پیکربندی را هنگام بوت میخواند. حجم MBR فقط ۵۱۲ بایت است و تنها بخشی از گراب که عهده دار فرایندهای بسیار ابتدایی بوت است در آن ذخیره میشود. بقیه اطلاعات از روی پارتیشنی که اطلاعات بوت گراب در آن ذخیره شده است، بارگذاری میگردد.
گراب توسط برنامه grub-install نصب میشود. فایل پیکربندی گراب به طور معمول در مسیر boot/grub/menu.lst قرار دارد. در زیر یک مثال از این فایل را مشاهده مینمایید:
timeout 8
gfxmenu (hd0,1)/boot/message
title Linux
kernel (hd0,1)/boot/vmlinuz root=/dev/hda2 desktop showopts
initrd (hd0,1)/boot/initrd
title Failsafe
kernel (hd0,1)/boot/vmlinuz root=/dev/hda2 showopts ide=nodma apm=off acpi=o
ff vga=normal nosmp noapic maxcpus=0 3
initrd (hd0,1)/boot/initrd
title Memory Test
kernel (hd0,1)/boot/memtest.bin
در صورتی که شما کامپیوتر خود را با یک سیستمعامل عامل اختصاصی از ردموند به اشتراک گذاشتهاید، حواستان باشد که آنها اعتقاد دارند که سیستمعاملی جز سیستمعامل خودشان وجود ندارد و بنابراین اگر ویندوز را پس از لینوکس نصب کنید، بر روی MBR خواهد نوشت. به همین علت ابتدا ویندوز را نصب نمایید.
سطوح اجرایی لینوکس
سطوح اجرایی لینوکس به شما آرایهای از پیکربندیهای سیستمی ارائه میکنند. بدون مشخص کردن، معمولا سیستم با سطح اجرایی پیشگزیده که ممکن است ۳، ۲ یا ۵ باشد، بوت میشود. این سطح اجرایی پیشگزیده را میتوانید با ورود برخی کلمات کلیدی هنگام بوت تغییر دهید.
به طور استاندارد ۷ سطح اجرایی در لینوکس وجود دارد. از ۰ تا ۷. سطح اجرایی ۰ به معنی خاموش کردن سیستم، سطح اجرایی ۱ به معنی حالت تک کاربر و سطح اجرایی ۶ به معنی بوت مجدد (Reboot) سیستم هستند. سطوح اجرایی دیگری که رایج هستند عبارتند از سطح اجرایی ۳ که یک سیستم چند کاربره بدون محیط گرافیکی است، حالت اجرایی ۵ که محیط اجرایی چندکاربره همراه با محیط گرافیکی است. البته در سیستمهای مبتنی بر لینوکس دبیان، سطوح اجرایی ۳ و ۵ با سطح اجرایی ۲ جایگزین شدهاند. در بسیاری از سیستمها، یک سطح اجرایی دیگر موسوم به S وجود دارد که مشابه به سطح اجرایی ۱ بوده ولی برای ورود به آن نیاز به کلمه عبور ریشه میباشد. این بدلیل مسائل امنیتی است.
محتویات فایل etc/inittab مشخص کننده سطوح اجرایی سیستم شما و سطح اجرایی پیشگزیده میباشد. در زیر مثالی از این فایل را مشاهده مینمایید:
# /etc/inittab
#
# This is the main configuration file of /sbin/init, which
# is executed by the kernel on startup.
#
# The default runlevel
id:5:initdefault:
# /etc/init.d/rc takes care of runlevel handling
#
# runlevel 0 is System halt (Do not use this for initdefault!)
# runlevel 1 is Single user mode
# runlevel 2 is Local multiuser without remote network (e.g. NFS)
# runlevel 3 is Full multiuser with network
# runlevel 4 is Not used
# runlevel 5 is Full multiuser with network and xdm
# runlevel 6 is System reboot
#
l0:0:wait:/etc/init.d/rc 0
l1:1:wait:/etc/init.d/rc 1
l2:2:wait:/etc/init.d/rc 2
l3:3:wait:/etc/init.d/rc 3
l5:5:wait:/etc/init.d/rc 5
l6:6:wait:/etc/init.d/rc 6
# what to do in single-user mode
ls:S:wait:/etc/init.d/rc S
~~:S:respawn:/sbin/sulogin
# what to do when CTRL-ALT-DEL is pressed
ca::ctrlaltdel:/sbin/shutdown -r -t 4 now
# getty-programs for the normal runlevels
# :::
# The "id" field MUST be the same as the last
# characters of the device (after "tty").
1:2345:respawn:/sbin/mingetty --noclear tty1
2:2345:respawn:/sbin/mingetty tty2
3:2345:respawn:/sbin/mingetty tty3
4:2345:respawn:/sbin/mingetty tty4
5:2345:respawn:/sbin/mingetty tty5
6:2345:respawn:/sbin/mingetty tty6
خط id:5:initdefault به معنی این است که سطح اجرایی پیشگزیده کامپیوتر شما سطح اجرایی ۵ است.
خطوط l1:1:wait:/etc/init.d/rc 1 و به همین ترتیب، باعث میشوند تا اسکریپت etc/init.d/rc سطح اجرایی مربوطه را بصورت یک آرگومان ارسال نماید. سپس این اسکریپت پروسههای خاص سطح اجرایی ارسال شده را آغاز میکند. تمام اسکریپتهای کنترل کننده پروسههای مختلف در مسیر etc/init.d/ ذخیره شدهاند.
به طور معمول، بطور معمول پروسههایی که با ورود به یک سطح اجرایی، اجرا یا متوقف خواهند شد در زیر دایرکتوریهایی مانند rc2.d یا rc5.d (همنام با شماره سطح اجرایی مربوطهشان) ذخیره شدهاند. این فایلها لینکهای Symbolic به اسکریپتهای موجود در etc/init.d/ میباشند. لینکهایی که با K آغاز میشوند، هنگام ورود به سطح اجرایی مربوطه نابود (Kill) خواهند شد. لینکهایی که با S شروع میشوند، هنگام ورود به آن سطح اجرایی شروع (Start) خواهند شد. این لینکها بصورت الفبایی اجرا میشوند، به این معنی که ابتدا لینکهای K آغاز شده و سپس لینکهای S. ترتیب اجرای لینکهای K و S با عددی دو رقمی که بلافاصله پس از حروف S یا K قرار میگیرد، تعیین میشود.
این روش، روش استاندارد برای اجرای پروسهها در آغاز فرایند بوت میباشد. این سیستم استاندارد به System V Init موسوم میباشد که مشابه با سیستمعامل یونیکس است.
در صورتی که همه چیز به خوبی پیش رفته باشد، سیستم شما هم اکنون در حال اجرا بر روی سطح اجرایی انتخاب شده است. برای تغییر سطح اجرایی میتوانید بصورت کاربر ریشه وارد شده و دستور init را در خط فرمان تایپ نمایید. برای مثال init 3.
خیلی جالب بود
ممنون
غیر فعال کردن آپدیت خودکار وردپرس
یکی از قابلیت های جدید ک به سیستم مدیریت وردپرس از ورژن 3.7 بود به روز رسانی خودکار بدون دخالت دست بود ! به روز رسانی خودکار مزایا و معایبی داره ، از مزایایش اینه ک سایت شما همیشه به روز خواهد بود و از نظر امنیتی و پایداری در سطح بالا خواهد ماند ولی از معایبش مخصوصا برای ما فارسی زبان ها اینه که ممکنه باعث بشه تغییراتی ک شما روی قالب و یا کد ها دادید بدون اخطار از دست بره و این یه فاجعه بزرگ برای کساییه که تغییرات زیادی روی سایت خودشون اعمال کردن .
چندین و چند راه برای غیر فعال کردن این ویژگی وجود داره که من صرفا به رائه یک راه حل بسنده می کنم در ادامه مطلب با ما همراه باشید .
برای غیر فعال کردن این ویژگی کافیه ک فایل wp-config.php ورد پرس خود را در یک ویرایشگر متنی باز کنید و خط زیر رو به اون اضافه کنید .
|
1
|
define( 'AUTOMATIC_UPDATER_DISABLED', true ); |