Shopify Free Trial Apply
Shopify 60天试用
Shopify 14天试用
linux 运维

linux 运维

Linux下chkconfig命令详解(转载)

Linux运维East_Digi_Marketing 发表了文章 • 1 个评论 • 4031 次浏览 • 2018-11-30 08:14 • 来自相关话题

chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。

使用语法:
chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]

chkconfig在没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务是否在当前运行级启动。如果是,返回true,否则返回false。如果在服务名后面指定了on,off或者reset,那么chkconfi 会改变指定服务的启动信息。on和off分别指服务被启动和停止,reset指重置服务的启动信息,无论有问题的初始化脚本指定了什么。on和off开关,系统默认只对运行级3,4,5有效,但是reset可以对所有运行级有效。

参数用法:
   --add  增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
   --del  删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。
   --level<等级代号>  指定读系统服务要在哪一个执行等级中开启或关毕。
      等级0表示:表示关机
      等级1表示:单用户模式
      等级2表示:无网络连接的多用户命令行模式
      等级3表示:有网络连接的多用户命令行模式
      等级4表示:不可用
      等级5表示:带图形界面的多用户模式
      等级6表示:重新启动
      需要说明的是,level选项可以指定要查看的运行级而不一定是当前运行级。对于每个运行级,只能有一个启动脚本或者停止脚本。当切换运行级时,init不会重新启动已经启动的服务,也不会再次去停止已经停止的服务。

    chkconfig --list [name]:显示所有运行级系统服务的运行状态信息(on或off)。如果指定了name,那么只显示指定的服务在不同运行级的状态。
    chkconfig --add name:增加一项新的服务。chkconfig确保每个运行级有一项启动(S)或者杀死(K)入口。如有缺少,则会从缺省的init脚本自动建立。
    chkconfig --del name:删除服务,并把相关符号连接从/etc/rc[0-6].d删除。
    chkconfig [--level levels] name:设置某一服务在指定的运行级是被启动,停止还是重置。

运行级文件:
每个被chkconfig管理的服务需要在对应的init.d下的脚本加上两行或者更多行的注释。第一行告诉chkconfig缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。第二行对服务进行描述,可以用\ 跨行注释。
例如,random.init包含三行:
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for \
# higher quality random number generation.

使用范例:
chkconfig --list        #列出所有的系统服务
chkconfig --add httpd        #增加httpd服务
chkconfig --del httpd        #删除httpd服务
chkconfig --level httpd 2345 on        #设置httpd在运行级别为2、3、4、5的情况下都是on(开启)的状态
chkconfig --list        #列出系统所有的服务启动情况
chkconfig --list mysqld        #列出mysqld服务设置情况
chkconfig --level 35 mysqld on        #设定mysqld在等级3和5为开机运行服务,--level 35表示操作只在等级3和5执行,on表示启动,off表示关闭
chkconfig mysqld on        #设定mysqld在各等级为on,“各等级”包括2、3、4、5等级

如何增加一个服务:
1.服务脚本必须存放在/etc/ini.d/目录下;
2.chkconfig --add servicename
    在chkconfig工具服务列表中增加此服务,此时服务会被在/etc/rc.d/rcN.d中赋予K/S入口了;
3.chkconfig --level 35 mysqld on
    修改服务的默认启动等级。
转载自:https://www.cnblogs.com/panjun ... .html 查看全部
chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。

使用语法:
chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]

chkconfig在没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务是否在当前运行级启动。如果是,返回true,否则返回false。如果在服务名后面指定了on,off或者reset,那么chkconfi 会改变指定服务的启动信息。on和off分别指服务被启动和停止,reset指重置服务的启动信息,无论有问题的初始化脚本指定了什么。on和off开关,系统默认只对运行级3,4,5有效,但是reset可以对所有运行级有效。

