linux proc kcore怎么备份

linux proc kcore怎么备份,第1张

最安全的备份方法是将他们纪录於不同的媒体中,例如磁带,抽取式硬碟,可写式 cd 等。
进行一般的备份应该是负责任的系统管理者的最高优先考虑。虽然Linux是一个高度可靠的作业系统,系统失效仍然可能发生。可能因为硬体故障,电源中断,或其他不可预料的问题。更常见的这些问题是来自人为的错误,不当的变动,甚至因为删除重要的档案。如果您负责管理系统上的用户,一定可能常被要求重建因为不小心误删的档案。
如果您进行一般备份,以每日为基础较好(至少对更动频繁的使用者档案),您将会有助於减少档案的损失,并且增加复原程度。最安全的备份方法是将他们纪录於不同的媒体中,例如磁带,抽取式硬碟,可写式cd等。然後将您的备份和您的Linux系统分开存放。有时候这可能并不实际——也许在您可以存放备份磁带的地方没有防火室!或是在第一优先的地点没有办法存取这样的外部备份系统。虽然如此,仍然可以进行备份,只是会受到一点限制。服务器备份程序进行Linux备份有几种不同的方法,其中包括所有Linux发行版本中都有的命令列工具,例如“dd”,“dump”,“cpio”以及“tar”。其他还有文字型态工具,例如“Amanda”及“Taper”,这些是被设计来在备份及回存过程中加入更友善的使用者介面。当然也有图形介面的工具,像是“KDat”。最後,还有商业化的备份工具,像是“BRU”和“PerfectBackup+”。这些备份计划中任何之一都足以提供您宝贵资料的保护。
这里有一些包括哪里可以获得工具的列表,可以在“LinuxApplicationsandUtilitiesPage”找到,当决定好备份方式,您可能要考虑下列几点因素:
可携性-备份的可携性(亦即。从一个Linux发行版本或应用Unix备份然後回存到另外一个;例如从Solaris到RedHatLinux)对您而言是否重要?如果是,可能想要选择一个命令列的工具(亦即。“dd”,“dump”,“cpio”,或“tar”),因为您可以相当地确定该工具可以在另一个nix系统上找到。
无人或自动备份-定期自动进行备份而不需人力介入之能力,对您而言是否重要?如果是,您可能需要能支援该方案的工具及备份媒体。
使用者友善-使用者友善的介面对您而言是否重要?如果是,您可能想要选择一个文字或图形介面的工具。商业的应用程式可以提供最简便的介面及技术支援。
远端备份-从远端机器进行备份及回存的能力对您而言是否重要?如果是,您可能想要选择命令列或文字模式的工具而不是图形介面(除非您有相当快的网络连结及执行远端Xsessions的能力)。
网络备份-从网络主机进行备份及回存对您而言是否重要?如果是,您可能要用一些支援从网络存取备份设备的命令列工具(像是“tar”),或是专用工具程式例如“Amanda”或是一些商业工具程式。
媒体型态-备份可以储存在很多不同的媒体,像是磁带,外接式硬碟,ZIP磁碟,或可读写CD考虑售价及可靠性,储存容量,及传送速度。
警告:当备份您的系统时,不要包括“/proc”伪档案系统!/proc中的档案并非真的档案,而仅是看起来像档案的描述,而且指向核心资料结构的连结。备份“/proc/kcore”,这事实上这是一个伪装档案,包含记忆体中所有的资料,会浪费很多的磁带!您可能也需要避免备份“/mnt”档案系统,除非您有从CD-ROM,软碟机,网络分享档案,或其他安装设备上备份的特殊需求。
明显地,备份及回存的过程会因您所选择的备份方法而有所不同。

一:首先确保你的移动硬盘是FAT32格式的
二:插上硬盘,在linux中使用指令fdisk -l 查看硬盘信息,有个未挂载的是你的移动硬盘,如果不知道是哪个,那你就通过显示的硬盘大小来识别吧。 我这里举例这么显示的:/DEV/SDA 40GB
三:新建目录并挂载
mkdir /mnt/usb/
mount -t VFAT /dev/sda /mnt/usb
我这使用的是FAT格式,所以-t 后面是VFAT 其他格式这里接不同
四:如果上面都成功了,进入/mnt/usb/目录,可以看到里面就是你硬盘里面的东西。

