Ubuntu安装程序不允许我在NTFS分区上安装,但是在某些情况下需要我这样做。可能吗?
Ubuntu安装程序不允许我在NTFS分区上安装,但是在某些情况下需要我这样做。可能吗?
Answers:
否。NTFS不支持Linux文件权限,因此您不能在上面安装Linux系统。
可以在NTFS分区上安装Ubuntu。
您需要在NTFS分区上创建映像文件。尝试启动Ubuntu Live CD,启动终端,将目录更改为NTFS分区,并创建映像文件:
cd /media/ubuntu/<your_ntfs_partition>/
mkdir linux
cd linux/
dd if=/dev/zero of=./linux.img bs=1M count=32768
mkfs.ext4 ./linux.img
这将使用EXT4创建大小为32GB的图像文件 linux/linux.img
现在,在创建一个虚拟块设备/dev/sdX
,其中X
是一个非占用块设备字符(即我只有/dev/sda
,所以我用/dev/sdb
);
还要选择一个未用于的次要数字(在这种情况下为200
)ls -al /dev
:
sudo mknod /dev/sdb b 7 200
sudo losetup /dev/sdb ./linux.img
现在,您可以启动Ubuntu安装程序并在其上安装Ubuntu /dev/sdX
,如果该磁盘上未安装Windows,请确保已将引导加载程序安装到实际磁盘(或EFI分区)上。安装后,需要通过挂载映像来获取内核和initrd文件名:
sudo mkdir /media/ubuntu/rfs
sudo mount -o loop /dev/sdb /media/ubuntu/rfs
ls -al /media/ubuntu/rfs/boot
标记内核和initrd文件名,在我的情况下是vmlinuz-4.4.0-31-generic
和initrd.img-4.4.0-31-generic
。
我的NTFS分区上有Windows,因此我选择了Grub2Win作为引导加载程序。但是,如果您没有安装Windows并坚持使用NTFS分区(尽管这样做没有意义),则GRUB应该在上一步中已安装在磁盘上。无论使用Grub2Win还是原始GRUB,都需要编辑GRUB配置并使用以下命令:
echo Booting linux...
loopback loop0 (hd0,1)/linux/linux.img
set root=(loop0)
linux /boot/vmlinuz-4.4.0-31-generic root=/dev/sda1 loop=/linux/linux.img rw verbose nosplash
initrd /boot/initrd.img-4.4.0-31-generic
您需要编辑(hd0,1)
并/dev/sda1
转到Linux映像所在的NTFS分区。您可以使用GRUB命令行来获取它。还要根据您的安装修改内核和initrd文件名。确保您的GRUB具有NTFS和回送支持。
现在,当启动磁盘时,您可以使用GRUB引导到Ubuntu。我已经将步骤和过程写到了这里,但是正如我前面提到的,我正在使用Grub2Win。
我不确定您的“特定情况”是什么,但是最好调整分区的大小并让Ubuntu具有自己的空间。您以后随时可以调整大小/移动Ubuntu分区。
出于安全,技术和其他原因,您不能在NTFS系统上安装Linux(例如,用户空间驱动程序支持NTFS)。
据说,wubi是一个Ubuntu安装程序,它可以“以与其他Windows应用程序相同的方式安装和卸载Ubuntu”-我从没有尝试过,但是我想整个分区都包含在一个NTFS驱动器上的文件中。
http://www.ubuntu.com/download/ubuntu/windows-installer
我非常确定不可能将传统意义上的Ubuntu安装在NTFS分区上,即作为直接访问驱动器的独立OS,等等。一方面,文件系统权限模型有很大不同,等等。
但是,您可以从安装在例如ext4-partition的Ubuntu上访问NTFS分区。