这个问题似乎不是关于特定的编程问题,软件算法或主要由程序员使用的软件工具。如果您认为该问题将与其他 Stack Exchange 站点的主题相关,则可以发表评论以解释问题可能在哪里可以得到解答。
我刚刚将笔记本电脑中的Windows 10升级到红石1。所以我对Linux子系统进行了测试(又名。WSL、LXSS 或 Windows 上的抨击)。基本上,一切都很好,但是存在一个问题,即WSL的根FS位于%本地应用程序数据%
路径(例如C:\用户\xyz\应用程序数据\本地
),这也是我的Windows操作系统所在的位置。它消耗了我笔记本电脑中的大量SSD硬盘驱动器空间,我希望我可以将其移动到我的外部硬盘驱动器。
还有另一个问题。由于其他硬盘驱动器分区作为DriveFS挂载,因此它不支持某些Linux文件系统功能,例如chmod
,并且我的一些Linux项目构建脚本仅适用于VoIFS,它仅位于/
和/home
中。
所以我尝试将整个WSL RootFS移动到另一个硬盘。首先,我尝试为C:\Users\xyz\AppData\Local\lxss
创建NTFS连接(硬链接)。我已经完全卸载了WSL,并为RootFS运行了mklink
到另一个硬盘,当我重新安装WSL时,它无法创建新用户,它报告错误,代码为0x80070003。
然后我四处搜索,我得到了这个:移动Linux文件系统 - 问题#449。似乎移动和制作 WSL 根目录的硬链接仅在 Windows 10 内部版本 14388 之前有效,在 Windows 10 内部版本 14393 RTM 中不起作用。唯一的方法是将整个%LocalAppData%
移动到外部硬盘驱动器,但我不能这样做,因为我是笔记本电脑用户,我不能随身携带外部硬盘驱动器!
所以我想问一下,有没有其他方法可以将WSL移出我的系统分区?如果我不能这样做,我可以在其他地方创建一个额外的VoIFS工作目录并编译我的东西吗?
感谢和问候,杰克逊
看看https://github.com/DDoSolitary/LxRunOffline
scoop install lxrunoffline
choco install lxrunoffline
WSL(当前)不支持将发行版移动或安装到非系统驱动器。但是,这是我们在将来的 Windows 版本中探索的方案。
请注意,从秋季创意者更新 (FCU) 开始,发行版现在通过 Windows 应用商店安装,并下载到不同的文件夹,并扩展到不同的文件夹(即不在 %localappdata%\lxss 下)。
诺特:虽然我们正在努力在将来的 Windows 版本中改进此方案,但请不要从 Windows 或 Windows 应用程序潜入发行版文件夹,否则将保留:https://blogs.msdn.microsoft.com/commandline/2016/11/17/do-not-change-linux-files-using-windows-apps-and-tools/
如果您使用的是Windows 10版本1903(2019年4月更新)或更高版本,可以使用< code>export和< code>import选项尝试WSL命令行工具。如果您使用的是旧版本的Windows 10,可以使用lxRunOffline将发行版移动到另一个驱动器。
在Windows 10版本1903(2019年4月更新)或更高版本中,您可以使用wsl.exe
命令行工具。
1.导出发行版。创建一个<代码>。tar文件,其中包含要使用< code>wsl.exe - export移动的分发
wsl.exe --export <DistributionName> <Tar-FileName>
例如,要导出Ubuntu
发行版,您可以使用
C:\> wsl.exe --export Ubuntu c:\data\ubuntu.tar
2. 将分配导入目标文件夹。然后,您可以将导出的分发导入到另一个文件夹中
wsl.exe --import <DistributionName> <Folder-To-Install> <Tar-FileName>
例如,要将导出的 Ubuntu
导入到新的 Ubuntu自定义
发行版中,您可以使用
C:\> wsl.exe --import UbuntuCustom d:\wsl\UbuntuCustom c:\data\ubuntu.tar
注意:您可以检查有关移动使用这些命令的 WSL 发行版的脚本,https://github.com/pxlrbt/move-wsl
在任何Windows 10版本中,都可以使用lxRunOffline将发行版移动到另一个驱动器。
1.设置目标文件夹的权限。首先,我认为您必须为将移动分发的文件夹设置一些权限。您可以使用icacls
C:\> whoami
test\jaime
C:\> icacls D:\wsl /grant "jaime:(OI)(CI)(F)"
注意:除了上述权限之外,我还在Windows中激活了长路径名称。
2.移动分配。使用
lxrunoffline移动
。
C:\wsl> lxrunoffline move -n Ubuntu-18.04 -d d:\wsl\installed\Ubuntu-18.04
您可以使用检查安装文件夹
C:\wsl> lxrunoffline get-dir -n Ubuntu-18.04
d:\wsl\installed\Ubuntu-18.04
3.运行发行版。移动发行版后,可以使用
wsl
或相同的lxrunoffline
运行发行版
C:\wsl> lxrunoffline run -n Ubuntu-18.04 -w
user@test:~$ exit
logout
C:\wsl> wsl
user@test:/mnt/c/wsl$ exit
logout
我刚刚将笔记本电脑中的Windows 10升级到Redstone 1。因此,我对Linux子系统(aka.WSL、LXSS或Windows上的Bash)进行了测试。基本上,一切正常,但存在一个问题,WSL的RootFS位于路径中(例如),这也是我的Windows操作系统所在的位置。它在我的笔记本电脑上消耗了大量的SSD硬盘空间,我希望我能把它移到外置硬盘上。 还有一个问题。由于其他硬盘分区都挂载为
问题内容: 我正在为当前应用程序开发软件安装程序。需要将其安装到系统硬盘上。我应该如何检测系统驱动器并返回来自Python的字母? win32扩展会有用吗?预装Python的os模块怎么样? 问题答案: 这是如何在Win32平台上返回系统驱动器的盘符: 上面的代码段返回系统驱动器号。就我而言(大多数情况下是在Windows上)C:
我试图将"/var/lib/docker"文件夹从一个磁盘移动到另一个磁盘,因为这占用了太多的空间。我一直遇到一些与权限相关的错误! 根据这些问题: 如何将docker容器的映像移动到永久磁盘 如何在另一个分区上运行docker LXC容器 我的磁盘安装在"/data"上,我将"/var/lib/docker"文件夹复制到"/data/docker" 这就是我所尝试的: 使用“/data/DOCK
我需要过去7天的存储日志来移动一个新文件夹。但是,我不能移动它们,并得到了这个错误。 重命名(/var/www/html/eMarketing/storage/logs/old-log-2020-02-27,/var/www/html/eMarketing/storage/logs/laravel-2020-02-27.log):不是目录 我的密码在这里
本文向大家介绍linux系统下如何挂载NTFS移动硬盘,包括了linux系统下如何挂载NTFS移动硬盘的使用技巧和注意事项,需要的朋友参考一下 前言 数据迁移是我们经常会遇到的,有时候做大数据量迁移时,为了快速迁移大数据,有可能在Linux服务器上临时挂载NTFS格式的移动硬盘, 一般情况下,Linux是识别不了NTFS格式移动硬盘的(需要重编译Linux核心才能,加挂NTFS分区), 这时候为了
我得到以下错误: 线程“main”java.lang.IllegalArgumentException:错误的fs:hdfs:/user/o/datasets/data.txt,应为:file:/// 也是如此,因为它们用于在文件系统之间传输文件,而不是在文件系统内传输文件。我还尝试了,但根本没有任何作用(没有错误或任何东西)。