离专家在线 开始 还有: 000000秒,《 【第96期专家门诊】如何成为最有价值的“测试精英” 》,快去看看吧!
发新话题
打印

[Unix相关] SA-238读书笔记12

SA-238读书笔记12

20、
第16章管理软件补丁
补丁管理
从一个正在运行的Solaris操作环境添加和删除Solaris操作环境补丁调用补丁管理
一个补丁包含一个文件和目录的集合,用来替换已经存在的文件和目录以对系统进行适当的调整。一些补丁包含产品的新增功能。
补丁是如同目录似的的分布的。他们靠一个唯一的号码来进行区分。分配的补丁号码包括补丁基础代码,短线,版本号
比如一个补丁叫做101945-02,101945就是基础代码,02则是版本号
补丁发布
Sun的客户可以通过WWW的匿名ftp访问到安全补丁的基本组和其他推荐补丁。
有Sun服务合同的客户,则可以访问SunSolve数据库的补丁和补丁信息,例如技术白皮书,征兆和决定数据库,还有更多的。这些可以通过WWW和匿名FTP得到。
Sun服务客户可以没6周-8周申请补丁的光盘
WWW补丁访问
要访问在WWW节点上的补丁,工作站必须有以下能力:
。可以访问internet
。WWW浏览器,例如Netscape
要使用WWW访问补丁,使用下列的URL:
http://sunsolve.sun.com美国
或者使用下列URL,并且漫游到SunSolve补丁数据库
http://www.sun.com
书上都是广告了,我自己写点自己的东西
在SunSolve上搜索时,有2个搜索项,一个是搜索SunSolve,一个搜索hand book。
如果已知Sun的产品编号,可以直接在hand book中查找,比如搜索X7004A,就会在搜索结果的第一页列出X7004A内存可以应用的Sun的机器。选中要匹配的机器,就可以看到这个机器能够匹配的内存和内存的各种编号,包括Sun的生产序列号。这个比神州数码公司出的红皮书要简单,因为神州数码的红皮书都不加入已经停产的机器,包括U5,U2,U60等等。但是实际市场上这些东西还是有的,而且经常会遇到,所以,就要找上面的办法去SunSolve搜索。
匿名ftp补丁访问
要访问提供补丁的匿名ftp,工作站必须有以下能力:
。可以访问internet
。可以运行ftp程序
ftp节点为:sunsolve.sun.com
用户名:anonymous
密码:你的e-mail地址
下载补丁
当补丁被下载后,必须将他保存到临时目录中以方便安装,通常使用/var/tmp目录
安装错误的主要原因是目录权限的问题。/var/tmp是对所有用户开放的,所以就不会产生这个问题
补丁信息文档
这是一个重要的统计文档,他列出了所有推荐补丁在每个操作系统版本上的详细的安装方法
/var/sadm/patch目录
所有当前安装在系统上的补丁都保存在/var/sadm/patch目录中。比如
# ls /var/sadm/patch
用户不能改变或者删除这个目录。如果用户破坏了这个目录,就会造成补丁的失效,可能必须重新添加或者删除补丁。还有可能需要重新安装软件或者升级Solaris操作环境。
补丁格式
补丁面向不同的操作系统版本有不同的格式
。Solaris 8和Solaris 7操作系统的补丁都是.zip格式的。比如105050-01.zip
。Solaris 2.6操作环境补丁是.tar.z格式的,比如104040-01.tar.z
。Solaris 2.6补丁升级光盘的补丁格式是.tar.gz的,比如112340-01.tar.gz
安装补丁前的准备。
在Solaris 8和Solaris 7操作环境,使用unzip命令来解开补丁文件
# /usr/bin/unzip 105050-01.zip
在Solaris 2.6操作环境中的补丁,使用zcat命令来解压文件,并且使用tar命令来建立补丁目录
# /usr/bin/zcat 104040-01.tar.z | tar xvf -
在Solaris 2.6补丁光盘中的补丁,则使用gzcat命令来解压和建立目录
# /usr/bin/gzcat 112340-01.tar.gz | tar xvf -
补丁的内容
见书上图16-14
patchadd和patchrm命令
用户可以使用2个命令来管理补丁
。patchadd-用于安装未打包的补丁
。patchrm-用于删除已经安装在Solari操作环境中的补丁
安装补丁
当一个补丁被安装时,patchadd调用pkgadd命令来安装补丁包。
补丁安装过程在各个版本的Solaris操作环境都不相同。
下面的例子描述了在Solaris 2.6以后的版本中安装补丁的过程。
在例子中,是假定补丁是放置在/var/tmp目录中的
在Solaris 2.6操作环境或者以后的版本中安装一个补丁
在Solaris 2.6以上的操作环境中,使用patchadd命令。下面显示了如何使用patchadd命令来安装补丁
# cd /tmp
# patchadd 105050-01
Checking installed patches...
Verifying sufficient filesystem capacity (dry run method)
Installing patch packages...
Patch number 105050-01 has been successfully installed.
See /var/sadm/patch/105050-01/log for details.
Patch packages installed:
SUNWhea
在Solaris 2.6操作环境以前的版本中安装补丁
# cd /tmp/102301-01
# ls
Install.info     SUNWcsu        backoutpatch
README.102301-01 SUNWcpu        installpatch
# ./installpatch  .
检测当前补丁的状态
在安装补丁之前,用户需要知道关于现在在系统上安装的补丁
有2个命令可以用来提供当前安装补丁的有用的信息
# showrev -p
# patchadd -p
删除补丁
当用户删除一个补丁时,patchrm命令恢复所有被改变或者替换的文件,除非:
。 补丁是利用patchadd -d来安装的(不保存原有的文件)
。 这个补丁是另一个补丁需要的
。 这个补丁比最后一个版本的补丁还要早
patchrm命令调用pkgadd命令去恢复那些在初始的时候被保存的包
在Solaris 2.6操作环境之后的版本删除补丁
# patchrm 106793-01
在Solaris 2.6操作系统之前的版本删除补丁
# cd /var/sadm/patch/102301-01
# ./backoutpatch 102301-01
21、
第17章备份和恢复
备份和恢复文件系统
备份文件系统是将文件系统拷贝到可移动媒体,例如磁带机。防止对文件系统的丢失,破坏或者失效
恢复文件系统的意思是从可移动媒体拷贝文件系统到本地磁盘。
固定文件系统备份的重要性
备份文件系统是重要的系统管理工作之一。备份一般是有规律的调度执行的,以防止丢失预期的数据:
。意外的删除文件
。硬件故障
。重新安装或升级系统时出现了问题
。系统宕机
。在黑客攻击后恢复数据
。自然灾害
磁带机类型
书上的明显老了,我随便列几个比较常用的
磁带机类型                  容量
DDS-3磁带机                 12/24GB
DDS-4磁带机                 20/40GB
DLT7000
DLT8000
同时磁带机还分为4mm和8mm等几种,不是专业做这个的,具体型号就不记得了。
磁带机名
本地磁带机名
所有磁带机都有一个逻辑名,那是用于在命令行标识设备的。这些逻辑设备名使用下列格式:
/dev/rmt/#hn
。第一个磁带机叫/dev/rmt/0
。第二个磁带机叫/dev/rmt/1
。第三个磁带机叫/dev/rmt/2
磁带机名总是编号为0,并且可以包括下列选项的参数。
。不倒带:当当前操作完成的时候,字母n在磁带机名的末端,表示磁带机不倒带。
。磁带密度:磁带机名可以用5种值来表示:l(低密度),m(普通密度)h(高密度),c(压缩的)或者u(极端压缩的)。
磁带机是对密度有要求的。可以通过制造者的文档来查看磁带机当前支持的密度
默认的可以通过在/kernel/drv/st.conf中的设备条目来决定。
数据压缩
支持数据压缩的磁带机包含执行压缩的内部硬件。硬件基础的压缩是不同用Solarsi的compress命令的,这个非常的快
应该意识到,如果一个软件的压缩文件在备份时,使用磁带机硬件压缩选项,那么文件将会出现膨胀到比原来的压缩版本更大的样子。
文件系统备份的类型
root用户可以执行下列类型的备份
。完整:一个完全的文件系统的备份
。增长的备份:只备份上次备份之后添加或者改变的文件系统中的文件。
ufsdump命令
/usr/sbin/ufsdump命令是推荐的用于调度完整备份文件系统的命令,同样他也是Solaris操作环境的命令。
命令格式
ufsdump options [ arguments ] filesystem_name
用户可以使用命令去备份完整的或者一部分文件系统到备份媒体
公共选项
。0-9:备份级别。0级是完整备份整个的文件系统。1级到9级是对最后一次低等级备份的增长备份。
。v:检测,每次磁带机写完之后,都对参照源文件系统进行比对,然后报告过程。只有在备份没有装配的文件系统时才使用这个选项,任何激活的文件系统都会报告错误
。S:长度预测。决定需要磁带空间的数量去执行备份和显示预测需要的字节数
。l:自动装载。在自动装载磁带机时,使用这个选项
。o:离线。在完成的时候,使磁带机离线,倒带(如果是磁带),并且如果可能,就弹出介质。
。u:升级/ect/dumpdates文件。一个表示文件系统所在Slice的设备名,备份级,和日期的条目。当不使用u选项时,就不做记录。如果一个在同一级别的条目已经存在,就替换掉。
。f:为即将拷贝的文件系统指定磁带机名。当默认的磁带机设备,/dev/rmt/0已经使用了。就不必通过f指定设备。
。file system_to_backup:指定下面中的一个备份:文件系统的装配点名(如/usr),raw设备名(比如/dev/rdsk/c#t#d#s#)
/etc/dumpdates文件
/etc/dumpdates文件的每行显示文件系统的备份,备份的级别,和备份的日期,时间。
# cat /etc/dumpdates
当执行增长备份后,ufsdump命令查阅/etc/dumpdates去查找最近的,低级别的备份。然后拷贝所有被改变的和添加的文件到备份媒体。
备份完成后,一个新的条目,描述备份已经完成,替换上次那个级别的条目。
用户可以通过/etc/dumpdates文件决定备份时候执行。如果因为备份设备的损坏造成备份失败,这个就是特别重要的了,他将不能记录到/etc/dumpdates中去。
调度备份
在ufsdump命令中指定的0-9的跳转级别,决定了哪些文件需要备份。指定跳转级别0则建立一个完整的文件系统备份。
备份策略的例子
下面是一个例子用于增长的级别来备份文件系统
。每个月执行一次完整备份
。每周一执行一次3级备份
。每周二执行一次4级备份
。每周三执行一次5级备份
。每周四执行一次6级备份
。每周五执行一次2级备份
计划文件系统备份
一个备份计划决定的部分,用户需要选择:
。备份的文件系统
。用于备份的磁带的数量
。备份设备
。备份的类型
。标记和储存磁带的程序
查找文件系统名
显示/etc/vfstab文件的内容,并且使用他们的装配点来命名文件系统
决定磁带的数量
通过使用下面的命令决定文件系统备份的长度
# ufsdump 0S 文件系统名
或者
# ufsdump 3S 文件系统名
显示的是估计在磁带上需要的字节数去执行备份
利用磁带的容量去划分报告的容量,来确知需要多少磁带来备份文件系统。
备份到磁带
用户将系统进入单用户模式,并且需要在备份前卸载文件系统。
如果用户不能卸载文件系统,这需要知道那是正在备份的文件系统,正在操作中,例如发生建立,移除,和重命名文件等,意思是这些数据将不能包含在备份中。
1。变成root使系统进入单用户模式并且卸载文件系统
# /usr/sbin/shutdown -y -g300 "System is being shutdown for backup"
2。卸载所有文件系统(除了/和/usr)
# umount /export/home
3。使用fsck命令检测文件系统的数据,但只限于被卸载的文件系统
# fsck /export/home
4。执行一个完整级别0备份/export/home文件系统
# ufsdump 0uf /dev/rmt/0 /export/home
执行远程备份
用户可以利用ufsdump命令在远程系统的磁带机上进行备份
当通过网络执行远程备份时,装有磁带机的系统必须为每个使用他的磁带机的系统进行登记
命令格式
ufsdump options remotehost:tapedevice filesystem
实例
# ufsdump 0uf host2:/dev/rmt/0 /export/home
恢复文件系统
使用ufsrestore命令来恢复被ufsdump命令备份的文件和文件系统
为什么文件系统需要恢复的理由:
。重建被破坏的文件系统
。重新安装或者升级Solaris操作环境软件
。在不存在的或者新磁盘上重新组织文件系统
命令格式
ufsrestore options [ arguments ] [ filesystem ]
ufsrestore options [ arguments ] [ filesystem ... ]
公共选项
t:列出备份媒体上的列表
r:从备份媒体上恢复登记的文件系统
x:只恢复在命令行上的文件名所示的文件
i:调用一个交互式恢复
v:指定详细模式。在终端显示器上显示每个被恢复的文件的路径名
f:指定磁带机名
restoresymtable文件
restoresymtable文件是在从磁带上恢复文件系统时建立的。仅在ufsrestore为检测指针时,restoresymtable文件是使用的。
当备份是完整的,并且从文件系统中删除时,restoresymtable是不需要的。
恢复文件系统的准备
在恢复文件或者文件系统之前,用户必须决定:
。需要哪个文件系统备份磁带
。恢复文件系统的raw设备名
。恢复个别文件的临时目录名
。被使用的备份设备类型(本地或者远程)
。备份设备名
恢复root(/)文件系统
下面描述如何恢复/(root)文件系统到启动磁盘c0t0d0s0上
1。插入Solaris 8 Software CD 1 of 2,并且从光盘启动进入单用户模式
ok boot cdrom -s
2。建立新文件系统结构
# newfs /dev/rdsk/c0t0d0s0
3。装配文件系统到一个空装配点/a,并且改变到这个目录
# mount /dev/dsk/c0t0d0s0 /a
# cd /a
4。从备份磁带恢复/(root)文件系统
# ufsrestore rf /dev/rmt/0
5。删除restoresymtable文件
# rm restoresymtable
6。在扇区1-15安装启动块bootblk
# cd /usr/platform/'uname -m'/lib/fs/ufs
# installboot bootblk /dev/rdsk/c0t0d0s0
7。卸载新文件系统
# cd /
# umount /a
8。使用fsck命令检查恢复的文件系统
# fsck /dev/rdsk/c0t0d0s0
9。重新启动系统
# init 6
10 执行一个完整的文件系统备份
# ufsdump 0uf /dev/rmt/0 dev/rdsk/c0t0d0s0
调用一个交互式的恢复
ufsrestore -i命令调用一个交互式接口通过磁带机的目录体系进行浏览
1。变成root并且改变临时目录来放置恢复的文件
# cd /var/tmp
2。调用ufsrestore命令的交互式选项
# ufsrestore ivf /dev/rmt/0
3。显示磁带上备份目录的结构
ufsrestore > ls
ufsrestore > cd etc/inet
ufsrestore > ls
4。添加任何文件到提取列表
ufsrestore > add inetd.conf hosts
从提取列表中删除文件
ufsrestore > delete inetd.conf
5。恢复选择的文件
ufsrestore > extract
6。退出交互式接口
ufsrestore > quit
7。检测恢复文件,启动他们到他们的最初的或者长期的目录,并且从临时目录中删除文件
# mv /var/tmp/etc/inet/hosts /etc/inet/hosts
# rm -r /var/tmp/etc
控制磁带机
mt命令是用来控制磁带机的。不是所有的磁带机都支持mt命令
命令格式
mt [ -f tape-device-name ] command [ count ]
用户使用-f选项指定磁带机名。
。status:显示磁带机状态信息
。rewind:倒带
。offline:倒带,如果可行,是驱动器通过反读磁带离线
。fsf:向前跳磁带文件
归档
在默认磁带机上建立当前目录的磁带档案,没有不倒带选项,使用下列命令
$ tar cvf /dev/rmt/0 .
在默认的磁带机上建立某个目录的档案
$ tar cvf /dev/rmt/0n /etc
恢复
$ tar xvf /dev/rmt/0
(结束)
偶的Blog有理想,有目标,就有动力;成功源于你我真诚的合作!

支持

发新话题