3.创建NFS服务器:

创建NFS服务器:

# optimization by onekey

sed -i ‘s#SELINUX=enforcing#SELINUX=disabled#‘ /etc/selinux/config

grep SELINUX=disabled /etc/selinux/config

setenforce 0

getenforce

/etc/init.d/iptables stop

/etc/init.d/iptables stop

chkconfig iptables off

chkconfig|egrep -v "crond|sshd|network|rsyslog|sysstat"|awk ‘{print "chkconfig",$1,"off"}‘|bash

useradd oldboy

\cp /etc/sudoers /etc/sudoers.bak

echo "oldboy ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers

tail -l /etc/sudoers

visudo -c

echo ‘export TMOUT=1800‘ >> /etc/profile

echo ‘export HISTSIZE=5‘  >> /etc/profile

echo ‘export HISTFILESIZE=5‘ >> /etc/profile

. /etc/profile

echo ‘*                -       nofile          65535‘ >> /etc/security/limits.conf

echo ">/etc/udev/rules.d/70-persistent-net.rules" >>/etc/rc.local

#about selinux

cat >> /etc/sysctl.conf <<EOF

net.ipv4.tcp_fin_timeout = 2

net.ipv4.tcp_tw_reuse = 1

net.ipv4.tcp_tw_recycle = 1

net.ipv4.tcp_syncookies = 1

net.ipv4.tcp_keepalive_time = 600

net.ipv4.ip_local_port_range = 4000   65000

net.ipv4.tcp_max_syn_backlog = 16384

net.ipv4.tcp_max_tw_buckets = 36000

net.ipv4.route.gc_timeout = 100

net.ipv4.tcp_syn_retries = 1

net.ipv4.tcp_synack_retries = 1

net.core.somaxconn = 16384

net.core.netdv_max_backlog = 16384

net.ipv4.tcp_max_orphans = 16384

net.nf_conntrack_max = 25000000

net.netfilter.nf_conntrack_max = 25000000

net.netfilter.nf_conntrack_tcp_timeout_established = 180

net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120

net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60

net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120

EOF

#set ip and hosts for nfs

cat >/etc/sysconfig/network-scripts/ifcfg-eth0<<EOF

DEVICE=eth0

TYPE=Ethernet

ONBOOT=yes

NM_CONTROLLED=yes

BOOTPROTO=static

IPADDR=10.0.0.31

NETSK=255.255.255.0

GATEWAY=10.0.0.2

nameserver=202.96.128.86

EOF

cat >/etc/sysconfig/network-scripts/ifcfg-eth1 <<EOF

DEVICE=eth1

TYPE=Ethernet

ONBOOT=yes

NM_CONTROLLED=yes

IPADDR=172.16.1.31

NETSK=255.255.255.0

EOF

cat >/etc/sysconfig/network<<EOF

NETWORKING=yes

HOSTNAME=nfs01

EOF

hostname nfs01

cat >/etc/hosts <<EOF

127.0.0.1    localhost localhost.localdomain localhost4 localhost4.localdomain4

::1          localhost localhost.localdomain localhost6 localhost6.localdomain6

172.16.1.5   lb01

172.16.1.6   lb02

172.16.1.7   web02

172.16.1.8   web01

172.16.1.31  nfs01

172.16.1.41  backup

172.16.1.51  db01

172.16.1.61  m01

EOF

#/etc/init.d/network reload

#make some dir

mkdir -p /server/scripts /server/tools /application /data

reboot

====================================================================================================

#yum repo and epel

yum -y install  wget

\cp /etc/yum.repos.d/CentOS-Base.repo{,.backup}

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo

wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo

yum clean all

yum makecache

#setup some tools and develpment

yum -y install lrzsz nmap tree dos2unix nc wget

yum groupinstall -y "Base" "Compatibility libraries" "Debugging Tools" "Development tools"

#set ntp cron

echo ‘#time sync by NTP Server at 20170608‘ >>/var/spool/cron/root

echo ‘*/5 * * * * /usr/sbin/ntpdate 172.16.1.61 >/dev/null 2>&1‘ >>/var/spool/cron/root

crontab -l

#tar configs for every server rsync to backup

#install rsync

yum -y install rsync

#create passwordfile

echo "oldboy" >/etc/rsync.password

chmod 600 /etc/rsync.password

cat >/server/scripts/bak.sh <<EOF

#!/bin/sh

##create by 20has at 2017-5-18

IP=\$(ifconfig eth1|awk -F "[ :]+" ‘NR==2{print \$4}‘)

TIME=\$(date +%F)

mkdir -p /backup/\$IP

cd / && \

tar -zcfh /backup/\$IP/\$TIME.tar.gz var/spool/cron/root etc/rc.local server/scripts etc/sysconfig/iptables

