Zdravim, rad bych se zeptal, jak vytvorim na Debianu init script pro appku (vetsinou node.js) a nastavim ho aby se spoustel pri startu systemu. Aktualne pouzivam detasovany screen a v nem shell pro kazdou appku, ale nechce se mi vse manualne spoustet po kazdem "Neplanovanem vypdadku".
Uz jsem stravil nekolik hodin snahou dohledat, jak to v Debianu chodi. Zkusil jsem treba tenhle script: https://gist.github.com/peterhost/715255 (a nekolik dalsich) upravit a dat do /etc/init.d/my-simple. Dostavam chyby:
$ service my-simple start Failed to start my-simple.service: Unit my-simple.service failed to load: No such file or directory. $ update-rc.d "my-simple" enable update-rc.d: error: no runlevel symlinks to modify, aborting!
Myslel jsem, ze .service soubory patri pod systemd a ze Debian pouziva init scripty a ze service je tool na spravu init scriptu podobne jako v Gentoo je treba rc-update. Chyby jsem zkousel googlit, ale nasel jsem jen problemy se spatne nainstalovanymi aplikacemi.
Jestli me muzete nakopnout, nebo poradit, budu rad.
Zdar, Jakub
Ahoj,
mrkni jestli Ti nebude vyhovovat alternativa Monit https://mmonit.com/monit/ https://mmonit.com/monit/ (https://packages.debian.org/stretch/monit https://packages.debian.org/stretch/monit).
Nikos
On 15 Jan 2018, at 00:23, Jakub Podlaha j.podlaha@gmail.com wrote:
Zdravim, rad bych se zeptal, jak vytvorim na Debianu init script pro appku (vetsinou node.js) a nastavim ho aby se spoustel pri startu systemu. Aktualne pouzivam detasovany screen a v nem shell pro kazdou appku, ale nechce se mi vse manualne spoustet po kazdem "Neplanovanem vypdadku".
Uz jsem stravil nekolik hodin snahou dohledat, jak to v Debianu chodi. Zkusil jsem treba tenhle script: https://gist.github.com/peterhost/715255 https://gist.github.com/peterhost/715255 (a nekolik dalsich) upravit a dat do /etc/init.d/my-simple. Dostavam chyby:
$ service my-simple start Failed to start my-simple.service: Unit my-simple.service failed to load: No such file or directory. $ update-rc.d "my-simple" enable update-rc.d: error: no runlevel symlinks to modify, aborting!
Myslel jsem, ze .service soubory patri pod systemd a ze Debian pouziva init scripty a ze service je tool na spravu init scriptu podobne jako v Gentoo je treba rc-update. Chyby jsem zkousel googlit, ale nasel jsem jen problemy se spatne nainstalovanymi aplikacemi.
Jestli me muzete nakopnout, nebo poradit, budu rad.
Zdar, Jakub
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
To vypada, ze tvuj Debian pouziva systemd, takze psat init script mi prijde jako zbytecnost, kdyz muzes napsat nekolik radku service file:
https://www.freedesktop.org/software/systemd/man/systemd.service.html
Oficialni dokumentace je velmi rozvlacna, ale pro inspiraci jak to muze vypadat doporucuji napriklad pohled na jinou oblibenou sluzbu, naprikald OpenSSH server:
systemct cat ssh
Automaticke spousteni by melo byt otazkou "systemct enable yourunit.service"
Jakub
2018-01-15 0:31 GMT+01:00 Nikos Timiopulos nikos@manikstudio.cz:
Ahoj,
mrkni jestli Ti nebude vyhovovat alternativa Monit https://mmonit.com/ monit/ (https://packages.debian.org/stretch/monit).
Nikos
On 15 Jan 2018, at 00:23, Jakub Podlaha j.podlaha@gmail.com wrote:
Zdravim, rad bych se zeptal, jak vytvorim na Debianu init script pro appku (vetsinou node.js) a nastavim ho aby se spoustel pri startu systemu. Aktualne pouzivam detasovany screen a v nem shell pro kazdou appku, ale nechce se mi vse manualne spoustet po kazdem "Neplanovanem vypdadku".
Uz jsem stravil nekolik hodin snahou dohledat, jak to v Debianu chodi. Zkusil jsem treba tenhle script: https://gist.github.com/peterhost/715255 (a nekolik dalsich) upravit a dat do /etc/init.d/my-simple. Dostavam chyby:
$ service my-simple start Failed to start my-simple.service: Unit my-simple.service failed to load: No such file or directory. $ update-rc.d "my-simple" enable update-rc.d: error: no runlevel symlinks to modify, aborting!
Myslel jsem, ze .service soubory patri pod systemd a ze Debian pouziva init scripty a ze service je tool na spravu init scriptu podobne jako v Gentoo je treba rc-update. Chyby jsem zkousel googlit, ale nasel jsem jen problemy se spatne nainstalovanymi aplikacemi.
Jestli me muzete nakopnout, nebo poradit, budu rad.
Zdar, Jakub
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Ahoj, díky za odpovědi.
Mmonit vypadá dobře, ale je to zase nová syntax a další nástroj. Určitě na to v mezičase mrknu a zkusím to tím, jestli to nepůjde líp než tím nativním scriptem.
Používám instanci Debianu, neupravenou, tak jak byla vytvořena přes vpsadmin. Podle tohohle jsem myslel, že pužívá normálně SysV Init. $ pidof init 1
Navíc jsem si teď všiml, že tu mojí servisu vidím když dám: $ service --status-all ... [ - ] my-simple ... Ale spustit nejde.
Ptám se tady hlavě proto, jestli není ten Debian na vpsFree nějak upravený a nepoužívá třeba jiné nástroje. Jak řešíte automatické spouštění aplikací vy? Pužíváte jen nástroje, co už svoje init scripty mají (apache, nginx, atp.)?
Díky, Jakub
2018-01-15 9:30 GMT+01:00 Jakub Jelen jakuje@gmail.com:
To vypada, ze tvuj Debian pouziva systemd, takze psat init script mi prijde jako zbytecnost, kdyz muzes napsat nekolik radku service file:
https://www.freedesktop.org/software/systemd/man/systemd.service.html
Oficialni dokumentace je velmi rozvlacna, ale pro inspiraci jak to muze vypadat doporucuji napriklad pohled na jinou oblibenou sluzbu, naprikald OpenSSH server:
systemct cat ssh
Automaticke spousteni by melo byt otazkou "systemct enable yourunit.service"
Jakub
2018-01-15 0:31 GMT+01:00 Nikos Timiopulos nikos@manikstudio.cz:
Ahoj,
mrkni jestli Ti nebude vyhovovat alternativa Monit https://mmonit.com/monit/ (https://packages.debian.org/stretch/monit).
Nikos
On 15 Jan 2018, at 00:23, Jakub Podlaha j.podlaha@gmail.com wrote:
Zdravim, rad bych se zeptal, jak vytvorim na Debianu init script pro appku (vetsinou node.js) a nastavim ho aby se spoustel pri startu systemu. Aktualne pouzivam detasovany screen a v nem shell pro kazdou appku, ale nechce se mi vse manualne spoustet po kazdem "Neplanovanem vypdadku".
Uz jsem stravil nekolik hodin snahou dohledat, jak to v Debianu chodi. Zkusil jsem treba tenhle script: https://gist.github.com/peterhost/715255 (a nekolik dalsich) upravit a dat do /etc/init.d/my-simple. Dostavam chyby:
$ service my-simple start Failed to start my-simple.service: Unit my-simple.service failed to load: No such file or directory. $ update-rc.d "my-simple" enable update-rc.d: error: no runlevel symlinks to modify, aborting!
Myslel jsem, ze .service soubory patri pod systemd a ze Debian pouziva init scripty a ze service je tool na spravu init scriptu podobne jako v Gentoo je treba rc-update. Chyby jsem zkousel googlit, ale nasel jsem jen problemy se spatne nainstalovanymi aplikacemi.
Jestli me muzete nakopnout, nebo poradit, budu rad.
Zdar, Jakub
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Zdar,
zkus: systemctl status my-simple
systemctl start my-simple
A podobně, detaily si vygooglíš. systemctl je systemd příkaz pro správu služeb a dalších věcí, service příkaz to nějak forwarduje, nevim přesně, jak funguje. Zároveň, když tohle failne, nemáš systemd :)
systemd je určitě nejjednodušší a nejlepší způsob, pokud je v systému jako init. Service file pro jednoduchou službu je na pár řádků a opět google poradí.
Lukáš
On Mon, 2018-01-15 at 11:08 +0100, Jakub Podlaha wrote:
Ahoj, díky za odpovědi.
Mmonit vypadá dobře, ale je to zase nová syntax a další nástroj. Určitě na to v mezičase mrknu a zkusím to tím, jestli to nepůjde líp než tím nativním scriptem.
Používám instanci Debianu, neupravenou, tak jak byla vytvořena přes vpsadmin. Podle tohohle jsem myslel, že pužívá normálně SysV Init. $ pidof init 1
Navíc jsem si teď všiml, že tu mojí servisu vidím když dám: $ service --status-all ... [ - ] my-simple ... Ale spustit nejde.
Ptám se tady hlavě proto, jestli není ten Debian na vpsFree nějak upravený a nepoužívá třeba jiné nástroje. Jak řešíte automatické spouštění aplikací vy? Pužíváte jen nástroje, co už svoje init scripty mají (apache, nginx, atp.)?
Díky, Jakub
2018-01-15 9:30 GMT+01:00 Jakub Jelen jakuje@gmail.com:
To vypada, ze tvuj Debian pouziva systemd, takze psat init script mi prijde jako zbytecnost, kdyz muzes napsat nekolik radku service file:
https://www.freedesktop.org/software/systemd/man/systemd.service.ht ml
Oficialni dokumentace je velmi rozvlacna, ale pro inspiraci jak to muze vypadat doporucuji napriklad pohled na jinou oblibenou sluzbu, naprikald OpenSSH server:
systemct cat ssh
Automaticke spousteni by melo byt otazkou "systemct enable yourunit.service"
Jakub
2018-01-15 0:31 GMT+01:00 Nikos Timiopulos nikos@manikstudio.cz:
Ahoj,
mrkni jestli Ti nebude vyhovovat alternativa Monit https://mmonit.com/monit/ (https://packages.debian.org/stretch/mo nit).
Nikos
On 15 Jan 2018, at 00:23, Jakub Podlaha j.podlaha@gmail.com wrote:
Zdravim, rad bych se zeptal, jak vytvorim na Debianu init script pro appku (vetsinou node.js) a nastavim ho aby se spoustel pri startu systemu. Aktualne pouzivam detasovany screen a v nem shell pro kazdou appku, ale nechce se mi vse manualne spoustet po kazdem "Neplanovanem vypdadku".
Uz jsem stravil nekolik hodin snahou dohledat, jak to v Debianu chodi. Zkusil jsem treba tenhle script: https://gist.github.com/peterhos t/715255 (a nekolik dalsich) upravit a dat do /etc/init.d/my-simple. Dostavam chyby:
$ service my-simple start Failed to start my-simple.service: Unit my-simple.service failed to load: No such file or directory. $ update-rc.d "my-simple" enable update-rc.d: error: no runlevel symlinks to modify, aborting!
Myslel jsem, ze .service soubory patri pod systemd a ze Debian pouziva init scripty a ze service je tool na spravu init scriptu podobne jako v Gentoo je treba rc-update. Chyby jsem zkousel googlit, ale nasel jsem jen problemy se spatne nainstalovanymi aplikacemi.
Jestli me muzete nakopnout, nebo poradit, budu rad.
Zdar, Jakub
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Zdar, tak opravdu je tam systemd, přestože se program pod pid 1 jmenuje "init" a přestože příkaz `service --status-all` se listuje podle scriptů v /etc/init.d/... nonic. Npm věci jsem naházel do pm2 a non-npm narvu do těch .service souborů. Zatím se vše tváří, jakože to funguje.
Díky všem za rady, Jakub
2018-01-15 14:24 GMT+01:00 Lukáš Hrázký lukkash@email.cz:
Zdar,
zkus: systemctl status my-simple
systemctl start my-simple
A podobně, detaily si vygooglíš. systemctl je systemd příkaz pro správu služeb a dalších věcí, service příkaz to nějak forwarduje, nevim přesně, jak funguje. Zároveň, když tohle failne, nemáš systemd :)
systemd je určitě nejjednodušší a nejlepší způsob, pokud je v systému jako init. Service file pro jednoduchou službu je na pár řádků a opět google poradí.
Lukáš
On Mon, 2018-01-15 at 11:08 +0100, Jakub Podlaha wrote:
Ahoj, díky za odpovědi.
Mmonit vypadá dobře, ale je to zase nová syntax a další nástroj. Určitě na to v mezičase mrknu a zkusím to tím, jestli to nepůjde líp než tím nativním scriptem.
Používám instanci Debianu, neupravenou, tak jak byla vytvořena přes vpsadmin. Podle tohohle jsem myslel, že pužívá normálně SysV Init. $ pidof init 1
Navíc jsem si teď všiml, že tu mojí servisu vidím když dám: $ service --status-all ... [ - ] my-simple ... Ale spustit nejde.
Ptám se tady hlavě proto, jestli není ten Debian na vpsFree nějak upravený a nepoužívá třeba jiné nástroje. Jak řešíte automatické spouštění aplikací vy? Pužíváte jen nástroje, co už svoje init scripty mají (apache, nginx, atp.)?
Díky, Jakub
2018-01-15 9:30 GMT+01:00 Jakub Jelen jakuje@gmail.com:
To vypada, ze tvuj Debian pouziva systemd, takze psat init script mi prijde jako zbytecnost, kdyz muzes napsat nekolik radku service file:
https://www.freedesktop.org/software/systemd/man/systemd.service.ht ml
Oficialni dokumentace je velmi rozvlacna, ale pro inspiraci jak to muze vypadat doporucuji napriklad pohled na jinou oblibenou sluzbu, naprikald OpenSSH server:
systemct cat ssh
Automaticke spousteni by melo byt otazkou "systemct enable yourunit.service"
Jakub
2018-01-15 0:31 GMT+01:00 Nikos Timiopulos nikos@manikstudio.cz:
Ahoj,
mrkni jestli Ti nebude vyhovovat alternativa Monit https://mmonit.com/monit/ (https://packages.debian.org/stretch/mo nit).
Nikos
On 15 Jan 2018, at 00:23, Jakub Podlaha j.podlaha@gmail.com wrote:
Zdravim, rad bych se zeptal, jak vytvorim na Debianu init script pro appku (vetsinou node.js) a nastavim ho aby se spoustel pri startu systemu. Aktualne pouzivam detasovany screen a v nem shell pro kazdou appku, ale nechce se mi vse manualne spoustet po kazdem "Neplanovanem vypdadku".
Uz jsem stravil nekolik hodin snahou dohledat, jak to v Debianu chodi. Zkusil jsem treba tenhle script: https://gist.github.com/peterhos t/715255 (a nekolik dalsich) upravit a dat do /etc/init.d/my-simple. Dostavam chyby:
$ service my-simple start Failed to start my-simple.service: Unit my-simple.service failed to load: No such file or directory. $ update-rc.d "my-simple" enable update-rc.d: error: no runlevel symlinks to modify, aborting!
Myslel jsem, ze .service soubory patri pod systemd a ze Debian pouziva init scripty a ze service je tool na spravu init scriptu podobne jako v Gentoo je treba rc-update. Chyby jsem zkousel googlit, ale nasel jsem jen problemy se spatne nainstalovanymi aplikacemi.
Jestli me muzete nakopnout, nebo poradit, budu rad.
Zdar, Jakub
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Zdravím,
to že systemd s PID 1 se tváří jako "init" proces je naschvál - snaží se být do značné míry kompatibilní se SysV init systémem.
Zkusil jsem si teď u sebe zopakovat tvoji situaci a podařilo se mi všechno v pohodě rozchodit, zde popíšu, jak na to:
1) Stáhneš si a upravíš init skript, např. https://gist.github.com/peterhost/715255
2) zkopíruješ jej do složky /etc/init.d (budeš muset kopírovat pod rootem nebo použít sudo)
3) Musíš tomu skriptu nastavit +x příznak!! tj. musí být spustitelný. To udělá příkaz
sudo chmod +x /etc/init.d/my-simple
4) Nyní je potřeba spustit příkaz "sudo systemctl daemon-reload". Tento příkaz způsobí, že systemd reloadne všechny skripty a konfigurační soubory, tj. v našem případě si systemd všimne /etc/init.d/my-simple skriptu.
5) Nyní už funguje příkaz "sudo service my-simple start", stejně jako všechny ostatní.
Tedy systemd umí - kromě svých nativních .service souborů - i init skripty. Přesněji řečeno, systemd obsahuje generátor systemd-sysv-generator, který umí z init skriptu vygenerovat .service soubor. Přesně to se někde na pozadí děje, když během "sudo systemctl daemon-reload" systemd narazí na náš my-simple.
Kdykoli budeš dělat nějaké úpravy v init skriptu, musíš potom spustit "sudo systemctl daemon-reload", jinak se ty úpravy neprojeví.
Miroslav Mareš
Dne 17. ledna 2018 15:54 Jakub Podlaha j.podlaha@gmail.com napsal(a):
Zdar, tak opravdu je tam systemd, přestože se program pod pid 1 jmenuje "init" a přestože příkaz `service --status-all` se listuje podle scriptů v /etc/init.d/... nonic. Npm věci jsem naházel do pm2 a non-npm narvu do těch .service souborů. Zatím se vše tváří, jakože to funguje.
Díky všem za rady, Jakub
2018-01-15 14:24 GMT+01:00 Lukáš Hrázký lukkash@email.cz:
Zdar,
zkus: systemctl status my-simple
systemctl start my-simple
A podobně, detaily si vygooglíš. systemctl je systemd příkaz pro správu služeb a dalších věcí, service příkaz to nějak forwarduje, nevim přesně, jak funguje. Zároveň, když tohle failne, nemáš systemd :)
systemd je určitě nejjednodušší a nejlepší způsob, pokud je v systému jako init. Service file pro jednoduchou službu je na pár řádků a opět google poradí.
Lukáš
On Mon, 2018-01-15 at 11:08 +0100, Jakub Podlaha wrote:
Ahoj, díky za odpovědi.
Mmonit vypadá dobře, ale je to zase nová syntax a další nástroj. Určitě na to v mezičase mrknu a zkusím to tím, jestli to nepůjde líp než tím nativním scriptem.
Používám instanci Debianu, neupravenou, tak jak byla vytvořena přes vpsadmin. Podle tohohle jsem myslel, že pužívá normálně SysV Init. $ pidof init 1
Navíc jsem si teď všiml, že tu mojí servisu vidím když dám: $ service --status-all ... [ - ] my-simple ... Ale spustit nejde.
Ptám se tady hlavě proto, jestli není ten Debian na vpsFree nějak upravený a nepoužívá třeba jiné nástroje. Jak řešíte automatické spouštění aplikací vy? Pužíváte jen nástroje, co už svoje init scripty mají (apache, nginx, atp.)?
Díky, Jakub
2018-01-15 9:30 GMT+01:00 Jakub Jelen jakuje@gmail.com:
To vypada, ze tvuj Debian pouziva systemd, takze psat init script mi prijde jako zbytecnost, kdyz muzes napsat nekolik radku service file:
https://www.freedesktop.org/software/systemd/man/systemd.service.ht ml
Oficialni dokumentace je velmi rozvlacna, ale pro inspiraci jak to muze vypadat doporucuji napriklad pohled na jinou oblibenou sluzbu, naprikald OpenSSH server:
systemct cat ssh
Automaticke spousteni by melo byt otazkou "systemct enable yourunit.service"
Jakub
2018-01-15 0:31 GMT+01:00 Nikos Timiopulos nikos@manikstudio.cz:
Ahoj,
mrkni jestli Ti nebude vyhovovat alternativa Monit https://mmonit.com/monit/ (https://packages.debian.org/stretch/mo nit).
Nikos
On 15 Jan 2018, at 00:23, Jakub Podlaha j.podlaha@gmail.com wrote:
Zdravim, rad bych se zeptal, jak vytvorim na Debianu init script pro appku (vetsinou node.js) a nastavim ho aby se spoustel pri startu systemu. Aktualne pouzivam detasovany screen a v nem shell pro kazdou appku, ale nechce se mi vse manualne spoustet po kazdem "Neplanovanem vypdadku".
Uz jsem stravil nekolik hodin snahou dohledat, jak to v Debianu chodi. Zkusil jsem treba tenhle script: https://gist.github.com/peterhos t/715255 (a nekolik dalsich) upravit a dat do /etc/init.d/my-simple. Dostavam chyby:
$ service my-simple start Failed to start my-simple.service: Unit my-simple.service failed to load: No such file or directory. $ update-rc.d "my-simple" enable update-rc.d: error: no runlevel symlinks to modify, aborting!
Myslel jsem, ze .service soubory patri pod systemd a ze Debian pouziva init scripty a ze service je tool na spravu init scriptu podobne jako v Gentoo je treba rc-update. Chyby jsem zkousel googlit, ale nasel jsem jen problemy se spatne nainstalovanymi aplikacemi.
Jestli me muzete nakopnout, nebo poradit, budu rad.
Zdar, Jakub
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Ahoj, jasně, ten ctvrty krok mi tam chybel! Jak budu spoustet dalsi servicu, tak si to zkusim.
Diky moc, Jakub
2018-01-18 17:53 GMT+01:00 Miroslav Mareš mmares.trinity@gmail.com:
Zdravím,
to že systemd s PID 1 se tváří jako "init" proces je naschvál - snaží se být do značné míry kompatibilní se SysV init systémem.
Zkusil jsem si teď u sebe zopakovat tvoji situaci a podařilo se mi všechno v pohodě rozchodit, zde popíšu, jak na to:
- Stáhneš si a upravíš init skript, např. https://gist.github.com/
peterhost/715255
- zkopíruješ jej do složky /etc/init.d (budeš muset kopírovat pod rootem
nebo použít sudo)
- Musíš tomu skriptu nastavit +x příznak!! tj. musí být spustitelný. To
udělá příkaz
sudo chmod +x /etc/init.d/my-simple
- Nyní je potřeba spustit příkaz "sudo systemctl daemon-reload". Tento
příkaz způsobí, že systemd reloadne všechny skripty a konfigurační soubory, tj. v našem případě si systemd všimne /etc/init.d/my-simple skriptu.
- Nyní už funguje příkaz "sudo service my-simple start", stejně jako
všechny ostatní.
Tedy systemd umí - kromě svých nativních .service souborů - i init skripty. Přesněji řečeno, systemd obsahuje generátor systemd-sysv-generator, který umí z init skriptu vygenerovat .service soubor. Přesně to se někde na pozadí děje, když během "sudo systemctl daemon-reload" systemd narazí na náš my-simple.
Kdykoli budeš dělat nějaké úpravy v init skriptu, musíš potom spustit "sudo systemctl daemon-reload", jinak se ty úpravy neprojeví.
Miroslav Mareš
Dne 17. ledna 2018 15:54 Jakub Podlaha j.podlaha@gmail.com napsal(a):
Zdar,
tak opravdu je tam systemd, přestože se program pod pid 1 jmenuje "init" a přestože příkaz `service --status-all` se listuje podle scriptů v /etc/init.d/... nonic. Npm věci jsem naházel do pm2 a non-npm narvu do těch .service souborů. Zatím se vše tváří, jakože to funguje.
Díky všem za rady, Jakub
2018-01-15 14:24 GMT+01:00 Lukáš Hrázký lukkash@email.cz:
Zdar,
zkus: systemctl status my-simple
systemctl start my-simple
A podobně, detaily si vygooglíš. systemctl je systemd příkaz pro správu služeb a dalších věcí, service příkaz to nějak forwarduje, nevim přesně, jak funguje. Zároveň, když tohle failne, nemáš systemd :)
systemd je určitě nejjednodušší a nejlepší způsob, pokud je v systému jako init. Service file pro jednoduchou službu je na pár řádků a opět google poradí.
Lukáš
On Mon, 2018-01-15 at 11:08 +0100, Jakub Podlaha wrote:
Ahoj, díky za odpovědi.
Mmonit vypadá dobře, ale je to zase nová syntax a další nástroj. Určitě na to v mezičase mrknu a zkusím to tím, jestli to nepůjde líp než tím nativním scriptem.
Používám instanci Debianu, neupravenou, tak jak byla vytvořena přes vpsadmin. Podle tohohle jsem myslel, že pužívá normálně SysV Init. $ pidof init 1
Navíc jsem si teď všiml, že tu mojí servisu vidím když dám: $ service --status-all ... [ - ] my-simple ... Ale spustit nejde.
Ptám se tady hlavě proto, jestli není ten Debian na vpsFree nějak upravený a nepoužívá třeba jiné nástroje. Jak řešíte automatické spouštění aplikací vy? Pužíváte jen nástroje, co už svoje init scripty mají (apache, nginx, atp.)?
Díky, Jakub
2018-01-15 9:30 GMT+01:00 Jakub Jelen jakuje@gmail.com:
To vypada, ze tvuj Debian pouziva systemd, takze psat init script mi prijde jako zbytecnost, kdyz muzes napsat nekolik radku service file:
https://www.freedesktop.org/software/systemd/man/systemd.service.ht ml
Oficialni dokumentace je velmi rozvlacna, ale pro inspiraci jak to muze vypadat doporucuji napriklad pohled na jinou oblibenou sluzbu, naprikald OpenSSH server:
systemct cat ssh
Automaticke spousteni by melo byt otazkou "systemct enable yourunit.service"
Jakub
2018-01-15 0:31 GMT+01:00 Nikos Timiopulos nikos@manikstudio.cz:
Ahoj,
mrkni jestli Ti nebude vyhovovat alternativa Monit https://mmonit.com/monit/ (https://packages.debian.org/stretch/mo nit).
Nikos
On 15 Jan 2018, at 00:23, Jakub Podlaha j.podlaha@gmail.com wrote:
Zdravim, rad bych se zeptal, jak vytvorim na Debianu init script pro appku (vetsinou node.js) a nastavim ho aby se spoustel pri startu systemu. Aktualne pouzivam detasovany screen a v nem shell pro kazdou appku, ale nechce se mi vse manualne spoustet po kazdem "Neplanovanem vypdadku".
Uz jsem stravil nekolik hodin snahou dohledat, jak to v Debianu chodi. Zkusil jsem treba tenhle script: https://gist.github.com/peterhos t/715255 (a nekolik dalsich) upravit a dat do /etc/init.d/my-simple. Dostavam chyby:
$ service my-simple start Failed to start my-simple.service: Unit my-simple.service failed to load: No such file or directory. $ update-rc.d "my-simple" enable update-rc.d: error: no runlevel symlinks to modify, aborting!
Myslel jsem, ze .service soubory patri pod systemd a ze Debian pouziva init scripty a ze service je tool na spravu init scriptu podobne jako v Gentoo je treba rc-update. Chyby jsem zkousel googlit, ale nasel jsem jen problemy se spatne nainstalovanymi aplikacemi.
Jestli me muzete nakopnout, nebo poradit, budu rad.
Zdar, Jakub
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Community-list mailing list Community-list@lists.vpsfree.cz http://lists.vpsfree.cz/listinfo/community-list
Dne 15.1.2018 v 00:23 Jakub Podlaha napsal(a):
Myslel jsem, ze .service soubory patri pod systemd a ze Debian pouziva init scripty a ze service je tool na spravu init scriptu podobne jako v Gentoo je treba rc-update. Chyby jsem zkousel googlit, ale nasel jsem jen problemy se spatne nainstalovanymi aplikacemi.
Poslední vydání Debianu, kde byl klasický SysV Init v základní instalaci, byl Wheezy. Debian Jessie (od dubna 2015) a Debian Stretch už používají SystemD. Mimo jiné se kvůli tomu pár vývojářů na protest odtrhlo a založili distribuci Devuan. Ale SysV Init se pořád dá dodatečně doinstalovat. Já jsem to na svojí VPS se Stretchem udělal (škoda, že pořád ještě nevyšel Devuan Ascii).
S pozdravem, Martin Doucha
community-list@lists.vpsfree.cz