Make NTFS writable on macOS

前言

NTFS 全称是 New Technology File System,是微软随 Windows NT 系统开发的文件系统,因为版权的问题 macOS 没有开放对 NTFS 的写权限。可是能够经过从新挂载打开写权限,方法以下:javascript

  1. 列出全部的外接存储设备java

    $ diskutil list external
    /dev/disk2 (external, physical):
    #: TYPE NAME SIZE IDENTIFIER
    0:     FDisk_partition_scheme                        *15.9 GB    disk2
    1:               Windows_NTFS DBand                   15.9 GB    disk2s1复制代码
  2. 解挂载而后从新挂载node

    # 解挂载
    $ sudo diskutil umount /dev/disk2s1
    # 从新挂载
    $ sudo mount -o rw,auto,nobrowse -t ntfs /dev/disk2s1 /Volumes/DBand
    # 打开
    $ open /Volumes/DBand复制代码

写个小工具

虽然上述方法比较简单可是对于普通人操做起来仍是比较麻烦的,并且每次都要输命令也比较麻烦。所以打算写个可视化的小工具。react

第一步:列出全部的外接存储设备

经过 diskutil 能够查看存储设备的基本信息,咱们简单的把他封装了下,项目地址:github.com/d-band/ls-u…git

const getMediaList = require('ls-usb');

getMediaList()
  .then(data => {
    console.log(JSON.stringify(data, null, ' '));
  });

/*[{ "udid": "disk2", "name": "UDisk", "type": "Generic", "node": "/dev/disk2", "size": "15.9 GB", "size_bytes": 4026531840, "volumes": [{ "udid": "disk2s1", "mount": "/Volumes/DBand", "size": "15.9 GB", "size_bytes": 15938355200, "name": "DBand", "node": "/dev/disk2s1", "fs_type": "ntfs", "fs_name": "NTFS", "free": "15.9 GB", "free_bytes": 15938355200, "writable": false }] }]*/复制代码

第二步:写个基于 Electron 的小工具

项目地址:github.com/d-band/disk…github

主要技术点:npm

  • Electron:跨平台桌面应用开发工具
  • dool:基于 Webpack 的打包工具
  • React:构建用户界面的 JavaScript 库
  • yax:基于 Redux 的状态容器
  • sudo-prompt:图形化的 sudo 提示框
# 全局安装 dool
$ npm i dool -g

# 安装项目依赖
$ npm i

# 运行 dool 编译 electron-renderer 相关文件
$ npm run dev

# 再打开一个 Tab 启动 electron
$ npm run start复制代码

附个图

Disky:make NTFS writable on macOS
Disky:make NTFS writable on macOS
相关文章
相关标签/搜索