第一章 solaris10的目录结构
1. 描述/(ROOT)子目录 2. 描述文件的组成 3. 描述文件的类型 4. 使用硬连接
solaris的目录层次是为了建立更加方便的管理。为了建立不同使用目的的原则,目录结构内部建立了目录树的分割。举例来说,根目录的存在支持着本地系统的私有文件和其他系统共享的文件以及用户的主目录。
逻辑上说,所有的目录都依附与根目录。实际上目录能够定位在单一的文件系统上,或者分离的多个文件系统上。每个SOLARIS必须有一个ROOT文件系统,同时,其他的文件系统可以挂结在这个目录层上。许多的文件系统都创建在磁盘片上同时这些文件系统包含或者支持文件和目录。
介绍重要的系统目录:
SOLARIS OE是有一些重要的系统目录和包含必要的适合操作系统运行的功能性文件组合而成的一个层面。下面列出了SOLARIS,OE中一些十分重要的系统目录和子目录。 / 根目录覆盖了所有的文件系统的命名空间。
/bin 这个符号连接在/usr/bin这个目录上。这个目录存储了标准系统命令的二进制文件。 /dev 逻辑设备名存放的主目录。这个目录的内容是将一些设备文件的符号连接到/devices这个目录上。
/devices 这个目录是物理设备名的根目录。
/etc 这个目录是支持系统管理数据库和主机的特殊配置文件。
/export 共享文件的默认目录象是用户的家目录,应用软件,或者是其他共享文件系统。 /home 用户家目录的默认目录或者是用户目录的挂结点。
/kernel 是导入过程所要求的一个独立平台用于装载kernel模式的一个目录。 /lib 这个目录下的内容是共享所有的文件和服务管理处理的库的连接。 /mnt 便利,临时的一个文件挂结系统。
/opt 为附加应用包而设立的一个默认目录或者挂结点。 /platform 依附于/kernel的目录。
/sbin 一个包括实质处理方式的单用户目录,列如手工的系统故障恢复和导入过程的使用。 /tmp 一个临时文件目录。这个目录在系统从新启动的时候会自动清空。
/usr 这个目录包含所有系统用户使用的程序,脚本和库。这个目录的名字是UNIX系统资源的首字母缩写。
/var 这个目录下是一些可变文件,包括临时,日志,或者状态文件。
/dev/fd 文件脚本器
/devices 物理设备名的初始目录
/etc/mnttab 描述你当前系统的mount情况。
/etc/svc/volatile 这个目录下是一些log文件以及系统运行的文件的相关状态。 /proc 系统当前运行的进程的信息。
/system/contract CTFS(契约文件系统)是一个创建,控制,和观察契约的一个接口。契约提高了进程了系统资源之间交互的性能。SMF使用契约来跟踪进程的情况。 /ststem/object 用来描述当前系统load的module。
/dev/dsk 块磁盘设备。
/dev/fbs 桢缓寸器设备文件。 /dev/md 后磁盘的逻辑卷管理。 /dev/pts 虚拟终端设备。 /dev/rdsk 裸磁盘设备。 /dev/rmt 裸磁带设备
/dev/sound 声音设备和声音设备控制文件。 /dev/term 串行设备。 表2 /etc
/etc/acct 记述系统的一些配置信息。
1
/etc/cron..d cron使用的配置信息。 /etc/default 可变程序的一些默认信息。 /etc/inet 网络服务的配置文件。
/etc/init.d 停止和开始服务的脚本,以及用于改变运行级别的一些文件的存储。 /etc/lib 当/usr文件系统不可用时需要的一些动力连接库。 /etc/lp 打印子系统的配置信息。 /etc/mail 邮件子系统的配置信息。 /etc/nfs NFS登陆服务的配置信息。 /etc/opt 选择包的配置消息。
/etc/rc#.d 当进入和离开特殊运行级别的脚本。 /etc/security 控制RBAC和一些私有的安全设置。 /etc/skel 新用户登陆的默认的初始化shell文件。 /etc/svc SMF的数据库和log文件的所在。 /etc/zones zone的初始化和参考文件。 /usr/bin 标准的系统命令。 /usr/ccs C的编辑程序和库。 /usr/demo 演示程序和数据。
/usr/dt CDE(Common Desktop Environment)软件的目录和挂接位置。 /usr/include 头文件(C程序和其他一些程序) /usr/java 包含JAVA程序和库的目录。
/usr/kernel 一个可以加载的核心模式的独立平台同时,在系统启动过程中并没有具体的要求。 /usr/lib 数据库所依赖的体系结构,可变程序库和用户并不直接到入的二进制信息。 /usr/opt 可选择包的一些配置信息。 /usr/sbin 系统管理命令。
/usr/spool /var/spool的符号连接文件。 /var/adm log文件所在。
/var/crash crash dump的所在。 /var/spool /var/svc /var/tmp
文件组成的介绍:
SOLARIS OE的所有文件所使用的文件名和记录被称为信息接点。许多数据也使用数据块。总体来说,每个文件名有一个相应的信息接点,同时信息接点提供数据块的接入。
文件名
文件名是许多通常可进入和可操作的文件目标。一个文件必须有文件名以及相对应的信息接点。 信息接点
信息接点是SOLARIS OE使用关于文件信息记录的目标。总的来说,信息接点包含了2部分,第一,信息接点含盖了关于文件的信息,包括,文件的所有者,文件的权限,和它的大小。第二,信息接点包含了文件所对应的数据块的指针。 信息接点是一些数字,同时文件系统包含了属于它自己的信息接点列表。当一个新的文件系统创建时,完成的这个新的信息接点列表也创建在这个文件系统中。 数据块
数据块是一些用于存储数据的磁盘空间单元。规则的文件,目录和符号连接使用数据块。设备文件并不占有数据块。 认识文件方式:
Sloaris OE支持一种可以在所有以UNIX为基础操作系统上找到的标准的文件设置方式。大体上来说,文件提供的功能有:数据存储,活动设备,或者允许交互处理间的通信。在Sloaris OE中存在着多种文件方式,归纳主要有下列4种: 正规或者传统的文件。 目录 字符连接 设备文件。
正规文件,目录和字符连接用于存储各种类型的数据。设备文件并不存储数据。而设备文件用于
2
提供设备的使用权限。
使用ls命令可以用于辨别文件类型之间的区别。用ls –l命令看到的第一栏字符信息是用来指示文件类型的。 一般性文件
是系统中存在的普通的大多数的文件,能够保存用户的各种类型的数据。可以通过vi进行编辑。 目录
目录是存储了文件名以及和inode的关联信息。 连接文件
连接文件是相当与其他一个文件的指针。可以用ln来建立。
第三章 管理本地磁盘设备 目标:
描述基本的磁盘结构 描述磁盘的命名规则 列出设备
重新配置设备 执行硬盘分区 管理磁盘的label 描述SMC
使用SMC分区
首先,先来说一下物理磁盘的组成: 磁盘的存储区域是由一些碟片组成的。 这些碟片是旋转的
磁盘读写定位机械臂移动磁盘头来进行定位 读写把数据读写到碟片表面的磁介质上。
一个碟片又被分为:扇区(一个扇区为512byte,也就是一个磁盘块),磁道,柱面
磁盘slice就是将一个磁盘在逻辑上分出来的分区。一般来说一个磁盘可以分成8个区0~7。 一般slice2代表整个磁盘。 一般的分配方式为: 0 /
1 swap 2 整个磁盘 3 4
5 /opt 6 /usr
7 /export/home
但是,在安装的时候,可以根据自己的需要来安装很分配。
磁盘的命名规则一般为:c#t#d#s#的方式。但是如果加如了卷管理的方式,磁盘的命名规则会根据卷管理软件的要求进行更改的。比如:vertias volume manager下为/dev/vx/dsk/dgname/volume。 C:一般 controller number T:代表target number D: 一般代表disk number S: 一般代表slice number
在solaris下所有的磁盘一般被分为3种命名方式: 逻辑设备名 物理设备名 实名
逻辑设备名是来源于物理设备名的一个连接,连接于/devices目录。所有的逻辑设备名都在目录/dev下。逻辑设备名的命名方式就是采用c#t#d#s#。所有在/dev下的设备又分为/dev/dsk和/dev/rdsk两中块设备和字符设备。 物理设备名
3
物理设备名是系统中唯一用来标识本地物理设备的。设备名在/devices下。物理设备名是由一系列的接点名组成的。用/来进行路径的区分。光纤盘与其他的不太一样是有WWN(world wide name)号来表示。
实名是有kernel为每个设备分配的一个缩写名。 Sdn:代表SCSI硬盘。 Dadn:代表ide硬盘 Ssdn:代表光纤盘
查看设备设备名可以在/etc/path_to_inst文件中,有详细的设备列表清单。(查看网卡设备的时候比较轻松)
也可以使用prtconf |grep –v not来查看设备列表的清单。 在一个就是format命令。
重新识别设备的时候,可以通过3种方式一种是: Touch /reconfigure Init 5
然后,加上设备然后再重新启动。(基本上已经不用这样的方式了) 另一种是用drvconfig
再一种是devfsadm(8以后开始出现的命令)
format实用程序是一个系统管理员工具,用于在Solaris操作环境中对硬盘的准备工作。
用户可以通过使用format实用程序来进行磁盘的分类管理,主要的目的是对磁盘进行分区。
为磁盘分区,系统管理员需要: 。正确的识别磁盘 。规划磁盘
。使用format实用程序分区
。为磁盘加上新分区的标签(label)
只有root用户可以使用format实用程序。如果普通用户运行了format实用程序,系统将显示没有权限或者没有找到磁盘。
磁盘卷标和分区表
在Solaris操作环境中,每一个磁盘都在存储区域旁边指定一个区域,来设置关于磁盘的控制器,表面分布和分区的信息。
这个信息称为磁盘的卷标。其他部分则是用于描述内容的卷表(volume table of contents,VTOC)。这个磁盘卷标或者VTOC保存在磁盘的第一个扇区。
为一个磁盘建立卷标是为了要在磁盘上写入分区的信息。如果系统管理员在定义分区后忘记了为磁盘加卷标,分区信息就会丢失。
磁盘卷标的一个重要部分就是定义磁盘分区的分区表,分区在柱头上的分界线和所有分区的长度。
Flag:wm=磁盘分区是可写并且可mount的 wu=磁盘分区是可写并且不可mount的 rm=磁盘分区是可读并且可mount的 ru=磁盘分区是可读并且不可mount的 Cylinders分区的起始柱头数和终止柱头数 Size分区的长度:Mbytes(mb),Gbytes(gb),Blocks(b),Cylinders(c) Blocks每个分区的柱头的总数和扇区的总数
4
定义磁盘Slices
Slices是定义在一个柱头组和柱头的长度上的。柱头组的起始位置是柱头0
定义磁盘partitions
下面描述了定义磁盘的partitions先决条件。
不良的条件
当建立或者改变底盘的slices时,有2种可能发生的不良条件:浪费的磁盘空间和重叠的磁盘Slices。
浪费的磁盘空间:当一个或者多个柱头没有在Slices中定位所产生的空间 重叠的磁盘Slices:当一个或者多个柱头同时被多个Slices定位。
定位磁盘分区表
当root用户使用format实用程序选择磁盘的分区时,一个磁盘分区表的拷贝就被读入内存并且显示当前的磁盘卷标。
Format实用程序通常是依赖于/etc/format.dat文件来读或者调用format实用程序。可以使用/etc/format.dat文件来快速定义可用磁盘表和预先的分区表。
用户可以使用下列命令来将从/etc/format.da文件中预先设定的分区表读入当前卷标。
。select:从/etc/format.dat文件中选择一个预先设定的分区表 。print:显示选择的分区表
。label:将选择的分区表写入磁盘的卷标 。verify:定位磁盘卷标和显示新信息 。disk:选择磁盘
。name:为改变了的分区表建立一个名字 。save:保存名字到./format.dat文件中
进行磁盘分区
按照下面的步骤为磁盘分区
1.Root用户在提示符前输入format并且回车 # format
Searching for disks...done
AVAILABLE DISK SELECTIONS:
0. c0t0d0
1. c0t1d0
Format实用程序搜索所有已经绑定的磁盘,每个被找到的磁盘,format都显示他的逻辑设备名,硬件名,物理参数和物理设备名。
2.选择在磁盘逻辑设备名左边的编号选择第二个磁盘。
selecting c0t1d0 [disk formatted]
5