Solaris文件系统管理
不同的操作系统使用不同类型的文件系统
1、文件(管理)系统:是用来对文件和目录进行管理、控制的数据结构的总称。
Windows当中的文件系统: ntfs ,fat32 ,fat64
Solaris 当中的文件系统:ufs, zfs
Linux 当中的文件系统:ext3 ext4
Aix:jfs jis2 hp :hfs jfs
2、Solaris文件系统的类型:
1、磁盘文件系统 UFS(Unix file system )ZFS(zettabyte file system)
2、网络文件系统 NFS network file system
3、swap文件系统 swap文件系统是一种内存替代的文件系统
4、/proc 进程文件系统 驻留在内存中
3和4 称为虚拟文件系统,大多数基于内存,也有基于硬盘的。3是基于硬盘的。
通过df –h 进行查看详细信息:
3、文件系统是一个层次结构,用于组织与存储其他目录与文件。
4、文件分类: 普通文件、设备文件、管道设备、链接文件、目录文件。
5、文件系统的存储结构:也是分块的,有用户数据,也有元数据(文件系统结构信息)。
文件系统的构成:0#块:引导块。1#超级块。2----n块。
每个文件对应一个i节点。
Ls -l 就是从i节点当中来的。 I节点 是对文件进行控制与管理的一种数据结构,存放文件说明信息。有 uid gid 文件大小,访问时间,物理块号等。
一个节点对应一个文件。
6、文件系统的访问:
一步步往下寻找
7、几个命令:
Ln 硬链接是备份,软链接是快捷方式。
删除比复制要快,删除只是把节点删掉了。复制的话,还需要复制数据。不能给目录建立链接,只针对文件。因为硬链接指向数据的存储位置。
分区就是 在磁盘中划定 x---y 的范围。硬链接与数据必须位于同一个分区中。
Df命令:获取文件系统的信息
Du(disk xxx):输出某个目录或文件所占用的磁盘块数
几个文件系统简介:
一、UFS文件系统:
分区、格式化、建立挂载点、将分区挂到挂载点下
分区:
Format: 分区
分区的情况:
当没有分区的时候,我们可以p一下,进入到partition当中(分区的意思)
可以 键入? ,看看可以填什么。Cylinders 柱面。
注意柱面的序号,backup是备份的,不选。填完后q一下,退出,然后选择 label 进行写入到磁盘。
格式化区分:
Newfs /dev/rdsk/c1t0d0s3 默认为UFS文件系统。格式化的是一个裸设备
文件系统挂载: mount命令
将块设备和目录连接起来。可以挂载在空目录下,也可以再已经建立好的目录下进行挂载。
是文件系统的话,默认有一个lost+found 文件。且此文件下没有file1了,隐藏了。我们可以umount。
当然,这些挂载都是暂时的,我们需要写入到 /etc/vfstab 中,才可以永久存在。Vfs virtual file system。
fstype 根先启动,不是由fs操作的,mount at boot 是否开机自动挂载。 fsck pass 1 表示串行检查,2表示并行检查。
当挂载成功的时候,我们只需要 mount /software 即可。因为它会自己加载刚刚更换的文件,/etc/vfstab 从这里面寻找路径。而不用像前面一样。
停止进程访问文件系统
以下是正规关闭进程的方式,kill容易造成系统死机。 fuser VS Kill
fuser 查看有谁在使用这个文件。 Fuser -c - k /software 就是把有人用的进程id给干掉。
文件系统维护
文件系统空间的扩充
清除系统日志文件
减少小文件的使用,节点数有限。增加文件系统i节点的数目。压缩不常用的文件。
UFS文件系统不能在线扩充,只能增加某一个分区的大小。(其实是通过换更大硬盘的方式实现的) AIS支持。ZFS也支持。
二、ZFS文件系统
AIX\linux下面: 物理卷可以直接增加,卷组也随之扩大。一袋面粉与一笼包子的关系。
而对于ZFS文件系统来说,我们通过存储池来实现,比上面这种方式管理起来更加方便。而且具有自动回收资源的机制。
ZFS是一个128位文件系统,通过存储池的方式来管理。(资源池)
分层方式来管理,创建快照等。文件系统开销低,等效于管理一个目录。
在创建文件时,ZFS会被占用,而创建文件系统的时候,反而不占用。也就是说不分配空间。而且,spool有资源回收的作用。类似于java里面的资源回收机制。
创建文件系统的步骤:
- 建立zpool池
- 在池中建立文件系统
Zfs备份与恢复
利用 Zfs send /receive 命令来实现
步骤:
- 建立文件系统快照
- 为快照备份
- 删除原有文件系统
- 利用备份的文件恢复原有的文件系统
Zfs不用来mount,不需要管理,会自动挂载。
Zpool add + ZFS池+磁盘,这样可以添加磁盘。
Zpool status,查看状态。
删除比较麻烦, zpool remove testpool c1t3d0 这样不行。
检查zpool scrub testpool 检查池 。
三、Swap交换分区
在windows里面叫做虚拟内存。为了给有限的内存提供更大的空间,内存将不是激活态的程序放入到磁盘中,那么磁盘中的这一部分叫做swap交换分区。当此程序变成激活态时,会从磁盘进入到内存。类似于缓存的东西。一般为内存的 1.5—2倍。需要最大可能的分步在多个磁盘上。如果放在某一个盘上的话,导致某一个磁盘负载比较大,所以,一般放到多个磁盘上,保存负载均衡。
常用命令:
Swap –l 查看swap分区情况
Vmstat report virtual memory statisics
回收 –d 即可。修改 /etc/vfstab 就是把刚刚添加的记录给删除掉即可。
注意:前几天遇到一个问题,多硬盘挂载到vmware下,机子无法进入到图形界面,针对这个问题,有以下解决方案供参考:
http://blog.chinaunix.net/uid-23964952-id-981704.html svc:/system/filesystem/local maintenance 解决思路