『学了就忘』Linux基础命令 — 39、挂载U盘和挂载NTFS分区

1、在Linux系统中挂载U盘

(1)插入U盘

我们需要把鼠标点入虚拟机里,在插入U盘,虚拟机才能识别新插入的U盘,否则U盘会被真实机识别。虚拟机识别U盘后会出现如下提示。

image

还要注意一点,在真实机的安装完虚拟机之后,会有几个服务会被开启,如下图所示:

image

其中VMware USB Arbitration Service服务一定要开启,否则上边操作,虚拟机也不能识别出U盘。

(2)查询U盘设备文件名

U盘会和硬盘共用设备文件名,所以U盘的设备文件名不是固定的(U盘编号在硬盘后边顺延),需要手工查询。

查询命令:

# 查询硬盘(查询系统中已识别的硬盘,先能识别,才能挂载。)
[root@localhost ~]# fdisk -l

下图就是U盘的信息:

image

可以看到这个8GB的U盘被识别为sdb4。这个是Linux系统自动识别的,识别成什么名称就用什么名称。

(3)挂载U盘

挂载命令如下:

# 创建挂载空目录
[root@localhost mnt]# mkdir usb


# 挂载U盘。
# 因为U盘在Windows分区中是FAT32文件系统格式,
# 在Linux系统中识别是vfat 文件系统格式
[root@localhost ~]# mount -t vfat /dev/sdb4 /mnt/usb/

(4)U盘中的中文乱码

如果U盘中有中文,会发现中文是乱码。Linux要想正常显示中文,需要两个条件:

  • 安装了中文编码和中文字体
  • 操作终端需要支持中文显示(纯字符终端<Linux系带的终端>,是不支持中文编码的)

而我们当前系统是安装了中文编码和字体,而XShell远程终端是Windows下的程序,当然是支持中文显示的。那之所以挂载U盘还出现乱码,是需要在挂载的时候,手工指定中文编码,例如:

# 挂载U盘,指定中文编码格式为UTF-8,加入-o iocharset=utf8(手工指定挂载之后文件的字符编码)
[root@localhost ~]# mount -t vfat -o iocharset=utf8 /dev/sdb1 /mnt/usb/

# 注意:需要先卸载,再重新挂载。

(5)U盘卸载

可以执行以下命令:

[root@localhost ~]# umount /mnt/usb/

之前说Linux系统的vfat代表fat32文件系统,在Windows系统中fat32文件系统并没有被淘汰,但是Windows系统中最常用的文件系统是NTFS。

在LInux系统默认不识别NTFS分区的,下面说一下Linux系统如何识别挂载NTFS分区,但是要注意,即使能识别并挂载,也是只读的。

2、在Linux系统中挂载NTFS分区

提示:Linux系统中不能直接读取NTFS和FAT文件系统内容,也只能通过mount等命令读取Windows系统中的NTFS和FAT文件系统的内容。

(1)Linux的驱动加载顺序

  • (1)驱动直接放入系统内核之中。这种驱动主要是系统启动加载必须的驱动,数量较少。
  • (2)驱动以模块的形式放入硬盘。大多数驱动都已这种方式保存,保存位置在/lib/modules/3.10.0-862.el7.x8664/kernel/中。(Linux系统中以.ko结尾的文件就是驱动文件)
  • (3)驱动可以被Linux识别,但是系统认为这种驱动一般不常用,默认不加载。如果需要加载这种驱动,需要重新编译内核,而NTFS文件系统的驱动就属于这种情况。
  • (4)硬件不能被Linux内核识别,需要手工安装驱动。当然前提是厂商提供了该硬件针对Linux的驱动,否则就需要自己开发驱动了。

如果你给标准的服务器安装系统,绝大对数的驱动都是以前两种方式就安装好了的。装完系统后,基本上不需要在单独安装驱动程序。

(2)使用NTFS-3G安装NTFS文件系统模块

如果要识别NTFS文件系统,也非必须重新编译Linux系统内核,那样做非常的麻烦。用下面第三方软件即可解决,非常方便。

具体安装命令如下:

# 解压
[root@localhost ~]# tar -zxvf ntfs-3g_ntfsprogs-2013.1.13.tgz

# 进入解压目录
[root@localhost ~]# cd ntfs-3g_ntfsprogs-2013.1.13

# 编译器准备。没有指定安装目录,安装到默认位置中
[root@localhost ntfs-3g_ntfsprogs-2013.1.13] # ./configure

# 编译
[root@localhost ntfs-3g_ntfsprogs-2013.1.13] # make

# 编译安装
[root@localhost ntfs-3g_ntfsprogs-2013.1.13] # make install

安装就完成了,已经可以挂载和使用Windows的NTFS分区了。不过需要注意挂载分区时的文件系统不是ntfs,而是ntfs-3g。(如果是编译Linux系统内核完成的识别NTFS文件系统,就用ntfs,而不是用ntfs-3g。)

挂载命令如下:

[root@localhost ~]# mount -t ntfs-3g 分区设备文件名 挂载点

# 例如:
[root@localhost ~]# mount -t ntfs-3g /dev/sdb1 /mnt/win

注意:就是能识别NTFS分区,也是只读的。

posted @ 2021-11-12 16:53  繁华似锦Fighting  阅读(995)  评论(0编辑  收藏  举报