在我的 Web 开发工作中,我几乎只使用 Ubuntu。但有时我需要启动 Windows(在 IE 中检查布局,在 Photoshop 中重新切片合成),并且我希望能够在两者之间共享我的整个本地主机环境。
这是我当前的工作流程:
在 Ubuntu 中:
- 将我正在处理的站点的目录从 rsync 复制
/var/www
到/windows/wamp/www
(其中 /windows 是我的 Windows NTFS 分区在 fstab 中设置的挂载位置)。 - 将 mysql 数据库从 rsync
/var/lib/mysql
到/windows/wamp/bin/mysql/{mysql version}/data
。
关机、启动 Windows、编辑文件、保存、重新启动。返回 Ubuntu,查找已更改的文件并 rsync 返回/var/www
,忽略将文件移动到 NTFS 分区时发生的权限更改。
我不喜欢保留整个开发环境的两个副本,也不喜欢手动同步它们。理想情况下,我想将整个 /var/www 文件夹复制到 Windows 分区并符号链接到它,然后对我的数据库执行相同的操作。但这样做时发生的权限更改会带来无穷无尽的麻烦。
所以我的问题分为两部分:
- 有没有办法将文件从 ext4 驱动器分区复制到 NTFS 分区,并以可以同步的方式维护 Unix 权限?
或者,
- 有没有更好的方法在 Windows 和 Linux 分区之间共享整个本地主机环境?
答案1
如果该分区正在与 ubuntu 和 windows 共享,则可以使用 ntfs-3g.usermap 创建用户映射文件。
假设分区是 /dev/sdXn,安装在 /NTFS
1)卸载分区
sudo umount /dev/sdXn
2)运行 ntfs-3g.usermap(它将在当前目录中创建一个文件 UserMapping)
sudo ntfs-3g.usermap /dev/sdXn
3)重新挂载
sudo mount /dev/sdXn
4)*复制UserMapping文件
sudo mkdir /NTFS/.NTFS-3G
sudo cp UserMapping /NTFS.NTFS-3G/
现在一切都应该正常工作了。至少在 Ubuntu 11.10 中它对我来说是有效的
最新 (2015.12.23)Tuxera 页面建议抄送给/.NTFS-3G/
:
生成的映射文件写入当前目录中的 UserMapping 文件。要使用该文件,请先挂载该卷,然后将 UserMapping 复制到挂载目录中的 /.NTFS-3G/UserMapping,然后卸载该卷并再次挂载。
像这样:
sudo mkdir /.NTFS-3G
sudo cp UserMapping /.NTFS-3G/
答案2
嗯,你有几个选择。
首先,你可以尝试 fsdriver
http://sourceforge.net/projects/ext2read/
我不知道该驱动程序运行得如何,但如果可以的话,我会选择那条路线,因为您主要使用 Ubuntu。
另一个选项是使用 Linux 权限挂载 ntfs 分区。您需要在 fstab 中添加一行,类似于
UUID=12102C02102CEB83 /media/windows ntfs-3g auto,users,permissions 0 0
将您的 uuid 更改为您的 Windows 分区(使用sudo blkid
)
假设有效,您可以使用链接或挂载绑定(再次,fstab 中的条目)
/media/windows/www /var/www none defaults,bind 0 0
第二种方法的缺点是,如果文件系统有问题,ubuntu 将不会调试 ntfs 分区。
编辑:另一个潜在的解决方案 - 在 Virtualbox(或 KVM)中运行 Windows 并使用共享文件夹或网络共享(samba)。
祝你好运
答案3
这对我有用的 Lubuntu 15.10
- 打开终端
Ctrl+Alt+T
- 卸载 ntfs 驱动器(将 sdx 替换为您的驱动器;我的是 sda3)
sudo 卸载 /dev/sdx
- 编辑 fstab 以便使用 ntfs-3g(ubuntu 预装了 leafpad;在其他 ditro 中您可能使用 gedit 或其他文本编辑器)
sudo leafpad /etc/fstab
- 从 ntfs 更改为 ntfs-3g。类似这样:
#/dev/sdx 的条目:
UUID=38444444444004444 /mnt/磁盘名称 ntfs-3g默认,自动 0 0
保存并关闭
安装所有驱动器
sudo 安装 -a
- 使用 root 权限打开文件浏览器。(lubutu 附带安装了 pcmanfm,但是对于其他发行版,您可能安装了另一个文件浏览器)
sudo pcmanfm
- 导航到所需的文件夹并右键单击它,文件属性窗口将打开。转到权限选项卡并选择您需要的内容。
- 单击“确定”,然后一切都应该如您所愿。(我也重新启动了,但我认为没有必要)