انجمن‌های فارسی اوبونتو

لطفاً به انجمن‌ها وارد شده و یا جهت ورود ثبت‌نام نمائید

لطفاً جهت ورود نام کاربری و رمز عبورتان را وارد نمائید

نویسنده موضوع: مشکل با تغییر رانلول ssh با دستور update-rc.d  (دفعات بازدید: 2148 بار)

0 کاربر و 2 مهمان درحال مشاهده موضوع.

آفلاین alieblice

  • High Hero Member
  • *
  • ارسال: 1275
سلام دوستان

من از طریق دستور زیر میخام بگم که سرویس 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

من اشتباه میکنم یا اون عددا چیز دیگه ای هستن ؟

پیشاپیش ممنون

آفلاین alieblice

  • High Hero Member
  • *
  • ارسال: 1275
فهمیدم چرا کار نمیکرد
این کارو با apache هم انجام دادم ولی نشد

کار نمیکنه جون رانلول یک single user mod هستش یعنی فقط کاربر روت میتونه کار کنه  و از جایی که openssh تحت نام کاربری sshd کار میکنه برای همین اجرا نمیشه مگر این که در حالت singlre usermod خود روت اجراش بکند

حالا چند راه داریم
یا باید یوزر sshd رو به روت تبدیل کنیم
 یا
این که یک اسکرسپت بزاریم تو init.d بگیم تو رانلول یک اجراش کنه که اون اسکرسپت کار اجرا کردن openssh رو انجام بده
برای راه اول که هیچی پیدا نکردم راه دوم هم نمیدونم تو اسکریپته چی بنویسم

کسی میدونه توش چی باید بنویسم ؟
 

آفلاین alieblice

  • High Hero Member
  • *
  • ارسال: 1275
پاسخ به: مشکل با تغییر رانلول ssh با دستور update-rc.d
« پاسخ #2 : 13 امرداد 1390، 11:20 ق‌ظ »
دوستان عضر میخوام الان فهمیدم که کار نمیکنه
دلیل اینکه فکر کردم کار میکنه این بود که رو سیستم سرویس 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 وجود ندارد
##################################################################################################################################
« آخرین ویرایش: 13 امرداد 1390، 12:00 ب‌ظ توسط alieblice »