Centos7下挂载NTFS文件系统

NTFS (New Technology File System),是Windows NT家族(如,Windows 2000、Windows XP、Windows Vista、Windows 7和 windows 8.1)等的限制级专用的文件系统,针对FAT和HPFS作了若干改进,例如,支持元数据,并且使用了高级数据结构,以便于改善性能、可靠性和磁盘空间利用率,并提供了若干附加扩展功能。属于商业的文件系统。Linux 默认不支持,但是我们可以通过ntfs-3g 来使Linux 识别 NTFS 并进行读写。

1.官方关于ntfs-3g 的介绍:NTFS-3G is a stable, full-featured, read-write NTFS driver for Linux, Android, Mac OS X, FreeBSD, NetBSD, OpenSolaris, QNX, Haiku, and other operating systems. It provides safe handling of the Windows XP, Windows Server 2003, Windows 2000, Windows Vista, Windows Server 2008, Windows 7 and Windows 8 NTFS file systems. A high-performance alternative, called Tuxera NTFS is available for embedded devices and Mac OS X.

如果想要自行通过源码编译安装,系统需要安装基本的编译工具(gcc compiler, libc-dev libraries

(1)源码(Stable Source Release 2015.3.14)下载:

wget https://tuxera.com/opensource/ntfs-3g_ntfsprogs-2015.3.14.tgz

(2)解压并编译安装:

tar -xzf ntfs-3g_ntfsprogs-2015.3.14.tgz
cd ntfs-3g_ntfsprogs-2015.3.14
./configure
make
make install   #非root 用户可使用 sudo make install 安装

(3)使用方法:

某一次的挂载:mount -t ntfs-3g /dev/DEVICE /mnt
(-t 指定挂载格式,DEVICE名称可以通过fdisk -l 去查找)

开机自动挂载:
将 /dev/DEVICE /mnt ntfs-3g defaults 0 0 写入到 /etc/fstab 文件中
或者 echo "/dev/sda1 /mnt/windows ntfs-3g defaults 0 0 " >> /etc/fstab (注意使用 '>> ’ 追加重定向,使用 ‘>’ 会将/etc/fstab文件覆盖,当然,修改/etc/fstab 文件需要root 权限)

使用rpm包安装:
因使用的CentOS7(基于RHEL7),可到 download.fedora.redhat.com/pub/fedora/epel/7/x86_64/n/ntfs-3g-2015.3.14-2.el7.x86_64.rpm 下载rpm文件
rpm -ivh ntfs-3g-2015.3.14-2.el7.x86_64.rpm
使用方法同上不再赘述

Ps:在使用gnome桌面挂载U盘的时候发现,系统可以识别NTFS 分区的存在,但是通过桌面无法自动挂载,系统会提示:
Error mounting /dev/sdb1 at /run/media/lenovo/v220w: Command-line `mount -t “ntfs” -o “uhelper=udisks2,nodev,nosuid,uid=1000,gid=1000,dmask=0077,fmask=0177” “/dev/sdb1” “/run/media/lenovo/v220w”’ exited with non-zero exit status 32: mount: unknown filesystem type ‘ntfs’
mount 提示未知的文件系统类型 ‘ntfs’
解决办法:
$ mount[Tab][Tab] #连续按两次 Tab 键作命令补齐
mount mount.glusterfs mount.nfs4 mountstats
mount.cifs mount.lowntfs-3g mount.ntfs-3g
mount.fuse mount.nfs mountpoint
可以看到只有mount.ntfs-3g,在使用 mount -t 挂载ntfs 时 mount 会调用 mount.ntfs-3g 而非默认的 mount.ntfs
$ locate mount.ntfs-3g #查找有关文件所在位置
/usr/local/share/man/man8/mount.ntfs-3g.8
/usr/sbin/mount.ntfs-3g
$ sudo ln -s /usr/sbin/mount.ntfs-3g /usr/sbin/mount.ntfs #创建软链接
之后就可以自动识别U 盘而不会出现如上报错了。。。

_
Centos7下挂载NTFS文件系统

地址:http://www.it610.com/article/3368930.htm

### 判断操作系统的实现方法 可以通过 Java 提供的 `System.getProperty` 方法获取当前运行的操作系统名称,从而判断其是 Windows 还是 Linux。以下是具体的实现方式: #### 使用 `os.name` 属性 通过调用 `System.getProperty("os.name")` 获取操作系统的名称,并对其进行字符串匹配以区分操作系统。 ```java public class OSIdentifier { public static void main(String[] args) { String os = System.getProperty("os.name").toLowerCase(); if (os.contains("win")) { System.out.println("当前运行环境为 Windows"); } else if (os.contains("nix") || os.contains("nux") || os.contains("aix")) { System.out.println("当前运行环境为 Linux 或 Unix 类型系统"); } else { System.out.println("无法识别的操作系统:" + os); } } } ``` 上述代码利用了 `os.name` 返回值的特点[^4],即对于 Windows 系统返回的内容通常包含 "win" 字样;而对于 Linux/Unix 系统,则可能包含 "nix" 或 "nux" 等字样。 #### 文件路径分隔符的区别 除了通过 `os.name` 来判断外,还可以借助文件路径分隔符的不同特性进一步确认。Windows 和 Linux 的文件路径分隔符分别为 `\` 和 `/`。可以使用以下代码验证这一点: ```java String fileSeparator = System.getProperty("file.separator"); if ("\\".equals(fileSeparator)) { System.out.println("当前运行环境为 Windows, 文件分隔符为 \\" ); } else if ("/".equals(fileSeparator)) { System.out.println("当前运行环境为 Linux 或其他类 UNIX 系统, 文件分隔符为 / "); } else { System.out.println("未知操作系统或特殊环境"); } ``` 此部分逻辑基于不同平台下默认使用的文件路径分隔符差异[^3]。 #### 综合考虑多种属性 为了更全面地检测操作系统类型及其特征,也可以综合多个系统属性来进行分析。例如结合 `line.separator`, `path.separator` 及其他的特定于某些OS的行为模式一起评估。 --- ### 总结说明 以上两种主要手段均能有效辨别目标机器所处的具体工作环境——无论是基于 NT 内核架构设计而成并采用 FAT32 或 NTSF 作为硬盘存储标准格式之一的 Microsoft Windows 平台 [^2]; 抑或是以内建 Shell 工具为核心组件且倾向于选用 ext2/ext3 文件系统加上额外 swap 分区配置方案构建起来 GNU/Linux 发行版家族成员代表作们之中的一员 [^1]. 最终推荐优先选择第一种直接读取 `os.name` 值的方式完成此项任务因为它的简洁性和可靠性较高. ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值