参数用法:
   --add  增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
   --del  删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。
   --level<等级代号>  指定读系统服务要在哪一个执行等级中开启或关毕。
      等级0表示:表示关机
      等级1表示:单用户模式
      等级2表示:无网络连接的多用户命令行模式
      等级3表示:有网络连接的多用户命令行模式
      等级4表示:不可用
      等级5表示:带图形界面的多用户模式
      等级6表示:重新启动
      需要说明的是,level选项可以指定要查看的运行级而不一定是当前运行级。对于每个运行级,只能有一个启动脚本或者停止脚本。当切换运行级时,init不会重新启动已经启动的服务,也不会再次去停止已经停止的服务。

    chkconfig --list [name]:显示所有运行级系统服务的运行状态信息(on或off)。如果指定了name,那么只显示指定的服务在不同运行级的状态。
    chkconfig --add name:增加一项新的服务。chkconfig确保每个运行级有一项启动(S)或者杀死(K)入口。如有缺少,则会从缺省的init脚本自动建立。
    chkconfig --del name:删除服务,并把相关符号连接从/etc/rc[0-6].d删除。
    chkconfig [--level levels] name:设置某一服务在指定的运行级是被启动,停止还是重置。

运行级文件:
每个被chkconfig管理的服务需要在对应的init.d下的脚本加上两行或者更多行的注释。第一行告诉chkconfig缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。第二行对服务进行描述,可以用\ 跨行注释。
例如,random.init包含三行:
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for \
# higher quality random number generation.

使用范例:
chkconfig --list        #列出所有的系统服务
chkconfig --add httpd        #增加httpd服务
chkconfig --del httpd        #删除httpd服务
chkconfig --level httpd 2345 on        #设置httpd在运行级别为2、3、4、5的情况下都是on(开启)的状态
chkconfig --list        #列出系统所有的服务启动情况
chkconfig --list mysqld        #列出mysqld服务设置情况
chkconfig --level 35 mysqld on        #设定mysqld在等级3和5为开机运行服务,--level 35表示操作只在等级3和5执行,on表示启动,off表示关闭
chkconfig mysqld on        #设定mysqld在各等级为on,“各等级”包括2、3、4、5等级

如何增加一个服务:
1.服务脚本必须存放在/etc/ini.d/目录下;
2.chkconfig --add servicename
    在chkconfig工具服务列表中增加此服务,此时服务会被在/etc/rc.d/rcN.d中赋予K/S入口了;
3.chkconfig --level 35 mysqld on
    修改服务的默认启动等级。
转载自:https://www.cnblogs.com/panjun ... .html

linux rsync定时备份数据

Linux运维East_Digi_Marketing 发表了文章 • 0 个评论 • 4122 次浏览 • 2018-02-22 12:29 • 来自相关话题

rsync在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息。

rsync的特性

能更新整个目录树和文件系统

有选择性的保持符号链接、硬链接,文件属性、权限、设备以及时间等

对于多个文件来说,内部流水线减少文件等待的延时

一、安装rsync【业务服务器和备份服务器都需要安装】

安装rsync之前要先安装xinetd,因为我们要用xinetd来管理rsync进程

yum -y install xinetd

yum -y install rsync

安装完之后,可以在/etc/xinetd.d/目录下看到rsync进程的管理文件rsync

service rsync

{

disable= yes 【将yes改为no,表示启动xinetd服务时,启动rsync进程】

flags= IPv6

socket_type = stream

wait = no

user = root

server = /usr/bin/rsync

server_args = --daemon

log_on_failure += USERID

}

二、rsync的配置文件,只要有rsyncd.conf(主配置文件)、rsync.secrets(密码文件)、rsyncd.motd(服务器信息)

上述三个文件默认都是不存在的,需要手动创建

1、业务服务器上的配置

touch /etc/rsyncd.conf

touch /etc/rsyncd.secrets

chmod 600 /etc/rsyncd.secrets #将rsyncd.secrets密码文件属性设为root拥有,且权限设为600,否则无法备份成功。

touch /etc/rsyncd.motd

---------------------------------------------------------------------------------------------------------------------------

编辑rsyncd.conf

uid = root #进行备份的用户

gid = root #进行备份的组

use chroot = no #隔离目录,使其只能在指定的目录下活动。

max connections = 200 #最大连接数

timeout = 600 #超时时间

pidfile = /var/run/rsyncd.pid #pid文件的存放位置

lock file = /var/run/rsync.lock #锁文件的存放位置