创建脚本/root/script/backupsh
# 该脚本应用于10多台普通的Linux应用服务器,多年来从未出过差错。
# 数据库备份较为特殊,这里不包含数据库备份。
# 因为脚本中含有FTP密码,所以FTP仅给予写权限较为安全,FTP中的老备份的定期删除任务由FTP服务器完成。
# 备份加入到自动任务中,每周六23:00执行,并写入日志,如下:
# 追加下面语句到/etc/crontab中
# 0 23 6 root /root/script/backupsh >> /root/script/backuplog 2>&1
#有注释版:
#!/bin/bash
#=====================================================
#author zhaoyn
#date 2010/12/31
#=====================================================
#参数设定
basedir=/opt/backup #备份存放的目录
days=15 #备份在本地保留天数
bakfiles="/root/script /etc" #需要备份的目录或文件,请不要使用快捷方式或通配符
ftpip=XXXXXXXXXXXX #异地备份的FTP地址
ftpuser='username' #异地备份的FTP用户名
ftppw='password' #异地备份的FTP密码
echo =====================================================
date
cd $basedir
#删除备份目录中15天以前备份文件,不包含子目录
find -maxdepth 1 -name "tgz" -mtime +"$days" -exec rm -f {} \;
for bakfile in $bakfiles
do
file=`basename $bakfile`
#压缩打包需要备份的目录,包括权限,文件命名包含当前时间
tar -czpf "$file"_$(date +%Y%m%d-%H%M)tgz $bakfile
#大文件打包前后,缓解磁盘压力,降低I/O错误概率
sleep 10s ;sync;sync
done
#通过FTP上传当天备份的文件到异地
ftp -v -n -i $ftpip <<END
user $ftpuser $ftppw
bin
mput $(date +%Y%m%d)tgz
bye
END
#无注释版:
#!/bin/bash
#=====================================================
#author zhaoyn
#date 2010/12/31
#=====================================================
basedir=/opt/backup
days=15
bakfiles="/root/script /etc"
ftpip=XXXXXXXXXXXX
ftpuser='username'
ftppw='password'
echo =====================================================
date
cd $basedir
find -maxdepth 1 -name "tgz" -mtime +"$days" -exec rm -f {} \;
for bakfile in $bakfiles
do
file=`basename $bakfile`
tar -czpf "$file"_$(date +%Y%m%d-%H%M)tgz $bakfile
sleep 10s ;sync;sync
done
ftp -v -n -i $ftpip <<END
user $ftpuser $ftppw
bin
mput $(date +%Y%m%d)tgz
bye
END
Mysql的备份,如果凌晨可以停止几分钟,那么强烈建议对Mysql执行物理备份,脚本如下
#!/bin/bash
#History
#=====================================================
#When Who What
#2010/3/24 Zhaoyn Create
#
#=====================================================
basedir=/opt/backup
updir=$basedir/updir
timenow=$(date +%Y%m%d-%H%M)
# 删除mysql十四天前的数据,注意,这里仅删除了mysql的tgz文件。
rm -f `find $basedir -name "mysqltgz" -mtime +14`
# 由于数据库在有连接的情况下,直接对数据文件打包是可能出问题的,所以这里我们在打包前要停用数据库,这样直接对数据文件打包,恢复时只需解压数据文件到新环境相应的目录即可,默认是/var/lib/mysql
# 如果白天也要进行数据库备份,请使用mysqldump命令,进行在线备份。恢复也挺方便的。
/etc/rcd/initd/mysqld stop
sleep 5s ;sync;sync
tar -czpf $basedir/mysql$timenowtgz /var/lib/mysql
/etc/rcd/initd/mysqld start
#=====================================================
附件中的脚本文件是有DOS换行符(CR/LF)的,复制文件中的内容到SSH客户端没有问题,如果直接拷贝文件到Linux系统中,可先运行下面的命令:
mv txt sh
dos2unix sh


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10279555.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-07
下一篇 2023-05-07

发表评论

登录后才能评论

评论列表(0条)

保存