Konwertuję pakiet z .rpm na .deb, korzystając z tego samouczka . Jednak w celu przetestowania i debugowania aplikacji muszę ją uruchomić. Program readme wyjaśnia, że należy go uruchomić jako usługę z:
systemctl enable progname.service
systemctl start progname.service
Jaki jest odpowiednik Ubuntu dla tych poleceń?
sudo service network-manager restart
właśnie tego szukałem, kiedy to znalazłem.systemctl
(podobnie jak każdy system powyżej Ubuntu 15.04, Debian 8, CentOS 7, Fedora 15 ...). Stare/usr/sbin/service
narzędzie wywołuje,systemctl
jeśli / kiedy system działa systemd.Odpowiedzi:
Ubuntu obecnie planuje / rozwija się, aby używać systemd w przyszłości. Aby uzyskać informacje, zobacz następujące łącza: Vivid przełączy się na uruchamianie za pomocą systemd ... i Informacje o wersji: Zarządzanie uruchomieniem i usługami
Używam 14.04.
Możesz użyć bardziej natywnego polecenia
update-rc.d
. Sprawdź stronę podręcznika.Włączanie usługi z wartościami domyślnymi (patrz strona man):
Wyłączanie usługi:
Zauważ, że aby usunąć bez komunikatu o błędzie plik foo_service nie może być obecny. Możesz jednak wymusić:
źródło
systemctl to narzędzie kontrolne dla systemd:
http://www.freedesktop.org/software/systemd/man/systemctl.html
Zauważ, że Ubuntu nie używa systemd, używa upstart, który robi kilka takich samych zasad, ale ma kilka różnych koncepcji.
Bez dużej wiedzy na temat systemd i na podstawie tego, co przeczytałem w opublikowanym przeze mnie dokumencie, myślę, że nie trzeba „włączać” usługi. Po prostu upuszczenie pliku .conf dla twojej usługi w / etc / init powinno uświadomić go upstartowi.
Taki jest sedno sprawy: systemowy plik konfiguracyjny dla twojej usługi nie będzie działał bez zmian na Ubuntu, musisz „przetłumaczyć” to na równoważną wersję dla Upstart. Oto dokumentacja dla upstart:
http://upstart.ubuntu.com/cookbook/
Gdy masz odpowiedni plik .conf do uruchomienia, możesz uruchomić usługę (myślę, że odpowiada to systemctl start), używając:
źródło
systemctl
. Zobacz na przykład forum.xfce.org/viewtopic.php?id=8411 i bbs.archlinux.org/viewtopic.php?id=148829Domyślny pakiet 14.04
systemd-services
nie zawierasystemdctl
polecenia.Czytać
Musisz przeczytać artykuł Jak zainstalować i przetestować Systemd na Ubuntu 14.04 Trusty Tahr i Ubuntu 12.04 Precise Pangolin, jeśli chcesz używać
systemd
.Pitti PPA
Istnieje umowa PPA
ppa:pitti/systemd
zapewniająca odpowiedni pakiet dla LTS 12.04, 14.04 i nadchodzących.źródło