➜  WORKING_DIRECTORY repo init -u https://android.googlesource.com/platform/manifest -b android-7.1.1_r35
Traceback (most recent call last):
  File "/mnt/winShare/worksp/asop/WORKING_DIRECTORY/.repo/repo/main.py", line 531, in <module>
    _Main(sys.argv[1:])
  File "/mnt/winShare/worksp/asop/WORKING_DIRECTORY/.repo/repo/main.py", line 507, in _Main
    result = repo._Run(argv) or 0
  File "/mnt/winShare/worksp/asop/WORKING_DIRECTORY/.repo/repo/main.py", line 180, in _Run
    result = cmd.Execute(copts, cargs)
  File "/mnt/winShare/worksp/asop/WORKING_DIRECTORY/.repo/repo/subcmds/init.py", line 399, in Execute
    self._SyncManifest(opt)
  File "/mnt/winShare/worksp/asop/WORKING_DIRECTORY/.repo/repo/subcmds/init.py", line 234, in _SyncManifest
    clone_bundle=not opt.no_clone_bundle):
  File "/mnt/winShare/worksp/asop/WORKING_DIRECTORY/.repo/repo/project.py", line 1231, in Sync_NetworkHalf
    self._UpdateHooks()
  File "/mnt/winShare/worksp/asop/WORKING_DIRECTORY/.repo/repo/project.py", line 2312, in _UpdateHooks
    self._InitHooks()
  File "/mnt/winShare/worksp/asop/WORKING_DIRECTORY/.repo/repo/project.py", line 2341, in _InitHooks
    os.symlink(os.path.relpath(stock_hook, os.path.dirname(dst)), dst)
OSError: [Errno 13] Permission denied

可以看到创建symlink的时候出问题了。
所以,我们换一个姿势看报错:

➜  winShare ln -s /home/test/sublime /mnt/winShare/
ln: 无法创建符号链接'/mnt/winShare/sublime': 权限不够
➜  winShare sudo ln -s /home/test/sublime /mnt/winShare/
[sudo] test 的密码: 
ln: 无法创建符号链接'/mnt/winShare/sublime': 不支持的操作

在摸索的过程中发现了一个闪光点:

因为在linux中使用虚拟VMware共享工具访问了Windows的共享文件实际上为另一个分区;
而单单”ln”命令,则建立一个硬链接,硬链接是不能跨分区,所以会产生错误。

然而,我这里用的是软链接,软链接可是号称可以在交叉文件系统(即跨不同文件系统,如ext4和ntfs)中创建的。

由于CIFS协议的特性,不支持你在远程文件系统上更改inides。所以,软链接不能直接在cifs文件系统上创建。

使用Windows Services for Unix可以帮你实现这个操作。目前最新版本是很多年以前的sfu3.5。

