第3章、设备管理
本章主要介绍:磁带的使用、软盘的使用、磁盘管理、服务访问机制、建立双向调制解调器
本章描述如何使用磁带和软盘拷贝文件,而如何备份和恢复整个文件系统是第四章的内容,第四章还讲述磁带设备名和用来管理磁盘命令,介绍有关管理终端、调制解调器及其它使用SunOS 5.x系统软件的网络设备的服务访问机制(SAF) ─提供为打印服务器和打印客户启动端口管理器、向系统中加入与Hayes兼容的调制解调器的步骤,第六章中介绍如何管理打印机。
3.1磁带的使用
本节讲述磁带设备命名约定、读写盒式磁带的命令、以及如何使用tar和cpio命令对带存取文件。
tar和cpio命令可将文件或文件系统拷入磁带,按照拷贝灵活性和精度的要求可以决定选用哪个命令。
tar命令将文件和目录树拷入单个磁带,注意: SunOS 5.x的tar命令可以存取特殊文件(块设备,字符设备文件fifo文件)但SunOS 4.x的tar命令则不可存取这类文件,cpio命令的可移植性则好些。
cpio命令用于拷贝需使用多卷磁带的任何文件、 特殊文件或文件系统,也可以用于将SunOS 5.x系统中的文件拷贝到SunOS 4.x系统中,cpio命令比tar 命令更为高效地将数据装入磁带,而读出时又可跳过磁带上的坏区,cpio命令还提供了写文件时不同格式头(tar,ustar,crc,doc,bar)的选择,以保证不同类型系统之间的可移植性。
由于tar和cpio命令使用原始设备(raw device), 故不用在使用之前对磁带格式化或创建新的文件系统,使用的磁带驱动器和设备名取决于硬件及系统配置。
3.1.1磁带设备的命名习惯
磁带设备命名习惯采用逻辑的─而非物理的设备名,磁带机依控制器类型分为两类:
•;Xylogics472类,1/2英寸装于机架上的(顶部装入)对卷(reel to reel)式驱动器,(每个控制器最多带4个驱动器) 。
•;SCSI类,1/4英寸盒式带,1/2英寸前部装入对卷式,及4mm或8mm螺旋扫描驱动器,(每个控制最多带8个驱动器)。
在/dev/rmt子目录中,有唯一一组磁带设备文件,它们支持不同的输出密度,通常可按图3.1来规定磁带机设备。
/dev/rmt/XAn
Optional
No-Rrwind
Optional n no-rewind;
Density omit for rewind
l low
Drive m medium
0 h high
1 u ultra
2
3
4
n
图3.1 磁带机设备名
后面三节讲述驱动器号、密度选择及不倒带选择。
3.1.1.1使用缺省密度规定驱动器号
通常磁带驱动器是通过其逻辑单元号来指定的,其单元号由0至n,如果不指定密度,则驱动器依磁带优先密度(通常指它支持的最高密度)写。
指明第一个驱动器,可使用:/dev/rmt/0
指明第二个驱动器,可使用:/dev/rmt/1
注意:多数设备名的序列号从0开始,所以,当使用第一磁带或目标时,其号码为0而不是1。
3.1.1.2为磁带机指定密度
有时会遇到某系统的磁带机只支持某种密度,这时若拷贝磁带,则需指定一个以此密度写的设备名,使用下列规则:
/dev/rmt/
表3.1列出了驱动单元和密度符号,例如,指明第一个(0号)驱动器使用中密度的原始磁带机,使用:
/dev/rmt/0m
表3.1 磁带设备名中的驱动器单元和密度符号
设备名 =/dev/rmt/
磁带驱动器号(数字),0-n,与控制器类型无关
密度(字符),取决于控制器和驱动器类型
null 缺省,优先(最高)密度
l 低密
m 中密
h 高密
u 极高密(ultra)
3.1.1.3指定"不倒带"选项
命令执行后,除非将"不倒带"的选项作为设备名的一部分,否则磁带机将自动倒带,指定"不倒带"选项,只需在设备名之尾加上"n"字。如:/dev/rmt/0mn
3.1.1.4不同磁带控制器和介质的设备名缩写
一个系统中,可以同时有SCSI和非SCST磁带机,SCSI控制器至多可带8个SCSI磁带机, 非SCSI控制器至多可带4个磁带机,对于一驱动器号(x),密度符号取决于后面介绍的控制器和驱动器类型。
表3.2列出不同磁带控制器驱动器和介质的设备缩写。
注: 设备缩写中驱动器号不一定为列出的0,可以1、2或3等等,它取决于系统上连有多少磁带机。
表3.2 磁带控制器/驱动器和介质的设备名缩写
控制器 驱动器单元 大小 类型 格式 磁道 设备缩写
Xylogics 472 Fujitsu 1/2inch 卷绕式 1600bpi 9 /dev/rmt/0m
M2444 1/2inch 卷绕式 800bpi 9 /dev/rmt/0h
SCSI/前插入式 HP 1/2inch 卷绕式 1600bpi 9 /dev/rmt/0m
6250bpi 9 /dev/rmt/0h
SCSI Sysgen 1/4inch 盒式 QIC-11 4 /dev/rmt/0l
QIC-24 4 /dev/rmt/0m
QIC-11 9 /dev/rmt/0l
QIC-24 9 /dev/rmt/0m
Emulex 1/4inch 盒式 QIC-11 4 /dev/rmt/0l
MT-02 QIC-24 4 /dev/rmt/0m
QIC-11 9 /dev/rmt/0m
QIC-24 9 /dev/rmt/0m
Archive 1/4inch 盒式 QIC-150 18 /dev/rmt/0h
QIC-15O
Wangtek 1/4inch 盒式 QIC-150 18 /dev/rmt/0h
QIC-150
Desktop 1/4inch 盒式 QIC-150 18 /dev/rmt/oh
Backup Pack
3.1.1.5 1/2英寸卷绕式非SCSI内接(Rack mounted)磁带机
这类磁带机,无论是Tapemaster还是Xylogics472控制器,其设备名/dev/rmt/XA 中选择都基于表3.3中的密度项。
表3.3 Rack-mounted 1/2英寸磁带机的指定密度
符 号 密度
null 缺省最高密度(6250bpi非压缩)
1800 bpi
m1600 bpi
h6250 bpi
u6250 bpi,压缩
若省去密度符号,那么就依磁带的最高密度写,且不压缩。
3.1.1.6 1/4英寸SCSI盒式和1/2英寸前部装入的卷绕式磁带机
对于这这类磁带机,其设备名(/dev/rmt/XA)中表示密度的A项基于表3.4。
表3.4 SCSI磁带机的指定格式和密度
字符 密度(1/4英寸盒式) 密度(1/2英寸前部装入对卷式)
null 缺省最高密度 缺省最高密度
l QIC-11格式 800bpi
m QIC-24格式 1600bpi
l QIC-150 6250bpi
u 保留 保留
对于1/4英寸盒式带,密度是由写入数据的格式----QIC决定的,QIC-11和QIC-24 格式磁道上每英寸约写1000字节,QIC-150的密度要高些,60Mb 1/4 英寸盒式磁带机的优选密度是QIC-24,150Mb 1/4英寸盒式磁带则为QIC-150。150Mb 的磁带机只能按QIC-150格式写,不可以按QIC-24或QIC-11格式写,格式的选择仅可同时可依QIC-24和QIC-11写的磁带机才有意义。
3.1.1.7 螺线扫描磁带机
螺线扫描磁带机(例如: Exabyte 8mm 或 Wang/DAT 4mm)是特殊的SCSI磁带机,它们仅依指定密度写,因此,通常只需通过磁带机号来指定它们,例如:
/dev/rmt/0
3.1.2读写磁带的命令
下面介绍一些读写磁带的命令
3.1.2.1拉紧磁带
如果读磁带时出错,则可以拉紧(retnsion)磁带带清扫磁带机,再重读一次。
gtxa%mt -f /dev/rmt/1 retension
gtxa%
3.1.2.2倒带
键入mt -f /dev/rmt/ rewind
指定的n号磁带机倒带。下例中,对/dev/rmt/1进行倒带:
gtxa%mt –f /dev/rmt/1 rewind
gtxa%
3.1.2.3列出磁带机状态
键入mt –f /dev/rmt/ status则可显示磁带机状态
此例显示磁带机/dev/rmt/1中无磁带:
gtxa% mt -f /dev/rmt/1 status
/dev/rmt/1:no tape loaded or dri e offline
gtxa%
在此例中,显示/dev/rmt/<1>的状态:
gtxa%mt –f /dev/rmt/1 status
Archive QIC-150 tape drive:
sense key(0x6)=nuit attention residual=0 retries
file no=0 block no=0
gtxa%
3.2 磁带与软盘操作
3.2.1 tar命令
下面几节描述如何使用tar命令将文件拷入磁带,并从磁带上列出文件,增加文件和读出文件。
3.2.1.1向磁带写文件(tar)
依下列步骤向磁带写文件:
1、 进入含有欲拷文件的目录;
2、 插入有写权限的磁带到磁带机中;
3、 键入tar cvf /dev/rmt/
注意: 使用c选项写带,将破坏磁带上原有文件,如果欲保护磁带上原有文件,则需使用后面讲述的"r"选择项来附加文件。
c选项表示拷贝(copy)指定的文件,v选项(verbose)表示在拷贝过程中显示文件信息,f选项(files)后面加上磁带设备名,指定文件向何处拷贝,被指定的文件拷贝到磁带上,覆盖磁带上原有文件。
注: 可以使用元字符(?和*)作为文件名的一部分。例如,为了拷贝所有具有.doc后缀的文件,在文件名部分键入*.doc即可,如果指定文件名部分是一目录名,那么此目录及其所有子目录均递归地拷入带中。
4、 自磁带机中取出磁带,填写标签。
在下面的例子中,将两个文件拷入0号磁带机中的磁带
gtxa%cd /home/winsor
gtxa%ls evaluation*
evaluation. doc evaluation. doc. backup
gtxa%tar cvf /dev/rmt/0 evaluation*
a evaluation. doc 86 blocks
a evaluation. doc backup 84 blocks
gtxa%
3.2.1.2列出磁带上的文件(tar)
依下列步骤列出磁带上的文件:
1、 将磁带插入磁带机;
2、 键入tar tvf ./dev/rmt/
t选项(table)表示将指定文件列出,v选项(vevbose)表示在列文件时仿ls -l的格式显示文件信息,f选项(files)表示在此选项后的磁带机设备名表示文件所在设备。
在下列中显示0号磁带机中所放磁带的内容
gtxa% tar tvf /dev/rmt/0
rm-rm-rm-6693/10 44032 Apr 23 14:54 1991 evaluation. doc
rm-rm-rm-6693/10 44008 Apr 23 14:57 1991 evaluation. doc. backup
gtxa%
从左向右,上面信息的第一列显示文件存取权限,第二列显示文件的属主与属组,第三列显示文件字节数,第四、五、六、七列是文件最后修改的月、日、时间和年号,最后一列是文件名。
3.2.1.3向磁带上增加文件(tar)
依下列步骤可以向磁带上拷入文件而不破坏磁带原来内容:
1、 进入含拷贝文件的子目录;
2、 将具有写权限的磁带插入磁带机;
3、 键入tar rvf /dev/rmt/ ......
则指定文件被拷入指定磁带中;
注:可以使用元字符(?和*)作为文件各的一部分。例如,拷贝所有具有.doc后缀的文件,只需在指定文件名部分键入*.doc即可。
4、 自磁带机中取出磁带,填写标签。
下例中,向0号磁带机中的磁带上增加文件:
gtxa%cd /home/winsor
gtxa%tar rvf /dev/rmt/0 junk
a junk 1 blocks
gtxa% tar tvf /dev/rmt/0
rm-rm-rm-6693/10 44032 Apr 23 14:54 1991 evaluation. doc
rm-rm-rm-6693/10 44008 Apr 23 14:57 1991 evaluation. doc. backup
rm-rm-rm-6693/1018 Dec 10 11:36 1991 junk
gtxa%
tar命令的使用n选项(不倒带),可以让用户多次使用tar命令顺序向磁带上拷文件,例如:拷文件后不倒带,下次使用此磁带拷贝时,文件就写在前次拷贝的文件后面。
3.2.1.4从磁带中析取文件(tar)
1、 进入欲存文件的子目录;
2、 将磁带插入磁带机;
3、 键入tar xvf /dev/rmt/
磁带上所有的文件都拷入当前目录。
此例中,0号磁带机中磁带内容全部被拷贝出来:
gtxa%cd /home/winsor/Evaluations
gtxa%tar xvf /dev/rmt/0
x evaluation.doc,44032 bytes,86 tape blocks
x evaluation.dos.backup,43008 bytes,84 tape blocks
gtxa%
自磁带中析取个别文件,只需键入tar xvf /dev/vmt/ ......指定文件则从磁带中拷贝出,并放入当前目录,此例中前缀是evaluation文件自0号磁带机的磁带中拷贝出:
gtxa%cd /home/winsor/Eealuations
gtxa%tar xvf /dev/rmt/0 evaluation *
x evaluation.doc, 44032 bytes, 86 tape blocks
x evaluation.dos, backup, 43008 bytes, 84 tape blocks
gtxa%
下面步骤表示如何自磁带中析取整个子目录:
1、 进入欲放文件的目录,如果拷入的子目录已存在,那么,应进入该子目录的父目录中,而且应保证原子目录中的内容可以覆盖掉,例如,将磁带中的目录Book拷入/home/winsor/Book中,应键入cd /home/sinsor; tar xvf /dev/rmt/Book,若原先就进入/home/winsor/Book中,则拷入内容则存于/home/winsor/Book/Book中。
2、 键入tar xvf /dev/rmt/ 则此目录与其所有子目录递归地自磁带上拷出。
注意: 自磁带中拷出的文件名就是所存的文档文件名,如果对文件名不清楚,可以先列出磁带上的文件名,步骤详见"列出磁带上的文件(tar)"或tar(1)手册。
3.2.2cpio命令
使用cpio命令建立磁带文档时,它自标准输入设备取得一串文件或路径名, 然后将它们写到标准输出设备上,输出通常反向到文件或设备,后面讲述怎样使用cpio命令将文件拷入盒式磁带,列出盒式磁带文件,及析取磁带上的某个文件子集。
3.2.2.1将某目录下的所有文件拷入磁带(cpio)
依下列步骤将某目录下的所有文件拷入磁带:
1、 将具有写权限的磁带插入磁带机;
2、 键入ls l cpio –oc > /dev/rmt/
当目录中所有文件则拷入指定磁带机中的磁带内,覆盖磁带上已有文件,显示拷贝总块数;
3、 取出磁带,填好标签。
在下列中,/home.winsor/TOI目录的文件均拷入0号磁带机内的磁带。
gtxa%cd /home/winsor/TOI
gtxa%ls -1 cpio –oc > /dev/rmt/0
31 blocks
gtxa%
3.2.2.2列出磁带上的文件(cpio)
依下列步骤:
1、 将磁带插入磁带机;
2、 键入cpio -civt < /dev/rmt/
其中i选项自磁带读入(in)内容,v选项仿ls -l格式列出文件;t选项对指定磁带机中的磁带内容列表。
注意: cpio命令列表使用的时间与读整个文档的时间一样长,因为cpio命令需遍历整个文档。
在本例中,0号磁带机中的磁带有四个文件:
gtxa%cpio -civt < /dev/rmt/0
100666 winsor 3895 Feb 24 15:13:02 1992 Boot.chapter
100666 winsor 3895 Feb 24 15:13:23 1992 Directory.chapter
100666 winsor 6491 Feb 24 15:13:52 1992 Install.chapter
100666 winsor 1299 Feb 24 15:14:02 1992 Intro.chapter
31 biocks
gtxa%
第一列是八进制表示的存取权限;第二列显示文件属主;第三列列出文件所占字节数;第四、五、六、七列显示文件最后改动的月、日、时间和年份;最后一列是文件名。
3.2.2.3析取磁带上所有文件(cpio)
如果(磁带上)文档是使用相对路径名建立的,那么输入文件在当前目录下, 如果文档是使用绝对路径名建立的,则以相同的绝对路径重新生成此文件。
注意: 使用绝对路径名来拷贝磁带文件是危险的,因为这样会覆盖文件系统中的原有文件。
依下列步骤拷贝文件:
1、 进入欲放文件的子目录;
2、 将磁带插入磁带机;
3、 键入cpio -icv < dev/rmt/
指定磁带机中磁带上所有文件拷入当前目录。
本例中,0号磁带机的磁带上的所有文件被拷贝出来。
gtxa%cpio –icv < /dev/rmt/0
Boot.chadter
Install.chapter
Intro.chapter 31 blocks gtxa%
3.2.2.4自磁带中析取个别文件(cpio)
通过在选项后面的引号中使用shell通配符号可以拷出磁带中文档文件的某个子集:
1、 进入欲存文件的目录;
2、 将磁带插入磁带机;
3、 键入cpio -icv "" < /dev/rmt/
所有与此模式匹配的文件均拷入当前目录,可以指定文件名匹配模式,但它们必须框入引号之中。
下例中,后缀为chapter的所有文件均自0号磁带机的磁带中拷贝出。
gtxa%cd /home/winsor/Book
gtxa% cpio –icv "*chapter" Boot.chapter
Directory.chapter
Install.chaopter
Intro.chaoter
31 blocks
gtxa%
更详细内容请参阅自cpio(1)手册。
3.2.2.5软盘的使用
本节介绍双面(DS)高密度(HD)3.5英寸软盘的使用方法,在向软盘上拷贝ufs文件或文件系统之前,必须格式化软盘,将ufs文件拷入单个软盘片需使用tar命令;若向多个软盘片上拷贝时,应使用cpio。cpio命令可以发现介质已用完并提醒使用者插入下一盘片。
也可以在软盘上建立一个DOS文件系统,要想使用DOS格式的软盘,可以将软盘作为pcfs文件系统装入,然后使用基本OS命令如cp,mv等从软盘上存/取文件即可。
3.2.3软驱设备名
软驱的设备名在SunOS 5.x系统软件中与前版本比较,已有所变化,现在的软驱设备名为/dev/diskette;软盘的原始设备文件名为/dev/rdiskette。
3.2.4ufs文件系统的软盘
本节介绍如何格式化用于ufs文件的软盘,以及怎样用tar和cpio命令拷贝文件,同时介绍怎样拷出使用SunOS 4.x中bar命令建立的文件。
3.2.4.1格式化ufs软盘
SunOS 5.x ufs文件使用的软盘依下列步骤格式化:
1、 去掉软盘写保护;
2、 将软盘放入软驱;注意:重新格式化会破坏软盘上所有原有文件。
3、 键入fdformat,显示出"Press return to start formatting floppy"
4、 回车,这时开始格式化软盘,出现一系列的点(......)当格式化完成时,重现提示符。
Press return to start formatting floppy..
..........................................................
gtxa%
3.2.4.2自软驱中取出软盘
自软驱中取出软盘要用eject命令,eject命令也用于将CD-ROM盘片自CD-ROM驱动器中取出,不带参数的eject命令,以/dev/diskette作为缺省值参数,键入eject命令,则软盘弹出。注意:如果软盘弹不出来,可以用手动取出,方法是用一块硬纸片插入盘片下方的孔中。
3.2.4.3将ufs文件拷入单张格式化过软盘
本节讲述tar命令,注意tar命令使用的是原始设备名/dev/rdiskette。
1、进入欲拷文件所在的目录;
2、将去掉了写保护且格式化好了的软盘插入软驱;注意:使用c选项会破坏软盘上原有的数据,若欲保护原有数据,应使用后面讲的r选项。
3、键入tar cvf /dev/rdiskette ...
指定文件拷入软盘并覆盖原有的文件。注意:拷贝时文件名中也可以出现元字符(?和*),用于拷贝多个文件。
4、键入eject将软盘自软驱中取出;
5、填写好软盘标签。
下面例子中,向软盘内拷入了两个文件:
gtxa%cd /home/winsor
gtxa%ls evaluation *
evaluation, docevaluation.doc.backup
gtxa%tar cvf /dev/rdiskette evaluation *
a evaluation. doc 86 blocks
a evaluation. doc. backup 84 blocks
gtxa%eject
gtxa%
3.2.4.4列出软盘上的文件
其具体步骤:
1、将软盘插入软驱;
2、键入tar tvf /dev/rdiskette
t选项表示列出软盘上的文件。
下面例子中的软盘上含有2个文件:
gtxa%tar tvf /dev/rdiskette
rw-rw-rw-6693/10 44032 Apr 23 14 54 1991 evaluation.doc
rw-rw-rw-6693/10 44008 Apr 23 14 47 1991 evaluation.doc.backup
gtxa%
在tar(1)手册中有详细说明,同时拷多张软盘应使用cpio,tar只适用于单张软盘。
3.2.4.5向一个格式化好的软盘上附加文件(tar)
依下列步骤,可保证不覆盖软盘上原有的文件;
1、进入含欲拷文件的目录;
2、将一张去掉写保护并格式化后的软盘插入软驱中;
3、键入tar rvf /dev/rdiskette ...
指定文件则附加到软盘上原有文件之后。注:文件名中允许出现?或*这样元字符。
4、键入eject取出软盘。
5、填写好软盘标签。
下例中,附加一个文件到软盘上:
gtxa%cd /home/winsor
gtxa%tar rvf /dev/rdiskette junk
a junk 1 blocks
gtxa%tar tvf /dev/rdiskette
rw-rw-rw-6693/10 44032 Apr 23 14 54 1991 evaluation.doc
rw-rw-rw-6693/10 43008 Apr 23 14 47 1991 evaluation.doc.backup
rw-rw-rw-6693/1018 Dec 10 11:36 1991 junk
gtxa%eject
gtxa%
3.2.4.6从软盘上拷出文件(tar)
1、进入欲存放文件的目录;
2、将软盘插入软驱;
3、键入tar xvf /dev/rdiskette,软盘上所有文件就都拷到当前目录中去了;
4、键入eject命令,自软驱中取出软盘。
下例拷贝软盘上的所有文件:
gtxa%cd /home/winsor/Evaluations
gtxa%tar xvf /dev/rdiskette
x evaluation.doc,44032 bytes,86 tape blocks
x evaluation.dos.backup,40008 bytes,84 tape blocks
gtxa%eject
gtxa%
tar xvf /dev/rdiskette ...命令中从软盘上拷贝出个别文件,在下面的例子中自软盘上拷出所有前缀为evaluation的文件:
gtxa%cd /home/winsor/Evaluations
gtxa%tar xvf /dev/rdiskette evaluation*
x evaluation.doc,44032 bytes,86 tape blocks
x evaluation.dos.backup,43008 bytes,84 tape blocks
gtxa%eject
gtxa%
3.2.4.7自软盘上拷出bar格式的文件(cpio)
SunOS 4.x中的bar命令在SunOS 5.x中已经取消,原来SunOS 4.x中以bar 命令在软盘是存档的文件,可以在SunOS5.x下拷出,其方法是使用cpio命令加-H bar选择项。注意:用-H bar加-i选项只能拷出文件,而不能用该选项来创建bar文件,最好在拷贝之前,先列出软盘内容看一下。
1、进入欲存放拷出文件的目录;
2、将软盘插入软驱;
3、键入cpio -ivH bar4、键入eject命令,将软盘取出;
3.2.5使用多张软盘存档
当向软盘上拷贝较大文件时,cpio命令可以提醒使用者当前软盘满了,再换一张格式化过的空盘,使用的选项在前面的"cpio命令的使用"中讲述过,这些选项与拷入磁带的相同,只需将前面有磁带机设备名改为/dev/rdiskette即可。
3.2.5.1在软盘上创建一个ufs文件系统(newfs /dev/rdiskette)
如果想安装一个ufs软盘,首先必须在其上创建一个文件系统:
1、格式化软盘;
2、进入超级用户状态;
3、键入newfs /dev/rdiskette
于是,就在软盘上创建了一个ufs文件系统,
gtxa%fdformat
Press return to start formatting floppy。
................................................................
gtxa% su
Password:
#newfs /dev/rdiskette
#
3.2.6pcfs(DOS)文件系统的软盘
按pcfs(DOS)文件系统格式化的软盘可用于DOS系统,下面讲述怎样格式化DOS软盘,关于pcfs文件系统请见第四章。
3.2.6.1 格式化pcfs(DOS)文件系统软盘
格式化这种软盘,需依下列步骤:
1、将软盘插入软驱;
注意: 重新格式化会破坏软盘上原有数据!
2、键入fdformat -d显示"Press return to start formatting filppy"
3、键入回车,格式化过程中,系统显示一连串小圆点,格式化结束后,显示出提示符。
gtxa%fdformat -d
Press return to start formatting floppy.
.................................................................
gtxa%
3.2.6.2安装pcfs软盘
既可以安装使用fdformat -d命令格式化的软盘,也可安装在DOS系统下格式化的pcfs软盘,在安装了pcfs文件系统之后可以使用SunOS的实用程序对文件读、写、创建、删除,但文件的命名遵从DOS约定,关于pcfs文件系统的格式特点,可以查阅pcfs(7)手册。
软盘上安装pcfs文件系统,方法如下:
1.将软盘插入软驱;
2.进入超级用户方式;
3.键入mount -F pcfs /dev/diskette 文件系统则安装在指定的安装点。
一个pcfs文件系统可以以不同的安装选项安装,(例如: -orw),mount-pcfs(1M)手册中详细讲述了各种选项。
如果频繁使用pcfs软盘,则可以在/etc/vfstab中加入如下一项:
/dev/diskette-pcfs pcfs-no rw
建立一个/pcfs目录,作为软盘安装点,若安装点写入/etc/vfstab中,使用者可以在超级用户状态下键入mount /pcfs来安装pcfs 软盘,一旦pcfs软盘安装上了,则可以使用所有SunOS实用程序,如cp或mv对软盘上文件拷入拷出。
3.2.6.3卸下pcfs软盘
使用完pcfs软盘后,必须首先将它的系统卸下,才能用eject取出该软盘,键入umount 即可完成拆卸,键入eject命令,软盘弹出。
3.3硬盘命名管理
下面各节讲述SunOS 5.x硬盘命名习惯,查找硬盘信息的命令(du,prtvtoc),以及如何修复和更替坏盘。
3.3.1硬盘命名习惯
SunOS 5.x的硬盘命名方法与SunOS 4.x的不同,本节将解释新的命名约定,该命名基于逻辑(而非物理)设备名,SunOS 5.x的硬盘,同时具有设备和原始(字符)设备文件的名字,不管命令要求块设备文件还是原始设备文件,设备名是同一个。
SunOS 4.x要求在原始设备名前加一个r,SunOS 5.x则无此要求,在后者中,每种类型的设备文件在/dve下有自己的子目录:/dve/dsk(块设备接口),/dev/rdsk(原始设备接口)。
诸如mount等命令要求使用/dev/dsk目录中的块接口设备名来指定硬盘设备,而newfs等命令则使用/dev/rdsk目录中的原始接口设备名来指定硬盘设备。
指定硬盘设备名时使用哪种接口取决于控制器类型是基于总线(SCSI或IPI)还是直接的。
3.3.1.1带有总线控制器的硬盘的使用
图3.2列出了总线控制器的硬盘命名习惯。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
cwtxdySz
z Slice (or partition) number (0 to 7)
y Drive number
t Physical bus target number
c Logical controller number
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
图3.2 具总线控制器的硬盘命名习惯
指定具有总线控制器(SCSI或IPI)的硬盘的某个分区,可这样规定设备名:/dev/dsk/cWtXdYsZ(块接口)或/dev/rdsk/cWtXdYsZ(原始接口)。注: SunOS 5.x使用"片"(slice)"一词来表示片号(在设备名中用"s"表示),其实"片"就是硬盘分区的别称。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
表3.6 总线型驱动器硬盘的设备名举例
设备名 描述
/dev/rdsk/c0t0d0s0 该原始接口对应第一个控制器的第一个SCSI
目标地址的第一个硬盘的第一片(根)
/dev/rdsk/c0t0d0s2 该原始接口对应第一个控制器的第一个SCSI
目标地址上的第一个硬盘的第三片(表示整上
硬盘)
/dev/rdsk/c0t1d0s6 该原始接口对应第一个控制器的第二个SCSI
目标地址的第一个盘的第七片(/usr)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
下面列出了一些确定设备文件名的方法:
•;若系统中仅有1控制器,那么W的值通常为0;
•;对于SCSI控制器来说,X是该部件后面开关所设置的目标地址;
•;Y是与目标上相连的驱动器号,若硬盘的控制器是嵌入式的,则Y为0;
•;Z是片号(即分区号),标码由0到7,指定整个硬盘时,值为2,表3.5列出了带有根区的硬盘上分区的常规赋值。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
表3.5 有根区硬盘的习惯分区
区(片) 文件系统 用途
0 / 根文件系统
1 Swap 虚拟内存空间
2 - 整个硬盘
6 /usr 可执行程序,程序及文档
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
3.3.1.2带有直接驱动器的硬盘的使用
带直接驱动器的硬盘,设备名中没有目标项,指定这种硬盘的片(分区)应使用下列格式的设备名: /dev/dsk/cXdYsZ(块接口)/dev/rdsk/cXdYsZ(原始接口).
图3.3表示出具直接控制器的硬盘的命名约定,如果系统仅有1个控制器,则X为0,使用第二片表示整个硬盘。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
cXdYsZ
X Slice (or partion)llumber(¢to 7)
Y Drive number
Z Longical controller numver
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
图3.3直接控制器硬盘的命名规定
表3.7列出了几个直接控制器硬盘的原始设备命名
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
表3.7直接控制器硬盘的设备名示例
设备名 描述
/dev/rdsk/c0d0s0 对应第一个控制器的第一个硬盘的第一片(根)的
原始接口/dev/rdsk/c0d0s2对应第一个控制器的
第一个硬盘的第三片(整个硬盘)的原始接口
/dev/rdsk/c0d1s6 对应第一个控制器和第二个硬盘的第七片(/usr)
的原始接口
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
3.3.2检查硬盘使用状况
键入du可以查出每个文件或目录,占用了多少个512字节的硬盘块,若某目录含子目录,则计算块数时,子目录中的内容也算在内。
gtxa%du
2913 ./3.0templates
639 ./Srt
347 ./Howto
1998 ./Clipart
607 ./Newtemplates
38 ./Modemstuff
2004 ./Config/Art
6593 ./Config
13280
gtxa%
上面例子中的输出以512字节的块为单位,欲换算成兆字节(MB),应除以2048,上例中,13280/2048=6.48Mb。
也可以用du –k列出以K为单位的输出结果,使用du –s可以只列出总空间大小而不列详细目录大小。
3.3.3检查硬盘信息(Prtvtoc)
Prtvtoc命令仅对已分配空间的分区产生作用,否则就会显示"No such device or address"的出错信息,使用标准分区命名约定,那么指明第2片就显示整个硬盘的内容。
1、成为超级用户
2、键入prtvtoc /dev/rdsk/cWtXdYsZ显示指定硬盘信息。
gtxa%su
Password:
gtxa#Prtvoc /dev/rdsk/c0tld0s2
*/dev/rdsk/c0t1d0s2 Partition map
*
*Dimensions:
* 512 byres/sector
* 35 sectors/track
* 6 tracks/cylinder
* 210 sectors/cylinder
* 1019 cylinders
* 974 sccessible cylinders
*
*Flags:
* 1: unmountable
* 10: read-only
*
* First
* Partition Tag Flags Sector
0 0 00 0
1 0 00 24150
2 0 00 0
6 0 00 74550
Sector Last
Count Sector Mount Directory
24150 24149
50400 74549
204540 204530
129990 204539
gtxa%
下面讲述怎样修复坏硬盘或重装新硬盘
3.3.3.1将文件存档
如果硬盘坏了,但还可以访问硬盘,那么就把硬盘上的所有文件系统做一下ufsdump。ufsdump命令的用法见第4章。
3.3.3.2将硬盘上文件拷出
若无法对硬盘运行ufsdump,那么找一个同类型硬盘,联入系统,使用dd 命令从坏盘上拷出数据,dd的使用详见dd(1M)手册。
3.3.3.3修复坏块
若硬盘上有坏块, 使用format命令有可能修复磁盘上的坏块,format命令的用法见format(1M)手册。
3.3.3.4重新格式化硬盘
若硬盘上有坏块,重新格式化有时会解决问题,格式化硬盘的命令是format,其用法请见format(1M)手册,请记住格式化硬盘会毁掉磁盘上面的所有数据。
3.3.3.5换下旧硬盘
如果重新格式化和修复坏块都解决不了问题时,就要换下此坏硬盘,方法详见硬盘安装手册。
3.3.3.6加入错误表对硬盘进行格式化、分区及标记
下述步骤用于在新的硬盘上加入错误表、格式化硬盘、对硬盘进行分区和标记。注意:只有加入错误表后方可格式化硬盘,格式化时硬盘上的数据全部被坏破掉,故若硬盘不是新的,一定要保证在格式化前将数据备份出来。
1、 成为超级用户;
2、 键入format命令,显示各个硬盘清单;
AVAILABLE CISK SELSETIONS:
0.c0t0d0 at scsibus0 slave 24
sd0;
3、 从显示的清单中选择新硬盘的号,显示以"format>"为提示符的format菜单;
4、 键入defect
5、 键入primary原来的错误表就被加到硬盘中;
defect>primary
Extracring primary drfect list...Extraction complete.
Current Defect list updated.\
total of 30 defdcts.
6、 键入quit回到format>提示符
7、 键入format开始格式化硬盘,一个容量为10MB的硬盘格式化10分钟,硬盘容量越大,格式化时间越长;
8、 当format>提示符又出现了时,键入partition
9、 重建与损坏的硬盘的分区相匹配的分区表;
10、 键入label硬盘被标记好;
11、 键入quit回到format>提示符下;
12、 再键入quit回到shell提示符下。
gtxa%su
Password:
#format
Searching for disks...done
Extraction complete.
of 30 defects.
AVAILABLE DISK SELECTIONS:
O.sd0 at esp0 slave 24
sd0:
1.sd0 at esp0 slave 16
sd2:
Specify disk (enter its number):1
selecting c0t0dd0
[disk formatted]
formAT MENU:
disk -select a disk
type'-select (define) a disk type
partition'-select (define) a partition table
current'-describe the current disk
format'-format and analyze the disk
repair'-repair a defective sector
label-write label ti the disk
analyze'-surface analysis
defect'-defect list management
backup'-search for backup labels
verify'-read and display labels
save'-save new disk/partition defintions
inquiry'-show vendor,product and revision
volname'-set 8-character volume name
quit
format>defect
defect>primaty
Extracting primary defect list...Extraction complete.
Current Defect list updated.total of 30 defects.
defect>quit
format>format
format>partition
PARTITION MENU:
0. - change'0'partition
1. - change'1'partition
2. - change'2'partition
3. - change'3'partition
4. - change'4'partition
5. - change'5'partition
6. - change'6'partition
7. - change'7'partition
select - select a predefined table
modify - modify a predefined partition table
name - name the current table
print - display the current table
label - write partition map and label to the disk
quit
partition>
partition>label
partition>quit
format>quit
#
3.3.3.7重建文件系统(newfs)
硬盘经过格式化,分区和标记以后,就可以在上面建立ufs文件系统, 在重建原已存在的ufs文件系统时,必须先将此系统卸下(unmount)。
重建文件系统需依下列步骤:
1、 成为超级用户;
2、 键入newfs /dev/rdsk/cWtXdYsZ
系统提问是否继续。注意: 必须保证设备名中的分区号正确,否则会将其它分区中的内容删掉。
3、 键入"y"确认,newfs命令使用优化的缺省值创建文件系统。
下面例子在/dev/rdsk/c0t3d0s7上创建一个文件系统。
gtxa%su
Password:
#newfs /dev/rdsk/c0t3d0s7
newfs: constuct a new file system /dev/rdsk/c0t3d0s7(y/n)?y
/dev/drsk/c0t3d0s7: 163944 seotors in 506 cylinders of 9 tracks, 36 sectors 83.9MB in 32 cyl groups(16c/g,2.65MB/g,1216i/g)
super-block backups (for fsck-b#)at:
32. 5264. 10496. 15728. 20960. 26192. 31424. 366656. 41888.
47120. 52352. 578584. 62816. 68048. 73280. 78512. 82976. 88208.
93440. 98672. 103904. 109036. 114368. 119600. 124832. 130064.
1352696. 140528. 145760. 150992. 156224. 161456.
#
3.3.3.8在临时安装点安装文件系统(mount)
键入mount /dev/dsk/cWtXdYsZ /mnt文件系统安装到临时安装点/mnt上,安装硬盘时,使用块设备目录(/dev/dsk),而不是原始设备目录。
3.3.3.9向文件系统转储文件(ufsrestore)
下列步骤用于恢复最新的完整备份,然后由最低级到最高级依次恢复增量备份。
1、 键入cd /mnt;
2、 将磁带置于写保护状态;
3、 将0级磁带的第一卷插入磁带机;
4、 键入ufsrtore rvf /dev/rmt/若有多卷磁带需恢复,则在出现提示时插入下卷,这样就恢复了0级磁带;
5、 将0磁带取出,将下一最低级别的磁带插入,记住从0级磁带开始恢复,直到最高级;
6、 键入ufsrtore rvf /dev/rmt/则下一级别的磁带被恢复;
7、 对每卷磁带重复步骤5、6;
8、 键入ls命令;
9、 显示文件和目录列表,确认所有文件都已恢复;
10、 键入rm restore symtable删去为恢复而创建的restore sysmtable文件。
3.3.3.10自临时装入点拆卸文件系统(umount)其方法如下:
1、键入cd /
2、键入umount /mnt将文件系统自临时安装点卸下。
3.3.3.11检查文件系统的不一致性(fsck)
键入fsck /dev/rdsk/cWtXdYsZ本命令检查文件系统一致性。
3.3.3.12对恢复文件系统做0级备份
由于ufsrestore命令改变文件的位置及inode的分配,所以对新建的文件系统应立即做备份。
1、将具有写权限的新磁带插入磁带机;
2、键入ufsdump ouf /dev/rmt/
3.3.3.13在永久安装点安装文件系统(mount)
键入mount /dev/dsk/cWtXdYsZ则恢复的文件系统被装上并可以使用了。
阅读(4016) | 评论(0) | 转发(1) |