Chinaunix首页 | 论坛 | 博客
  • 博客访问: 718224
  • 博文数量: 192
  • 博客积分: 2653
  • 博客等级: 少校
  • 技术积分: 1623
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-31 18:25
个人简介

How tough life is, how strong you should be!

文章分类

全部博文(192)

文章存档

2015年(1)

2014年(2)

2013年(37)

2012年(152)

分类:

2012-07-16 20:47:14

原文地址:linux的mount命令详解 作者:zzjlzx

linux的mount命令详解
来源: ChinaUnix博客  日期: 2007.12.05 17:20 (共有条评论)
 

linux下挂载(mount)光盘镜像文件、移动硬盘、U盘、Windows和NFS网络共享

linux是一个优秀的开放源码的操作系统,可以运行在大到巨型小到掌上型各类计算机系统上,随着 linux系统的日渐成熟和稳定以及它开放源代码特有的优越性,linux在全世界得到了越来越广泛的应用。现在许多企业的计算机系统都是由UNIX系 统、Linux系统和Windows系统组成的混合系统,不同系统之间经常需要进行数据交换。下面我根据自己的实际工作经验介绍一下如何在linux系统 下挂接(mount)光盘镜像文件、移动硬盘、U盘以及Windows网络共享和UNIX NFS网络共享。   
  挂接命令(mount)
  首先,介绍一下挂接(mount)命令的使用方法,mount命令参数非常多,这里主要讲一下今天我们要用到的。
  命令格式:
  mount [-t vfstype] [-o options] device dir
  其中:
  1.-t vfstype 指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型。常用类型有:
  光盘或光盘镜像:iso9660
  DOS fat16文件系统:msdos
  Windows 9x fat32文件系统:vfat
  Windows NT ntfs文件系统:ntfs
  Mount Windows文件网络共享:smbfs
  UNIX(LINUX) 文件网络共享:nfs
  2.-o options 主要用来描述设备或档案的挂接方式。常用的参数有:
  loop:用来把一个文件当成硬盘分区挂接上系统
  ro:采用只读方式挂接设备
  rw:采用读写方式挂接设备
  iocharset:指定访问文件系统所用字符集
  3.device 要挂接(mount)的设备。
  4.dir设备在系统上的挂接点(mount point)。
  挂接光盘镜像文件
  由于近年来磁盘技术的巨大进步,新的电脑系统都配备了大容量的磁盘系统,在Windows下许多人都习惯把软件和资料做成光盘镜像文件通过虚拟 光驱来使用。这样做有许多好处:一、减轻了光驱的磨损;二、现在硬盘容量巨大存放几十个光盘镜像文件不成问题,随用随调十分方便;三、硬盘的读取速度要远 远高于光盘的读取速度,CPU占用率大大降低。其实linux系统下制作和使用光盘镜像比Windows系统更方便,不必借用任何第三方软件包。
  1、从光盘制作光盘镜像文件。将光盘放入光驱,执行下面的命令。
   #cp /dev/cdrom /home/sunky/mydisk.iso 或
   #dd if=/dev/cdrom of=/home/sunky/mydisk.iso
   注:执行上面的任何一条命令都可将当前光驱里的光盘制作成光盘镜像文件/home/sunky/mydisk.iso
  2、将文件和目录制作成光盘镜像文件,执行下面的命令。
   #mkisofs -r -J -V mydisk -o /home/sunky/mydisk.iso /home/sunky/ mydir
   注:这条命令将/home/sunky/mydir目录下所有的目录和文件制作成光盘镜像文件/home/sunky/mydisk.iso,光盘卷标为:mydisk
  3、光盘镜像文件的挂接(mount)
   #mkdir /mnt/vcdrom
   注:建立一个目录用来作挂接点(mount point)
   #mount -o loop -t iso9660 /home/sunky/mydisk.iso /mnt/vcdrom
   注:使用/mnt/vcdrom就可以访问盘镜像文件mydisk.iso里的所有文件了。
   
  挂接移动硬盘
  对linux系统而言,USB接口的移动硬盘是当作SCSI设备对待的。插入移动硬盘之前,应先用fdisk –l 或 more /proc/partitions查看系统的硬盘和硬盘分区情况。
  [root at pldyrouter /]# fdisk -l
  Disk /dev/sda: 73 dot 4 GB, 73407820800 bytes
  255 heads, 63 sectors/track, 8924 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Device Boot Start End Blocks Id System
  /dev/sda1 1 4 32098+ de Dell Utility
  /dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
  /dev/sda3 2555 7904 42973875 83 Linux
  /dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
  /dev/sda5 7905 8924 8193118+ 82 Linux swap
  在这里可以清楚地看到系统有一块SCSI硬盘/dev/sda和它的四个磁盘分区/dev/sda1 -- /dev/sda4, /dev/sda5是分区/dev/sda4的逻辑分区。接好移动硬盘后,再用fdisk –l 或 more /proc/partitions查看系统的硬盘和硬盘分区情况
  [root at pldyrouter /]# fdisk -l
  Disk /dev/sda: 73 dot 4 GB, 73407820800 bytes
  255 heads, 63 sectors/track, 8924 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Device Boot Start End Blocks Id System
  /dev/sda1 1 4 32098+ de Dell Utility
  /dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
  /dev/sda3 2555 7904 42973875 83 Linux
  /dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
  /dev/sda5 7905 8924 8193118+ 82 Linux swap
  Disk /dev/sdc: 40.0 GB, 40007761920 bytes
  255 heads, 63 sectors/track, 4864 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Device Boot Start End Blocks Id System
  /dev/sdc1 1 510 4096543+ 7 HPFS/NTFS
  /dev/sdc2 511 4864 34973505 f Win95 Ext'd (LBA)
  /dev/sdc5 511 4864 34973473+ b Win95 FAT32
  大家应该可以发现多了一个SCSI硬盘/dev/sdc和它的两个磁盘分区/dev/sdc1?、/dev/sdc2,其中/dev/sdc5是/dev/sdc2分区的逻辑分区。我们可以使用下面的命令挂接/dev/sdc1和/dev/sdc5。
   #mkdir -p /mnt/usbhd1
   #mkdir -p /mnt/usbhd2
   注:建立目录用来作挂接点(mount point)
   #mount -t ntfs /dev/sdc1 /mnt/usbhd1
   #mount -t vfat /dev/sdc5 /mnt/usbhd2
   注:对ntfs格式的磁盘分区应使用-t ntfs 参数,对fat32格式的磁盘分区应使用-t vfat参数。若汉字文件名显示为乱码或不显示,可以使用下面的命令格式。
   #mount -t ntfs -o iocharset=cp936 /dev/sdc1 /mnt/usbhd1
   #mount -t vfat -o iocharset=cp936 /dev/sdc5 /mnt/usbhd2
  linux系统下使用fdisk分区命令和mkfs文件系统创建命令可以将移动硬盘的分区制作成linux系统所特有的ext2、ext3格式。这样,在linux下使用就更方便了。使用下面的命令直接挂接即可。
   #mount /dev/sdc1 /mnt/usbhd1
   
  挂接U
  和USB接口的移动硬盘一样对linux系统而言U盘也是当作SCSI设备对待的。使用方法和移动硬盘完全一样。插入U盘之前,应先用fdisk –l 或 more /proc/partitions查看系统的硬盘和硬盘分区情况。
  [root at pldyrouter root]# fdisk -l
  Disk /dev/sda: 73 dot 4 GB, 73407820800 bytes
  255 heads, 63 sectors/track, 8924 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Device Boot Start End Blocks Id System
  /dev/sda1 1 4 32098+ de Dell Utility
  /dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
  /dev/sda3 2555 7904 42973875 83 Linux
  /dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
  /dev/sda5 7905 8924 8193118+ 82 Linux swap
  插入U盘后,再用fdisk –l 或 more /proc/partitions查看系统的硬盘和硬盘分区情况。
  [root at pldyrouter root]# fdisk -l
  Disk /dev/sda: 73 dot 4 GB, 73407820800 bytes
  255 heads, 63 sectors/track, 8924 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Device Boot Start End Blocks Id System
  /dev/sda1 1 4 32098+ de Dell Utility
  /dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
  /dev/sda3 2555 7904 42973875 83 Linux
  /dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
  /dev/sda5 7905 8924 8193118+ 82 Linux swap
  Disk /dev/sdd: 131 MB, 131072000 bytes
  9 heads, 32 sectors/track, 888 cylinders
  Units = cylinders of 288 * 512 = 147456 bytes
  Device Boot Start End Blocks Id System
  /dev/sdd1 * 1 889 127983+ b Win95 FAT32
  Partition 1 has different physical/logical endings:
  phys=(1000, 8, 32) logical=(888, 7, 31)
  系统多了一个SCSI硬盘/dev/sdd和一个磁盘分区/dev/sdd1,/dev/sdd1就是我们要挂接的U盘。
  #mkdir -p /mnt/usb
  注:建立一个目录用来作挂接点(mount point)
  #mount -t vfat /dev/sdd1 /mnt/usb
  注:现在可以通过/mnt/usb来访问U盘了, 若汉字文件名显示为乱码或不显示,可以使用下面的命令。
  #mount -t vfat -o iocharset=cp936 /dev/sdd1 /mnt/usb
  挂接Windows文件共享
  Windows网络共享的核心是SMB/CIFS,在linux下要挂接(mount)windows的磁盘共享,就必须安装和使用samba 软件包。现在流行的linux发行版绝大多数已经包含了samba软件包,如果安装linux系统时未安装samba请首先安装samba。当然也可以到 网站下载......新的版本是3.0.10版。
  当windows系统共享设置好以后,就可以在linux客户端挂接(mount)了,具体操作如下:
  # mkdir –p /mnt/samba
  注:建立一个目录用来作挂接点(mount point)
  # mount -t smbfs -o username=administrator,password=pldy123 //10.140.133.23/c$ /mnt/samba
  注:administrator 和 pldy123 是ip地址为10.140.133.23 windows计算机的一个用户名和密码,c$是这台计算机的一个磁盘共享
  如此就可以在linux系统上通过/mnt/samba来访问windows系统磁盘上的文件了。以上操作在redhat as server 3、redflag server 4.1、suse server 9以及windows NT 4.0、windows 2000、windows xp、windows 2003环境下测试通过。
  挂接UNIX系统NFS文件共享
  类似于windows的网络共享,UNIX(Linux)系统也有自己的网络共享,那就是NFS(网络文件系统),下面我们就以SUN Solaris2.8和REDHAT as server 3 为例简单介绍一下在linux下如何mount nfs网络共享。
  在linux客户端挂接(mount)NFS磁盘共享之前,必须先配置好NFS服务端。
  1、Solaris系统NFS服务端配置方法如下:
   (1)修改 /etc/dfs/dfstab, 增加共享目录
      share -F nfs -o rw /export/home/sunky
   (2)启动nfs服务
      # /etc/init.d/nfs.server start
   (3)NFS服务启动以后,也可以使用下面的命令增加新的共享
      # share /export/home/sunky1
      # share /export/home/sunky2
   注:/export/home/sunky和/export/home/sunky1是准备共享的目录
  2、linux系统NFS服务端配置方法如下:
   (1)修改 /etc/exports,增加共享目录
  /export/home/sunky 10.140.133.23(rw)
  /export/home/sunky1 *(rw)
  /export/home/sunky2 linux-client(rw)
   注:/export/home/目录下的sunky、sunky1、sunky2是准备共享的目录,10.140.133.23、*、 linux-client是被允许挂接此共享linux客户机的IP地址或主机名。如果要使用主机名linux-client必须在服务端主机 /etc/hosts文件里增加linux-client主机ip定义。格式如下:
   10.140.133.23 linux-client
   (2)启动与停止NFS服务
   /etc/rc.d/init.d/portmap start (在REDHAT中PORTMAP是默认启动的)
   /etc/rc.d/init.d/nfs start 启动NFS服务
   /etc/rc.d/init.d/nfs stop 停止NFS服务
   注:若修改/etc/export文件增加新的共享,应先停止NFS服务,再启动NFS服务方能使新增加的共享起作用。使用命令exportfs -rv也可以达到同样的效果。
  3、linux客户端挂接(mount)其他linux系统或UNIX系统的NFS共享
   # mkdir –p /mnt/nfs
   注:建立一个目录用来作挂接点(mount point)
   #mount -t nfs -o rw 10.140.133.9:/export/home/sunky /mnt/nfs
   注:这里我们假设10.140.133.9是NFS服务端的主机IP地址,当然这里也可以使用主机名,但必须在本机/etc/hosts文件里增加服务端ip定义。/export/home/sunky为服务端共享的目录。
  如此就可以在linux客户端通过/mnt/nfs来访问其它linux系统或UNIX系统以NFS方式共享出来的文件了。以上操作在 redhat as server 3、redflag server4.1、suse server 9以及Solaris 7、Solaris 8、Solaris 9 for x86&sparc环境下测试通过。
