您的位置:首页 > 运维架构 > Linux

Linux备份远程数据--SSH,rsync

2012-12-18 22:46 543 查看
一. 利用ssh提供的scp命令进行远程复制备份

1.利用Linux默认开启的SSH提供的功能进行远程备份。

通过制作不用密码即可立刻登录的SSH用户,利用SCP指令放置于crontab服务中进行自动的网络复制和备份 。

.2.制作不用密码的SSH用户步骤如下:

2.1.客户端建立两把钥匙(假设客户端用户为client)

ssh-keygen

通过此命令会在/home/client/目录下新增目录.ssh,同时在.ssh目录下会创建id_rsa(私钥)和id_rsa.pub(公钥)

2.2确定id_rsa文件的权限为500,确定.ssh目录的权限为700

2.3将公钥上传到服务器的特定用户上(将定服务器端用户为luyx):

scp ~/.ssh/id_rsa.pub luyx@192.168.1.108:~ //会提示用户输入密码

2.4.以server01的身份登录服务器,在主目录上操作如下:

mkdir .ssh;chmod 700 .ssh

2.5.将客户端用户client的公钥文件添加到.ssh/authorized_keys中

cat id_rsa.pub >> .ssh/authorized_keys

chmod 644 .ssh/authorized_keys

3.测试

scp /etc/hosts.* server01@192.168.1.108:~ //不需要输入密码即可执行

ssh server01@192.168.1.108 "ls -l" //不用登录直接执行命令

二. 利用rsync进行同步镜像备份

1.rsync命令的格式如下:

rsync [-avrlptgoD] [-e ssh] [user@host:/dir] [/local/dir]

参数说明:

-v:查看模式,列出更多信息

-q:与-v相反,略过正常信息,仅显示错误信息

-r 递归复制,可以针对目录处理

-u 仅更新,若目标文件较新,则保留新文件不被覆盖

-p 复制时,连同属性一并复制

-g 保存源文件的属组

-u 保存源文件的属主

-D 保存源文件的设备属性

-t 保存源文件的时间参数

-l :复制链接文件的属性,而非链接的目标的源文件内容

-a 相当于-rlptgoD

2.常用案例

----将/etc的数据备份到/tmp:

rsync -av /etc/ /tmp

----利用luyx身份登录服务器将用户主目录复制到主机/tmp

rsync -av -e ssh luyx@192.168.1.108:~ /tmp //利用一设置后完成了不需要密码的,可以完成不需要密码进行镜像备份

通过以上设置可以将设置写入shell,然后添加到crontab中,即可完成定时备份。

参考资料:http://vbird.dic.ksu.edu.tw/linux_server/0310telnetssh_6.php
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: