|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
2 \* B1 {) Q, j对于新手学习,mount 命令,一定会有很多疑问。其实我想疑问来源更多的是对linux系统本身特殊性了解问题。 linux是基于文件系统,所有的设备都会对应于:/dev/下面的设备。如:
; ~) D/ ^8 [" _ a$ i# J
9 M4 b5 v( V3 t- [chengmo@centos5 dev]$ ls | grep -E "^(sd|hd)"
- hdc
- sda
- sda1
- sda2
- sdb
- sdb1
- sd*代表scic硬盘
( V$ c. B. G' Y: N) n
' M' z. H5 r5 l: {/ s- d7 d0 ~ K
# f3 ~/ c8 h) Z因此,需要进行设备访问时候,我们需要进行系统挂载(mount). 那么mount到底能够挂载那些设备呢。 我们可以看一下。: ]9 z8 r2 w- F# }
+ s; Z c1 d1 {, |1 m( n一、mount可以用来挂载什么:- Z1 ?+ c u( q2 d" e! a' u$ Z" X& I
4 a9 C+ g8 ?9 [. S5 k9 P
不同的操作系统使用不同的文件系统格式。MS-DOS支持FAT16文件系统,Windows98支持FAT16、FAT32文件系统,WindowsNT支持FAT16、NTFS文件系统,Windows2000则支持FAT16、FAT32、NTFS三种文件系统格式,现在的xp可以支持FAT32,NTFS,现在最新版本的windows 7 引入了新的WinFS文件系统。 而 Linux差不多支持所有的文件系统格式,但一般使用ext2或ext3文件系统。很多用户使用的是windows操作系统,如果想在运行的Linux下访问其它文件系统中的资源的话,就要用Linux mount命令来实现。
# f) Q$ k) P; k8 @/ F0 Q* D1 s- a' |/ C) Y2 @1 t% \- q
4 Q. s* P7 D! U8 }- `- x
二、mount使用格式:
i2 I2 J' H: w4 P
6 C) x4 @) e% E; f$ ]4 Bmount命令[-参数] [设备名称] [挂载点]( f, y4 j3 m4 e" Y: R1 Q
& B& a, j% R% y9 i说明:3 k5 l) l' a2 `- R
4 J2 t3 ?( W+ M/ y# G8 T2 G: w
[挂载点]必须是一个已经存在的目录,这个目录可以不为空,但挂载后这个目录下以前的内容将不可用,umount以后会恢复正常。
0 p3 u) H# K0 f/ y
) E0 S( u, ?3 \8 z; `) B9 R! F4 V1 d[设备名称] 可以是一个分区,一个usb设备,光驱,软盘,网络共享等。
4 n0 `) K4 R6 ~0 G- V
' A' l! K0 _" J9 U常见参数说明: | Mount 挂载文件系统使用帮助 | | 参数 | 说明 | | 常见参数: | | -t vfstype | 挂载指定的设备类型:adfs, affs, autofs, coda, coherent, cramfs, devpts, efs, ext, ext2, ext3, hfs, hpfs, iso9660, jfs, minix, msdos, ncpfs, nfs, nfs4, ntfs, proc, qnx4, ramfs, reiseRFs, romfs, smbfs, sysv, tmpfs, udf, ufs, umsdos, vfat, xenix, xfs, xiafs / @4 Z; ?7 W" t5 p
一般文件类型,可以不需要指定就可以有相同自动检测(adfs, bfs, cramfs, ext, ext2, ext3, hfs, hpfs, iso9660, jfs, minix, ntfs, qnx4, reiserfs, romfs, udf, ufs, vxfs, xfs, xiafs 等文件系统),如果探测失败,就将访问/etc/filesystems ,以指定文件系统探测。说明:如果清楚文件系统,最好指定具体类型。探测错误将带来灾难性的。 多个文件系统可以用“,”分割开来
& M( d' B$ q: V) A8 Omount -a -t nomsdos,ext 8 V6 [' g4 |! z9 Z4 X3 ]
将挂载fstab文件指定所有的文件系统,除了类型为 msdos 和 ext 的那一些。 $ w: T( i5 G; B9 M* O
常见文件类型 - ext2 linux目前常用的文件系统
- msdos MS-DOS的fat,就是fat16 vfat
- windows98常用的fat32
- nfs 网络文件系统
- smbfs windows共享系统
- iso9660 CD-ROM光盘标准文件系统
- ntfs windows NT/2000/XP的文件系统
- auto 自动检测文件系统
5 `( S3 W0 `! K2 Y
| | -o options | 指定挂载系统选项:多个选项可以用","分割.某些选项只有在出现在文件 /etc/fstab 中时才有意义。下列选项可以用于任何要挂载的文件系统(但是并非所有文件系统都关心它们,例如,选项 sync 在今天只对 ext2,ext3 和 ufs 有效) ' | Z9 T2 [$ t: d9 ^: G% v
| 选项 | 说明 | | async | 所有对文件系统的 I/O 操作都必须是异步完成的。 | | atime | 每次存取时更新 inode 存取时间。这是默认选项。 | | auto | 可以在使用 -a 选项时被挂载。 | | defaults | 包含以下选项:rw, suid, dev, exec, auto, nouser,async. | | dev | 解析文件系统中的字符设备或块设备。 | | exec | 允许执行二进制文件 | | _netdev | 文件系统居于需要网络连接的设备上,避免断网下,不断挂载耗资源 | | noatime | 不更新文件系统的inode存取时间(提升新闻服务器的速度) | | noauto | 只能被显式地挂载,-a不能使它挂载 | | nodev | 不解析文件系统中的字符设备或块设备 | | noexec | 不允许执行被加载的文件系统中的任何二进制文件 | | nosuid | 不允许set-user-identifier 或set-group-identifier位起作用 | | nouser | 禁止普通的挂载文件系统(默认) | | remount | 试图重新挂载一个已经挂载的文件系统。通常用来改变挂载标记,如由只读挂载改成可读写的。 | | ro | 以只读方式挂载 | | rw | 以读写方式挂载 | | suid | 允许set-user-identifier 或set-group-identifier位起作用 | | sync | 以同步方式进行I/O操作,突然断电不会掉资料,但加重磁盘负担 | | dirsync | 所有对文件系统内目录的更新应当是同步完成的,影响下列系统调用:creat,link, unlink, symlink, mkdir, rmdir, mknod 以及 rename | | user | 允许普通的用户挂载文件系统,挂载者的用户名被写入mtab,从而使他可以再次卸载文件系统。这个选项暗含了选项noexec,nosuid, 以及 nodev. | | users | 允许每个用户挂载卸载文件系统 | | codepage | codepage=XXX代码页 | | iocharset | iocharset=XXX 字符集 | | loop | 挂载回旋设备 经常挂载iso文件用到 | | username | username=user 访问设备的用户名 | | password | password=pass 访问设备的密码 | | 以下参数只对特殊文件系统有用: | | uid/gid | uid=value 和 gid=value 以特殊用户及组 挂载系统 | | ownmask | ownmask=value owner权限的权限掩码 | | othmask | othmask=value othmask权限的权限掩码 | | 不同文件系统所支持的属性不一定系统。可以查找相关资料 |
' P. }4 o. d/ i2 u, ]$ r | | -a | 搜索/etc/fstab文件中满足条件的文件系统,进行挂载操作。4 p! Z+ v! l) v! y, i! c) D) d! Z
格式: mount -a -t type -o options 不需要指定设备/目录 | | -f | 测试mount系统,只检查设备和目录,并不真正挂载文件系统 | | -n | 不把挂载的记录,记录在/etc/mtab 文件中 | | -r | 将文件系统安装为只读,同(-o ro) | | -w | 将文件系统安装为可读写,同(-o rw) | | -L label | 挂载具有指定卷标 label 的分区 | | -w | 将文件系统安装为可读写,同(-o rw) | | -v | 显示详细的挂载进度 | | -l | 列出所有已经挂载的文件系统列表 | | 其它参数: | | --bind | 将文件层次的一部分重新挂载到其他地方.只挂接单一的文件系统,如果目录有其它文件系统,将不能挂载。如果需要都挂载,可以用:--rbind 参数。 : J% ?6 ?' r* y& Z6 S% w
mount --bind olddir newdir 2个目录可以访问系统内容 | | --move | 将一个目录移到另外地方,mount --move olddir newdir | | -h | 显示帮助 | | -V | 显示版本 |
V7 u& }5 B! l1 o9 U: d
0 T* ]# c4 l' B: `1 O
4 l: z# I8 y# N o9 }9 H8 J三、常见分区加载方法:, f3 ^, T7 S6 x+ k' v2 A3 f
1 w7 ?6 [# m3 Z5 a+ `' l- mount挂载iso文件:
7 T; y, j) u0 l4 \& v' W : Z0 W0 V' J0 H
7 V! z: R8 `9 \1 c5 D#mkdir /mnt/iso1
( N# l8 M- ~: \% V' t$ I { Q5 Z, Y2 F7 A; B3 v
#mount –o loop linuxsetup.iso /mnt/iso1
3 l& x: p, h% r! t( ~ O3 u7 S8 R: I) s; l
在linux 不需要虚拟光驱,就可以直接读取iso文件了。
! m6 z, c! c' |: a; t) i9 N1 x6 Z, A1 p; c; n
- mount挂载光驱系统
+ P( E2 z- ?7 Q D6 ~; r 8 o# _3 O! c$ K& x( X" ^# C
一般来说CDROM的设备文件是/dev/hdc,使用方法:2 S F$ j2 {; D. r# ~# \% h
! D) n# p/ j9 X
#mkdir /mnt/cdrom
. l+ ^* t& w- Z
3 [- q3 U# s) h6 F1 r0 F#mount /dev/hdc /mnt/cdrom –o iocharset=cp936
. A F8 d, P# Q% y2 u" e, Q6 G" Z- u `* w1 F5 T2 }
默认不指定光驱系统,可以自动搜索得到,将编码指定为中文
2 t+ e$ N0 L9 g6 M2 L! s% F
, q2 {* z7 z3 m! R* c- mount挂载软驱! X7 |/ K7 J1 {& ]
( o! R Z1 ?5 \& E; A: I
1 B7 ?$ |7 v+ ?+ T6 k0 ?5 \8 ?8 F# mkdir /mnt/floppy- U" A( Z7 F r
- G6 C2 W4 L5 k7 n2 J
# mount /dev/fd0 /mnt/floppy1 T3 x! y+ L* r0 @9 p. I6 F. O
z2 `( U j4 t$ M默认不指定文件系统,可以自动搜索得到
2 I" T4 L3 C7 O" @5 p" R# Y0 l2 i0 F5 ~" i. s
- mount挂载windows共享文件(samba)7 l4 E7 m( `2 S5 S( F
* [( j) c) F8 h( s
& O6 \, k$ k) `6 |. x) h) q
#mkdir /mnt/winshare) {: B; \7 n0 I7 S+ y- A/ H
: O" R) z# ]0 P1 l
#mount -t smbfs -o username=w,password=w,codepage=936,iocharset=gb2312 //192.168.0.101/share /mnt/winshare
# h+ @, e/ ?5 j! ]
7 v5 D, i7 h1 U指定访问共享的用户名,密码,codepage指定编码与iocharset同意义。这里的windows 系统是中文简体。
r) q* A; ]$ n- S i% ~$ b1 k# Q( }3 B5 Z2 W+ b9 N
codepage指定文件系统的代码页,简体中文中文代码是936;iocharset指定字符集,简体中文一般用cp936或gb2312
2 _8 |; `6 K7 N- S- H0 j8 u
! E1 N7 y. Y8 w- mount挂载u盘+ J$ I2 V0 {7 P' X
8 {5 {( @6 K1 v: m" T
) t! \6 K7 M, i/ N% D5 I# o/ Y1 k如果计算机没有其它SCSI设备和usb外设的情况下,插入的U盘的设备路径是 /dev/sda1,用命令:6 C: o) O9 l B" c
9 n( A/ }' `. H3 n' w% \% [
#mkdir /mnt/upan* p( V, {' U+ M& v' U* y: J1 @
2 f* D1 I1 t9 Z" ?5 Z' L; x1 {$ a, [" v
#mount /dev/sda1 /mnt/upan
' T, t3 p; m( V8 ?
& ^9 u2 \# F9 h/ v挂载即可。+ c' X; A$ u8 r8 ?8 Z: P
# S7 U, d$ u, J3 I- mount挂载nfs系统, e% j& u& [) j2 T; v7 ~: c7 N
" m; \9 b+ o" X* i
8 l$ t- _( i* B3 G$ d' `( y与windows共享连接差不多。需要正确配置服务端的nfs服务。然后通过客户端的:showmount -e 192.168.0.30 可以查看连接。1 E0 `6 w6 e; \6 ]* I) s
7 x! ?2 t6 M6 @
mount -t nfs 192.168.0.30:/tmp /mnt/nfs9 w1 D2 }7 t9 M6 B
& t2 M, b( j- @. c8 w
- umount卸载文件系统
+ V" ~' o) P r$ U3 H; }- _+ l 2 o6 G$ ~, `8 L- z7 \7 A6 l
2 W5 ~( e: N$ A7 C; c v/ fumount dir. R$ B/ d6 \& _3 G& h |0 C, ]
( U$ I: m1 r; ~) V% F
如上面: umout /mnt/upan或者umount /dev/sda1
9 ?9 l4 m Z; _' k4 }/ b) o" c6 C) A
V. R; N' P: u. Z% Q p
以上是mount命令使用介绍。其中-o参数最为复杂。 每个不同文件系统所支持参数可能各不相同。如果遇到特殊文件系统。建议查阅相关资料。下一节将说下,与mount 相关的文件:fstab格式。: T* R+ `8 C* R& \
|
|