权限问题:
假設 server 端的使用者 jack, user id 為 1818, gid 為 1818, client 端也有一個使用者 jack,但是 uid 及 gid 是 1818。client 端的 jack    希望能完全讀寫 server 端的 /home/jack 這個目錄。server 端的 /etc/exports 是
   這樣寫的:
      /home/jack *(rw,all_squash,anonuid=1818,anongid=1818)
   這個的設定檔的意思是,所有 client 端的使用者存取 server 端 /home/jack 這
   目錄時,都會 map 成 server 端的 jack (uid,gid=1818)。我 mount 的結果是
   1. client 端的 root 可以完全存取該目錄, 包括讀、寫、殺……等
   2. client 端的 jack (uid,gid=1818) 我可以做:
    rm -rf server_jack/*
    cp something server_jack/
    mkdir server_jack/a



本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/55527/showart_436631.html
linux的mount命令详解
来源: ChinaUnix博客  日期: 2007.12.05 17:20 (共有条评论)
 

linux下挂载(mount)光盘镜像文件、移动硬盘、U盘、Windows和NFS网络共享

linux是一个优秀的开放源码的操作系统,可以运行在大到巨型小到掌上型各类计算机系统上,随着 linux系统的日渐成熟和稳定以及它开放源代码特有的优越性,linux在全世界得到了越来越广泛的应用。现在许多企业的计算机系统都是由UNIX系 统、Linux系统和Windows系统组成的混合系统,不同系统之间经常需要进行数据交换。下面我根据自己的实际工作经验介绍一下如何在linux系统 下挂接(mount)光盘镜像文件、移动硬盘、U盘以及Windows网络共享和UNIX NFS网络共享。   
  挂接命令(mount)
  首先,介绍一下挂接(mount)命令的使用方法,mount命令参数非常多,这里主要讲一下今天我们要用到的。
  命令格式:
  mount [-t vfstype] [-o options] device dir
  其中:
  1.-t vfstype 指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型。常用类型有:
  光盘或光盘镜像:iso9660
  DOS fat16文件系统:msdos
  Windows 9x fat32文件系统:vfat
  Windows NT ntfs文件系统:ntfs
  Mount Windows文件网络共享:smbfs
  UNIX(LINUX) 文件网络共享:nfs
  2.-o options 主要用来描述设备或档案的挂接方式。常用的参数有:
  loop:用来把一个文件当成硬盘分区挂接上系统
  ro:采用只读方式挂接设备
  rw:采用读写方式挂接设备
  iocharset:指定访问文件系统所用字符集
  3.device 要挂接(mount)的设备。
  4.dir设备在系统上的挂接点(mount point)。
  挂接光盘镜像文件
  由于近年来磁盘技术的巨大进步,新的电脑系统都配备了大容量的磁盘系统,在Windows下许多人都习惯把软件和资料做成光盘镜像文件通过虚拟 光驱来使用。这样做有许多好处:一、减轻了光驱的磨损;二、现在硬盘容量巨大存放几十个光盘镜像文件不成问题,随用随调十分方便;三、硬盘的读取速度要远 远高于光盘的读取速度,CPU占用率大大降低。其实linux系统下制作和使用光盘镜像比Windows系统更方便,不必借用任何第三方软件包。
  1、从光盘制作光盘镜像文件。将光盘放入光驱,执行下面的命令。
   #cp /dev/cdrom /home/sunky/mydisk.iso 或
   #dd if=/dev/cdrom of=/home/sunky/mydisk.iso
   注:执行上面的任何一条命令都可将当前光驱里的光盘制作成光盘镜像文件/home/sunky/mydisk.iso
  2、将文件和目录制作成光盘镜像文件,执行下面的命令。
   #mkisofs -r -J -V mydisk -o /home/sunky/mydisk.iso /home/sunky/ mydir
   注:这条命令将/home/sunky/mydir目录下所有的目录和文件制作成光盘镜像文件/home/sunky/mydisk.iso,光盘卷标为:mydisk
  3、光盘镜像文件的挂接(mount)
   #mkdir /mnt/vcdrom
   注:建立一个目录用来作挂接点(mount point)
   #mount -o loop -t iso9660 /home/sunky/mydisk.iso /mnt/vcdrom
   注:使用/mnt/vcdrom就可以访问盘镜像文件mydisk.iso里的所有文件了。
   
  挂接移动硬盘
  对linux系统而言,USB接口的移动硬盘是当作SCSI设备对待的。插入移动硬盘之前,应先用fdisk –l 或 more /proc/partitions查看系统的硬盘和硬盘分区情况。
  [root at pldyrouter /]# fdisk -l
  Disk /dev/sda: 73 dot 4 GB, 73407820800 bytes
  255 heads, 63 sectors/track, 8924 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Device Boot Start End Blocks Id System
  /dev/sda1 1 4 32098+ de Dell Utility
  /dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
  /dev/sda3 2555 7904 42973875 83 Linux
  /dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
  /dev/sda5 7905 8924 8193118+ 82 Linux swap
  在这里可以清楚地看到系统有一块SCSI硬盘/dev/sda和它的四个磁盘分区/dev/sda1 -- /dev/sda4, /dev/sda5是分区/dev/sda4的逻辑分区。接好移动硬盘后,再用fdisk –l 或 more /proc/partitions查看系统的硬盘和硬盘分区情况
  [root at pldyrouter /]# fdisk -l
  Disk /dev/sda: 73 dot 4 GB, 73407820800 bytes
  255 heads, 63 sectors/track, 8924 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Device Boot Start End Blocks Id System
  /dev/sda1 1 4 32098+ de Dell Utility
  /dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
  /dev/sda3 2555 7904 42973875 83 Linux
  /dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
  /dev/sda5 7905 8924 8193118+ 82 Linux swap
  Disk /dev/sdc: 40.0 GB, 40007761920 bytes
  255 heads, 63 sectors/track, 4864 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Device Boot Start End Blocks Id System
  /dev/sdc1 1 510 4096543+ 7 HPFS/NTFS
  /dev/sdc2 511 4864 34973505 f Win95 Ext'd (LBA)
  /dev/sdc5 511 4864 34973473+ b Win95 FAT32
  大家应该可以发现多了一个SCSI硬盘/dev/sdc和它的两个磁盘分区/dev/sdc1?、/dev/sdc2,其中/dev/sdc5是/dev/sdc2分区的逻辑分区。我们可以使用下面的命令挂接/dev/sdc1和/dev/sdc5。
   #mkdir -p /mnt/usbhd1
   #mkdir -p /mnt/usbhd2
   注:建立目录用来作挂接点(mount point)
   #mount -t ntfs /dev/sdc1 /mnt/usbhd1
   #mount -t vfat /dev/sdc5 /mnt/usbhd2
   注:对ntfs格式的磁盘分区应使用-t ntfs 参数,对fat32格式的磁盘分区应使用-t vfat参数。若汉字文件名显示为乱码或不显示,可以使用下面的命令格式。
   #mount -t ntfs -o iocharset=cp936 /dev/sdc1 /mnt/usbhd1
   #mount -t vfat -o iocharset=cp936 /dev/sdc5 /mnt/usbhd2
  linux系统下使用fdisk分区命令和mkfs文件系统创建命令可以将移动硬盘的分区制作成linux系统所特有的ext2、ext3格式。这样,在linux下使用就更方便了。使用下面的命令直接挂接即可。
   #mount /dev/sdc1 /mnt/usbhd1
   
  挂接U
  和USB接口的移动硬盘一样对linux系统而言U盘也是当作SCSI设备对待的。使用方法和移动硬盘完全一样。插入U盘之前,应先用fdisk –l 或 more /proc/partitions查看系统的硬盘和硬盘分区情况。
  [root at pldyrouter root]# fdisk -l
  Disk /dev/sda: 73 dot 4 GB, 73407820800 bytes
  255 heads, 63 sectors/track, 8924 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Device Boot Start End Blocks Id System
  /dev/sda1 1 4 32098+ de Dell Utility
  /dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
  /dev/sda3 2555 7904 42973875 83 Linux
  /dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
  /dev/sda5 7905 8924 8193118+ 82 Linux swap
  插入U盘后,再用fdisk –l 或 more /proc/partitions查看系统的硬盘和硬盘分区情况。
  [root at pldyrouter root]# fdisk -l
  Disk /dev/sda: 73 dot 4 GB, 73407820800 bytes
  255 heads, 63 sectors/track, 8924 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Device Boot Start End Blocks Id System
  /dev/sda1 1 4 32098+ de Dell Utility
  /dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
  /dev/sda3 2555 7904 42973875 83 Linux
  /dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
  /dev/sda5 7905 8924 8193118+ 82 Linux swap
  Disk /dev/sdd: 131 MB, 131072000 bytes
  9 heads, 32 sectors/track, 888 cylinders
  Units = cylinders of 288 * 512 = 147456 bytes
  Device Boot Start End Blocks Id System
  /dev/sdd1 * 1 889 127983+ b Win95 FAT32
  Partition 1 has different physical/logical endings:
  phys=(1000, 8, 32) logical=(888, 7, 31)
  系统多了一个SCSI硬盘/dev/sdd和一个磁盘分区/dev/sdd1,/dev/sdd1就是我们要挂接的U盘。
  #mkdir -p /mnt/usb
  注:建立一个目录用来作挂接点(mount point)
  #mount -t vfat /dev/sdd1 /mnt/usb
  注:现在可以通过/mnt/usb来访问U盘了, 若汉字文件名显示为乱码或不显示,可以使用下面的命令。
  #mount -t vfat -o iocharset=cp936 /dev/sdd1 /mnt/usb
  挂接Windows文件共享
  Windows网络共享的核心是SMB/CIFS,在linux下要挂接(mount)windows的磁盘共享,就必须安装和使用samba 软件包。现在流行的linux发行版绝大多数已经包含了samba软件包,如果安装linux系统时未安装samba请首先安装samba。当然也可以到 网站下载......新的版本是3.0.10版。
  当windows系统共享设置好以后,就可以在linux客户端挂接(mount)了,具体操作如下:
  # mkdir –p /mnt/samba
  注:建立一个目录用来作挂接点(mount point)
  # mount -t smbfs -o username=administrator,password=pldy123 //10.140.133.23/c$ /mnt/samba
  注:administrator 和 pldy123 是ip地址为10.140.133.23 windows计算机的一个用户名和密码,c$是这台计算机的一个磁盘共享
  如此就可以在linux系统上通过/mnt/samba来访问windows系统磁盘上的文件了。以上操作在redhat as server 3、redflag server 4.1、suse server 9以及windows NT 4.0、windows 2000、windows xp、windows 2003环境下测试通过。
  挂接UNIX系统NFS文件共享
  类似于windows的网络共享,UNIX(Linux)系统也有自己的网络共享,那就是NFS(网络文件系统),下面我们就以SUN Solaris2.8和REDHAT as server 3 为例简单介绍一下在linux下如何mount nfs网络共享。
  在linux客户端挂接(mount)NFS磁盘共享之前,必须先配置好NFS服务端。
  1、Solaris系统NFS服务端配置方法如下:
   (1)修改 /etc/dfs/dfstab, 增加共享目录
      share -F nfs -o rw /export/home/sunky
   (2)启动nfs服务
      # /etc/init.d/nfs.server start
   (3)NFS服务启动以后,也可以使用下面的命令增加新的共享
      # share /export/home/sunky1
      # share /export/home/sunky2
   注:/export/home/sunky和/export/home/sunky1是准备共享的目录
  2、linux系统NFS服务端配置方法如下:
   (1)修改 /etc/exports,增加共享目录
  /export/home/sunky 10.140.133.23(rw)
  /export/home/sunky1 *(rw)
  /export/home/sunky2 linux-client(rw)
   注:/export/home/目录下的sunky、sunky1、sunky2是准备共享的目录,10.140.133.23、*、 linux-client是被允许挂接此共享linux客户机的IP地址或主机名。如果要使用主机名linux-client必须在服务端主机 /etc/hosts文件里增加linux-client主机ip定义。格式如下:
   10.140.133.23 linux-client
   (2)启动与停止NFS服务
   /etc/rc.d/init.d/portmap start (在REDHAT中PORTMAP是默认启动的)
   /etc/rc.d/init.d/nfs start 启动NFS服务
   /etc/rc.d/init.d/nfs stop 停止NFS服务
   注:若修改/etc/export文件增加新的共享,应先停止NFS服务,再启动NFS服务方能使新增加的共享起作用。使用命令exportfs -rv也可以达到同样的效果。
  3、linux客户端挂接(mount)其他linux系统或UNIX系统的NFS共享
   # mkdir –p /mnt/nfs
   注:建立一个目录用来作挂接点(mount point)
   #mount -t nfs -o rw 10.140.133.9:/export/home/sunky /mnt/nfs
   注:这里我们假设10.140.133.9是NFS服务端的主机IP地址,当然这里也可以使用主机名,但必须在本机/etc/hosts文件里增加服务端ip定义。/export/home/sunky为服务端共享的目录。
  如此就可以在linux客户端通过/mnt/nfs来访问其它linux系统或UNIX系统以NFS方式共享出来的文件了。以上操作在 redhat as server 3、redflag server4.1、suse server 9以及Solaris 7、Solaris 8、Solaris 9 for x86&sparc环境下测试通过。
权限问题:
假設 server 端的使用者 jack, user id 為 1818, gid 為 1818, client 端也有一個使用者 jack,但是 uid 及 gid 是 1818。client 端的 jack    希望能完全讀寫 server 端的 /home/jack 這個目錄。server 端的 /etc/exports 是
   這樣寫的:
      /home/jack *(rw,all_squash,anonuid=1818,anongid=1818)
   這個的設定檔的意思是,所有 client 端的使用者存取 server 端 /home/jack 這
   目錄時,都會 map 成 server 端的 jack (uid,gid=1818)。我 mount 的結果是
   1. client 端的 root 可以完全存取該目錄, 包括讀、寫、殺……等
   2. client 端的 jack (uid,gid=1818) 我可以做:
    rm -rf server_jack/*
    cp something server_jack/
    mkdir server_jack/a



本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/55527/showart_436631.html

linuxmount命令详解

来源: ChinaUnix博客  日期: 2007.12.05 17:20 (共有条评论)

 


linux
下挂载(mount)光盘镜像文件、移动硬盘、U盘、WindowsNFS网络共享

linux
是一个优秀的开放源码的操作系统,可以运行在大到巨型小到掌上型各类计算机系统上,随着 linux系统的日渐成熟和稳定以及它开放源代码特有的优越性,linux在全世界得到了越来越广泛的应用。现在许多企业的计算机系统都是由UNIX 统、Linux系统和Windows系统组成的混合系统,不同系统之间经常需要进行数据交换。下面我根据自己的实际工作经验介绍一下如何在linux系统 下挂接(mount)光盘镜像文件、移动硬盘、U盘以及Windows网络共享和UNIX NFS网络共享。   
  挂接命令(mount)
  首先,介绍一下挂接(mount)命令的使用方法,mount命令参数非常多,这里主要讲一下今天我们要用到的。
  命令格式:
  mount [-t vfstype] [-o options] device dir
  其中:
  1.-t vfstype 指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型。常用类型有:
  光盘或光盘镜像:iso9660
  DOS fat16文件系统:msdos
  Windows 9x fat32文件系统:vfat
  Windows NT ntfs文件系统:ntfs
  Mount Windows文件网络共享:smbfs
  UNIX(LINUX) 文件网络共享:nfs
  2.-o options 主要用来描述设备或档案的挂接方式。常用的参数有:
  loop:用来把一个文件当成硬盘分区挂接上系统
  ro:采用只读方式挂接设备
  rw:采用读写方式挂接设备
  iocharset:指定访问文件系统所用字符集
  3.device 要挂接(mount)的设备。
  4.dir设备在系统上的挂接点(mount point)
  挂接光盘镜像文件
  由于近年来磁盘技术的巨大进步,新的电脑系统都配备了大容量的磁盘系统,在Windows下许多人都习惯把软件和资料做成光盘镜像文件通过虚拟 光驱来使用。这样做有许多好处:一、减轻了光驱的磨损;二、现在硬盘容量巨大存放几十个光盘镜像文件不成问题,随用随调十分方便;三、硬盘的读取速度要远 远高于光盘的读取速度,CPU占用率大大降低。其实linux系统下制作和使用光盘镜像比Windows系统更方便,不必借用任何第三方软件包。
  1、从光盘制作光盘镜像文件。将光盘放入光驱,执行下面的命令。
   #cp /dev/cdrom /home/sunky/mydisk.iso
   #dd if=/dev/cdrom of=/home/sunky/mydisk.iso
   注:执行上面的任何一条命令都可将当前光驱里的光盘制作成光盘镜像文件/home/sunky/mydisk.iso
  2、将文件和目录制作成光盘镜像文件,执行下面的命令。
   #mkisofs -r -J -V mydisk -o /home/sunky/mydisk.iso /home/sunky/ mydir
   注:这条命令将/home/sunky/mydir目录下所有的目录和文件制作成光盘镜像文件/home/sunky/mydisk.iso,光盘卷标为:mydisk
  3、光盘镜像文件的挂接(mount)
   #mkdir /mnt/vcdrom
   注:建立一个目录用来作挂接点(mount point)
   #mount -o loop -t iso9660 /home/sunky/mydisk.iso /mnt/vcdrom
   注:使用/mnt/vcdrom就可以访问盘镜像文件mydisk.iso里的所有文件了。
   
  挂接移动硬盘
  对linux系统而言,USB接口的移动硬盘是当作SCSI设备对待的。插入移动硬盘之前,应先用fdisk –l more /proc/partitions查看系统的硬盘和硬盘分区情况。
  [root at pldyrouter /]# fdisk -l
  Disk /dev/sda: 73 dot 4 GB, 73407820800 bytes
  255 heads, 63 sectors/track, 8924 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Device Boot Start End Blocks Id System
  /dev/sda1 1 4 32098+ de Dell Utility
  /dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
  /dev/sda3 2555 7904 42973875 83 Linux
  /dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
  /dev/sda5 7905 8924 8193118+ 82 Linux swap
  在这里可以清楚地看到系统有一块SCSI硬盘/dev/sda和它的四个磁盘分区/dev/sda1 -- /dev/sda4, /dev/sda5是分区/dev/sda4的逻辑分区。接好移动硬盘后,再用fdisk –l more /proc/partitions查看系统的硬盘和硬盘分区情况
  [root at pldyrouter /]# fdisk -l
  Disk /dev/sda: 73 dot 4 GB, 73407820800 bytes
  255 heads, 63 sectors/track, 8924 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Device Boot Start End Blocks Id System
  /dev/sda1 1 4 32098+ de Dell Utility
  /dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
  /dev/sda3 2555 7904 42973875 83 Linux
  /dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
  /dev/sda5 7905 8924 8193118+ 82 Linux swap
  Disk /dev/sdc: 40.0 GB, 40007761920 bytes
  255 heads, 63 sectors/track, 4864 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Device Boot Start End Blocks Id System
  /dev/sdc1 1 510 4096543+ 7 HPFS/NTFS
  /dev/sdc2 511 4864 34973505 f Win95 Ext'd (LBA)
  /dev/sdc5 511 4864 34973473+ b Win95 FAT32
  大家应该可以发现多了一个SCSI硬盘/dev/sdc和它的两个磁盘分区/dev/sdc1?/dev/sdc2,其中/dev/sdc5/dev/sdc2分区的逻辑分区。我们可以使用下面的命令挂接/dev/sdc1/dev/sdc5
   #mkdir -p /mnt/usbhd1
   #mkdir -p /mnt/usbhd2
   注:建立目录用来作挂接点(mount point)
   #mount -t ntfs /dev/sdc1 /mnt/usbhd1
   #mount -t vfat /dev/sdc5 /mnt/usbhd2
   注:对ntfs格式的磁盘分区应使用-t ntfs 参数,对fat32格式的磁盘分区应使用-t vfat参数。若汉字文件名显示为乱码或不显示,可以使用下面的命令格式。
   #mount -t ntfs -o iocharset=cp936 /dev/sdc1 /mnt/usbhd1
   #mount -t vfat -o iocharset=cp936 /dev/sdc5 /mnt/usbhd2
  linux系统下使用fdisk分区命令和mkfs文件系统创建命令可以将移动硬盘的分区制作成linux系统所特有的ext2ext3格式。这样,在linux下使用就更方便了。使用下面的命令直接挂接即可。
   #mount /dev/sdc1 /mnt/usbhd1
   
  挂接U
  和USB接口的移动硬盘一样对linux系统而言U盘也是当作SCSI设备对待的。使用方法和移动硬盘完全一样。插入U盘之前,应先用fdisk –l more /proc/partitions查看系统的硬盘和硬盘分区情况。
  [root at pldyrouter root]# fdisk -l
  Disk /dev/sda: 73 dot 4 GB, 73407820800 bytes
  255 heads, 63 sectors/track, 8924 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Device Boot Start End Blocks Id System
  /dev/sda1 1 4 32098+ de Dell Utility
  /dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
  /dev/sda3 2555 7904 42973875 83 Linux
  /dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
  /dev/sda5 7905 8924 8193118+ 82 Linux swap
  插入U盘后,再用fdisk –l more /proc/partitions查看系统的硬盘和硬盘分区情况。
  [root at pldyrouter root]# fdisk -l
  Disk /dev/sda: 73 dot 4 GB, 73407820800 bytes
  255 heads, 63 sectors/track, 8924 cylinders
  Units = cylinders of 16065 * 512 = 8225280 bytes
  Device Boot Start End Blocks Id System
  /dev/sda1 1 4 32098+ de Dell Utility
  /dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
  /dev/sda3 2555 7904 42973875 83 Linux
  /dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
  /dev/sda5 7905 8924 8193118+ 82 Linux swap
  Disk /dev/sdd: 131 MB, 131072000 bytes
  9 heads, 32 sectors/track, 888 cylinders
  Units = cylinders of 288 * 512 = 147456 bytes
  Device Boot Start End Blocks Id System
  /dev/sdd1 * 1 889 127983+ b Win95 FAT32
  Partition 1 has different physical/logical endings:
  phys=(1000, 8, 32) logical=(888, 7, 31)
  系统多了一个SCSI硬盘/dev/sdd和一个磁盘分区/dev/sdd1,/dev/sdd1就是我们要挂接的U盘。
  #mkdir -p /mnt/usb
  注:建立一个目录用来作挂接点(mount point)
  #mount -t vfat /dev/sdd1 /mnt/usb
  注:现在可以通过/mnt/usb来访问U盘了, 若汉字文件名显示为乱码或不显示,可以使用下面的命令。
  #mount -t vfat -o iocharset=cp936 /dev/sdd1 /mnt/usb
  挂接Windows文件共享
  Windows网络共享的核心是SMB/CIFS,在linux下要挂接(mount)windows的磁盘共享,就必须安装和使用samba 软件包。现在流行的linux发行版绝大多数已经包含了samba软件包,如果安装linux系统时未安装samba请首先安装samba。当然也可以到 网站下载......新的版本是3.0.10版。
  当windows系统共享设置好以后,就可以在linux客户端挂接(mount)了,具体操作如下:
  # mkdir –p /mnt/samba
  注:建立一个目录用来作挂接点(mount point)
  # mount -t smbfs -o username=administrator,password=pldy123 //10.140.133.23/c$ /mnt/samba
  注:administrator pldy123 ip地址为10.140.133.23 windows计算机的一个用户名和密码,c$是这台计算机的一个磁盘共享
  如此就可以在linux系统上通过/mnt/samba来访问windows系统磁盘上的文件了。以上操作在redhat as server 3redflag server 4.1suse server 9以及windows NT 4.0windows 2000windows xpwindows 2003环境下测试通过。
  挂接UNIX系统NFS文件共享
  类似于windows的网络共享,UNIX(Linux)系统也有自己的网络共享,那就是NFS(网络文件系统),下面我们就以SUN Solaris2.8REDHAT as server 3 为例简单介绍一下在linux下如何mount nfs网络共享。
  在linux客户端挂接(mount)NFS磁盘共享之前,必须先配置好NFS服务端。
  1Solaris系统NFS服务端配置方法如下:
   (1)修改 /etc/dfs/dfstab, 增加共享目录
      share -F nfs -o rw /export/home/sunky
   (2)启动nfs服务
      # /etc/init.d/nfs.server start
   (3)NFS服务启动以后,也可以使用下面的命令增加新的共享
      # share /export/home/sunky1
      # share /export/home/sunky2
   注:/export/home/sunky/export/home/sunky1是准备共享的目录
  2linux系统NFS服务端配置方法如下:
   (1)修改 /etc/exports,增加共享目录
  /export/home/sunky 10.140.133.23(rw)
  /export/home/sunky1 *(rw)
  /export/home/sunky2 linux-client(rw)
   注:/export/home/目录下的sunkysunky1sunky2是准备共享的目录,10.140.133.23* linux-client是被允许挂接此共享linux客户机的IP地址或主机名。如果要使用主机名linux-client必须在服务端主机 /etc/hosts文件里增加linux-client主机ip定义。格式如下:
   10.140.133.23 linux-client
   (2)启动与停止NFS服务
   /etc/rc.d/init.d/portmap start (REDHATPORTMAP是默认启动的)
   /etc/rc.d/init.d/nfs start 启动NFS服务
   /etc/rc.d/init.d/nfs stop 停止NFS服务
   注:若修改/etc/export文件增加新的共享,应先停止NFS服务,再启动NFS服务方能使新增加的共享起作用。使用命令exportfs -rv也可以达到同样的效果。
  3linux客户端挂接(mount)其他linux系统或UNIX系统的NFS共享
   # mkdir –p /mnt/nfs
   注:建立一个目录用来作挂接点(mount point)
   #mount -t nfs -o rw 10.140.133.9:/export/home/sunky /mnt/nfs
   注:这里我们假设10.140.133.9NFS服务端的主机IP地址,当然这里也可以使用主机名,但必须在本机/etc/hosts文件里增加服务端ip定义。/export/home/sunky为服务端共享的目录。
  如此就可以在linux客户端通过/mnt/nfs来访问其它linux系统或UNIX系统以NFS方式共享出来的文件了。以上操作在 redhat as server 3redflag server4.1suse server 9以及Solaris 7Solaris 8Solaris 9 for x86&sparc环境下测试通过。
权限问题:
假設 server 端的使用者 jack, user id 1818, gid 1818, client 端也有一個使用者 jack,但是 uid gid 1818client 端的 jack    希望能完全讀寫 server 端的 /home/jack 這個目錄。server 端的 /etc/exports
   
這樣寫的:
      /home/jack *(rw,all_squash,anonuid=1818,anongid=1818)
   
這個的設定檔的意思是,所有 client 端的使用者存取 server /home/jack
   
目錄時,都會 map server 端的 jack (uid,gid=1818)。我 mount 的結果是
   1. client
端的 root 可以完全存取該目錄, 包括讀、寫、殺……
   2. client
端的 jack (uid,gid=1818) 我可以做:
    rm -rf server_jack/*
    cp something server_jack/
    mkdir server_jack/a



本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/55527/showart_436631.html

Windows下可以mount的文件格式  以下格式均可以mount到虚拟盘中使用

  1.光盘镜像ISO/IMG/VCD/nrg/mdf及mds/FCD/LCD/bin等

  支持软件:Alcohol, Clone, Deamon, UtraISO, WinISO, Virtual disk, WinMount

  2.音频镜像FLAC/APE/WV/WAVE

  支持软件:WinMount

  3.虚拟机硬盘镜像VHD/VMDK/VDI

  支持软件:Virtual disk, VMware, Virtual box, WinMount

  4.压缩格式RAR/ZIP/MOU

  支持软件:WinMount

mount 是一个linux命令

  【程序中mount()/umount()函数的】

  功能描述:mount挂上文件系统,umount执行相反的操作。用法:

  #includeintmount(constchar*source,constchar*target,constchar*filesystemtype,unsignedlongmountflags,constvoid*data);intumount(constchar*target);intumount2(constchar*target,intflags);

  参数:

  source:将要挂上的文件系统,通常是一个设备名。

  target:文件系统所要挂在的目标目录。

  filesystemtype:文件系统的类型,可以是"ext2","msdos","proc","ntfs","iso9660"。。。

  mountflags:指定文件系统的读写访问标志,可能值有以下

  MS_BIND:执行bind挂载,使文件或者子目录树在文件系统内的另一个点上可视。

  MS_DIRSYNC:同步目录的更新。

  MS_MANDLOCK:允许在文件上执行强制锁。

  MS_MOVE:移动子目录树。

  MS_NOATIME:不要更新文件上的访问时间。

  MS_NODEV:不允许访问设备文件。

  MS_NODIRATIME:不允许更新目录上的访问时间。

  MS_NOEXEC:不允许在挂上的文件系统上执行程序。

  MS_NOSUID:执行程序时,不遵照set-user-ID和set-group-ID位。

  MS_RDONLY:指定文件系统为只读。

  MS_REMOUNT:重新加载文件系统。这允许你改变现存文件系统的mountflag和数据,而无需使用先,再挂上文件系统的方式。

  MS_SYNCHRONOUS:同步文件的更新。

  MNT_FORCE:强制卸载,即使文件系统处于忙状态。

  MNT_EXPIRE:将挂载点标志为过时。data:文件系统特有的参数。返回说明:成功执行时,返回0。失败返回-1,errno被设为以下的某个值EACCES:权能不足,可能原因是,路径的一部分不可搜索,或者挂载只读的文件系统时,没有指定MS_RDONLY标志。

  EAGAIN:成功地将不处于忙状态的文件系统标志为过时。

  EBUSY:一.源文件系统已被挂上。或者不可以以只读的方式重新挂载,因为它还拥有以写方式打开的文件。二.目标处于忙状态。

  EFAULT:内存空间访问出错。

  EINVAL:操作无效,可能是源文件系统超级块无效。

  ELOOP:路径解析的过程中存在太多的符号连接。

  EMFILE:无需块设备要求的情况下,无用设备表已满。

  ENAMETOOLONG:路径名超出可允许的长度。

  ENODEV:内核不支持某中文件系统。

  ENOENT:路径名部分内容表示的目录不存在。

  ENOMEM:核心内存不足。

  ENOTBLK:source不是块设备。

  ENOTDIR:路径名的部分内容不是目录。

  EPERM:调用者权能不足。

  ENXIO:块主设备号超出所允许的范围。

  mount 命令

  用途

  使文件系统可用。

  语法

  mount [ -f ] [ -n Node ] [ -o Options ] [ -p ] [ -r ] [ -v VfsName ] [ -t Type | [ Device | Node:Directory ] Directory | all | -a ] [-V [generic_options] special_mount_points ]

  描述

  mount 命令指示使文件系统在指定位置(安装点)可用。此外,可以用 mount 命令构建由目录和安装文件(file mounts) 组成的其他文件树。Mount 命令通过在 Directory 参数指定的目录上使用 Device/Node: Directory 参数来安装表示为设备的文件系统。mount 命令完成以后,指定的目录变为新安装文件系统的根目录。

  只有有 root 权限的用户或系统组成员和对安装点有写权限的用户能发出文件或目录安装(directory mounts)。文件或目录可以是符号链接。mount 命令使用真实的用户标识,而不是有效的用户标识,来确定用户是否有相应的访问权限。假定系统组成员对安装点或在 /etc/filesystems 文件中指定的安装有写入权限,他们能发出设备安装(device mounts)。有 root 用户权限的用户能发出任意的 mount 命令。

  如果用户属于系统组并且有相应的存取权限则能安装设备。安装设备时, mount 命令使用 Device 参数作为块设备名,Directory 参数作为文件系统所要安装的目录。

  如果输入不带标志的 mount 命令,命令为安装的文件系统显示如下信息:

  * 节点(如果安装是远程的)

  * 安装的对象

  * 安装点

  * 虚拟 - 文件 - 系统的类型

  * 安装的时间

  * 任何安装选项

  如果只指定 Directory 参数,mount 命令把它当作文件系统、目录或文件通常安装的目录名或文件名(正如 /etc/filesystems 文件所定义)。 mount 命令查看有关的设备、目录、或文件并安装。这是使用 mount 命令的最方便的方式,因为不需要记住目录或文件中安装了什么。也可以只指定设备。在此情况下,命令从 /etc/filesystems 文件获得安装点。

  /etc/filesystems 文件应该为每个可安装的文件系统、目录或文件包括一节。该节应该至少指定文件系统名和所驻留的设备或目录名。如果节包括安装属性, mount 命令使用有关的值。它为安装属性识别五个值:自动、真、假、可移动和只读。

  mount all 命令导致所有带有 mount=true 属性的文件系统安装到它们正常的位置。该命令通常应用在期间,相应的安装是指自动安装。

  mount 命令也能用来访问作为目录树的 JFS2 文件系统的。设备上的快照以只读方式安装到目录下。 快照只能安装一次。当用快照安装 JFS2 文件系统时,快照是激活的。

  可以在“基于 Web 的系统管理器”(wsm)中使用文件系统来运行该命令。也可以使用“系统管理接口工具”(SMIT)smit mount 快速路径来运行该命令。

  注:

  如果 mount 命令遇到日志文件系统(JFS)或在重新引导之前未卸装增强的日志文件系统(JFS2),任意的 JFS 或 JFS2 日志记录试图重新播放。为了移动兼容的 JFS 文件系统到运行早期发行版操作系统的系统中,文件系统必须在移动之前卸装干净。卸装失败首先可能导致不兼容的 JFS 日志设备。如果移动导致未知的日志设备,文件系统应该返回到运行后续操作系统发行版的系统,并且 fsck 应该在文件系统上运行。

  注:

  如果启用了 cdromd CD 和 DVD automount 守护进程,则那些设备会按 /etc/cdromd.conf 文件中指定的那样自动安装。使用 cdumount 或 cdeject 命令卸装自动安装的 CD 或 DVD。 使用 stopsrc -s cdromd 禁用 CD/DVD automount 守护进程。

  注:

  对于 CacheFS,必须导出本地高速缓存的远程文件系统,以便不将远程主机上的本地系统的 root 标识映射为 nobody(或远程主机用作匿名用户的标识)。例如,如果主机 A 要导出文件系统 /F(而该文件系统将使用 CacheFS 加载到主机 B 上),则主机 A 上的 /etc/exports 则需要一个如下条目:

  /F -rw,root=B

  或 /F -ro,root=B

  ,这取决于本地 CacheFS 使用的安装选项。

  标志

  -a 使用包含 true 安装属性的节,在 /etc/filesystems 文件中安装所有的文件系统。

  所有 与 -a 标志相同。

  -f 在系统初始化时请求强制安装在根文件系统上启用安装。

  -n Node 指定保留安装目录的远程节点。

  文件系统系统特定选项

  -o Options 指定选项。在命令行上输入的选项应该只用逗号隔开。下面的文件系统-特定选项不适用于所有的类型:

  bsy

  如果要安装到的目录是进程的当前工作目录,防止安装操作。

  cio

  为并发和记录器指定要安装的文件系统。该文件系统中的文件上的 I/O 将如同它们已经使用 open() 系统调用中指定的 O_CIO 打开一样操作。使用此选项将防止除 CIO 之外任何形式的访问。不可能在使用 cio 选项加载的文件系统上使用高速缓存的 I/O。这意味着 mmap() 和 shmat() 之类的映射命令在使用 cio 选项加载的文件系统中的任何文件上使用时将失败,且返回 EINVAL。这样做的一个副作用是不可能在 cio 加载的文件系统外运行二进制,因为装入程序可能使用 mmap()。

  dio

  指定文件系统上的 I/O 的操作如同所有的文件是用 open()系统调用指定的 O_DIRECT 打开。

  fmode=octal

  为文件和目录指定方式。缺省值是 755。

  gid=gid

  指定在安装时分配给文件的 GID。缺省值是 bin。

  log=LVName

  指定记录下面的文件-系统操作的文件系统记录逻辑卷名的全路径名。

  nocase

  关闭大小写映射。 这对使用 ISO 9660:1998/HSG 标准的 cdrom 是有用的。

  nodev

  指定从该安装不能打开设备。如果失败此选项返回一个 ENXIO 值。

  nosuid

  指定不允许通过该安装执行 setuid 和 setgid 程序。如果失败此选项返回一个 EPERM 值。

  rbr

  用读之后释放能力安装文件系统。 当在该文件系统中检测到顺序读取,文件使用的真正的内存页一旦复制到内部将释放。

  注:

  当指定 rbr,D_RB_READ 标志在 pdtentry 结构的 _devflags 字段最后设置。

  rbw

  用写之后释放能力安装文件系统。当在该文件系统中检测到顺序写,文件使用的真正的内存页一旦写到磁盘将释放。

  注:

  当指定 rbw时,设置 D_RB_WRITE 标志。

  rbrw

  用读之后释放能力和写之后释放能力安装文件系统。

  注:

  如果指定了 rbrw,则 D_RB_READ 和 D_RB_WRITE 标志都设置。

  ro

  指定安装的文件是只读的。缺省值是 rw。

  rw

  指定安装的文件是可读/写的。rw 是缺省值。

  snapshot

  指定要安装的设备是快照。必须已经安装指定快照的“拍摄的”文件系统,否则会显示错误消息。

  snapto=snapshot

  当安装指定的 JFS2 文件系统时,用 快照的值指定启动快照的位置。

  特定于文件系统的选项(继续)

  -o 选项 指定选项。在命令行上输入的选项应该只用逗号隔开。下面的文件系统-特定选项不适用于所有的虚拟文件系统类型:

  upcase

  把大小写映射从缺省的小写变为大写。这对使用 ISO 9660:1998/HSG 标准的 cdrom 是有用的。

  uid=uid

  指定在安装时分配给文件的 UID,缺省值是 bin。

  wrkgrp=workgroup

  指定 SMB 服务器所属的工作组。

  NFS 特定选项

  -o Options 指定选项。在命令行输入的选项应该用逗号隔开,而不是逗号与空格隔开。下面的 NFS 特定的选项不适用于所有的虚拟文件系统类型:

  acdirmax=n

  在目录更新后,只保留高速缓存的属性 n 秒。缺省值是 60 秒。

  acdirmin = n

  在目录更新后,保留高速缓存的属性至少 n 秒。缺省值是 30 秒。

  acl

  为此 NFS 安装使用 RPC 程序的请求。如果使用 acl 选项,只在 NFS 服务器提供 ACL RPC 程序时使用它。缺省值是 noacl。 该选项只用在 AIX 4.2.1 或以后版本。

  acregmax=n

  在文件修改后,只保留高速缓存的属性 n 秒。缺省值是 60 秒。

  acregmin=n

  在文件修改后,高速缓存的属性保留至少 n 秒。缺省值是 3 秒。

  actimeo=n

  为正常的文件和目录设置最小和最大时间是 n 秒。如果此选项设置,将覆盖所有的 acregmin、acregmax、acdirmin、和 acdirmax 选项的设置。

  bg

  如果第一次尝试是失败的,试图在安装。缺省值是 fg。

  fastattr

  忽略当前正在写的文件在文件属性读之前发送到服务器的要求。该选项使用时要注意,因为它会引起客户机假定没有到达服务器的文件数据将没有任何问题的写。在写错误的情况下,客户机和服务器在文件的真正大小方面有不同的选项。同样,一个客户机不会知道其他客户机对文件属性所作的改变,所以该选项不能用在两个客户机向相同的文件写的环境中。

  fg

  如果第一次尝试是失败的,试图在前台中安装。fg 是缺省值。

  grpid

  使在文件系统上创建的文件或目录继承父目录的组 ID。

  hard

  再次请求直到服务器响应。此选项是缺省值。

  intr

  在硬安装时允许键盘中断。

  llock

  请求文件本地锁定在 NFS 客户机。如果 llock 选项未用,则 NFS 网络文件锁定请求不能发送到 NFS 服务器。该选项只用在 AIX 4.2.1 或以后版本。

  maxgroups=n

  表示使用 AUTH_UNIX 的 NFS RPC 调用最多可以包括 n 个成员组的信息。使用该选项增加超出 RPC 协议标准 16 的成员组数将只不对支持超出 16 个成员组的服务器起作用。否则,客户机将遇到错误。

  低于 16 的值或超过 64 的值将会忽略。缺省情况下,协议标准最大值仍为 16。AIX NFS 服务器将接受并处理以 带有 5200-01 推荐的维护的 AIX 5L V 5.2 开头的最多为 64 的 AUTH_UNIX 凭证。由 NFS 客户机发送的成员组的实际数取决于参加的用户为其成员的组数,并且可能受 NFS 客户机主机名(它可能包括在 AUTH_UNIX 信息中)的长度的限制。

  noac

  指定 mount 命令执行无属性或目录高速缓存。如果未指定该选项,文件和目录属性(包括许可权、大小、和时间戳记)被高速缓存以减少执行有线接收 NFSPROC_GETATTR (RPC)的需求。 NFSPROC_GETATTR RPC 启动客户机提示输入服务器文件和目录属性。 acregmin、acregmax、acdirmin、和 acdirmax 选项控制高速缓存值保留的时间长度。

  noacl

  为 NFS 安装请求指定不使用访问控制列表 RPC 程序。缺省值是 noacl。 该选项只用在 AIX 4.2.1 或以后版本。

  nointr

  指定在硬安装时不允许键盘中断。该选项只用在 AIX 4.2.1 或以后版本。

  port=n

  设置服务器网际协议(IP)端口号为 n。缺省值是 2049。

  posix

  请求路径配置信息在 NFS V2 安装版本可交换和使用。在 NFS 服务器上,请求安装 V2 rpc.mountd。

  该选项只用在 AIX 4.2.1 或以后版本。

  proto=[udp|tcp]

  指定传输协议。AIX 4.2.1 NFS 安装使用的缺省传输协议如果在服务器上有则是 udp。对于 AIX 4.3 或以后版本缺省值是 tcp。 使用 proto=[udp|tcp] 选项覆盖缺省值。此选项只用在 AIX 4.2.1 或以后版本。

  retrans=n

  设置 NFS 传输号为 n。缺省值是 5。

  retry=n

  设置安装重试的次数为 n;缺省值是 1000。 当重试值是 0, 系统作 10,000 次尝试。

  rsize=n

  设置读缓冲区为 n 个字节。缺省值是 8192。 只有 AIX 4.2.1 在使用 V3 NFS 协议时,缺省值是 32768。

  安全

  指定 mount 命令为 NFS 事务使用(DES)。

  shortdev

  指定从不支持 32-位设备特殊文件的主机安装文件系统。该选项不能用在 AIX 4.2.1 或以后版本。

  soft

  如果服务器不响应,返回错误。缺省值是 hard。

  timeo=n

  设置(NFS)超时周期是一秒的十分之 n。对于 TCP 安装,缺省超时值是 100, 相当于 10 秒。对于 UDP 安装,缺省超时值是 11, 相当于 1.1 秒,但根据发生的 NFS 操作有所不同。对于 UDP 安装,每次失败传送,超时都会增加,最大值是 20 秒。每次传输尝试两次,之后超时值更新。

  vers = [2|3]

  指定 NFS 版本。缺省值是在客户机和服务器之间使用的 NFS 协议的版本,是在两个系统上可获得的最大值。如果 NFS 服务器不支持 NFS V3, NFS 安装将使用 NFS V2。使用 vers = [2|3] 选项选择 NFS 版本。此选项只用在 AIX 4.2.1 或以后版本。

  wsize=n

  设置写缓冲区大小为 n 字节。缺省值是 8192。 只有 AIX 4.2.1 在使用 V3 NFS 协议时,缺省值是 32768。

  -p 安装文件系统作为可移动文件系统。如果上面有打开的文件,可移动的安装文件系统的操作与正常安装的文件系统的操作相同。但是,当没有文件打开的时候(并且在文件系统上没有进程有当前目录),所有的在文件系统的文件系统写到介质,操作系统丢失文件系统的结构。

  -r 安装文件系统作为只读文件系统,忽略在 /etc/filesystems 文件中以前的规格。

  -t Type 安装所有包含 type = Type属性并且未安装的 /etc/filesystems 文件中的节。Type 参数指定组名。

  -v VfsName 指定文件系统由 /etc/vfs 文件中的 VfsName 参数定义。

  CacheFS 特定选项

  特定于 CacheFS 版本的 mount 命令安装高速缓存文件系统;如果需要,它 NFS-安装后端文件系统。也提供了许多控制高速缓存进程的 CacheFS — 特定选项。

  要安装 CacheFS 文件系统,请使用带有 -V 标志并且后跟变量的 mount 命令。可使用以下 mount 标志。

  下列 -o 标志的参数是 CacheFS 安装特有的。在命令行输入的选项应该用逗号隔开,而不是逗号与空格隔开。

  注:

  backfstype 参数必须指定。

  -o 指定选项。

  acdirmax=n

  指定目录更新后高速缓存的属性保留时间不超过 n 秒。n 秒之前,CacheFS 查看备份文件系统上的目录修改时间是否已更改。如果已经更改,所有有关目录的信息从高速缓存清除并且从文件系统检索新的数据。缺省值为 60 秒。

  acdirmin=n

  指定在目录更新后,高速缓存的属性至少保留 n 秒。 n 秒之后, CacheFS 检查在备份文件系统的目录修改时间是否更改。如果已经更改,所有有关目录的信息从高速缓存清除并且从文件系统检索新的数据。缺省值是 30 秒。

  acregmax=n

  指定在文件修改后,高速缓存的属性只保留 n 秒。 n 秒之后,所有的文件信息从高速缓存清除。缺省值是 30 秒。

  acregmin=n

  指定在文件修改后,高速缓存的属性保留至少 n 秒。 n 秒之后, CacheFS 检查在后端文件系统的文件修改时间是否更改。如果已经更改,所有有关文件的信息从高速缓存清除并且从文件系统检索新的数据。缺省值是 30 秒。

  actimeo=n

  设置 acregmin、acregmax、acdirmin、和 acdirmax 为 n。

  backfstype=file_system_type

  上一个文件系统的文件类型(例如,nfs)。

  backpath=path

  指定后端文件系统已经安装的位置。如果此参数未提供,CacheFS 确定后端文件系统的安装点。

  cachedir=directory

  高速缓存目录名。

  cacheid=ID

  ID 是指定高速缓存的特殊实例的字符串。如果不指定高速缓存 ID, CacheFS 将创建一个。

  demandconst

  启用最大的高速缓存一致性校验。缺省情况下,周期性的一致性校验启用。当启用 demandconst, 检查每一个读和写。

  注:

  注:如果此选项是在加载特定 CacheFS 之后首次使用,还必须为后续加载对其进行指定。高速缓存控制文件中存储有状态信息,用于强制对该选项进行一致的使用。

  local_access

  导致前端文件系统解释方式位,这些方式位用来访问校验或使前端文件系统验证访问许可权。此参数不能和安全 NFS 一起使用。

  noconst

  禁用高速缓存一致性校验。缺省情况下,周期性的一致性校验启用。只有在知道上一个文件系统不修改时,指定 noconst。尝试使用 cfsadmin-s 进行高速缓存一致性校验将发生错误。demandconst 和 noconst 互相排斥。

  注:

  注:如果此选项是在加载特定 CacheFS 之后首次使用,还必须为后续加载对其进行指定。高速缓存控制文件中存储有状态信息,用于强制对该选项进行一致的使用。

  purge

  为指定的文件系统清除所有的高速缓存信息。

  注:

  注:如果此选项是在加载特定 CacheFS 之后首次使用,还必须为后续加载对其进行指定。高速缓存控制文件中存储有状态信息,用于强制对该选项进行一致的使用。

  rw | ro

  读-写(缺省值)或只读。

  suid | nosuid

  允许(缺省值)或不允许 set-uid 执行

  write-around | non-shared

  CacheFS 的写方式。write-around 方式(缺省值)处理写的方式与 NFS 相同;也就是,写到后端文件系统,并且从高速缓存清除影响的文件。当确信没有其他人要写到高速缓存文件系统时,可以使用非共享方式。

  注:

  注:如果此选项是在加载特定 CacheFS 之后首次使用,还必须为后续加载对其进行指定。高速缓存控制文件中存储有状态信息,用于强制对该选项进行一致的使用。

  -V 安装 CacheFS 文件系统。

  示例

  1. 要列出安装的文件系统,请输入:

  mount

  此命令产生的结果与下面相似:

  node mounted mounted vfs date options over

  ---- ------- --------- --- ------------ ------- ---------

  /dev/hd0 / jfs Dec 17 08:04 rw, log =/dev/hd8

  /dev/hd3 /tmp jfs Dec 17 08:04 rw, log =/dev/hd8

  /dev/hd1 /home jfs Dec 17 08:06 rw, log =/dev/hd8

  /dev/hd2 /usr jfs Dec 17 08:06 rw, log =/dev/hd8

  sue /home/local/src /usr/code nfs Dec 17 08:06 ro, log =/dev/hd8

  对每个文件系统,mount 命令列出节点名、设备名、安装在什么下、虚拟-文件-系统类型、安装的日期和时间、和选项。

  2. 要安装所有缺省文件系统,请输入:

  mount all

  此命令序列在带有 mount=true 属性标记的 /etc/filesystems 文件安装所有的标准文件系统。

  3. 要安装远程目录,请输入:

  mount -n nodeA /home/tom.remote /home/tom.local

  此命令序列安装 nodeA 上的 /home/tom.remote 目录到本地 /home/tom.local 目录。假定缺省值是 VfsName parameter=remote, 它必须在 /etc/vfs 文件中定义。

  4. 要从具有特定类型的 /etc/filesystems 文件安装文件或目录,请输入:

  mount -t remote

  此命令序列在有包含type=remote 属性的节的/etc/filesystems 文件安装所有的文件或目录。

  5. 要 CacheFS 安装已经在 /usr/abc 安装 NFS 的文件系统,请输入:

  mount -V cachefs -o backfstype=nfs,backpath=/usr/abc,

  cachedir=/cache1 server1:/user2 /xyz

  安装命令执行后,与下面相似的行出现在 /etc/mnttab 文件:

  server1:/user2 /usr/abc nfs

  /usr/abc /cache1/xyz cachefs backfstype=nfs

  6. 要安装抽点转储,输入:

  mount -o snapshot /dev/snapsb /home/janet/snapsb

  此命令安装包含/dev/snapsb 设备的抽点转储到 /home/janet/snapsb 目录。

  7. 要安装抽点转储并创建抽点转储,输入:

  mount -o snapto=/dev/snapsb /dev/sb /home/janet/sb

  该命令将包含在 /dev/sb 设备上的文件系统安装到 /home/janet/sb 目录,并为 /dev/snapsb 设备上的文件系统创建快照。

  8. 作为本地文件系统访问 SMB 服务器上的文件,输入:

  mount -v cifs -n pezman/user1/pass1 -o uid=201,fmode=750 /home /mnt

  文件

  /etc/filesystems 列出已知文件系统并且定义它们的特征。

  /etc/vfs 包含虚拟-文件-系统类型的描述。

 

(2011-11-28 17:08) [编辑] [删除]

mount命令小结

                  mount命令小结

在阅读本文之前,我假设你已经对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/modules/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/modules/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/modules/2.6.26.5-45.fc9.i686/kernel/drivers/block/cryptoloop.ko
/lib/modules/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参数。

over~

 

 

 

阅读(599) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~