خطاهای پیش آمده در لینوکس و راه حل آنها

تجریبات بر طرف سازی خطاهای لینوکس

خطاهای پیش آمده در لینوکس و راه حل آنها

تجریبات بر طرف سازی خطاهای لینوکس

افزایش حجم پارتیشنهای LVM در سنت او اس 7 / رد هت 7

فضای روی پارتیشنتون کم اومده؟


خیلی راحت چه تو فضای مجازی چه حقیقی میتونید اونرو افزایش بدید.


چطوری؟

اینطوری


pvcreate /dev/sda3

vgextend c1 /dev/sda3


pvscan


vgdisplay


lvextend -l +number /dev/c1/LogPart.

مقدار number را از بخش Free PE / Size خروجی vgdisplay انتخاب کنید.

ls /dev/c1


xfs_growfs /dev/mapper/c1-root


df -h

نصب postgresql به صورت گرافیکی بر روی CentOS 7

از لینک http://www.enterprisedb.com/products-services-training/pgdownload#windows فایل postgresql-9.4.4-3-linux-x64.run را برای CentOS7 دانلود میکنیم.

با دسترسی root ابتدا فایل را برای اجرا و با دستور chmod 755 اماده سازی میکنیم سپس با دستور postgresql-9.4.4-3-linux-x64.run/. آنرا اجرا میکنیم.

برای اجرا باید محیط گرافیکی در دسترس باشد، من با استفاده از xming و ssh-X11 فایل مورد نظر را نصب کردم.

این برنامه در مسیر /opt/PostgreSQL/9.4/ نصب میگردد

چگونه VNC Server را بر روی CentOS 7 نصب و راه اندازی نماییم.

ابتدا باید tiger-vncserver را نصب نماییم


توجه کنید که نصب بودن یک محیط گرافیکی اولیه نظیر Genome الزامی است


 yum install tigervnc-server


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


 cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service


 vi /etc/systemd/system/vncserver@:1.service


فایل /etc/systemd/system/vncserver@:1.service/ را ادیت کرده و در بخش service به جای <USER> نام کاربر را وارد نمایید


[Service]
Type=forking
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i"
PIDFile=/home/<USER>/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'


فرض شده کاربر majid در سیستم موجود بوده است


 [Service]
Type=forking
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/sbin/runuser -l majid-c "/usr/bin/vncserver %i"
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
PIDFile=/home/majid/.vnc/%H%i.pid



می بایست فایروال را تنظیم کنید، در اینجا firewalld پیش فرض CentOS-7 استفاده شده است.


firewall-cmd --permanent --zone=public --add-service vnc-server
firewall-cmd --reload


حال می بایست به شناسه majid رفته و در آنجا vncserver را اجرا نماییم


 su - majid
vncserver
exit


سپس دوباره به شناسه root برگشته و سرویس vncserver را فعال و اجرا می نماییم.


 systemctl daemon-reload


 systemctl enable vncserver@:1.service


 systemctl start vncserver@:1.service


سپس با استفاده از یک vncclient به سرور فوق متصل میشویم.

نصب برنامه ها در لینوکس به صورت گروهی

میخواهم بر روی لینوکس توزیع CentOS 7 برنامه هایی که لازم دارم را نصب نمایم،

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


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

در یادداشت قبلی توضیح داده ام که چطور یک مخزن محلی از DVD توزیع لینوکس و یا فایل iso آن بسازید.


برای داشتن لیستی از برنامه های گروهی


# yum --disablerepo=* --enablerepo=LocalRepo group list
Loaded plugins: fastestmirror, langpacks
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Loading mirror speeds from cached hostfile
Available environment groups:
   Minimal Install
   Infrastructure Server
   File and Print Server
   Basic Web Server
   Virtualization Host
   Server with GUI
   GNOME Desktop
   KDE Plasma Workspaces
   Development and Creative Workstation
Available Groups:
   Compatibility Libraries
   Console Internet Tools
   Development Tools
   Graphical Administration Tools
   Legacy UNIX Compatibility
   Scientific Support
   Security Tools
   Smart Card Support
   System Administration Tools
   System Management
Done


نصب کمپایلر ها بسته




# yum --disablerepo=* --enablerepo=LocalRepo  groupinstall "Development and Creative Workstation"

بر روی سیستم من، 271 برنامه نصب شد، توجه کنید که اینکار برای تست و کمپایل برنامه های خاصی انجام شده است، برای سیستمی که به اینترنت متصل است اینکار لزوما توجیح نداشته و ممکن است که امنیت را کاهش دهد



امکان داشت به جای اینکار، از روش کم ریسکتر زیر استفاده کرد




# yum --disablerepo=* --enablerepo=LocalRepo  groupinstall "Development Tools"# yum --disablerepo=* --enablerepo=LocalRepo  groupinstall "Compatibility Libraries"


yum، نصب برنامه ها از روی DVD با استفاده از YUMدر CentOS-7

به نظر میرسد بر خلاف Debian که میتوانید در هنگام نصب آن و یا همچنین پس از نصب و در زمان عملیاتی بودن سیستم عامل اقدام به اضافه نمودن آنلاین DVD نصب لینوکس به عنوان مخزن نمایید، من هنوز نتونستم راهی برای حل این مشکل در خصوص توزیع های Red Hat، Fedora و CentOS پیدا کنم.


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


برای این منظور نیاز داریم بدانیم که سیستم عامل لینوکس DVD را در چه مسیری بارگذاری کرده است. دستور mount تمامی مسیرهایی که در لینوکس بارگذاری شده است را به ما میدهد، میتوانید با دستور grep  حروجی mount را محدود به مسیر خواسته شده به نمایید.



$ mount | grep CentOS



/dev/sr0 on /run/media/USER/CentOS 7 x86_64


برای حالتی که به جای dvd فایل ISO را در اختیار دارید، میتوانید مستقیما فایل ISO را در لینوکس mount نمایید.



mkdir /mnt/CentOS-7

mount -t iso9660 -o loop /opt/nfs/CentOS-7.0-1406-x86_64-Everything.iso /mnt/CentOS-7


حال لازم است یک مخزن در لینوکس بسازید، فایل local.repo را در مسیر زیر بسازید



vi /etc/yum.repos.d/localdvd.repo


و متن زیر را در آن وارد نمایید،



[LocalRepo]
name=CentOS 7 - DVD
#baseurl=file:///run/media/model/CentOS 7 x86_64
baseurl=file:///mnt/CentOS-7
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7


خط سوم، کامنت شده، برای حالت استفاده از DVD و خط چهارم برای mount کردن فایل iso مورد استفاده قرار میگیرد.


حال ما بقی مخازن را غیر فعال کرده و مخزن خودمان را فعال می نمایید.


yum --disablerepo=* --enablerepo=LocalRepo group list


لیستی از package های قابل نصب نمایش داده می شود.