log file = /var/log/rsyncd.log #log文件的存放位置

######以上是全局配置#####

[backup] #认证模块名,对外公布的名字

path = /backup/ #需要同步的目录的真实路径

comment = backup #描述

ignore errors #可以忽略一些无关的IO错误

read only = no #设置为no,指允许可读可写,没有特殊要求,一定要写成yes

list = no #不允许列出清单

hosts allow = 192.168.15.0/255.255.255.0 或者192.168.10.220 #可以写网段或者单个IP,多个IP以,号隔开

auth users = dong #进行认证的用户名,我测试的是可以随便写的

secrets file = /etc/rsyncd.secrets #密码的存放位置

以上部分配置选项,可以放到全局配置中,也可以放到局部配置中

-------------------------------------------------------------------------------------

编辑/etc/rsyncd.secrets 【这个文件只写用户名和密码,】

dong:123456

将rsyncd.secrets密码文件属性设为root拥有,且权限设为600,否则无法备份成功。

-------------------------------------------------------------------------------------

业务服务器上配置好后,重启一下xinetd服务

-------------------------------------------------------------------------------------

2、配置备份服务器

-------------------------------------------------------------------------------------

编辑/etc/rsyncd.secrets 【备份服务器上的密码文件,只需要写密码就可以了,】

123456

将rsyncd.secrets密码文件属性设为root拥有,且权限设为600,否则无法备份成功。

-------------------------------------------------------------------------------------

编写同步脚本rsyncd.sh

#!/bin/bash

#rsync备份脚本,将业务服务器(192.168.15.250)上的backup模块,备份到本机的/webbak目录下

#同步日志由该选项指定 --log-file=/etc/shell/$ip.log

ip=192.168.15.250

/usr/bin/rsync -avzP --partial --delete --password-file=/etc/rsyncd.secrets --log-file=/etc/shell/$ip.log dong@$ip::backup /webbak

-------------------------------------------------------------------------------------

设定计划任务,定时执行上述脚本【每天的23:30分开始执行该同步脚本】

[root@cunchu shell]# crontab -l

30 23 * * * /etc/shell/rsyncbak.sh 查看全部
rsync在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息。

rsync的特性

能更新整个目录树和文件系统

有选择性的保持符号链接、硬链接,文件属性、权限、设备以及时间等

对于多个文件来说,内部流水线减少文件等待的延时

一、安装rsync【业务服务器和备份服务器都需要安装】

安装rsync之前要先安装xinetd,因为我们要用xinetd来管理rsync进程

yum -y install xinetd

yum -y install rsync

安装完之后,可以在/etc/xinetd.d/目录下看到rsync进程的管理文件rsync

service rsync

{

disable= yes 【将yes改为no,表示启动xinetd服务时,启动rsync进程】

flags= IPv6

socket_type = stream

wait = no

user = root

server = /usr/bin/rsync

server_args = --daemon

log_on_failure += USERID

}

二、rsync的配置文件,只要有rsyncd.conf(主配置文件)、rsync.secrets(密码文件)、rsyncd.motd(服务器信息)

上述三个文件默认都是不存在的,需要手动创建

1、业务服务器上的配置

touch /etc/rsyncd.conf

touch /etc/rsyncd.secrets

chmod 600 /etc/rsyncd.secrets #将rsyncd.secrets密码文件属性设为root拥有,且权限设为600,否则无法备份成功。

touch /etc/rsyncd.motd

---------------------------------------------------------------------------------------------------------------------------

编辑rsyncd.conf

uid = root #进行备份的用户

gid = root #进行备份的组

use chroot = no #隔离目录,使其只能在指定的目录下活动。

max connections = 200 #最大连接数

timeout = 600 #超时时间

pidfile = /var/run/rsyncd.pid #pid文件的存放位置

lock file = /var/run/rsync.lock #锁文件的存放位置

log file = /var/log/rsyncd.log #log文件的存放位置

######以上是全局配置#####

[backup] #认证模块名,对外公布的名字

path = /backup/ #需要同步的目录的真实路径

comment = backup #描述

ignore errors #可以忽略一些无关的IO错误

