linux 重新挂载需要先卸载再重新挂载,如果要一条命令可以通过&&符号将两个命令组合到一个命令里,例如:
umount -l /mnt/test && mount -o ro /dev/hda1 /mnt/test
linux中挂载命令是mount,卸载是umount,在命令行中使用&&可以将多条命令组合成一条命令并顺序执行,以达到快速执行的目的。
(1)linuxmount用户扩展阅读
linux挂载命令mount的用法介绍:
1、语法
mount [-fnrsvw] [-t vfstype] [-o options] device dir
2、参数说明:
-V:显示程序版本
-h:显示辅助讯息
-v:显示较讯息,通常和 -f 用来除错。
-a:将 /etc/fstab 中定义的所有档案系统挂上。
-F:这个命令通常和 -a 一起使用,它会为每一个 mount 的动作产生一个行程负责执行。在系统需要挂上大量 NFS 档案系统时可以加快挂上的动作。
-f:通常用在除错的用途。它会使 mount 并不执行实际挂上的动作,而是模拟整个挂上的过程。通常会和 -v 一起使用。
-n:一般而言,mount 在挂上后会在 /etc/mtab 中写入一笔资料。但在系统中没有可写入档案系统存在的情况下可以用这个选项取消这个动作。
‘贰’ Linux mount的用法
mount
-t
iso9660
/home/xxxx.iso
/mnt
-o
loop
这里假设ISO文件在/home目录下。
-t参数是指定文件系统的类型,光盘或光盘镜像是iso9660,fat32文件系统是vfat,fat16文件系统是msdos
xxx.iso指的是你的光盘镜像名称。
/mnt是你根目录下的/mnt目录,这个你也可以指定为其它目录。表示把镜像加载到这个目录。
-o用来描述设备或档案的挂接方式。
后面接loop是用来把一个文件当成硬盘分区挂接上系统。如接rw表示可以读写挂接后的设备。如接ro则是只读方式。
mount
挂载远程共享的用法;
mount
-t
smbfs
-o
codepage=cp936,username=用户名,password=密码
,
-l
//ip地址/共享文档夹名
挂载点
‘叁’ Linux系统如何让普通用户具有mount权限
更改devfs规则编辑/etc/devfs.conf,添加如下内容
让mount用户组具有mount权限:
own ad2s1|ad2s[5-9]|ad2s[1-9][0-9]{1,} root:mount
perm ad2s1|ad2s[5-9]|ad2s[1-9][0-9]{1,} 0660
建立mount用户组编辑/etc/group,添加如下内容:
mount:*:1000:username1,username2
设置mount命令的suid 具体操作如下:
sudo chmod 4710 /sbin/mount_msdosfs
sudo chown root:mount /sbin/mount_msdosfs
sudo chmod 4710 /sbin/mount_ntfs
sudo chown root:mount /sbin/mount_ntfs
sudo chmod 4710 /sbin/umount
sudo chown root:mount /sbin/umount
我最常用的就是mount_msdosfs和mount_ntfs了,当然你还可以设置其余的mount命令 。
k3b默认只允许root用户烧录,让普通用户也可以烧录的方法类似上面。
先建立一用户组,再更改devfs规则,让该用户组具有使用刻录机的权限,最后设置相关命令的suid即可。
‘肆’ linux下如何mount一块盘,然后让非root用户(比如oracle用户)可读写
#mkdir /mnt/adc
新建mount盘的目录,假定为adc
#mount /dev/hda2 /mnt/adc
mount硬盘的一个区(假定是hda2,可用fdisk -l /dev/hda 显示硬盘的分区情况 )
#cd /mnt
#chmod 777 adc
设定adc任何人可读写和执行的权限
---------
如果要使特定用户可读写
可将这个用户加入某个组(如user组),然后赋予这个组的权限就可以了
‘伍’ 在linux或unix下想执行mount/umount命令 必须是root用户吗
某些目录是busy状态,说明该目录你目前正在使用;只要一般用户具有root权限就可以执行,但不建议这么做。
‘陆’ linux下挂载磁盘的命令是什么
Linux系统在使用光盘、软盘或U盘时,必须先执行挂载(mount)命令。挂载命令会将这些存储介质指定成系统中的某个目录,以后直接访问相应目录即可读写存储介质上的数据。 x0dx0a1、挂载光盘,挂载光盘的命令如下:# mount -t is09660 /dev/cdrom /mnt/cdrom x0dx0a该命令将光盘挂载到/mnt/cdrom目录,使用“ls /mnt/cdrom”命令即可显示光盘中数据和文件。卸载光盘的命令如下:# umount /mnt/cdromx0dx0a2、挂载软盘,将软盘挂载到/mnt/floppy目录的命令如下:# mount /dev/fd0 /mnt/floppy卸载软盘的命令如下:#umount /mnt/floppyx0dx0a3、挂载U盘挂载U盘相对复杂一些。首先使用“fdisk -l”命令查看外挂闪存的设备号,一般为/dev/sda1。然后用“mkdir x0dx0a/mnt/usb”命令建立一个挂载U盘用的目录。之后使用如下命令挂载FAT格式的U盘:# mount -t msdos /dev/sda1 /mnt/usbx0dx0a使用如下命令挂载FAT32格式的U盘:# mount -t vfat /dev/sda1 /mnt/usbx0dx0a4、挂载外挂硬盘分区,挂载外挂硬盘分区(FAT32格式)同样需要先用“fdisk x0dx0a-1”查看外挂的硬盘分区设备号,假设为/dev/hda1。建立/mnt/vfat挂载目录后,使用如下命令进行挂载:# mount -t vfat /dev/hda1 /mnt/vfatx0dx0a注意,默认情况下Linux只允许root用户执行mount命令。如果想让一般用户也能挂载,并且希望在系统启动时自动挂载光盘或软盘,需要修改/etc/fstab配置文件,加入以下内容: LABEL=/ /ext3defaults11x0dx0a/dev/cdrom/mnt/cdrom iSo9660 auto,owner,kudzu,ro,user 00x0dx0a/dev/fdo/mnt/floppy autoauto,owner,kudzu,ro,user 00 其中,“user”表示将mount命令赋予一般用户使用。
‘柒’ linux挂载(mount)和取消挂载(umount)windows系统文件夹
1、windows系统中文件夹属性中设置文件共享
2、挂载,linux系统执行共享命令
注意:(使用mount挂载的方法在系统重新启动后就会失效)
usrname:访问共享文件夹的用户名
password:访问密码
ip:共享文件夹所在主机ip
sharename:共享文件夹目录名字
name:需要挂载的linux完整文件夹路径
cifs:Common Internet File System,可以理解为网络文件系统。
3、取消挂载
注意:
name:已经挂载的linux完整文件夹路径
如果umount的时候显示 device busy?
这是因为有程序正在访问这个设备,则可以用:
也可以使用命令ps aux 来查看占用设备的程序PID,然后用命令kill来杀死占用设备的进程,然后再取消挂载
‘捌’ linux mount的用法
在Linux下访问Windows分区
在Linux中,如果你要使用储存设备 (Mo、硬盘、光驱等) ,就得先将它挂上 (Mount),而当储存设备挂上了之后,就可以把它当成一个目录来进行访问。
挂上一个设备使用mount命令。
在使用mount这个指令时,至少要先知道下列三种信息:
1. 要Mount对象的文件系统类型? (File system type)
2. 要Mount对象的设备名称? (/dev/????)
3. 要将设备Mount到哪个目录去?
一、获得系统支持的文件系统类型
就第一点来说,用户可以执行
cat /proc/filesystems
来获得机器上支持的文件系统类型。如果系统并不支持你要挂接设备的文件系统类型,那你可能需要重新编译内核以使其增加对该种文件类型支持。关于如何编译
内核请参照LinuxAid在线培训栏目中的相关文章。
常用的文件系统有:
Win95/98常用的FAT 32文件系统 :vfat
Win NT用的文件系统 :ntfs
OS2用的文件系统 :hpfs
Linux用的文件系统 :ext2
Linux用的新文件系统 :ext3
光盘片用的文件系统 :iso9660
其中虽然vfat是指FAT 32系统,但事实上它也兼容FAT 16的文件系统类型。
二、确定设备的名称
在Linux中,设备名称通常都在/dev里。这些设备名称的命名都是有规则的,我们可以用 "推理 "的方式把设备名称找出来。
譬如说/dev/hda1这个IDE设备。hd是Hard Disk(硬盘)的意思,sd是SCSI Device,fd是Floppy Device(或是Floppy Disk?)。a则是代表第一个设备,
通常IDE接口可以接上四个IDE设备(例如四块硬盘)。所以要识别IDE硬盘的方法分别就
是:hda、hdb、hdc、hdd。此外,hda1中的 "1 "代表hda的第一个硬盘分区
(partition),hda2代表hda的第二个分割区,依此类推。
此外,你可以直接检查/var/log/messages这个文件,在该文件中可以找到计算机开机后,系统已辨认出来的设备代号。
三、查找挂接点
最后我们要决定将设备挂接到哪里,先查看一下你的计算机是不是有个/mnt的空目录?该目录就是专门用来当作挂载点(Mount Point)的目录。建议您在
/mnt里多建这几个目录:/mnt/cdrom、/mnt/floppy、/mnt/mo等来当作目录的专用挂载点。
举例而言,如要挂载下列五个设备的话,其执行指令可能是 (假设都是Linux
的ext2系统,如果是Win XX的话,请将ext2改成vfat):
1. 软盘 ===> mount -t ext2 /dev/fd0 /mnt/floppy
2. MO ===> mount -t ext2 /dev/sda /mnt/mo
3. cdrom ===> mount -t ext2 /dev/hdc /mnt/cdrom
4. SCSI cdrom ===> mount -t iso9660 /dev/sdb /mnt/scdrom
5. SCSI cdr ===> mount -t iso9660 /dev/sdc /mnt/scdr
这是假设,如果你的设备的名称跟这个不同的话请自行修改。
最后需要注意的是:
1. 执行mount动作时先打一下pwd看看现在的目录是不是在挂载点,如果现在目录在挂载点的话,mount (或umount)不会成功 (会显示device busy)。
2. 想卸载某设备的语法是umount 目录名,例如umount /mnt/cdrom等。
在阅读本文之前,我假设你已经对Linux系统下的硬盘、光盘的设备命令规则有所了解,比如sda和sda1的关系,以及hda、sda、fd、cdrom等设备。
===
1 我把U盘插到USB口上了,下一步我该如何做才能查看U盘里的内容?
我不能确定你的Linux系统会不会自动加载。所以,你应该先去/media目录下查看一下,看看是不是已经自动加载上了。如果是的话,应该在/media里有一个目录,
名字类似于disk,你进入目录就等于进入你的U盘了。
如果/media没有你想要的东西,那就要自己mount了!
$mkdir /mnt/usb
$mount -t vfat /dev/sda /mnt/usb
这样就可以了,你去/mnt/usb目录看看,应该有你想要的了。如果mount命令不管用,那么你可以将/dev/sda改成/dev/sdb或者/dev/sdc试试!
-t选项用于设定文件系统类型,我假设你的U盘是fat32的。(因为大部分U盘都是这样的)如果是其他文件系统,你可以man mount来查看一下,方法类似。
2 我把光盘放到光驱里了,下一步咋办?
如果系统没有自动加载光驱的话,那么用下面命令一般有效:
$mkdir /mnt/cdrom
$mount -t iso9660 /dev/cdrom /mnt/cdrom
3 我下载了一个pes6.iso文件,我怎么加载iso文件呢?
$mount -o loop pes6.iso /mnt/cdrom
使用-o选项和loop参数即可!
4 我下载了10个iso文件,从fifa2000.iso到fifa2009.iso,但是当我mount到fifa2007.iso时,就提示不让我mount了!怎么解决?
这个涉及到mount -o loop的原理了。你查看一下/dev下的以loop开头的文件,你就会发现:
[rocrocket@wupengchong dev]$ ls /dev/loop*
/dev/loop0 /dev/loop2 /dev/loop4 /dev/loop6
/dev/loop1 /dev/loop3 /dev/loop5 /dev/loop7
这下知道了吧,原来在/dev里只预设了8个加载iso的地方。
解决办法是这样的:
可以先用modinfo命令查看loop信息:
[root@wupengchong ~]# modinfo loop
filename: /lib/moles/2.6.26.5-45.fc9.i686/kernel/drivers/block/loop.ko
alias: block-major-7-*
license: GPL
srcversion: 7595F5D46DFDB4A2D489DDD
depends:
vermagic: 2.6.26.5-45.fc9.i686 SMP mod_unload 686 4KSTACKS
parm: max_loop:Maximum number of loop devices (int)
parm: max_part:Maximum number of partitions per loop device (int)
可以看出max_loop来限制最大loop的数目。而max_part用来设定每个loop的设备所能支持的分区数目。
你还可以看到控制loop的是一个内核模块:/lib/moles/2.6.26.5-45.fc9.i686/kernel/drivers/block/loop.ko。
我们的目标就是修改max_loop值。
$echo “options loop max_loop=20〃>>/etc/modprobe.conf
然后就是要重新加载内核模块,这样来做:
[root@wupengchong ~]# modprobe -l|grep loop.ko
/lib/moles/2.6.26.5-45.fc9.i686/kernel/drivers/block/cryptoloop.ko
/lib/moles/2.6.26.5-45.fc9.i686/kernel/drivers/block/loop.ko
[root@wupengchong ~]# modprobe -r loop
[root@wupengchong ~]# modprobe loop
注意modprobe命令的选项-r表示remove,即删除某个模块。
好了,就此我们重新加载了loop模块,你现在再用ls /dev/loop*看看,是不是已经有20个loop设备了。
5 我知道/etc/fstab文件里的内容是开机时加载的所有设备,那么mount能利用这个文件么?
可以利用,你直接执行mount -a就可以了,mount会乖乖的按照/etc/fstab文件的内容来加载所有的设备。
6 我这里有不同的文件系统,我用mount加载时需要注意什么?
需要在mount时加-t来设定文件系统类别:
如果是fat的,就要-t vfat;
如果是linux的ext系统的,就要-t ext或-t ext2或-t ext3,未来会有-t ext4;
如果是光驱,那就是-t iso9660;
如果文件系统是ntfs,那么你可能需要了解一下ntfs-3g这个软件了。
7 我有一个老的三寸软盘,如果mount?
$mount -t vfat /dev/fd0 /mnt/floppy
8 mount除了加载设备,还可以做什么?
mount可以用来装载支持acl的分区。具体可查询mount和acl。
mount可以用来设定ftp登录目录,用–bind参数可以实现。
mount可以设定和修改已加载的文件系统的属性,具体可查看mount的-o参数。
‘玖’ linux怎样在非root情况下,执行mount命令挂载d盘即在普通用户下。怎么解决
mount是需要root权限的,但如果你是普通用户,就需要获得root权限,即给予sudo权限;为了防止权限过大,请注意限制sudo命令;
采纳是一种美德