md5sum /backup/\$IP/\$TIME.tar.gz >/backup/\$IP/flag.log

rsync -az /backup/ [email protected]::backup --password-file=/etc/rsync.password

#del

find /backup -type f -name "*.tar.gz" -mtime +7 |xargs rm -f

EOF

#add cron to rsync backup

echo ‘#add cron to rsync backup at 20170608‘ >>/var/spool/cron/root

echo ‘00 00 * * * /bin/sh /server/scripts/bak.sh &>/dev/null‘ >>/var/spool/cron/root

#setup nfs

#install rsync

yum -y install nfs-utils rpcbind

rpm -qa nfs-utils rpcbind

cat >/etc/exports<<EOF

#share /data by 20has for oldboy at 20170608

/data 172.16.1.0/24(rw,sync,all_squash,anonuid=888,anongid=888)

EOF

/etc/init.d/rpcbind start

chkconfig rpcbind on

chkconfig --list rpcbind

netstat -lntup |grep rpc

/etc/init.d/nfs start

chkconfig nfs on

chkconfig --list nfs

#rpcinfo -p localhost

useradd www -u888  -s /sbin/nologin -M

chown -R www.www /data

/etc/init.d/nfs reload

showmount -e 172.16.1.31

#inotify+rsync

#install inotify-tools

yum -y install inotify-tools

cd /server/scripts/

cat >inotify.sh<<EOF

#!/bin/sh

Path=/data

IP=172.16.1.41

/usr/bin/inotifywait -mrq --format ‘%w%f‘ -e close_write,delete \$Path \

|while read file

do

if [ -f \$file ];then

rsync -az \$file  --delete [email protected]\$IP::nfsbackup \

--password-file=/etc/rsync.password  &

else

cd \$Path

rsync -az ./  --delete [email protected]\$IP::nfsbackup \

--password-file=/etc/rsync.password  &

fi

done

EOF

#optimization inotify config    youhua

echo 655350 >/proc/sys/fs/inotify/max_user_watches

echo 655350 >/proc/sys/fs/inotify/max_queued_events

echo "echo 655350 >/proc/sys/fs/inotify/max_user_watches" >>/etc/rc.local

echo "echo 655350 >/proc/sys/fs/inotify/max_queued_events" >>/etc/rc.local

cat /etc/rc.local

#start inotify.sh

/bin/sh inotify.sh

每台服务器配置定时打包rsync到backup;

先搞好nfs搭建;

再实现rsync到backup,实现inotify实时备份到backup。

改进:使用keeplive方式 把ip漂移到nfsbackup的data目录下面 然后在backup上建立个nfs,保证nfs非单点,高可用!       此方法待实验(暂未完成)!

inotify.sh创建服务脚本,使用chkconfig管理   暂未成功!  (来自笔记:视频学习记录和规划day11)

客户端挂载nfs:

#install rsync

yum -y install nfs-utils rpcbind

rpm -qa nfs-utils rpcbind

LANG=en

/etc/init.d/rpcbind start

chkconfig rpcbind on

chkconfig --list rpcbind

mount -t nfs 172.16.131:/data /mnt

# cat /proc/mounts

echo "mount -t nfs 172.16.1.31:/data /mnt" >>/etc/rc.local   #写入开机自动挂载nfs

客户端打包rsync+cron到backup:

#tar configs for every server rsync to backup

#install rsync

yum -y install rsync

#create passwordfile

echo "oldboy" >/etc/rsync.password

chmod 600 /etc/rsync.password

cat >/server/scripts/bak.sh <<EOF

#!/bin/sh

##create by 20has at 2017-5-18

IP=\$(ifconfig eth1|awk -F "[ :]+" ‘NR==2{print \$4}‘)

TIME=\$(date +%F)

mkdir -p /backup/\$IP

cd / && \

tar -zcfh /backup/\$IP/\$TIME.tar.gz var/spool/cron/root etc/rc.local server/scripts etc/sysconfig/iptables

md5sum /backup/\$IP/\$TIME.tar.gz >/backup/\$IP/flag.log

rsync -az /backup/ [email protected]::backup --password-file=/etc/rsync.password

#del

find /backup -type f -name "*.tar.gz" -mtime +7 |xargs rm -f

EOF

#add cron to rsync backup

echo ‘#add cron to rsync backup at 20170608‘ >>/var/spool/cron/root

echo ‘00 00 * * * /bin/sh /server/scripts/bak.sh &>/dev/null‘ >>/var/spool/cron/root

时间: 2024-10-06 16:21:37

3.创建NFS服务器:的相关文章

在WINDOWS2008 Server 中创建NFS服务器,使用LINUX的MOUNT命令去加载网络盘