read only = no #设置为no,指允许可读可写,没有特殊要求,一定要写成yes

list = no #不允许列出清单

hosts allow = 192.168.15.0/255.255.255.0 或者192.168.10.220 #可以写网段或者单个IP,多个IP以,号隔开

auth users = dong #进行认证的用户名,我测试的是可以随便写的

secrets file = /etc/rsyncd.secrets #密码的存放位置

以上部分配置选项,可以放到全局配置中,也可以放到局部配置中

-------------------------------------------------------------------------------------

编辑/etc/rsyncd.secrets 【这个文件只写用户名和密码,】

dong:123456

将rsyncd.secrets密码文件属性设为root拥有,且权限设为600,否则无法备份成功。

-------------------------------------------------------------------------------------

业务服务器上配置好后,重启一下xinetd服务

-------------------------------------------------------------------------------------

2、配置备份服务器

-------------------------------------------------------------------------------------

编辑/etc/rsyncd.secrets 【备份服务器上的密码文件,只需要写密码就可以了,】

123456

将rsyncd.secrets密码文件属性设为root拥有,且权限设为600,否则无法备份成功。

-------------------------------------------------------------------------------------

编写同步脚本rsyncd.sh

#!/bin/bash

#rsync备份脚本,将业务服务器(192.168.15.250)上的backup模块,备份到本机的/webbak目录下

#同步日志由该选项指定 --log-file=/etc/shell/$ip.log

ip=192.168.15.250

/usr/bin/rsync -avzP --partial --delete --password-file=/etc/rsyncd.secrets --log-file=/etc/shell/$ip.log dong@$ip::backup /webbak

-------------------------------------------------------------------------------------

设定计划任务,定时执行上述脚本【每天的23:30分开始执行该同步脚本】

[root@cunchu shell]# crontab -l

30 23 * * * /etc/shell/rsyncbak.sh

Linux下chkconfig命令详解(转载)

Linux运维East_Digi_Marketing 发表了文章 • 1 个评论 • 4031 次浏览 • 2018-11-30 08:14 • 来自相关话题

chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。

使用语法:
chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]

chkconfig在没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务是否在当前运行级启动。如果是,返回true,否则返回false。如果在服务名后面指定了on,off或者reset,那么chkconfi 会改变指定服务的启动信息。on和off分别指服务被启动和停止,reset指重置服务的启动信息,无论有问题的初始化脚本指定了什么。on和off开关,系统默认只对运行级3,4,5有效,但是reset可以对所有运行级有效。

参数用法:
   --add  增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
   --del  删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。
   --level<等级代号>  指定读系统服务要在哪一个执行等级中开启或关毕。
      等级0表示:表示关机
      等级1表示:单用户模式
      等级2表示:无网络连接的多用户命令行模式
      等级3表示:有网络连接的多用户命令行模式
      等级4表示:不可用
      等级5表示:带图形界面的多用户模式
      等级6表示:重新启动
      需要说明的是,level选项可以指定要查看的运行级而不一定是当前运行级。对于每个运行级,只能有一个启动脚本或者停止脚本。当切换运行级时,init不会重新启动已经启动的服务,也不会再次去停止已经停止的服务。

    chkconfig --list [name]:显示所有运行级系统服务的运行状态信息(on或off)。如果指定了name,那么只显示指定的服务在不同运行级的状态。
    chkconfig --add name:增加一项新的服务。chkconfig确保每个运行级有一项启动(S)或者杀死(K)入口。如有缺少,则会从缺省的init脚本自动建立。
    chkconfig --del name:删除服务,并把相关符号连接从/etc/rc[0-6].d删除。
    chkconfig [--level levels] name:设置某一服务在指定的运行级是被启动,停止还是重置。

运行级文件:
每个被chkconfig管理的服务需要在对应的init.d下的脚本加上两行或者更多行的注释。第一行告诉chkconfig缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。第二行对服务进行描述,可以用\ 跨行注释。
例如,random.init包含三行:
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for \
# higher quality random number generation.

