挂载怎么理解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了挂载怎么理解相关的知识,希望对你有一定的参考价值。
挂载(mounting)是指由操作系统使一个存储设备(诸如硬盘、CD-ROM或共享资源)上的计算机文件和目录可供用户通过计算机的文件系统访问的一个过程。一般来说,当计算机关机时,每个已挂载存储都将经历一次卸载,以确保所有排队的数据被写入,并保证介质上文件系统结构的完整性。
中文名
挂载
属于
挂载通常是指给磁盘分区
访问
存储设备中的文件
通过
访问这个目录来访问存储设备。
在windows操作系统中,
挂载通常是指给磁盘分区(包括被虚拟出来的磁盘分区)分配一个盘符。
这个操作可以通过“计算机管理”中的“磁盘管理”来进行。
第三方软件,如磁盘分区管理软件、虚拟磁盘软件等,通常也附带挂载功能。
在linux操作系统中,
挂载是一个非常重要的功能,使用非常频繁。
它指将一个设备(通常是存储设备)挂接到一个已存在的目录上。
(这个目录可以不为空,但挂载后这个目录下以前的内容将不可用。)
需要理解的是,
linux操作系统将所有的设备都看作文件,
它将整个计算机的资源都整合成一个大的文件目录。
我们要访问存储设备中的文件,必须将文件所在的分区挂载到一个已存在的目录上,
然后通过访问这个目录来访问存储设备。
linux指南
挂载条件
1、挂载点必须是一个目录。
2、一个分区挂载在一个已存在的目录上,这个目录可以不为空,但挂载后这个目录下以前的内容将不可用。对于其他操作系统建立的文件系统的挂载也是这样。
系统格式
需要理解的是:光盘、软盘、其他操作系统使用的文件系统的格式与linux使用的文件系统格式是不一样的。光盘是ISO9660;软盘是fat16或ext2;
windows NT是fat16、NTFS;
windows98是fat16、fat32;
windows2000和windowsXP是fat16、fat32、NTFS。
挂载前要了解linux是否支持所要挂载的文件系统格式。
挂载命令
挂载时使用mount命令:
格式:mount [-参数] [设备名称] [挂载点]
其中常用的参数有:
-t<文件系统类型> 指定设备的文件系统类型,
常见的有: minix linux最早使用的文件系统
ext2 linux常用的文件系统
msdos MS-DOS的fat,就是fat16
vfat windows98常用的fat32
nfs 网络文件系统
iso9660 CD-ROM光盘标准文件系统
ntfs windows NT 2000的文件系统
hpfs OS/2文件系统
auto 自动检测文件系统
-o<选项> 指定挂载文件系统时的选项。有些也可用在/etc/fstab中。
常用的有 codepage=XXX 代码页 iocharset=XXX 字符集 ro 以只读方式挂载 参考技术A 挂载:
Liunx采用树形的文件管理系统,也就是在Linux系统中,可以说已经没有分区的概念了。分区在Linux和其他设备一样都只是一个文件。要使用一个分区必须把它加载到文件系统中。这可能难于理解,继续往下看。
Linux中树形的文件结构,最顶层是/ 目录。在安装系统时,你必须选择把一个主分区挂载在/ 目录下,因为系统需要安装在/挂载的主分区下。否则系统会提示你。这里又一次提到了挂载。所以挂载就是把目录和分区连接起来,和上面说的WINDOWS下的映射关系是一样的。不同的是WINDOWS是把分区映射到一个盘符,而LINUX下是映射到一个目录。 这是理解他们不同最重要的地方,而导致不同的是因为文件系统结构不同。
上面说了Linux的文件系统是树形的,安装的系统必须是在/ 目录下,因为/目录下挂载了一个主分区。/目录是树形的根,其他所有目录都是他的子节点。 我们安装系统的时候已经把分区1挂载到 / 目录下了. 而这个时候没有挂载其他任何分区,所以/ 目录下的所有其他目录都在这个分区下,也就是说,我在任何目录下读写操作实际都是操作的这个1号分区。如果我们想使用其他分区,就必须把这个分区挂载到一个目录下,这个目录可以是已经存在的目录,比如/home,也可以是我们自己建立的目录,比如/oracle。当然有些目录比如/lib, /dev, /etc, /usr这些都不能挂载其他分区,因为他们都存放着系统需要的文件,一旦被挂载其他分区,那没OS就无法找到所需的文件,系统就会崩溃。比如我们把分区2挂载到/usr/X11目录下时,系统就无法通过X11目录找到分区1上的文件,这个时候系统图形界面就无法使用了. 虽然文件还在硬盘上。前面说过,目录 --- 分区 是通过挂载吧他们联系起来。你更换了分区,也就破坏了联系,就无法在找到之前的文件了。我们在看分区5和分区6,我们把它挂载到/home/ftp 和 /oracle目录下,这个时候我们在操作这2个目录是,就是操作对用的分区了.
而WINDOWS就没这么复杂,她不是采用树形的结构,每个分区对应一个盘符,一旦建立映射关系就无法在修改。实际上,LINUX的每个挂载了分区的目录就相当于WINDOWS系统中的盘符,比如上面的,/home/ftp 和 /oracle目录我们就可以把她看做一个盘符和一个分区关联,只是因为LINUX文件系统,使得她更加灵活,所以也更复杂和难以理解。
df 命令可以查看分区挂载情况, fdisk 命令可以查看系统分区情况。
LINUX下所有设备都被认为是文件,而/dev目录存放所有系统设备文件的,而一个分区就是一个文件,名字就是分区的名字.
1、通过mount挂载文件 来挂载磁盘分区(或存储设备)
mount挂载文件 [-t 文件系统 ] [-o 选项] 设备 目录
-t 通过这个参数,我们来指定文件系统的类型,一般的情况下不必指定有时也能识别
-o 这个选项,主要选项有权限、用户、磁盘限额、语言编码等
设备 指存储设备,比如/dev/hda1, /dev/sda1 ,cdrom 等...至于您的系统中有哪些存储设备,主要通过 fdisk -l 或者查看 /etc/fstab 或 dmesg ;一般的情况下光驱设备是/dev/cdrom ;软驱设备是/dev/fd0 ;硬盘及移动硬盘以 fdisk -l 的输出为准;
1)对光驱和软驱的挂载;
我们先建一个目录,然后执行Linux mount挂载文件 命令,这样cdrom 就挂在 /mnt/cdrom 中了;我们就可以在/mnt/cdrom 中查看光盘中资料和文件;这个目录您想怎么建就怎么建。用什么目录不是最重要的。重要的是您知道自己在做什么就行了。比如我们也可以把这个目录建成 dvdrom ;然后用 Linux mount挂载文件 /dev/cdrom /mnt/dvdrom 来挂载;
2)挂载硬盘和移动硬盘的文件系统;
一个分区只有创建了文件系统后才能使用,前面我们说过了,我们在Linux大多用的是ext2 、ext3、reiserfs、fat32、msdos 、ntfs等;
[1]挂载Linux文件系统;
首先我们得建一个文件系统挂载的目录;我们前面已经提到了;一个有文件系统的分区要挂到系统中,必须要有一个挂载点;这个挂载点就是一个目录;比如我们通过fdisk -l 得知hda5 是Linux分区,并且创建了文件系统,比如是reiserfs 文件系统吧;
步骤:
先创建一个挂载目录;比如/mnt/hda5
设置/mnt/hda5的权限为任何用户可写可读可执行;这样所有的用户都能在写入;
通过-t reiserfs 来指定/dev/hda5是reiserfs 文件系统, 并且挂载到/mnt/hda5目录;
假如我们不知道hda5上reiserfs 文件系统,我们可以用 -t auto 让系统定夺,然后挂载到/mnt/hda5
不加任何参数,直接 Linux mount挂载文件 /dev/hda5 到/mnt/hda5;系统自动判断分区文件系统;
通过df -lh 来查看是不是被挂载了; 参考技术B 挂载(mounting)是指由操作系统使一个存储设备(诸如硬盘、CD-ROM或共享资源)上的计算机文件和目录可供用户通过计算机的文件系统访问的一个过程。
一般来说,当计算机关机时,每个已挂载存储都将经历一次卸载,以确保所有排队的数据被写入,并保证介质上文件系统结构的完整性。
中文名
挂载
属于
挂载通常是指给磁盘分区
访问
存储设备中的文件
通过
访问这个目录来访问存储设备。
快速
导航
linux指南
中文支持
自动挂载
挂载ISO
挂载概念
在windows操作系统中,
挂载通常是指给磁盘分区(包括被虚拟出来的磁盘分区)分配一个盘符。
这个操作可以通过“计算机管理”中的“磁盘管理”来进行。
第三方软件,如磁盘分区管理软件、虚拟磁盘软件等,通常也附带挂载功能。
在linux操作系统中,
挂载是一个非常重要的功能,使用非常频繁。
它指将一个设备(通常是存储设备)挂接到一个已存在的目录上。
(这个目录可以不为空,但挂载后这个目录下以前的内容将不可用。)
需要理解的是,
linux操作系统将所有的设备都看作文件,
它将整个计算机的资源都整合成一个大的文件目录。
我们要访问存储设备中的文件,必须将文件所在的分区挂载到一个已存在的目录上,
然后通过访问这个目录来访问存储设备。
linux指南
挂载条件
1、挂载点必须是一个目录。
2、一个分区挂载在一个已存在的目录上,这个目录可以不为空,但挂载后这个目录下以前的内容将不可用。对于其他操作系统建立的文件系统的挂载也是这样。
系统格式
需要理解的是:光盘、软盘、其他操作系统使用的文件系统的格式与linux使用的文件系统格式是不一样的。光盘是ISO9660;软盘是fat16或ext2;
windows NT是fat16、NTFS;
windows98是fat16、fat32;
windows2000和windowsXP是fat16、fat32、NTFS。
挂载前要了解linux是否支持所要挂载的文件系统格式。
挂载命令
挂载时使用mount命令:
格式:mount [-参数] [设备名称] [挂载点]
其中常用的参数有:
-t<文件系统类型> 指定设备的文件系统类型,
常见的有: minix linux最早使用的文件系统
ext2 linux常用的文件系统
msdos MS-DOS的fat,就是fat16
vfat windows98常用的fat32
nfs 网络文件系统
iso9660 CD-ROM光盘标准文件系统
ntfs windows NT 2000的文件系统
hpfs OS/2文件系统
auto 自动检测文件系统
-o<选项> 指定挂载文件系统时的选项。有些也可用在/etc/fstab中。 参考技术C “在windows操作系统中, 挂载通常是指给磁盘分区(包括被虚拟出来的磁盘分区)分配一个盘符。 第三方软件,如磁盘分区管理软件、虚拟磁盘软件等,通常也附带挂载功能。 在linux操作系统中, 挂载是指将一个设备(通常是存储设备)挂接到一个已存在的目录上.
linux 挂载
关于挂载WINDOWS分区
因为要用wine装QQ,而一些教程里面说的一个步骤就是:将你的Windows所在的分区加载到某个目录。 对于这一点我不太理解
我的硬盘160G 分五个区 c,d,e,f,g 其中G盘用wubi装了ubuntu。。。
在ubuntu下 执行fdisk -1 得到提示如下:
fdisk: invalid option -- 1
Usage: fdisk [-b SSZ] [-u] DISK Change partition table
fdisk -l [-b SSZ] [-u] DISK List partition table(s)
fdisk -s PARTITION Give partition size(s) in blocks
fdisk -v Give fdisk version
Here DISK is something like /dev/hdb or /dev/sda
and PARTITION is something like /dev/hda7
-u: give Start and End in sector (instead of cylinder) units
-b 2048: (for certain MO disks) use 2048-byte sectors
哪个达人帮我分析一下 ,谢谢了
这个是df-h之后的内容
文件系统 容量 已用 可用 已用% 挂载点
/host/ubuntu/disks/root.disk
12G 3.1G 7.9G 28% /
varrun 252M 88K 252M 1% /var/run
varlock 252M 0 252M 0% /var/lock
udev 252M 80K 252M 1% /dev
devshm 252M 0 252M 0% /dev/shm
lrm 252M 34M 218M 14% /lib/modules/2.6.22-14-generic/volatile
/host/ubuntu/disks/home.disk
1.9G 167M 1.6G 10% /home
1、挂载点必须是一个目录。
2、一个分区挂载在一个已存在的目录上,这个目录可以不为空,但挂载后这个目录下以前的内
容将不可用。
对于其他操作系统建立的文件系统的挂载也是这样。但是需要理解的是:光盘、软盘、其他操作
系统使用的文件系统的格式与linux使用的文件系统格式是不一样的。光盘是ISO9660;软盘是
fat16或ext2;windows NT是fat16、NTFS;windows98是fat16、fat32;windows2000和
windowsXP是fat16、fat32、NTFS。挂载前要了解linux是否支持所要挂载的文件系统格式。
挂载时使用mount命令:
格式:mount [-参数] [设备名称] [挂载点]
其中常用的参数有
-t<文件系统类型> 指定设备的文件系统类型,常见的有:
minix linux最早使用的文件系统
ext2 linux目前常用的文件系统
msdos MS-DOS的fat,就是fat16
vfat windows98常用的fat32
nfs 网络文件系统
iso9660 CD-ROM光盘标准文件系统
ntfs windows NT 2000的文件系统
hpfs OS/2文件系统
auto 自动检测文件系统
-o<选项> 指定挂载文件系统时的选项。有些也可用在/etc/fstab中。常用的有
codepage=XXX 代码页
iocharset=XXX 字符集
ro 以只读方式挂载
rw 以读写方式挂载
nouser 使一般用户无法挂载
user 可以让一般用户挂载设备
提醒一下,mount命令没有建立挂载点的功能,因此你应该确保执行mount命令时,挂载点已经存
在。(不懂?说白了点就是你要把文件系统挂载到哪,首先要先建上个目录。这样OK?)
例子:windows98装在hda1分区,同时计算机上还有软盘和光盘需要挂载。
# mk /mnt/winc
# mk /mnt/floppy
# mk /mnt/cdrom
# mount -t vfat /dev/hda1 /mnt/winc
# mount -t msdos /dev/fd0 /mnt/floppy
# mount -t iso9660 /dev/cdrom /mnt/cdrom
现在就可以进入/mnt/winc等目录读写这些文件系统了。
要保证最后两行的命令不出错,要确保软驱和光驱里有盘。(要是硬盘的磁盘片也可以经常随时
更换的话,我想就不会犯这样的错误了 :-> )
如果你的windows98目录里有中文文件名,使用上面的命令挂载后,显示的是一堆乱码。这就要
用到 -o 参数里的codepage iocharset选项。codepage指定文件系统的代码页,简体中文中文代
码是936;iocharset指定字符集,简体中文一般用cp936或gb2312。
当挂载的文件系统linux不支持时,mount一定报错,如windows2000的ntfs文件系统。可以重新
编译linux内核以获得对该文件系统的支持。关于重新编译linux内核,就不在这里说了。
四 、自动挂载
每次开机访问windows分区都要运行mount命令显然太烦琐,为什么访问其他的linux分区不用使
用mount命令呢?
其实,每次开机时,linux自动将需要挂载的linux分区挂载上了。那么我们是不是可以设定让
linux在启动的时候也挂载我们希望挂载的分区,如windows分区,以实现文件系统的自动挂载呢
?
这是完全可以的。在/etc目录下有个fstab文件,它里面列出了linux开机时自动挂载的文件系统
的列表。我的/etc/fstab文件如下:
/dev/hda2 / ext3 defaults 1 1
/dev/hda1 /boot ext3 defaults 1 2
none /dev/pts devpts gid=5,mode=620 0 0
none /proc proc defaults 0 0
none /dev/shm tmpfs defaults 0 0
/dev/hda3 swap swap defaults 0 0
/dev/cdrom /mnt/cdrom iso9660 noauto,codepage=936,iocharset=gb2312 0 0
/dev/fd0 /mnt/floppy auto noauto,owner,kudzu 0 0
/dev/hdb1 /mnt/winc vfat defaults,codepage=936,iocharset=cp936 0 0
/dev/hda5 /mnt/wind vfat defaults,codepage=936,iocharset=cp936 0 0
在/etc/fstab文件里,第一列是挂载的文件系统的设备名,第二列是挂载点,第三列是挂载的文
件系统类型,第四列是挂载的选项,选项间用逗号分隔。第五六列不知道是什么意思,还望高手
指点。
在最后两行是我手工添加的windows下的C;D盘,加了codepage=936和iocharset=cp936参数以支
持中文文件名。参数defaults实际上包含了一组默认参数:
rw 以可读写模式挂载
suid 开启用户ID和群组ID设置位
dev 可解读文件系统上的字符或区块设备
exec 可执行二进制文件
auto 自动挂载
nouser 使一般用户无法挂载
async 以非同步方式执行文件系统的输入输出操作
大家可以看到在这个列表里,光驱和软驱是不自动挂载的,参数设置为noauto。(如果你非要设
成自动挂载,你要确保每次开机时你的光驱和软驱里都要有盘,呵呵。)
参考资料:http://zhidao.baidu.com/question/10600420.html?si=2
参考技术A 你的硬盘是sata接口的吧?你贴的信息里面,fdisk用得不对。
fdisk -l /dev/sda,把信息贴出来
短横后面的参数是小写的L,不是数字1
IDE的话不是sda,你
df -h
一下,把输出贴出来本回答被提问者采纳
以上是关于挂载怎么理解的主要内容,如果未能解决你的问题,请参考以下文章