1.在WINDOWS服务器中创建NFS SERVER 首先,打开服务管理器,选择添加角色:     选中文件服务,下一步:     出现一个提示,不管它,继续下一步:     在接下来的页面中选中“网络文件系统服务”(NFS),下一步:     点击安装:     系统开始安装,大约需要几分钟:     安装完成,点击关闭:     这样,在Windows Server 2008 R2建立了NFS服务,然后选择一个分区,新建一个文件夹,比如NFS:     在文件夹上右键,属性,可以看到属性列表

Xen-Server创建NFS ISO及NFS(VHD)虚拟磁盘存储

在XEN-CENTER 中选择新建存储,打开新建存储窗口,然后选择ISO库下的NFS iso选项,单击下一步. 输入名称(nfs(192.168.26.209)iso库,选择下一步. 在出现的窗口中输入共享名称192.168.26.209:/data/nfs(地址填写方式为IP:服务器上具体的目录路径),单击完成即可. 创建NFS ISO完成,可以使用该存储设备中的镜像进行系统的安装. 接下来我们再创建一个NFS虚拟存储磁盘用于系统的安装. 选择下一步,输入虚拟磁盘存储的名称(NFS(192.1

NFS服务器的安装与配置

二.NFS服务器安装与配置 2.1系统环境: Red  Hat Enterprise Linux 6.0 NFS服务器的IP地址:192.168.0.101 2.2配置本地YUM源,先创建本地目录如(# mkdir /iso)的目录并且mount命令挂在到 /iso目录 2.3配置本地YUM源(vim /etc/yum.repos.d/dvd.repo)命令

2Ubuntu下nfs服务器搭建,Linux多台电脑共享目录

 1安装nfs(网络文件系统)服务器 共享的原理: 安装命令: sudo apt-get install nfs-kernel-server 2设置/etc/exports配置文件 添加以下这行配置 其中: *表示所有ip,如果想指定ip,可以把*换成你自己的ip地址. rw:表示只读权限,如果想变成只读的,修改配置为ro sync:表示同步的方式.任何人对这个目录的修改,其它人都可以看到. 3.在用户目录下创建nfs目录 4.重启服务器,发现有4个OK,这时候说明配置成功了. 5.磁盘挂载

linux下配置nfs服务器以及设置自动挂载(以centos6.7为例)

NFS(百度百科):NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源.在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样. NFS在文件传送或信息传送过程中依赖于RPC协议.RPC,远程过程调用 (Remote Procedure Call) 是能使客户端执行其他系统中程序的一种机制.NFS本身是没有提供信息传输的协议和功能的,但NFS

Suse 创建NFS共享文件夹

服务端的配置: 1.编辑nfs服务的配置文件 /software/suse11 *(rw,sync,no_root_squash,no_all_squash) 注释: /software/suse11 是打算共享出去的目录 * 表示可以访问的IP范围,这里是所有ip地址都可以访问,当然也可以写上机器名来代替.或者192.168.5.0/24以指定IP范围,或者指定 机器名,可以包含通配符. no_all_squash 保留共享文件的UID和GID(默认) no_root_squash 表示roo

nfs服务器与客户端配置

服务器端(PC)配置 ubuntu提供两种NFS服务器:一种以内核模块形式提供,nfs-kernel-server:一种以用户空间程序形式提供,nfs-user-server;两种择一即可.1. 安装:   sudo apt-get install nfs-kernel-server;2. 配置   /etc/exports   /home/yuxi/nfs  *(rw,sync,no_root_squash,no_subtree_check)注:1) /home/yuxi需先创建. 2) NF

NFS服务器学习搭建练习

实验拓扑: Linux Client -----RHEL5.9(vmnet1)----------(vmnet1) Win7 Client 实验环境: Red Hat Enterprise Linux Server5.4 vsftpd文件共享服务器IP 192.168.10.253 客户端IP 192.168.10.20 实验一:测试默认安装vsftpd的结果 匿名用户与本地用户都可以登录 匿名用户登录到/var/ftp,只能下载不能上传 本地用户登录到本地用户的家目录,可以上传和下载 服务器端

NFS服务器的配置与管理

配置与管理NFS网络文件系统 一.NFS服务概述 Linux和Windows之间可以通过Samba进行文件共享,那么Linux之间怎么进行资源共享呢?这就要说到NFS(Network File System,网络文件系统),它最早是UNIX操作系统之间共享文件和操作系统的一种方法,后来被Linux操作系统完美继承. NFS最早是由Sun公司于1984年开发出来的,其目的就是让不同计算机.不同操作系统之间可以彼此共享文件.由于NFS使用起来非常方便,因此很快得到了大多数UNIX/Linux系统的广