我有双启动操作系统,Ubuntu 和 Windows 7。问题是由于磁盘空间的原因,我无法在 Linux 上安装某些 Linux 应用程序。我总是后悔为什么给我的 Linux 分配了这么小的空间。我的朋友告诉我,我可以从安装的磁盘 (Windows) 运行 Linux 应用程序。
这个想法,例如安装 NetBeans IDE。我从 Linux 下载并将其安装到安装的磁盘 (Windows) 上。然后,我创建一个symlink
安装到应用程序的位置。当它完成时,我只是在 Linux 上运行它的可执行文件。
但是,我真的很怀疑自己这是否真的有效。如果这真的有效,我该怎么做?
我已经了解了一些关于 Linux 的基础知识。
答案1
除非有类似 WINE(用于在 Linux 中运行 Windows 二进制文件)之类的东西来在 Windows 中运行 Linux 二进制文件,否则您可能需要创建一个虚拟机。
虚拟机有自己的操作系统,这意味着要么占用 Windows 磁盘/分区的更多空间,要么在虚拟机中使用正常的裸机 Linux 安装。存在与此相关的挑战,但可能很容易。此外,一些虚拟机管理器(例如 virtualbox)使使用起来更加困难“原始磁盘”比如你的其他分区。
您可能会遇到的一个示例问题:裸机 Linux 将在 Xorg 中使用像 intel/radeon/nouveau 这样的驱动程序作为显卡,并在 中进行配置/etc/X11/xorg.conf.d/
,如果您启动虚拟机,则可能需要另一个驱动程序集反而。您可以创建一个同时包含两者的配置,以便它将在虚拟机或裸机上启动,或者在每次以不同方式启动时重新配置它。
另一个例子是,如果您/dev/sda1
的文件中有类似的内容/etc/fstab
,然后您必须将其设为原始磁盘,那么虚拟机将看不到/dev/sda1
而是会看到/dev/sda
。要解决此问题,您应该在 fstab 中使用 UUID 语法。替换/dev/sda1
为UUID=xxxx-xxxxxx-...
您应该从blkid
命令中获取的内容。
在尝试任何新的、复杂的、你不理解的事情之前,一定要做好备份。
答案2
这是一个非常非常可怕的黑客行为,小猫会在这个过程中死去,但是可以在 Windows 分区上创建一个大的空文件,将其格式化为 ext4 或 XFS,然后将其安装在某个地方并复制 ( cp -a
) 过来一切from /usr
(或您选择的另一个目录,可能占用最多磁盘空间的目录/home
),然后将磁盘映像文件挂载为/usr
.然后/usr
,一旦一切正常,您就可以删除旧目录(从原始分区),最终您将获得更多磁盘空间。请记住使用正确的文件权限复制文件。还要记住/usr
在 中设置新的安装/etc/fstab
。
但,这是一个非常非常可怕的黑客行为。不要这样做。而是重新分区并重新安装。
答案3
下载适合您 CPU 的 LinuxMint live disk(可能是 amd64?)。用它启动,打开终端,运行sudo gparted
并调整分区大小。当 Windows 完全关闭、没有正在进行的更新等以及进行冷启动时效果最佳。
或者,正如另一个答案中所建议的,您可以在某处创建一个文件系统 - 安装一个新磁盘,获取一个外部 USB 驱动器,甚至在您的 Windows 分区上创建一个稀疏文件并在其上创建一个文件系统(但如果您可以这样做)这个,只需调整分区大小即可!)。然后再次使用 Mint 磁盘启动,挂载新文件系统所在的安装根 (/),复制/移动文件,并在已安装系统的 /etc/fstab 中创建适当的条目。