大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
为什么备份?
创新互联主要从事做网站、网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务化德,十多年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575
一个备份计划对定期备份文件来说很有必要,如果你宁愿选择不备份,那么丢失重要数据的风险会大大增加。有了备份,你就有了从磁盘故障中恢复的能力。备份还可以帮助你抵御:意外的文件删除/文件或文件系统损坏/服务器完全毁坏,包括由于火灾或其他问题导致的同盘备份毁坏、硬盘或 SSD 崩溃、病毒或勒索软件破坏或删除文件、你可以使用磁带归档备份整个服务器并将其离线存储。
理解磁带文件标记和块大小
每个磁带设备能存储多个备份文件。磁带备份文件通过 cpio,tar,dd 等命令创建。同时,磁带设备可以由多种程序打开、写入数据、及关闭。你可以存储若干备份(磁带文件)到一个物理磁带上。在每个磁带文件之间有个“磁带文件标记”。这用来指示一个物理磁带上磁带文件的结尾以及另一个文件的开始。你需要使用 mt 命令来定位磁带(快进,倒带和标记)。
磁带上的数据是如何存储的
所有的数据使用 tar 以连续磁带存储格式连续地存储。第一个磁带归档会从磁带的物理开始端开始存储(tar #0)。接下来的就是 tar #1,以此类推。
Unix 上的磁带设备名
/dev/rmt/0 或 /dev/rmt/1 或 /dev/rmt/[0-127] :Unix 上的常规磁带设备名。磁带自动倒回。
/dev/rmt/0n :以无倒回为特征,换言之,磁带使用之后,停留在当前状态等待下个命令。
/dev/rmt/0b :使用磁带接口,也就是 BSD 的行为。各种类型的操作系统比如 AIX,Windows,Linux,FreeBSD 等的行为更有可读性。
/dev/rmt/0l :设置密度为低。
/dev/rmt/0m :设置密度为中。
/dev/rmt/0u :设置密度为高。
/dev/rmt/0c :设置密度为压缩。
/dev/st[0-9] :Linux 特定 SCSI 磁带设备名。
/dev/sa[0-9] :FreeBSD 特定 SCSI 磁带设备名。
/dev/esa0 :FreeBSD 特定 SCSI 磁带设备名,在关闭时弹出(如果可以的话)。
磁带设备名示例
/dev/rmt/1cn 指明正在使用 unity 1,压缩密度,无倒回。
/dev/rmt/0hb 指明正在使用 unity 0,高密度,BSD 行为。
Linux 上的自动倒回 SCSI 磁带设备名:/dev/st0
Linux 上的无倒回 SCSI 磁带设备名:/dev/nst0
FreeBSD 上的自动倒回 SCSI 磁带设备名:/dev/sa0
FreeBSD 上的无倒回 SCSI 磁带设备名:/dev/nsa0
如何列出已安装的 scsi 磁带设备?
输入下列命令:
### Linux(更多信息参阅 man) ###
lsscsi
lsscsi -g
### IBM AIX ###
lsdev -Cc tape
lsdev -Cc adsm
lscfg -vl rmt*
### Solaris Unix ###
cfgadm –a
cfgadm -al
luxadm probe
iostat -En
### HP-UX Unix ###
ioscan Cf
ioscan -funC tape
ioscan -fnC tape
ioscan -kfC tape
mt 命令示例
在 Linux 和类 Unix 系统上,mt 命令用来控制磁带驱动器的操作,比如查看状态或查找磁带上的文件或写入磁带控制标记。下列大多数命令需要作为 root 用户执行。语法如下:
mt -f /tape/device/name operation
设置环境
你可以设置 TAPE shell 变量。这是磁带驱动器的路径名。在 FreeBSD 上默认的(如果变量没有设置,而不是 null)是 /dev/nsa0。可以通过 mt 命令的 -f 参数传递变量覆盖它,就像下面解释的那样。
### 添加到你的 shell 配置文件 ###
TAPE=/dev/st1 #Linux
TAPE=/dev/rmt/2 #Unix
TAPE=/dev/nsa3 #FreeBSD
export TAPE
1:显示磁带/驱动器状态
mt status ### Use default
mt -f /dev/rmt/0 status ### Unix
mt -f /dev/st0 status ### Linux
mt -f /dev/nsa0 status ### FreeBSD
mt -f /dev/rmt/1 status ### Unix unity 1 也就是 tape device no. 1
你可以像下面一样使用 shell 循环语句遍历一个系统并定位其所有的磁带驱动器:
for d in 0 1 2 3 4 5
do
mt -f "/dev/rmt/${d}" status
done
2:倒带
mt rew
mt rewind
mt -f /dev/mt/0 rewind
mt -f /dev/st0 rewind
3:弹出磁带
mt off
mt offline
mt eject
mt -f /dev/mt/0 off
mt -f /dev/st0 eject
4:擦除磁带(倒带,在支持的情况下卸载磁带)
mt erase
mt -f /dev/st0 erase #Linux
mt -f /dev/rmt/0 erase #Unix
5:张紧磁带盒
如果磁带在读取时发生错误,你重新张紧磁带,清洁磁带驱动器,像下面这样再试一次:
mt retension
mt -f /dev/rmt/1 retension #Unix
mt -f /dev/st0 retension #Linux
6:在磁带当前位置写入 EOF 标记
mt eof
mt weof
mt -f /dev/st0 eof
7:将磁带前进指定的文件标记数目,即跳过指定个 EOF 标记
磁带定位在下一个文件的第一个块,即磁带会定位在下一区域的第一个块(见图01):
mt fsf
mt -f /dev/rmt/0 fsf
mt -f /dev/rmt/1 fsf 1 #go 1 forward file/tape (see fig.01)
8:将磁带后退指定的文件标记数目,即倒带指定个 EOF 标记
磁带定位在下一个文件的第一个块,即磁带会定位在 EOF 标记之后(见图01):
mt bsf
mt -f /dev/rmt/1 bsf
mt -f /dev/rmt/1 bsf 1 #go 1 backward file/tape (see fig.01)
这里是磁带定位命令列表:
fsf 前进指定的文件标记数目。磁带定位在下一个文件的第一块。
fsfm 前进指定的文件标记数目。磁带定位在前一文件的最后一块。
bsf 后退指定的文件标记数目。磁带定位在前一文件的最后一块。
bsfm 后退指定的文件标记数目。磁带定位在下一个文件的第一块。
asf 磁带定位在指定文件标记数目的开始位置。定位通过先倒带,再前进指定的文件标记数目来实现。
fsr 前进指定的记录数。
bsr 后退指定的记录数。
fss (SCSI tapes)前进指定的 setmarks。
bss (SCSI tapes)后退指定的 setmarks。
基本备份命令
让我们来看看备份和恢复命令。
9:备份目录(tar 格式)
tar cvf /dev/rmt/0n /etc
tar cvf /dev/st0 /etc
10:恢复目录(tar 格式)
tar xvf /dev/rmt/0n -C /path/to/restore
tar xvf /dev/st0 -C /tmp
11:列出或检查磁带内容(tar 格式)
mt -f /dev/st0 rewind; dd if=/dev/st0 of=-
### tar 格式 ###
tar tvf {DEVICE} {Directory-FileName}
tar tvf /dev/st0
tar tvf /dev/st0 desktop
tar tvf /dev/rmt/0 foo list.txt
12:使用 dump 或 ufsdump 备份分区
### Unix 备份 c0t0d0s2 分区 ###
ufsdump 0uf /dev/rmt/0 /dev/rdsk/c0t0d0s2
### Linux 备份 /home 分区 ###
dump 0uf /dev/nst0 /dev/sda5
dump 0uf /dev/nst0 /home
### FreeBSD 备份 /usr 分区 ###
dump -0aL -b64 -f /dev/nsa0 /usr
13:使用 ufsrestore 或 restore 恢复分区
### Unix ###
ufsrestore xf /dev/rmt/0
### Unix 交互式恢复 ###
ufsrestore if /dev/rmt/0
### Linux ###
restore rf /dev/nst0
### 从磁带媒介上的第6个备份交互式恢复 ###
restore isf 6 /dev/nst0
### FreeBSD 恢复 ufsdump 格式 ###
restore -i -f /dev/nsa0
14:从磁带开头开始写入(见图02)
### 这会覆盖磁带上的所有数据 ###
mt -f /dev/st1 rewind
### 备份 home ###
tar cvf /dev/st1 /home
### 离线并卸载磁带 ###
mt -f /dev/st0 offline
从磁带开头开始恢复:
mt -f /dev/st0 rewind
tar xvf /dev/st0
mt -f /dev/st0 offline
15:从最后一个 tar 后开始写入(见图02)
### 这会保留之前写入的数据 ###
mt -f /dev/st1 eom
### 备份 home ###
tar cvf /dev/st1 /home
### 卸载 ###
mt -f /dev/st0 offline
16:从 tar number 2 后开始写入(见图02)
### 在 tar number 2 之后写入(应该是 2+1)###
mt -f /dev/st0 asf 3
tar cvf /dev/st0 /usr
### asf 等效于 fsf ###
mt -f /dev/sf0 rewind
mt -f /dev/st0 fsf 2
从 tar number 2 恢复 tar:
mt -f /dev/st0 asf 3
tar xvf /dev/st0
mt -f /dev/st0 offline
关于第三方备份工具
Linux 和类Unix系统都提供了许多第三方工具,可以用来安排备份,包括磁带备份在内,如:
Amanda
Bacula
rsync
duplicity
rsnapshot
linux和bsd类系统的netstat使用方式上有些不同.简单的说如下,linux下netstat常用命令和参数如:#
netstat
-tunpl-t
tcp-u
udp-n
只显示数字类地址,这将大大加快netstat的速度-l
正在监听而bsd或者macos下的netstat:#
netstat
-f
inet
-n
-p
tcp-f
address_family,
可以使inet,
inet6
,
unix-n
Show
network
addresses
as
numbers-p
protocol,
协议的名字可以在/etc/protocols中找到,通常用的有tcp,udp等平时如上的这些参数已经够用了,若某时候无法满足要求的话,man
netstat看一眼就行了.作者
ltl3884
1.首先要知道一个概念: 凡是具备USB接口的存储设备都可以被当作U盘,这就包括了USB外挂硬盘,具备USB转接口的CF卡,MMC卡等等.
2. 在Linux/FreeBSD下U盘统一被模拟成SCSI硬盘, 那么当U盘插上计算机时,就可以通过: /dev/sda, /dev/sdb .... (Linux下) /dev/da0s1, /dev/da0s2 .... (FreeBSD下) 对应上U盘
3. 由于大家使用的Linux(Kernal)/FreeBSD版本和设置不同,挂在系统上的USB驱动模块可 能不一样,所以建议大家使用RedHat7.2以上的版本(指内核版本),FreeBSD4.7及以上版本. 在U盘插上后,使用以下命令来加载U盘: 3.1 首先在 /mnt下建立一个U盘的装门目录: mkdir /mnt/usbdsk 3.2 然后加载: mount -t msdos /dev/sda1 /mnt/usbdsk (Linux) mount -t msdos /dev/da0s1 /mnt/usbdsk (FreeBSD)
4. 几点注意.有的U盘另带有一个虚拟的开机/杀毒软盘,插上后就会在系统内出现两个SCSI硬盘, 比如/dev/sda, /dev/sdb, 那么mount的时候就要选择你需要的设备结点.如果你的U盘不是FAT16格式的话,要改 -t 参数. 御载 USB Flash 盘 umount /usb
FreeBSD下使用U盘实践经验 .
我是在VMware虚拟机中装的FreeBSD,装好后发现无法使用U盘,后来经过研究得出如下经验:
首先要插上你的U盘,这时FreeBSD中应该会显示USB设备已连接上的信息。如果没有的话要先确认VMware中是否启用了USB设备,点击VMware菜单栏中的“虚拟机”-“可移动设备”-“USB设备”,确认这个菜单项下面的“XXX 可移动磁盘(端口X)”前是否打了对勾。再说FreeBSD上显示的连接信息,上面几行说的是设备属性及设备的位置等信息,我们要用到的是最后一行的信息。
我的信息中最后一行是:GEOM_LABEL:Label for provider da0s4 is msdosfs/FALY WINPE.
有用的两个参数是da0s4和msdosfs,其中da0s4是U盘在FreeBSD中的设备标签,msdosfs是指U盘的分区格式。大家的参数可能会和我的不太相同,你只要记住你机子相同位置上显示的两个参数就可以了,下面挂载要用到。
了解这些信息后我们就可以开始挂载U盘了,首先在/mnt目录下建一个usbdisk目录,作为U盘的挂载点。
挂载命令的使用格式如下:
mount [选项] -t 类型 [-o 挂载选项] 设备 挂载点
类型就是你U盘的分区格式,比从上面知道我的U盘类型是msdosfs,设备名称是da0s4,完整路径是/dev/da0s4,挂载点是/mnt/usbdisk,所以我要输入的命令是:
mount -t msdosfs /dev/da0s4 /mnt/usbdisk
挂载成功后会有提示信息,我的信息是:
GEOM_LABEL:Label msdosfs/FALY WINPE removed.
现在我们就使用如下命令开始操作U盘了:
cd /mnt/usbdisk