使用范例:
chkconfig --list        #列出所有的系统服务
chkconfig --add httpd        #增加httpd服务
chkconfig --del httpd        #删除httpd服务
chkconfig --level httpd 2345 on        #设置httpd在运行级别为2、3、4、5的情况下都是on(开启)的状态
chkconfig --list        #列出系统所有的服务启动情况
chkconfig --list mysqld        #列出mysqld服务设置情况
chkconfig --level 35 mysqld on        #设定mysqld在等级3和5为开机运行服务,--level 35表示操作只在等级3和5执行,on表示启动,off表示关闭
chkconfig mysqld on        #设定mysqld在各等级为on,“各等级”包括2、3、4、5等级

如何增加一个服务:
1.服务脚本必须存放在/etc/ini.d/目录下;
2.chkconfig --add servicename
    在chkconfig工具服务列表中增加此服务,此时服务会被在/etc/rc.d/rcN.d中赋予K/S入口了;
3.chkconfig --level 35 mysqld on
    修改服务的默认启动等级。
转载自:https://www.cnblogs.com/panjun ... .html 查看全部
chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息。谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接。

使用语法:
chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset]

chkconfig在没有参数运行时,显示用法。如果加上服务名,那么就检查这个服务是否在当前运行级启动。如果是,返回true,否则返回false。如果在服务名后面指定了on,off或者reset,那么chkconfi 会改变指定服务的启动信息。on和off分别指服务被启动和停止,reset指重置服务的启动信息,无论有问题的初始化脚本指定了什么。on和off开关,系统默认只对运行级3,4,5有效,但是reset可以对所有运行级有效。

参数用法:
   --add  增加所指定的系统服务,让chkconfig指令得以管理它,并同时在系统启动的叙述文件内增加相关数据。
   --del  删除所指定的系统服务,不再由chkconfig指令管理,并同时在系统启动的叙述文件内删除相关数据。
   --level<等级代号>  指定读系统服务要在哪一个执行等级中开启或关毕。
      等级0表示:表示关机
      等级1表示:单用户模式
      等级2表示:无网络连接的多用户命令行模式
      等级3表示:有网络连接的多用户命令行模式
      等级4表示:不可用
      等级5表示:带图形界面的多用户模式
      等级6表示:重新启动
      需要说明的是,level选项可以指定要查看的运行级而不一定是当前运行级。对于每个运行级,只能有一个启动脚本或者停止脚本。当切换运行级时,init不会重新启动已经启动的服务,也不会再次去停止已经停止的服务。

    chkconfig --list [name]:显示所有运行级系统服务的运行状态信息(on或off)。如果指定了name,那么只显示指定的服务在不同运行级的状态。
    chkconfig --add name:增加一项新的服务。chkconfig确保每个运行级有一项启动(S)或者杀死(K)入口。如有缺少,则会从缺省的init脚本自动建立。
    chkconfig --del name:删除服务,并把相关符号连接从/etc/rc[0-6].d删除。
    chkconfig [--level levels] name:设置某一服务在指定的运行级是被启动,停止还是重置。

运行级文件:
每个被chkconfig管理的服务需要在对应的init.d下的脚本加上两行或者更多行的注释。第一行告诉chkconfig缺省启动的运行级以及启动和停止的优先级。如果某服务缺省不在任何运行级启动,那么使用 - 代替运行级。第二行对服务进行描述,可以用\ 跨行注释。
例如,random.init包含三行:
# chkconfig: 2345 20 80
# description: Saves and restores system entropy pool for \
# higher quality random number generation.

使用范例:
chkconfig --list        #列出所有的系统服务
chkconfig --add httpd        #增加httpd服务
chkconfig --del httpd        #删除httpd服务
chkconfig --level httpd 2345 on        #设置httpd在运行级别为2、3、4、5的情况下都是on(开启)的状态
chkconfig --list        #列出系统所有的服务启动情况
chkconfig --list mysqld        #列出mysqld服务设置情况
chkconfig --level 35 mysqld on        #设定mysqld在等级3和5为开机运行服务,--level 35表示操作只在等级3和5执行,on表示启动,off表示关闭
chkconfig mysqld on        #设定mysqld在各等级为on,“各等级”包括2、3、4、5等级

