افزایش فضای root با کمک LVM

در صورتی که فضای جاری root (که با ساختار lvm ایجاد شده است)، به لحاظ ظرفیت برای ادامه کار سیستم مناسب نباشد، می توان با کمک LVM این فضا را افزایش داد.

در ادامه این متن، مراحل افزایش فضای root را با کمک ویژگی lvm مشاهده خواهید کرد.

(بیشتر…)

اتصال به لینوکس از طریق remote desktop

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

(بیشتر…)

نگهداشت LogFileهای اوراکل با کمک سرویس Logrotate

در هنگام استفاده از بانک اطلاعاتی اوراکل باید مراقب رشد یکباره لاگ فایلهایی چون alert log، listener log و … بود.

از جمله دلایلی که سبب رشد یکباره این فایلها می شود، می توان به تکرار مکرر خطاها در این محیط اشاره کرد این خطاها ممکن است تا حدی بر روی این LogFileها اثرگذار باشند که سبب پرشدن فضای سیستم شده و در نهایت مانع از ادامه سرویس دهی بانک شوند. البته حتی اگر این رشد سریع، مانع از توقف سرویس نشود، حداقل رجوع(مشاهده و جستجو) به LogFileها را بسیار کند خواهد کرد پس لاجرم باید به فکر راهکاری بود تا از رخ دادن احتمالی این مسئله جلوگیری کرد.

(بیشتر…)

دستور journalctl

در RHEL 7 همراه با systemd سرویسی به نام Journald ارائه شد که در کنار rsyslogd، وظیفه مدیریت لاگها را بر عهده دارد. به طور دقیق تر، این سرویس با ایجاد فایلهای باینری، جمع اوری و ذخیره لاگهای تولید شده توسط کرنل، پروسسهای کاربران، سرویسها و … را بر عهده دارد.

(بیشتر…)

مشابه دستور tail در محیط ویندوز

همانطور که می دانید، برای مشاهده انلاین یک فایل در محیط لینوکس، می توان از دستور tail به همراه سوییچ f استفاده کرد(البته دستور tail کاربردهای دیگری هم دارد):

tail -f /u01/app/oracle/admin/db/diag/rdbms/db/db/trace/alert_db.log

همچنین این کار با کمک دستور less به همراه سوییچ F هم قابل انجام است.

(بیشتر…)

دستور chattr در لینوکس

برای اعمال سیاستهایی بر روی خصوصیتهای یک فایل از قبیل فشرده سازی، امنیت،خواندن/نوشتن و … می توان از دستور chattr استفاده کرد.

البته قبل از ان باید با دستور lsattr اشنا بود تا وضیعت فعلی هر کدام از این خصوصیتها را مشاهده کرد برای مثال، دستور زیر نشان می دهد که تغییری در خصوصیتهای پیش فرض فایل sqlplus اعمال نشده است:

(بیشتر…)

اتصال از راه دور به کاربران فاقد پسورد

در هنگام اتصال به سرور لینوکس از طریق ssh، به طور پیش فرض باید در کنار نام کاربر، پسورد مربوط به آن را هم تعیین نمود. حال اگر کاربری در سیستم موجود باشد که با دستور زیر، پسورد ان حذف شده باشد، در این صورت اتصال این کاربر از طریق ssh به چه شکلی ممکن می باشد؟

[root@ol7 ~]# passwd -d root
Removing password for user root.
passwd: Success

برای اتصال کاربر root(کاربری که پسورد ندارد) از طریق ssh، باید قبلا پارامتر PermitEmptyPasswords را در فایل پیکربندی ssh به مقدار yes تنظیم شده باشد:

[root@ol7 ~]# vi /etc/ssh/sshd_config
PermitEmptyPasswords yes

در نهایت هم باید سرویس sshd را restart کرد:

[root@ol7 ~]# systemctl restart sshd.service

با این تغییر می توان بدون پسورد از طریق این کاربر به سرور ol7 متصل شد:

[root@hkm6 ~]# ssh root@192.168.1.20
The authenticity of host ‘192.168.1.20 (192.168.1.20)’ can’t be established.
RSA key fingerprint is 40:98:53:51:b7:05:fe:6b:5f🇦🇪83:2b:d4:a3:c8:bf.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added ‘192.168.1.20’ (RSA) to the list of known hosts.
[root@ol7 ~]#

مشاهده و kill کردن کاربران متصل به سرور

پرسش: چه افرادی به سرور متصل هستند؟ چگونه می توان از ادامه اتصال این افراد جلوگیری کرد؟

پاسخ: برای نمایش ip و pid افرادی که به سرور متصل هستند، می توان از دستور who کمک گرفت:

]# who -u
root :0 2018-03-16 12:02 ? 12096 (:0)
root pts/0 2018-03-16 12:18 01:15 13658 (192.168.1.1)
root pts/1 2018-03-16 12:19 00:06 13779 (192.168.1.1)
root pts/2 2018-03-16 13:41 . 19692 (192.168.1.1)

همچنین برای پایان دادن به اتصال هر کدام از این sessionها می توان از دستور kill به همراه سیگنال 9 استفاده کرد:

]# kill -9 13658 13779 19692

پ.ن: عدد قبل از پرانتز در خروجی دستور who، عدد pid را نشان می دهد.

لینوکس برای dba(آشنایی با دستورات و فایلها در لینوکس)

فایلها و پوشه ها

فایل inittab

زمانی که پروسس init شروع به کار می کند، فایل inittab را در مسیر etc/ می خواند تا بداند دقیقا چه سرویسهایی را در چه runlevelای اجرا کند  و نهایتا در runlevelای که این فایل به عنوان runlevel پیش فرض معرفی کرده است، توقف می کند و وارد runlevel های بعدی نخواهد شد.

(بیشتر…)