Титла: rc.local Публикувано от: temsata в Feb 08, 2005, 23:45 Здравейте,
Имам един макар и малко елементарен въпрос. Къде е мястото на скрипта rc.local в Debian SARGE. Знам че по принцип мястото му е в /etc/rc.d/ обаче такава дирактория в случая няма и съм малко озадачен къде трябва да се постави този скрипт. Титла: rc.local Публикувано от: 57r1k3 в Feb 09, 2005, 08:41 Здравей!
Мястото му е в /etc директорията. Той ще се изпълни след всички инициализиращи скриптове. На този въпрос можеш много лесно да намериш отговор в гугъл. Ако все още не си разбрал, трябва да се научиш да четеш и да намираш необходимата ти информация. Успех! Титла: rc.local Публикувано от: в Feb 09, 2005, 10:07 Zdravei
![]() Ne sym mnogo dobre s Debian, no tam mai ne e taka ... Pravish si skripta i go slagash v /etc/init.d/ posle puskash: update-rc.d scripta defaults zada ti napravi linkove na skripta v /etc/rcX.d papkite Титла: rc.local Публикувано от: temsata в Feb 09, 2005, 11:09 Debian does not use a BSD-style rc.local directory.
======================================= Ключа от палатката ![]() Титла: rc.local Публикувано от: Topper в Feb 09, 2005, 11:24 А къде е мястото на rc.local в SuSE ?
Т.е. по-правилно е да питам - къде се слагат стартъп скриптовете в SuSE ? Титла: rc.local Публикувано от: в Feb 09, 2005, 11:46 Никой не те спира да си наименуваш файла както искаш, ако не са те изпреварили ...
питаш за скрипт, а ключа ти е папка ... ![]() Какво всъщност искаш? ![]() Титла: rc.local Публикувано от: philip в Feb 09, 2005, 13:34
if u wish a bsd style then use slackware Титла: rc.local Публикувано от: Topper в Feb 09, 2005, 13:59
И аз съм стигнал до този извод и съм копирал скрипта, който искам да ми се стартира в папка /etc/init.d Но това не води автоматично до стартирането му ? Дори и chmod 755 му зададох - никакъв резултат. Дай съвет ? Титла: rc.local Публикувано от: ktodorov в Feb 09, 2005, 14:13 Прамиш го chmod +x
и после командата update-rc.d /etc/init.d/rc.local defaults таз команда слага линкове към rc-to в папки /etc/rc0.d; /etc/rc1.d ... и после махаш тез дет не ти трябват. Маи ти трябва само в /etc/rc3.d ама туи само спецовете го знаят, ама си траят, че такива като нас да се мъчат ![]() Титла: rc.local Публикувано от: Topper в Feb 09, 2005, 17:01 Май не четеш - задал съм му режим 755, което включва и +х.
А команда update-rc.d няма въобще в SuSE Титла: rc.local Публикувано от: temsata в Feb 09, 2005, 17:36 Debian does not use a BSD-style rc.local directory.
Това пичове е цитат и не ъм го измислил аз. Освен това като знаете толкова защо не ми казахте как е положението още в началото. Не искам да прозвучи грубо, но едно е да се правиш на отворен друго е да дадеш един отговор както трабва. Последния отговор на ktodorov е поне малка съпка в тази насока. RESPECT. Титла: rc.local Публикувано от: rpetrov в Feb 09, 2005, 19:00 Идеята на rc.local скрипта, е да се стартира еднократно при инициализация на системата.
Винаги може да конфигурираш една система да ти стартира определен скрипт ! Така, че debian гурутата, просто трябва да намерят подходяща конфигурация/промяна/модификация за твоята система. Титла: rc.local Публикувано от: в Feb 09, 2005, 19:33 Човека пита за SuSe ако не се лъжа. Там си има един инструмент - казва се YaST. Стартира се от конзолата с yast. Там имаш System->Runlevel Editor - прегледай го правено е като за олигофрени. инче ако променяш ръчно нещата не забрвяй да пуснеш после SuSEconfig за да си упдатне нещата. Това е. Успех
Титла: rc.local Публикувано от: ktodorov в Feb 09, 2005, 19:36 Май човека питаше за "Къде е мястото на скрипта rc.local в Debian SARGE." Що за SUSE не се отвори друга тема
![]() Иска помощ, а му пълнят темата с ... ![]() Трудно е ... а така още повече ... не всеки има възможност да изчете всичко за всичко ![]() Няколко конкретни отговора можеби биха били достатъчни. Но нали е форум ... ![]() Титла: rc.local Публикувано от: temsata в Feb 09, 2005, 19:40
Искаш да кажеш, че не е толкова важно къде ще бъде скрипта, нито как ще се казва, а е по-важно къде и как ще бъде посочен в буут процеса ? Титла: rc.local Публикувано от: gvend в Feb 09, 2005, 20:34
Както вече каза някой преди мене, скриптовете които се намират в тази директория се изпълняват само веднъж при зареждане на системата, без значение в кой runlevel е тя (системата). Смяна на runlevel-а в движение не влияе на скрипта или процеса, който той е пуснал. Т.е. изпълнява се еднократно при включване и ако от там е стартиран някой процес, той се спира при изключване. Това е подходящо за "прости скриптове". Примерно echo "Добро Утро потребителю, не забравай да си сипеш кафе." Ако обаче скрипта ти е някакъв демон (по-точно управлява/контролира изпълнението/състоянието на демона), rcS няма да има много смисъл. Защото този процесс най-вероятно не трябва да бъде винаги стартиран. Искам да кажа демона трябва да се пуска примерно само ако/когато системата е в runlevel 2,4,5 (избрах числата произволно, не искам да влагам друг смисъл в тях) а като е в runlevel 1 и 3 да се спира. Тогава се минава през /etc/init.d/ и после се разпределя по различните rc-та от 0 до 6 (не се копира ами се правят линкове към "истинския" скрипт). Такива скриптове обикнвено се изпълняват с някакъв аргумент: mydaemon start, mydaemon stop, mydaemon reload и т.н. Имената на всички скриптове започват с S и число. числата определят реда на изпълнението на скриптовете в дадената директория. Така се контролира всичко. Така че ако искаш само echo "Добро Утро потребителю, не забравай да си сипеш кафе." тогава rcS.d е това което търсиш. Влизаш в rcS.d и ln -s /path/do/scripta S95myscript. Иначе init.d. За повече информация тук Титла: rc.local Публикувано от: temsata в Feb 09, 2005, 23:06 Мерси gvend. Беше пределно изчерпателен за което ти благодаря.
Титла: rc.local Публикувано от: n_antonov в Feb 09, 2005, 23:35
Ами SuSE си има скриптове boot.local и halt.local в /etc/init.d/. Познай за какво са. Титла: rc.local Публикувано от: Topper в Feb 21, 2005, 21:01 Кратко, точно, ясно, без RTFM - благодаря !!!
Титла: rc.local Публикувано от: Soulstealer в Feb 22, 2005, 10:26 Специално в SuSE според мен не е добра идея да се ползват boot.local и halt.local, защото те се изпълняват преди някой други процеси, примерно boot.local се изпълнява преди ifconfig
В директориите от rc0.d до rc6.d е отговора. В те зи директории има символни линкове към скриптове намиращи се в /etc/init.d Та! ако искаш скрипт, който да се изпълнява след пълното зареждане на системата трябва да напишеш един скрипт и да го сложиш в /etc/init.d после, според зависи в кой runlevel искаш да ти се изпълнява скрипта влизаш в съответната директория. Примерно искаме в runlevel 5.Влизаме в /etc/init.d/rc5.d и правиме символен линк към желания от нас скрипт като даваме специално име на линка! има 2 възможност S скрипт или К скрипт S скриптът се изпълнява след като системата е влязла в съответният runlevel, а К скриптът се изпълнява след излизане от runlevel-а след буквата S или К слагаме двицифрен номер, който показва приоритета на изпълнения на скрипта съответно ако е с най-висок номер, скриптът ще се изпълни последен всичко това можем да направим по следния начин:
пишеме каквото пишеме в този скрипт и го запазваме, след това го правиме изпълним
след това влизаме в директорията на желания runlevel примерно rc5.d и пишеме следното:
и това е, при следващото стартиране на системата след влизането в runlevel 5 ще се изпълни скриптът /etc/init.d/local предполагам че 50 ще е най-голямото число, така че скриптът ще се изпълни последен |