リモートサーバーで/etc/vsftpd.confを編集しました。これで、vsftpdを再起動するために次のように実行しました。
ravbholua@ravi:~$ sudo /etc/init.d/vsftpd restart
[sudo] password for ravbholua:
Rather than invoking init scripts through /etc/init.d, use the service(8)
utility, e.g. service vsftpd restart
Since the script you are attempting to invoke has been converted to an
Upstart job, you may also use the stop(8) and then start(8) utilities,
e.g. stop vsftpd ; start vsftpd. The restart(8) utility is also available.
vsftpd stop/waiting
vsftpd start/running, process 4658
上記のコマンドが実行され、新しい変更に基づいてシステムが実行されていることがわかります。
さて、上記のコマンド出力を見ると、サービスユーティリティを使いたいと思います。だから設定ファイルをもう一度変更し、次のコマンドを実行しました。
service vsftpd restart
ただし、上記のコマンドは機能しません。 (システムが新しい変更に従って機能しないので、私はこれを知っています。)
今、最初のコマンドを再入力すると、
sudo /etc/init.d/vsftpd restart
システムは最新の変更に従って動作します。
簡単に言うとうまくsudo /etc/init.d/vsftpd restart
いきますが、うまくいきません。service vsftpd restart
私の考えに何が問題なのでしょうか?
答え1
私はあなたのコマンドを実行しました:
/etc/init.d/vsftpd restart
ps ax |egrep -i ftp
私の結果は次のとおりです
root@mohsen-VirtualBox:/home/mohsen# ps ax |egrep -i ftp
1710 ? Ss 0:00 /usr/sbin/vsftpd
2736 pts/1 S+ 0:00 egrep --color=auto -i ftp
出力を入れてservice command
理解しました:
root@mohsen-VirtualBox:/home/mohsen# service vsftpd restart
vsftpd stop/waiting
vsftpd start/running, process 2752
vsfptが実行されていないことをどうやって知りましたか?
答え2
Restartコマンドは新しいUpstart構成を使用しません。実行しない他のタスクもあります。詳しくは下記をご覧ください。http://upstart.ubuntu.com/cookbook/#restart