如何增加一个服务:
1.服务脚本必须存放在/etc/ini.d/目录下;
2.chkconfig --add servicename
    在chkconfig工具服务列表中增加此服务,此时服务会被在/etc/rc.d/rcN.d中赋予K/S入口了;
3.chkconfig --level 35 mysqld on
    修改服务的默认启动等级。
转载自:https://www.cnblogs.com/panjun ... .html

linux rsync定时备份数据

Linux运维East_Digi_Marketing 发表了文章 • 0 个评论 • 4122 次浏览 • 2018-02-22 12:29 • 来自相关话题

rsync在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息。

rsync的特性

能更新整个目录树和文件系统

有选择性的保持符号链接、硬链接,文件属性、权限、设备以及时间等

对于多个文件来说,内部流水线减少文件等待的延时

一、安装rsync【业务服务器和备份服务器都需要安装】

安装rsync之前要先安装xinetd,因为我们要用xinetd来管理rsync进程

yum -y install xinetd

yum -y install rsync

安装完之后,可以在/etc/xinetd.d/目录下看到rsync进程的管理文件rsync

service rsync

{

disable= yes 【将yes改为no,表示启动xinetd服务时,启动rsync进程】

flags= IPv6

socket_type = stream

wait = no

user = root

server = /usr/bin/rsync

server_args = --daemon

log_on_failure += USERID

}

二、rsync的配置文件,只要有rsyncd.conf(主配置文件)、rsync.secrets(密码文件)、rsyncd.motd(服务器信息)

上述三个文件默认都是不存在的,需要手动创建

1、业务服务器上的配置

touch /etc/rsyncd.conf

touch /etc/rsyncd.secrets

chmod 600 /etc/rsyncd.secrets #将rsyncd.secrets密码文件属性设为root拥有,且权限设为600,否则无法备份成功。

touch /etc/rsyncd.motd

---------------------------------------------------------------------------------------------------------------------------

编辑rsyncd.conf

uid = root #进行备份的用户

gid = root #进行备份的组

use chroot = no #隔离目录,使其只能在指定的目录下活动。

max connections = 200 #最大连接数

timeout = 600 #超时时间

pidfile = /var/run/rsyncd.pid #pid文件的存放位置

lock file = /var/run/rsync.lock #锁文件的存放位置

log file = /var/log/rsyncd.log #log文件的存放位置

######以上是全局配置#####

[backup] #认证模块名,对外公布的名字

path = /backup/ #需要同步的目录的真实路径

comment = backup #描述

ignore errors #可以忽略一些无关的IO错误

read only = no #设置为no,指允许可读可写,没有特殊要求,一定要写成yes

list = no #不允许列出清单

hosts allow = 192.168.15.0/255.255.255.0 或者192.168.10.220 #可以写网段或者单个IP,多个IP以,号隔开

auth users = dong #进行认证的用户名,我测试的是可以随便写的

secrets file = /etc/rsyncd.secrets #密码的存放位置

以上部分配置选项,可以放到全局配置中,也可以放到局部配置中

-------------------------------------------------------------------------------------

编辑/etc/rsyncd.secrets 【这个文件只写用户名和密码,】

dong:123456

将rsyncd.secrets密码文件属性设为root拥有,且权限设为600,否则无法备份成功。

-------------------------------------------------------------------------------------

业务服务器上配置好后,重启一下xinetd服务

-------------------------------------------------------------------------------------

2、配置备份服务器

-------------------------------------------------------------------------------------

编辑/etc/rsyncd.secrets 【备份服务器上的密码文件,只需要写密码就可以了,】

123456

将rsyncd.secrets密码文件属性设为root拥有,且权限设为600,否则无法备份成功。

-------------------------------------------------------------------------------------

编写同步脚本rsyncd.sh

#!/bin/bash

#rsync备份脚本,将业务服务器(192.168.15.250)上的backup模块,备份到本机的/webbak目录下

#同步日志由该选项指定 --log-file=/etc/shell/$ip.log

ip=192.168.15.250

/usr/bin/rsync -avzP --partial --delete --password-file=/etc/rsyncd.secrets --log-file=/etc/shell/$ip.log dong@$ip::backup /webbak

