1、ITDB簡介php
ITDB一款來自希臘的開源IT資產管理系統,它是基於Web的IT資產信息管理系統。對於那些IT設備較多而又缺乏管理IT資產信息工具的公司,ITDB是一個不錯的選擇,ITDB通過三年的開發、更新不管從功能仍是界面都是一個成熟的產品。html
2、ITDB資產管理系統搭建c++
一、安裝環境
git
操做系統:CentOS Linux release 7.6.1810 (Core) github
IDTB服務器地址:172.28.5.151
web
IDTB備份服務器:172.28.5.152
sql
sqlite版本:sqlite.x86_64 3.7.17-4.el7
數據庫
二、安裝httpd以及php以及php-pdo(php操做數據庫的工具,默認的sqlite已經安裝)
vim
yum install -y httpd php php-pdo瀏覽器
三、確保開機啓動httpd服務
四、啓動httpd服務:
五、驗證httpd和php正常工做
在服務器/var/www/html目錄下新建 一個test.php文件,內容爲:
vim /var/www/html/test.php
打開瀏覽器輸入:172.28.5.151/test.php
六、下載壓縮包
登陸官網:http://www.sivann.gr/software/itdb/ ,下載合適的版本:itdb-1.23.zip ,下載後而後再上傳至服務器。
七、解壓文件並拷貝到web服務器根目錄
unzip itdb-1.23.zip
而後拷貝解壓後的文件到/var/www/html目錄下:
進入/var/www/html,重命名數據庫:
添加相應權限並重啓服務:
八、瀏覽器輸入服務IP地址:
根據提示的錯誤,進行相應的操做,而後重啓服務,而後再用瀏覽器打開,一直進行調試,直至出現正確界面:
九、設置成中文:
登陸ITDB系統,而後找到settings:
ITDB系統的首頁界面:
3、ITDB資產管理系統實時備份
選擇一臺備份服務器,用來存放備份出來的文件。
備份服務的IP地址是 172.28.5.152 ,
如下操做在備份服務器(172.28.5.152)上進行:
一、安裝rsync
yum -y install rsync
二、手動添加rsync用戶,此用戶是用來運行rysnc daemon進程的
useradd rsync -s /sbin/nologin
三、建立rsync daemon 工做模式的模塊目錄
mkdir -p /backup/itdb
四、修改目錄屬主屬組
chown rsync.rsync /backup/itdb/
五、修改rsync配置文件/etc/rsync.conf, 如下爲一個配置文件案例
vim /etc/rsyncd.conf
六、建立同步用戶密碼文件
vim /etc/rsync.password
rsync_backup 是同步用戶, leesir 是密碼
七、設置密碼文件讀取權限
chmod 600 /etc/rsync.password
八、啓動rsync守護進程
rsync --daemon
九、查看873端口是否監聽
如下操做在ITDB服務器上進行操做:
一、查看當前系統是否支持inotify
顯示這三個文件則證實支持
二、安裝編譯及下載以及同步須要的安裝包
yum install wget gcc gcc-c++ make rsync -y
三、下載inotify源碼包並編譯安裝
wget http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz -P /opt
cd /opt && tar xvf inotify-tools-3.14.tar.gz
cd /opt/inotify-tools-3.14/ && ./configure --prefix=/usr/local/inotify
make && make install
四、增長同步用戶密碼文件/etc/rsync.password
leesir (這裏只須要密碼,不須要寫用戶)
五、編寫監控腳本,監控文件變更信息,實時同步到備份服務器,itdb系統使用的數據庫是sqlite3 ,數據所有存儲在it.db文件裏,只要同步好這個文件就能夠了,it.db通常在/var/www/html/data目錄下,因此同步此目錄就能夠了。
編寫一個同步數據的腳本 /opt/inotiyf_itdb.sh
#! /bin/bash
#para
host01=172.28.5.152
src=/var/www/html/data
dst=itdb
user=rsync_backup
rsync_passfile=/etc/rsync.password
inotify_home=/usr/local/inotify
#judgge
if [ ! -e "$src" ] \
|| [ ! -e "${rsync_passfile}" ] \
|| [ ! -e "${inotify_home}/bin/inotifywait" ] \
|| [ ! -e "/usr/bin/rsync" ];
then
echo "Check File and Folder"
exit 9
fi
${inotify_home}/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' -e close_write,delete,create,attrib $src \
| while read file
do
# rsync -avzP --delete --timeout=100 --password-file=${rsync_passfile} $src $user@$host01::$dst >/dev/null 2>&1
cd $src && rsync -aruz -R --delete ./ --timeout=100 $user@$host01::$dst --password-file=${rsync_passfile} >/dev/null 2>&1
done
exit 0
解釋:
六、後臺運行腳本
#bash /opt/inotify_itdb.sh &
七、在itdb 網頁修改或增長內容,而後到備份服務ls -l 查看文件的時間,看看文件是否同步了。
八、若是有須要恢復的,能夠將備份出來的itdb.db文件複製到/var/www/html/data/目錄下,而後重啓httpd服務就能夠了