错误提示➜ WORKING_DIRECTORY repo init -u https://android.googlesource.com/platform/manifest -b android-7.1.1_r35Traceback (most recent call last): File "/mnt/winShare/worksp/asop/WORKING_DIRECTORY/.rep 1.在文件夹re po 中执行git init 新建git仓库 2. 在 re po 目录 下执行git config --local receive.denyCurrentBranch updateInstead 3. 执行git config --global sendpack.sideband false 4. 在re po 的上级 目录 中执行git daemon --re... sshfs zhangsan@192.168.0.1:/home/zhangsan/remote_folder /home/zhangsan/local_folder # the first one is remote folder, the second one is local folder 我们在本地Ubuntu就可以往远
在python 中有很多模块,是别人编写好的代码,我们可以直接使用,这样就方便了我们使用python 完成任务。 在使用模块前我们先要调用该模块(又叫导包,导模块),只有这样我们才能使用这些模块的功能。 导包、导模块: im po rt 模块名称|包名称 im po rt 包名称.xx.xxx im po rt xx.xxx.xx as xxxx from 包名称.xxx.xxx im po rt x...
一、 Linux 挂载 Windows 磁盘 Ubuntu的虚拟磁盘呈指数级增长,这给我空间本身不是很充裕的PC造成了很大的压力,为了避免一次又一次无休止的扩容操作,毅然决定使一种方式让他们 共享 。下面就介绍一种 linux 挂载 windows 某个文件夹来作为工作 目录 。 1、虚拟机(VMware)设置 共享 目录 : 菜单栏-->虚拟机-->设置-->选项:启用 共享 并配置一个本地 目录 ,其中名称...
Android的源代码使用Re po 命令行工具来管理多个git仓库,大概有百多个。要想克隆和管理百多个 Git 仓库,不是一件简单的事情。Re po 命令行工具对 Git 部分命令封装,将百多个 Git 库有效的 进行 组织。 Windows 下Re po 安装 re po 原本是谷歌搞的一个方便下载AOSP的工具基于git,但由于种种原因不能直接在 Windows 上使用。但好在有wi...
共享 文件夹找不到? 网上让重装vm-tools的方法都没用的。现在VMware针对大部分系统已经自动安装了。 查看/mnt 目录 是否有hgfs子 目录 ,如果没有则需要手动 挂载 sudo vmhgfs-fuse .host:/ /mnt/hgfs sudo -s cd /mnt/hgfs 就可以看到 共享 文件内容了 普通用户无法查看和操作 共享 文件夹? 在root下chmod更改权限是没有用的,正...
2020真是魔幻的一年,受疫情影响,大家年后一段时间都远程办公了。奈何很多同事在家没有 Linux 开发环境,想在 Windows 上通过re po 工具下载Android源码简直比登天还难。 网上搜来受去没几个讲透彻的,今天给大家整活。按下面步骤来,保证OK,我们最终以 re po init 执行成功为目标。 一、安装Git for Windows 先到官网(https://git-scm.com... 3. 挂载 共享 目录 ,如: sudo mount -t cifs //192.168.1.100/share /mnt/win_share -o username=user,password=pass 其中 //192.168.1.100/share 是 Windows 共享 目录 的地址,username 和 password 是 Windows 用户名和密码。 如需持久 挂载 ,可以在 /etc/fstab 文件中添加如下一行 //192.168.1.100/share /mnt/win_share cifs username=user,password=pass 0 0 如果遇到权限问题,可以在 mount 命令中添加参数 -o uid=1000,gid=1000(1000为 linux 用户的uid和gid) 挂载 成功后,在 /mnt/win_share 目录 中就能访问 Windows 共享 目录 中的文件了。 ### 回答2: Linux Windows 是两个不同的操作系统,它们的文件系统和网络协议也是不同的,因此在 Linux 上访问 Windows 共享 目录 需要特定的 挂载 操作。 首先,确保 Linux 系统中samba软件已经安装,如果没有安装,需要使用以下命令安装: sudo apt-get install samba 然后, 创建 一个本地 目录 ,用于 挂载 Windows 共享 目录 。假设我们要在 Linux 下访问 Windows 共享 目录 “//192.168.0.100/shared”,我们可以在 Linux 系统上使用以下命令 创建 本地 目录 : sudo mkdir /mnt/winshare 接下来,编辑samba的配置文件“/etc/samba/smb.conf”,在文件的末尾添加以下内容: [winshare] path = //192.168.0.100/shared valid users = username read only = yes 其中,“winshare”是 共享 目录 的名称,”//192.168.0.100/shared“是 Windows 共享 目录 的路径,”username“是这个 共享 目录 的拥有者名称。 然后在命令行中输入以下命令以验证samba配置是否正确: sudo testparm 如果没有发现配置错误,就可以 挂载 Windows 共享 目录 了。使用以下命令在 Linux 挂载 Windows 共享 文件夹: mount -t cifs //192.168.0.100/shared /mnt/winshare -o username=username,password=password 其中,“username”和“password”是 Windows 共享 目录 的有效用户凭据。我们可以使用以下命令检查 目录 是否已 挂载 : mount | grep winshare 现在,我们就可以在 Linux 系统中打开“/mnt/winshare” 目录 来查看 Windows 共享 文件夹中的文件了。如果想要在系统启动时自动 挂载 Windows 共享 目录 ,可以在“/etc/fstab”文件中添加以下行: //192.168.0.100/shared /mnt/winshare cifs username=username,password=password 0 0 这样,在系统启动时,就会自动 挂载 Windows 共享 目录 了。 ### 回答3: 挂载 Windows 共享 目录 是在 Linux 系统中使用远程 共享 文件的方式之一,可以使 Linux 系统和 Windows 系统之间在文件 共享 方面实现互通。这里介绍了使用SMB/CIFS协议 进行 挂载 Windows 共享 目录 的方法。 1. 首先,在 Linux 系统下需要安装SMB/CIFS客户端。可以通过运行以下命令来 进行 安装: sudo apt-get update sudo apt-get install cifs-utils 2. 然后, 创建 一个用来 挂载 Windows 共享 目录 的本地文件夹,比如: sudo mkdir /mnt/winshare 3. 接下来,使用以下命令 进行 挂载 : sudo mount -t cifs // windows PC/sharename /mnt/winshare -o username= windows _username,password= windows _password 其中,`// windows PC/sharename` 指定了要 挂载 的主机以及 共享 名称;`/mnt/winshare` 是指将 共享 目录 挂载 到的本地 目录 ;`username`和`password`参数分别是 Windows 系统的用户名和密码。 4. 成功 挂载 后,可以通过执行以下命令来查看 共享 的内容列表: ls /mnt/winshare 5. 若要取消 挂载 ,则可以执行以下命令: sudo umount /mnt/winshare 需要注意的是,要确保 Windows 系统上的 共享 目录 是可用的,且已经设置了适当的文件 共享 权限。同时,可以将 挂载 命令添加到 `/etc/fstab` 文件中,实现开机自动 挂载 。 最后需要提醒的是,这种方法虽然方便实现 Windows Linux 文件 共享 ,但是在网络中传输数据时可能存在安全风险,建议仅在安全可信的网络环境下使用。 错误:UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode的解决方案 35426