linux的mount(挂载)命令详解

最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

资料预览

给大家整理的视频资料:

给大家整理的电子书资料:

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

和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。当然也可以到 www.samba.org网站下载…新的版本是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
 
下面给大家整理下排版较好的

本文介绍mount命令的用法,以及技巧光盘镜像文件、移动硬盘及U盘的方法。

一,挂接命令(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)。

二,挂接光盘镜像文件
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盘,用如下命令挂载:

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

(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盘,用如下命令挂载:

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以点击这里获取!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

<think>好的,我需要回答用户关于Linux磁盘挂载命令的问题。首先,用户提到了几个引用,我需要仔细看看这些引用里的内容是否有帮助。 根据引用[1],提到了mount、umount、/etc/fstab、netfs等工具。其中mount和umount是主要的手动挂载命令。引用[3]中给出了具体的mount命令示例,比如mount /dev/sdb1 /mnt/sdb,以及mount -a用于挂载所有在/etc/fstab中定义的文件系统。引用[4]提到Linux只有一个根目录,分区作为文件系统的一部分,所以挂载点通常是根目录下的某个目录。引用[5]提到了挂载磁盘命令和grub.conf中的根目录设置,这可能和启动时的挂载有关。 用户需要的是命令示例和使用方法,所以应该重点整理mount和umount的基本用法,以及/etc/fstab的配置。可能需要分步骤说明,比如如何查看磁盘、创建挂载点、挂载、检查挂载状态,然后自动挂载的设置。同时,需要注意使用正确的格式,比如行内数学表达式用$...$,独立公式用$$...$$,但这里可能不需要数学公式,所以可能主要用代码块来展示命令示例。 还要确保回答结构清晰,按照用户的要求分步骤说明。同时生成相关问题,比如如何永久挂载、扩容文件系统等,参考用户提供的引用中的内容。需要检查引用是否正确对应,例如引用[3]提到了根目录扩容,可能可以作为相关问题之一。 最后,按照系统级指令,所有行内表达式用$...$,但这里的命令示例不需要数学表达式,所以可能不需要处理。但如果有变量或参数的话,可能需要使用。例如,如果有分区大小之类的数学表达,但这里可能不涉及。所以主要关注命令的正确展示和引用标注。</think>以下是Linux磁盘挂载命令的详细说明及示例: ### 一、基础挂载命令 1. **查看磁盘信息** 使用`lsblk`或`fdisk -l`查看磁盘及分区: ```bash $ lsblk # 显示块设备树形结构 $ fdisk -l /dev/sdb # 查看指定磁盘分区信息[^2] ``` 2. **创建挂载目录** 挂载点需为空目录,例如创建`/mnt/data`: ```bash $ mkdir -p /mnt/data ``` 3. **手动挂载分区** 使用`mount`命令临时挂载(重启失效): ```bash $ mount /dev/sdb1 /mnt/data # 将分区/dev/sdb1挂载到/mnt/data[^3] ``` 4. **检查挂载结果** 通过`df -h`或`mount | grep sdb1`验证: ```bash $ df -h # 显示已挂载文件系统的磁盘使用情况 ``` --- ### 二、自动挂载配置 1. **编辑`/etc/fstab`文件** 添加以下行实现开机自动挂载(格式:设备路径 挂载点 文件系统类型 挂载选项 备份标记 检查顺序): ```bash /dev/sdb1 /mnt/data ext4 defaults 0 0 ``` 2. **应用配置** 使用`mount -a`立即挂载所有`/etc/fstab`中定义的文件系统: ```bash $ mount -a # 加载所有未挂载的分区[^3] ``` --- ### 三、卸载磁盘 使用`umount`命令卸载: ```bash $ umount /mnt/data # 通过挂载点卸载 $ umount /dev/sdb1 # 通过设备路径卸载[^1] ``` --- ### 四、扩展场景示例 1. **挂载ISO文件** ```bash $ mount -o loop /path/to/image.iso /mnt/iso ``` 2. **挂载网络共享(NFS)** ```bash $ mount -t nfs 192.168.1.100:/shared /mnt/nfs ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值