-------------------------------------------------------------------------------------

设定计划任务,定时执行上述脚本【每天的23:30分开始执行该同步脚本】

[root@cunchu shell]# crontab -l

30 23 * * * /etc/shell/rsyncbak.sh 查看全部
rsync在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息。

rsync的特性

能更新整个目录树和文件系统

有选择性的保持符号链接、硬链接,文件属性、权限、设备以及时间等

对于多个文件来说,内部流水线减少文件等待的延时

一、安装rsync【业务服务器和备份服务器都需要安装】

安装rsync之前要先安装xinetd,因为我们要用xinetd来管理rsync进程

yum -y install xinetd

yum -y install rsync

安装完之后,可以在/etc/xinetd.d/目录下看到rsync进程的管理文件rsync

service rsync

{

disable= yes 【将yes改为no,表示启动xinetd服务时,启动rsync进程】

flags= IPv6

socket_type = stream

wait = no

user = root

server = /usr/bin/rsync

server_args = --daemon

log_on_failure += USERID

}

二、rsync的配置文件,只要有rsyncd.conf(主配置文件)、rsync.secrets(密码文件)、rsyncd.motd(服务器信息)

上述三个文件默认都是不存在的,需要手动创建

1、业务服务器上的配置

touch /etc/rsyncd.conf

touch /etc/rsyncd.secrets

chmod 600 /etc/rsyncd.secrets #将rsyncd.secrets密码文件属性设为root拥有,且权限设为600,否则无法备份成功。

touch /etc/rsyncd.motd

---------------------------------------------------------------------------------------------------------------------------

编辑rsyncd.conf

uid = root #进行备份的用户

gid = root #进行备份的组

use chroot = no #隔离目录,使其只能在指定的目录下活动。

max connections = 200 #最大连接数

timeout = 600 #超时时间

pidfile = /var/run/rsyncd.pid #pid文件的存放位置

lock file = /var/run/rsync.lock #锁文件的存放位置

log file = /var/log/rsyncd.log #log文件的存放位置

######以上是全局配置#####

[backup] #认证模块名,对外公布的名字

path = /backup/ #需要同步的目录的真实路径

comment = backup #描述

ignore errors #可以忽略一些无关的IO错误

read only = no #设置为no,指允许可读可写,没有特殊要求,一定要写成yes

list = no #不允许列出清单

hosts allow = 192.168.15.0/255.255.255.0 或者192.168.10.220 #可以写网段或者单个IP,多个IP以,号隔开

auth users = dong #进行认证的用户名,我测试的是可以随便写的

secrets file = /etc/rsyncd.secrets #密码的存放位置

以上部分配置选项,可以放到全局配置中,也可以放到局部配置中

-------------------------------------------------------------------------------------

编辑/etc/rsyncd.secrets 【这个文件只写用户名和密码,】

dong:123456

将rsyncd.secrets密码文件属性设为root拥有,且权限设为600,否则无法备份成功。

-------------------------------------------------------------------------------------

业务服务器上配置好后,重启一下xinetd服务

-------------------------------------------------------------------------------------

2、配置备份服务器

-------------------------------------------------------------------------------------

编辑/etc/rsyncd.secrets 【备份服务器上的密码文件,只需要写密码就可以了,】

123456

将rsyncd.secrets密码文件属性设为root拥有,且权限设为600,否则无法备份成功。

-------------------------------------------------------------------------------------

编写同步脚本rsyncd.sh

#!/bin/bash

#rsync备份脚本,将业务服务器(192.168.15.250)上的backup模块,备份到本机的/webbak目录下

#同步日志由该选项指定 --log-file=/etc/shell/$ip.log

ip=192.168.15.250

/usr/bin/rsync -avzP --partial --delete --password-file=/etc/rsyncd.secrets --log-file=/etc/shell/$ip.log dong@$ip::backup /webbak

-------------------------------------------------------------------------------------

设定计划任务,定时执行上述脚本【每天的23:30分开始执行该同步脚本】

[root@cunchu shell]# crontab -l

30 23 * * * /etc/shell/rsyncbak.sh