web-dev-qa-db-ja.com

Ubuntu 14.04でsystemctlを使用する方法

Ubuntu 14.04で次のコマンドを実行しようとしました。

systemctl enable --now docker-cleanup-dangling-images.timer

私もそれをSudoで試しました、systemctlをserviceとsystemdに置き換えようとしましたが、何も動作しません

Sudo: systemd: command not found
systemd: command not found
Sudo: service: command not foud

Ubuntu 14.04でこのコマンドを実行するにはどうすればよいですか?同じコマンドを実行する別の方法はありますか?

24
DenCowboy

自分でこの問題に遭遇したところ、Ubuntu 14.04はSystemdではなくUpstartを使用しているため、systemctlコマンドは機能しません。これは15.04で変更されたため、これを回避する1つの方法は、ubuntuインストールを更新することです。

これがあなたのためのオプションではない場合(それは今私のためではありません)、あなたはあなたがする必要があることをするUpstartコマンドを見つける必要があります。

イネーブルの場合、ジェネリックは次のようになります。

update-rc.d <service> enable

Ubuntuドキュメントへのリンク: https://wiki.ubuntu.com/SystemdForUpstartUsers

27
rjb-dev

Pm2を使用してガイドに従うことを試みた後、自分自身で答えを探している間にこれに出くわしました。目標は、サーバーでnode.jsアプリケーションを自動的に開始することです。一部のガイドでは、pm2 startup systemdを使用して呼び出しています。これは、Ubuntu 14.04でsystemctlを使用するという疑問につながるパスです。代わりに、pm2 startup ubuntuを使用してください。

ソース: https://www.digitalocean.com/community/tutorials/how-to-set-up-a-node-js-application-for-production-on-ubuntu-14-04

2
dhildreth

Ubuntu 14以前には「systemctl」がありません。ソース: https://docs.docker.com/install/linux/linux-postinstall/#configure-docker-to-start-on-boot

ブート時に起動するようにDockerを設定:

現在のほとんどのLinuxディストリビューション(RHEL、CentOS、Fedora、Ubuntu 16.04以降)では、systemdを使用して、システムの起動時に開始するサービスを管理しています。 Ubuntu 14.10以下ではupstartを使用します。

1)systemd(Ubuntu 16以降):

$ Sudo systemctl enable docker

この動作を無効にするには、代わりにdisableを使用します。

$ Sudo systemctl disable docker

2)新興企業(Ubuntu 14以下):

Dockerは、upstartを使用してブート時に起動するように自動的に構成されます。この動作を無効にするには、次のコマンドを使用します。

$ echo manual | Sudo tee /etc/init/docker.override
chkconfig

$ Sudo chkconfig docker on

できた.

2
Dung