ProFTP如何熱載入配置檔案

2021-07-08 20:15:58 字數 1485 閱讀 2551

參考**:

proftp配置好了,也可以使用了,但是有乙個重大問題,配置檔案變更了怎麼辦?

停掉重新啟動當然可以,但是服務一旦正式使用,停止服務這種操作是不能輕易做的。

網上多都是安裝和配置一類的文章,最後還是回到官網解決辦法。

執行下面shell指令碼restart,進行配置rehash,這個操作不會關閉當前已經存在的session,

有興趣研究的話可以去官網看詳細說明。不過如果配置檔案有錯誤,服務就直接報錯退出了。

因此執行前要先檢查配置檔案有效性,檢查命令如下:

proftpd -t -d5

shell指令碼:

#!/bin/sh

# proftpd files

ftpd_bin=/usr/local/sbin/proftpd

ftpd_conf=/usr/local/etc/proftpd.conf

pidfile=/var/run/proftpd.pid

# if pidfile exists, does it point to a proftpd process?

if [ -f $pidfile ]; then

pid=`cat $pidfile`

fiif [ ! -x $ftpd_bin ]; then

echo "$0: $ftpd_bin: cannot execute"

exit 1

ficase $1 in

start)

if [ -n "$pid" ]; then

echo "$0: proftpd [pid $pid] already running"

exit

fiif [ -r $ftpd_conf ]; then

echo "starting proftpd..."

$ftpd_bin -c $ftpd_conf

else

echo "$0: cannot start proftpd -- $ftpd_conf missing"

fi;;

stop)

if [ -n "$pid" ]; then

echo "stopping proftpd..."

kill -term $pid

else

echo "$0: proftpd not running"

exit 1

fi;;

restart)

if [ -n "$pid" ]; then

echo "rehashing proftpd configuration"

kill -hup $pid

else

echo "$0: proftpd not running"

exit 1

fi;;

*)echo "usage: $0 "

exit 1

;;esac

exit 0

Golang 配置檔案熱載入

package main import encoding json fmt io ioutil os sync time config 用json配置測試 type config struct var config config configlock new sync.rwmutex func co...

go configor配置檔案支援熱載入

在編寫go程式的時候我們載入配置有多中方式,比較常用的還是配置檔案。我們需要配置檔案能夠熱載入 當配置發生變化後 不用重新啟動程式,就能夠使配置生效。我們採用的是開源的配置檔案方式 好,下面上貨。無reload模式 configfilename fmt.printf config v r n con...

logstash K8S 下熱載入配置檔案

name logstashpipeline mountpath usr share logstash pipeline subpath 為 name logstashpipeline mountpath usr share logstash pipeline在values.yaml 檔案 logst...