Linux下設定svn開機自啟動

2022-04-05 06:33:02 字數 2135 閱讀 7849

方式一:centos 7 設定svn開機自啟動 使用新的systemctl 服務命令  (筆者成功驗證過,該方式可行)

安裝好 svn 服務後,預設是沒有隨系統啟動自動啟動的, centos 7 的 /etc/rc.d/rc.local 是沒有執行許可權的, 系統建議建立 systemd service 啟動服務

於是檢視 systemd 裡 svn 的配置檔案 /lib/systemd/system/svnserve.service

[unit]  

description=subversion protocol daemon  

after=syslog.target network.target  

[service]  

type=forking  

environmentfile=/etc/sysconfig/svnserve  

execstart=/usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid $options  

[install]  

wantedby=multi-user.target  

找到 svn 的 service 配置檔案 /etc/sysconfig/svnserve 編輯配置檔案

vi /etc/sysconfig/svnserve

將 options="-r /var/svn" 改為 svn 版本庫存放的目錄,如:我的是/opt/svn,修改之後的options="-r /opt/svn"

命令模式下輸入:wq儲存退出

在提示符下輸入

systemctl enable svnserve.service

出現:created symlink from /etc/systemd/system/multi-user.target.wants/svnserve.service to /usr/lib/systemd/system/svnserve.service.

啟動服務:

systemctl start svnserve.service
重啟伺服器,輸入

ps -aux | grep 'svn'  或者 ps -ef|grep svnserve

檢視svn 服務啟動了沒有

出現如下資訊,標識svn服務起動成功。

方式二:傳統的方式設定svn開機啟動 (筆者在centos7 設定不成功)

1.安裝好的svn服務端,預設是不會開機自啟動的,每次開機自己啟動會很麻煩,我們可以把它設成開機啟動

首先:編寫乙個啟動指令碼svn_startup.sh,我放在/root/svn_startup.sh

#!/bin/bash

/usr/bin/svnserve -d -r /home/svnrepos/

這裡的svnserve路徑保險起見,最好寫絕對路徑,因為啟動的時候,環境變數也許沒載入。

絕對路徑怎麼查?

which svnserve

這裡還有可能碰到乙個問題,如果你在windows下建立和編寫的腳步,拿到linux下,用vi或者vim修改後可能會無法執行,這是檔案格式的問題

vi svn_startup.sh

輸入:set ff 回車

如果顯示的結果不是fileformat=unix

再次輸入

set ff=unix

就ok了

然後修改該指令碼的執行許可權

chmod a+x svn_startup.sh   或者

chmod ug+x svn_startup.sh

或者萬能的

chmod 777 svn_startup.sh

最後:加入自動執行

vi /etc/rc.d/rc.local

在末尾新增指令碼的路徑,如:

/root/svn_startup.sh

現在,你可以重啟一下試試了。 不懂得怎麼確認成功?敗給你了

ps -ef|grep svnserve

用原文鏈結

Linux下設定Redis開機自啟

1 設定redis.conf 中daemonize 為yes 確保守護程序開啟。2 vi etc init.d redis 內容如下,然後儲存退出。chkconfig 2345 10 90 description start and stop redis path usr local bin sbi...

Linux下設定Nginx開機自啟

1 本地環境 root dev cat etc redhat release centos linux release 7.5.1804 core 2 在 etc init.d建立nginx檔案,並新增如下內容 root dev vim etc init.d nginx指令碼內容如下 esac3 儲...

開機自啟 Linux下設定MySql自動啟動

1 將服務檔案拷貝到init.d下,並重命名為mysql cp usr local mysql support files mysql.server etc init.d mysqld2 賦予可執行許可權 chmod x etc init.d mysqld3 新增服務 chkconfig add m...