Nabídka

Zobrazit příspěvky

Zde lze prohlédnout všech příspěvky uživatele. Jsou zde vidět pouze příspěvky z oblastí, do kterých máte přístup.

Nabídka Zobrazit příspěvky

Příspěvky - kojot007

#1
Fajn, v tom odkazu je rozebíráno, jak vypadá záhlaví skriptu, aby se podle toho určila proirita v názvu odkazu. To ale nemá moc společného s mým problémem - mě je uplně jedno, kolikátý v pořadí se ten skript spustí, potřebuju ten odkaz umět vytvořit ručně tak, aby fungoval. Přes update-rc.d se spustí, ať už v tom skriptu mám záhlaví nebo nemám, ručně to nejde.
#2
Dalším zajímavým chováním je, že pokud ten symbolickej odkaz (v /etc/rc2.d/) vytvořenej programem update-rc.d přejmenuju na názve, který má třeba jinou prioritu, tak to stále funguje správně. Např:

root@debian:/etc/rc2.d# mv S18skript S30skript

Po provedení tohoto a restartu systému se skript provede. Z toho mi vyplývá, že program update-rc.d musí dělat ještě něco jiného než jen tvořit ty symbolické linky, protože když je vytvořím ručně, tak ten skript prostě nejde.
#3
Díky za odpověď,

skript je jen pokusný, abych věděl zda se opravdu spouští nebo ne, proto tam mám jen vytvoření souboru. Mě se ale jedná o to, proč když se symbolický odkaz v rc2.d vytvoří přes update-rc.d tak to funguje bez problémů a když ho vytvořím ručně tak to nefunguje. Pokud by se mi jednalo jen o rozjetí skriptu, tak to přes update-rc.d udělám. Potřeboval bych ale vědět, jakým způsobem to rozjet i ručně vytvořením vlastního smybolického odkazu.
Při vytváření přes update-rc.d se vypíšou tyhle hlášky:

root@debian:~# update-rc.d skript defaults
update-rc.d: using dependency based boot sequencing
insserv: warning: script 'skript' missing LSB tags and overrides

ale odkazy se v jednotlivých adresářích vytvoří:

ls -l /etc/rc2.d/
# výstup
lrwxrwxrwx 1 root root  16 19. kvě 09.16 S18skript -> ../init.d/skript
#výstup

ve všech ostatních rcX.d adresářích odkazy typu [S|K]XXskript smžau a ponechám jen ten v rc2.d.
Když restartuju systém, je vidět, že skript zafungoval (vytvořil se mi soubor). Když pak dám:

root@debian:~# update-rc.d skript remove
update-rc.d: using dependency based boot sequencing
insserv: warning: script 'S18skript' missing LSB tags and overrides
insserv: warning: script 'skript' missing LSB tags and overrides

tak se linky na skripty smažou. Potom vytvořím symbolickej odkaz z /etc/rc2.d/:

cd /etc/rc2.d/
ln -s ../init.d/skipt S18skript

restartuju počítač a skript se nespustil (soubor se mi nevytvořil). Zkoušel jsem to i s různýma prioritama. Runlevel mám defaultně 2, (who -r). To chování prostě nechápu.
#4
V /etc/init.d/ mám jednoduchý skript na vytvoření souboru pojmenovaný "skript":

#! /bin/sh
touch /tmp/soubor
exit 0

práva na něm jsou 755, když vytvořím ve složce /etc/rc2.d/ symlink na tento soubor s názvem S30skript, měl by se dle mého názoru při spuštění systému tento soubor vytvořit. Jenže se tak nestane. Ještě divnější chování je, že pokud zavolám:

update-rc.d skript defaults

tak se po restartu ten skript provede a soubor se vytvoří. I když z ostatních rcX.d odmažu symlinky na ten skript, tak to pracuje. Když to ale přes

update-rc.d

opět smažu a zkusim to zase vytvořit ručně, už to nejde. Co dělám špatně při ručním vytváření toho sybolickýho odkazu?

Díky za odpovědi.