انجمنهای فارسی اوبونتو
کمک و پشتیبانی => راهنماها، نکات و ترفندها => نویسنده: alieblice در 03 تیر 1390، 12:33 قظ
-
سلام دوستان
من از طریق دستور زیر میخام بگم که سرویس ssh در runlebel های 1,2,3 کار بکنه ولی در 4,5,6,0, کار نکنه ولی عمل نمیکنه
update-rc.d ssh start 1 2 3 . stop 0 4 5 6
کسی میدونه مشکل از چی هست ؟
در اموزش زیر priority ها رو عددهایی مثل 80 یا 50 داده ولی من چندین جا خوندم که بین 19 الی 20- هستش
http://www.debuntu.org/how-to-manage-services-with-update-rc.d
من اشتباه میکنم یا اون عددا چیز دیگه ای هستن ؟
پیشاپیش ممنون
-
فهمیدم چرا کار نمیکرد
این کارو با apache هم انجام دادم ولی نشد
کار نمیکنه جون رانلول یک single user mod هستش یعنی فقط کاربر روت میتونه کار کنه و از جایی که openssh تحت نام کاربری sshd کار میکنه برای همین اجرا نمیشه مگر این که در حالت singlre usermod خود روت اجراش بکند
حالا چند راه داریم
یا باید یوزر sshd رو به روت تبدیل کنیم
یا
این که یک اسکرسپت بزاریم تو init.d بگیم تو رانلول یک اجراش کنه که اون اسکرسپت کار اجرا کردن openssh رو انجام بده
برای راه اول که هیچی پیدا نکردم راه دوم هم نمیدونم تو اسکریپته چی بنویسم
کسی میدونه توش چی باید بنویسم ؟
-
دوستان عضر میخوام الان فهمیدم که کار نمیکنه
دلیل اینکه فکر کردم کار میکنه این بود که رو سیستم سرویس squid بود و squid هم طول میده تا بسته بشه برای همین فکر کردم کار میکنه
اگه مدیران صلاح میدونن این پست رو پاک کنند
################################################################################
الان راه اندازیش کردم گفتم اموزششم بزارم که بعدیا استفاده کنن
روش کار خیلی راحته
یک فابل داخل /etc/init.d میزارین بعد میگین که در runlevel 1 اجرا بشه
-1
یک فایل متنی داخل /etc/init.d بسازین و محتویات زیر رو توش قرار بدین
nano /etc/init.d/ssh-runlevel-1
#!/bin/bash
echo "/etc/init.d/ssh start"
exit
بعد به فایل متنیتون قابلیت اجرا شدن رو بدین
chmod +x /etc/init.d/ssh-runlevel-1
حالا با این دستور بگین که در رانلول 1 اجرا بشه ولی در رانلول های دیگه از کار بیفته
update-rc.d ssh-1 start 20 1 . stop 80 0 2 3 4 5 6
بعد از زدن دستور بالا این 2 تا اررور رو میگیرین که مشکلی نیست
update-rc.d: using dependency based boot sequencing
insserv: warning: script 'ssh-1' missing LSB tags and overrides
insserv: warning: script 'firewall' missing LSB tags and override
حالا تستش کنین
برای تست این دستورو بزنین
init 1
با دستور بالا به runlevel 1 منتقل میشین
بعد این دستورو بزنین
root@debian:/# runlevel
2 1
root@debian:/#
دستور بالا نشون میده که از runlevel 2 به رانلول 1 انتقال پیدا کردین
موارد استفاده :
یکی از مواردش برای کسایی هست که تنها دست رسیشون به سرور از طریق رموت ssh هستش که ممکنه در بعضی مواقع احتیاج به محیطی مثل رانلول 1 داشته باشن ولی چون تو رانلول یک فقط سرویسایی که نام کاربریشون root هست اجرا میشن و نام کاربری openssh هستش sshd دست رسی ssh وجود ندارد
##################################################################################################################################