WSL(Ubuntu on Windows)下出现奇怪的/mnt/e

2018-06-10 23:50:16 +08:00
 XIVN1987

电脑上只有 C、D 盘,/mnt 下却又 c、d、e 三个节点,而且向 e 节点拷贝文件竟然能拷贝进去

插上 U 盘后盘符是 E,但它跟 /mnt 下的 e 节点没有关系,因为:

1、即使不插 U 盘,/mnt/e 节点也是存在的,而且能向其中拷贝文件

2、U 盘内的文件在 /mnt/e 节点下看不到,向 /mnt/e 节点拷贝的文件在 U 盘里也看不到

谁知道这是什么情况,/mnt/e 是什么东西??

3274 次点击
所在节点    问与答
11 条回复
ysc3839
2018-06-11 00:21:32 +08:00
执行 mount 看看?
$ mount
rootfs on / type lxfs (rw,noatime)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,noatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,noatime)
none on /dev type tmpfs (rw,noatime,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,noatime,gid=5,mode=620)
none on /run type tmpfs (rw,nosuid,noexec,noatime,mode=755)
none on /run/lock type tmpfs (rw,nosuid,nodev,noexec,noatime)
none on /run/shm type tmpfs (rw,nosuid,nodev,noatime)
none on /run/user type tmpfs (rw,nosuid,nodev,noexec,noatime,mode=755)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noatime)
C: on /mnt/c type drvfs (rw,noatime,uid=1000,gid=1000)
D: on /mnt/d type drvfs (rw,noatime,uid=1000,gid=1000)
E: on /mnt/e type drvfs (rw,noatime,uid=1000,gid=1000)
F: on /mnt/f type drvfs (rw,noatime,uid=1000,gid=1000)
G: on /mnt/g type drvfs (rw,noatime,uid=1000,gid=1000)
H: on /mnt/h type drvfs (rw,noatime,uid=1000,gid=1000)
XIVN1987
2018-06-11 01:15:14 +08:00
@ysc3839
rootfs on / type lxfs (rw,noatime)
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,noatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,noatime)
none on /dev type tmpfs (rw,noatime,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,noatime,gid=5,mode=620)
none on /run type tmpfs (rw,nosuid,noexec,noatime,mode=755)
none on /run/lock type tmpfs (rw,nosuid,nodev,noexec,noatime)
none on /run/shm type tmpfs (rw,nosuid,nodev,noatime)
none on /run/user type tmpfs (rw,nosuid,nodev,noexec,noatime,mode=755)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noatime)
C: on /mnt/c type drvfs (rw,noatime,uid=1000,gid=1000)
D: on /mnt/d type drvfs (rw,noatime,uid=1000,gid=1000)
E: on /mnt/u type drvfs (rw,relatime)

我手动把 E 盘挂到 /mnt/u 上了,,

这里看不到 /mnt/e,,但是 cd 到 /mnt 目录下是能看到 e 的:
wmx@WMX-PC:~$ cd /mnt
c d e u
noe132
2018-06-11 01:42:20 +08:00
然而它就只是个文件夹而已。
真机上手动挂载,都是先手动新建个文件夹,然后再 mount 上去的。只不过它自动帮你 mount 了 c d 盘而已。
e 盘可能以前 mount 过,只是现在是空的罢了。

既然是个文件夹,默认的话就是挂载 / 下的,所有的 io 操作都是对挂载在 /的设备的读写,和你读写其他挂载 /下的东西是一模一样的。

只不过如果一个文件夹有内容,又 mount 上了其他设备,内容会被挂载的设备隐藏,直到 umount。
RqPS6rhmP3Nyn3Tm
2018-06-11 02:01:13 +08:00
看一下 inode ?
ysc3839
2018-06-11 02:03:43 +08:00
@XIVN1987 mount 看不到的话,说明就是存在上一级了,也就是 rootfs。
XIVN1987
2018-06-11 02:18:32 +08:00
@noe132

@ysc3839

我在 /mnt/e/下新建了一个 test.py ,,在 /目录下看不到这个文件
Cusmate
2018-06-11 02:29:35 +08:00
同意 noe132 的看法,这个 test.py 你在 windows 下个人文件夹 appdata 里绝对能搜索得到
binux
2018-06-11 05:03:32 +08:00
@XIVN1987 #6 挂载在 / 下的意思是,/mnt/e/test.py 位于 / 的设备上,但是它的路径依旧是 /mnt/e/test.py
des
2018-06-11 08:05:01 +08:00
你用资源管理器打开这个文件夹看看?
%localappdata%\lxss\root\mnt

不要修改这里的东西!
不要修改这里的东西!
不要修改这里的东西!
XIVN1987
2018-06-11 08:17:57 +08:00
@genwu92
@binux
@des

多谢,,确实在 AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\mnt\e 目录下找到了 test.py 文件,,

这下理解是怎么回实了,,感谢指点!!
tempdban
2018-06-11 13:17:19 +08:00
这个属没用过 Linux

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/462011

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX