gol*_*les 7 permissions rsync ntfs
在我的 Web 开发工作中,我几乎只使用 Ubuntu。但有时我需要启动 Windows——在 IE 中检查布局,在 Photoshop 中重新切片合成——并且我希望能够在两者之间共享我的整个本地主机环境。
这是我目前的工作流程:
在 Ubuntu 中:
/var/www到/windows/wamp/www(其中 /windows 是我在 fstab 中设置的 Windows NTFS 分区的安装位置)。/var/lib/mysql到/windows/wamp/bin/mysql/{mysql version}/data.关闭,启动 Windows,编辑文件,保存,再次重新启动。返回 Ubuntu,查找更改的文件并将 rsync 返回到/var/www,忽略将文件移动到 NTFS 分区时发生的权限更改。
我不喜欢保留整个开发环境的两个副本,也不喜欢手动同步它们。理想情况下,我想将我的整个 /var/www 文件夹复制到 Windows 分区并符号链接到它,并对我的数据库执行相同的操作。但是,这样做时发生的权限更改会导致无休止的头痛。
所以我的问题分为两部分,我想:
或者,
如果该分区与 ubuntu 和 windows 共享,则可以使用 ntfs-3g.usermap 创建用户映射文件。
假设分区是 /dev/sdXn 挂载在 /NTFS
1)卸载分区
sudo umount /dev/sdXn
Run Code Online (Sandbox Code Playgroud)
2)运行ntfs-3g.usermap(它会在当前目录创建一个文件UserMapping)
sudo ntfs-3g.usermap /dev/sdXn
Run Code Online (Sandbox Code Playgroud)
3)重新安装
sudo mount /dev/sdXn
Run Code Online (Sandbox Code Playgroud)
4)* 复制 UserMapping 文件
sudo mkdir /NTFS/.NTFS-3G
sudo cp UserMapping /NTFS.NTFS-3G/
Run Code Online (Sandbox Code Playgroud)
现在一切正常。至少它在 Ubuntu 11.10 中对我有用
最新的 (23.12.2015) Tuxera 页面建议复制到/.NTFS-3G/:
生成的映射文件写入当前目录中的文件 UserMapping 中。为了文件可用,首先挂载卷,然后将UserMapping复制到挂载目录中的/.NTFS-3G/UserMapping,然后卸载卷并重新挂载。
所以像这样:
sudo mkdir /.NTFS-3G
sudo cp UserMapping /.NTFS-3G/
Run Code Online (Sandbox Code Playgroud)
好吧,你有几个选择。
首先,您可以尝试 fsdriver
http://sourceforge.net/projects/ext2read/
我不知道该驱动程序的工作效果如何,但如果可以的话,我会按照您主要使用 Ubuntu 的方式走这条路。
另一种选择是使用 Linux 权限挂载 ntfs 分区。您需要在 fstab 中添加一行类似于
UUID=12102C02102CEB83 /media/windows ntfs-3g auto,users,permissions 0 0
Run Code Online (Sandbox Code Playgroud)
将您的 uuid 更改为您的 Windows 分区(使用sudo blkid)
假设可行,您可以使用链接或挂载绑定(同样,fstab 中的条目)
/media/windows/www /var/www none defaults,bind 0 0
Run Code Online (Sandbox Code Playgroud)
第二种方法的缺点是如果文件系统有问题,ubuntu 不会调试 ntfs 分区。
编辑:另一种可能的解决方案 - 在 Virtualbox(或 KVM)中运行 Windows 并使用共享文件夹或网络共享(samba)。
祝你好运
| 归档时间: |
|
| 查看次数: |
14097 次 |
| 最近记录: |