backup2007

导航

<2025年1月>
2930311234
567891011
12131415161718
19202122232425
2627282930311
2345678

统计

公告

@import url(http://www.blogjava.net/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);


常用链接

留言簿(1)

随笔分类

随笔档案

文章分类

文章档案

搜索

最新评论

阅读排行榜

评论排行榜

mount and umount [quote from ChinaUnix]

Moduel 4   Performing Mounts and Umounts
 
    Note – While system administrators typically use the /usr/sbin/mount
command, the system boot scripts use the /sbin/mount command.
 
     介绍/etc/vfstab文件:
 
        /etc/vfstab列出系统启动时自动mount的文件, 除/etc/mnttab和/var/run之外;
        /etc/vfstab文件分出七个区域:
            device to mount    被mount的设备和伪设备
            device to fsck     The raw or character device e.g. /dev/rdsk下的
                                对于伪设备如:/proc 或 fd 这项可写  -  
            mount point        mount 的路径
            FS type            文件系统类型
            fsck pass          指示在系统启动时是否fsck检测;0不检1表示fsck为系统正常启动运行
                                大于1时表示把此设备加入fsck运行列表,fsck可同时检测8个设备,
                                mountall命令忽略此项
            mount at boot       yes 要求启动时自动mount,no 则不
            
    Note – For / (root), /usr, and /var (if it is a separate file system) file
systems, the mount at boot field value is specified as no. The kernel
mounts these file systems as part of the boot sequence before the
mountall command is run. The mount command explicitly mounts the
file systems / (root) and /usr as specified in the
/etc/rcS.d/S30rootusr.sh script and the /var file system as specified
in the /etc/rcS.d/S70buildmnttab script.
 
            mount options        A comma-separated list of options passed to the
                                mount command. A dash (-) indicates the use of
                                default mount options.
 
 
    介绍/etc/mnttab文件:
        此文件是一个只读文件,当mount一项时,会在此文件中入一条,umount后也会在此文件中删除相应项;
 
        包括五项区域:
 
            mount point    挂接点    
            Device Name    设备名,块设备是文件系统的物理名称;
            Mount Options              文件系统上生效的挂载选项列表  
            dev=number                主从设备号
            Date and time mounted     mount的日期时间
 
 
    使用mount
        
        mount /dev/dsk/c#d#t#s# /mountpoint 
            不加参数时,使用以下默认属性:
 
            read/write     Indicates whether reads and writes are allowed on
                            the file system.
            setuid         Permits the execution of setuid programs in the
                            file system.
            intr/nointr     Allows and forbids keyboard interrupts to kill a
                            process that is waiting for an operation on a locked
                            file system.
            nologging       Indicates that logging is not enabled for the ufs file
                            system.
            largefiles      Allows for the creation of files larger than 2 Gbytes.
                            A file system mounted with this option can contain
                            files larger than 2 Gbytes.
            xattr           Supports extended attributes not found in
                            standard UNIX attributes.
            onerror=action     Specifies the action that the ufs file system should
                                take to recover from an internal inconsistency on a
                                file system. An action can be specified as:
                            panic—Causes a forced system shutdown. This is
                                    the default.
                            lock — Applies a file system lock to the file
                                    system.
                            umount — Forcibly unmounts the file system.
------------------------------------------------------------------------------
Note – Due to file system overhead, the largest file size that can be created
is approximately 866 Gbytes.
------------------------------------------------------------------------------
 
    使用mount命令的option
        Some options used to mount local file systems include: ro, nosetuid,
noatime, nolargefiles, and logging.
 
格式:    mount -o option,option,... device_name mount_point
    
        # mount -o ro /dev/dsk/c0t0d0s6 /usr        -------设成只读
        下面是使用多个参数,设成只读以及不允许执行setuid进程,但并不限制生成setuid
        # mount -o ro,nosuid /dev/dsk/c0t0d0s7 /export/home
        为提高磁盘访问性能,文件系统访问频繁,最后访问时间并不计较的可以
        # mount -o noatime /dev/dsk/c0t0d0s7 /export/home
        防止成生超过2G的文件,
        # mount -o nolargefiles /dev/dsk/c0t0d0s7 /export/home
        如果文件系统已经存在超过2G的大文件,mount会挫败,如果想成功mount,则必须删除相关大文件,
        并且删除后必须用fsck来更新超级块的信息,如果一次运行fsck还不能成功mount则必须用fsck
        来清除超级块的信息;
 
        使UFS文件系统写日志;
        # mount -o logging /dev/dsk/c0t0d0s7 /export/home
        
        存放日志文件的大小,大约是每1G分配1M的大小,最大不超过64M字节;
        当UFS日志达其最大时,它就开始将事务记录到文件系统中。文件系统被卸载时,整个UFS日志
        都被清空,所有事务都被写入文件系统。 
        UFS日志有两个好处。一,它文件系统的不一致性,也就不再需要长时间运行fsck扫描。
        二,可以跳过fsck扫描,这就减少了系统在被以非正常的关闭方法关闭时,重启的时间,
 
    使用mountall命令:
        mountall -l 只mount本地的所有文件系统;
        mountall命令读取/etc/vfstab文件内容,当device to fsck 项大于0时,fsck会检测文件系统是否完好,以致于安全挂接.当系统文件坏掉,fsck会试图修复,mountall会mount其它挂接点,和device to fsck 项等于0的挂接点.
 
    mount一个新的文件系统:
        八步:
        1.把硬盘放入服务器,
        2.重启或devfsadm让系统识别硬盘;
        3.format把硬盘分区;
        4.newfs在磁盘slice上生成新的文件系统;
        5.在/目录下用mkdir 生成一个新的挂接点;
        6.mount文件系统到挂接点;
        7.用mount命令查看是否mount成功;
        8.修改/etc/vfstab文件,让系统下次重启时自动加载;
 
    mount不同类型的文件系统:
        
        如果mount时没有以mount -F fstype指明的话,mount会以ufs来作为默认的类型,mount根据设备名, 块名,或挂接点来判断文件类型;
 
        mount 不能从/etc/vfstab的fs entry来判断,会以/etc/default/fs file 或
/etc/dfs/fstypes来决定文件的挂接类型,如果是本地文件系统则是/etc/default/fs 文件中一行
LOCAL=ufs  来确定挂接类型;
        如果是远程文件系统,则从/etc/dfs/fstypes第一行来确定
nfs NFS Utilities
autofs AUTOFS Utilities
cachefs CACHEFS Utilities
        
     Using the fstyp Command来查看文件类型:
 
        # fstyp /dev/rdsk/c0t0d0s7
        ufs
    指定一下hsfs文件系统:
        当volume manage停止时,用hsfs来指定一个cdrom
        # mount -F hsfs -o ro /dev/dsk/c0t6d0s0 /cdrom
    指定一个pcfs文件系统:
        当卷管理停止时,挂接一个驻留在diskette(软盘)的文件系统
        
        # mkdir /pcfs
        # mount -F pcfs /dev/diskette /pcfs
 
 
    执行umount命令:
        提示:在umount文件系统前,都是先从/etc/mnttab文件种删除相应行;
 
        从挂接点删除:
        #umount /export/home
        从逻辑硬件文件名删除:
        # umount /dev/dsk/c0t0d0s7
 
    执行umountall命令:
        /usr/sbin/umountall命令会在系统关闭或在命令输入umountall时读取/etc/mnttab文件,然后umount
    vfstab文件中除/ (root), /usr, /proc, /dev/fd, /var,/var/run, and /tmp.之外所有行;
        
        umount所有文件系统:
        #umountall 
        umount所有本地的文件系统:
        #umountall -l
 
    umountall状态为busy的系统:
        
        以下四种情况,文件系统都会显示:umount: file_system_name busy
 
        1 A program is accessing a file or directory in the file system
        2 A user is accessing a directory or file in the file system
        3 A program has a file open in that file system
        4 The file is being shared
 
        有两种方法解决:
        (1) 使用fuser命令来确认挂接点有那些进程在访问,然后杀掉
        (2) 用umount -f 强制umount;
 
        用fuser命令的四步:
        1.确认挂接点有那些进程需要杀掉
        #fuser -cu /mount_point 
        2.向进程发出SIGKILL信号:
        #fuser -ck /mount_point
        3.确认看是否还有进程在访问挂接点
        #fuser -c /mount_point
        4.umount挂接点
        #umount /mount_point
 
        umount -f 丢失数据,僵死进程,但比较适合远程共享时,远程没有响应. 
 

posted on 2007-09-02 13:40 backup2007 阅读(358) 评论(0)  编辑  收藏 所属分类: Linux


只有注册用户登录后才能发表评论。


网站导航: