• 欢迎访问Ppabc博客网站,专注于Linux、CentOS、Apache、Nginx、MySQL、PHP等开源工具安装优化的技术博客,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入Ppabc博客
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏Ppabc博客吧

FreeBSD 服务器架设和设置备忘

Freebsd admin 9年前 (2010-01-22) 313次浏览

FreeBSD 服务器架设和设置备忘
http://www.gccgle.com/2007/07/freebsd.html

FreeBSD 下用 rsync 对网站进行同步镜像备份

前言
rsync 是 Linux 系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync。rsync 支持大多数的类 Unix 系统,无论是 Linux、Solaris 还是 BSD 上都经过了良好的测试。rsync 的最新版本可以从 http://rsync.samba.org/rsync/获得。它的特性如下:
1、可以镜像保存整个目录树和文件系统。
2、可以很容易做到保持原来文件的权限、时间、软硬链接等等。
3、无须特殊权限即可安装。
4、优化的流程,文件传输效率高。
5、可以使用 rcp、ssh 等方式来传输文件,当然也可以通过直接的 socket 连接。
本文介绍了如何使用 rsync 服务从 Linux 到 Windows 和 linux 进行远程备份
软件及平台
FreeBSD 5.2 (Server and Client)

Server IP:192.168.83.80 Hostname: freebsd-1
Client IP:192.168.83.81 Hostname: freebsd-2

apache_1.3.29
rsync-2.5.7
目的
备份 Rsync Server(192.168.83.80)上的 /usr/local/apache2/htdocs 目录下所有内容,到 Rsync Client(192.168.83.81)的/backup/www 下
安装及配置

一,Rsync Server

Step 1: 安装
freebsd-1#cd /usr/ports/net/rsync
freebsd-1#make install clean

Step 3: 配置 rsyncd.conf
freebsd-1#vi /usr/local/etc/rsyncd.conf //加入以下内容

[www]
comment = web server backup
path = /usr/local/apache2/htdocs
auth users = tonny
uid = nobody
gid = nogroup
secrets file = /usr/local/etc/rsyncd.secrets
read only = no

Step 4: 配置 rsyncd.secrets
freebsd-1#vi /usr/local/etc/rsyncd.secrets //加入以下内容

tonny:123456 // 认证所需的用户名/密码

freebsd-1#chmod 600 rsyncd.secrets

Step 5: 配置 rc.conf
freebsd-1#vi /etc/rc.conf //加入以下内容

rsyncd_enable=”YES”

Step 6: 启动 Rsync daemon 模式
freebsd-1#vi /usr/local/etc/rc.d/rsyncd.sh //加入以下内容

command_args=”-4 –daemon” <<<— 启用 ipv4 协议

freebsd-1#/usr/local/etc/rc.d/rsyncd.sh start

Step 7: 检查 Rsync daemon 启动状态
freebsd-1# sockstat | grep rsync
root rsync 440 3 dgram -> /var/run/log
root rsync 440 4 tcp4 *:873 *:*

二,Rsync Client

Step 1: 安装
freebsd-2#cd /usr/ports/net/rsync
freebsd-2#make install clean

Step 2: 建立备份目录
freebsd-2#cd /
freebsd-2#mkdir -p backup/www

Step 3: 配置 rsyncd.secrets
freebsd-2#vi /usr/local/etc/rsyncd.secrets //加入以下内容

123456 //Rsync Server 上的认证密码,不用输入用户名

freebsd-2#chmod 600 rsyncd.secrets

Step 4: 检查备份同步状态
freebsd-2#/usr/local/bin/rsync -avzP –delete
–password-file=/usr/local/etc/rsyncd.secrets tonny@192.168.83.80::www
/backup/www/

—>>> 将 Rsync Server 的 Web 页面,备份或同步到了 Rsync Client 的/backup/www 下
Step 5: Auto Rsync Shell:
freebsd-2#cd /usr/local/etc/rc.d/

freebsd-2#chmod a-x rsyncd.sh

freebsd-2#vi rsync.sh //加入以下内容

#!/bin/sh

/usr/local/bin/rsync -avzP –delete
–password-file=/usr/local/etc/rsyncd.secrets tonny@192.168.83.80::www
/backup/www/

freebsd-2#chmod a+x rsync.sh

freebsd-2#crontab -e //加入以下内容(每天下午 5 点半自动备份同步)

30 17 * * * /usr/local/etc/rc.d/rsync.sh

三,高级应用(Rsync With SSH)

Rsync Server
freebsd-1#/usr/bin/ssh-keygen -d

Rsync Client
freebsd-2#/usr/bin/ssh-keygen -d

freebsd-2#scp ~/.ssh/id_dsa.pub 192.168.83.80:/root/.ssh/authorized_keys

freebsd-2#ssh-agent csh 或 (ssh-agent bash) —>>> #echo $SHELL
查看当前 SHELL
freebsd-2#ssh-add id_dsa —>>> 输入 passphase
freebsd-2#/usr/local/bin/rsync -avzP –delete -e ssh 192.168.83.80:/usr/local/apache2/htdocs/ /backup/www
htdocs/不加斜线,会在备备份机上建立一个文件夹

PS: 参数说明

-a, –archive archive mode, equivalent to -rlptgoD
//档案模式
-v, –verbose
//详细模式
-z, –compress compress file data
//压缩文件
-P equivalent to –partial –progress
//显示进度
–delete
This tells rsync to delete any files on the receiving side
that
aren’t on the sending side.
//保持远程机器的文件同步性
-e ssh use SSH connection
//使用 SSH 连接,保证数据安全
-u 增量同步,即服务器端有新文件时客户端只同步新文件


Selinux 中国 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:FreeBSD 服务器架设和设置备忘
喜欢 (0)