安装Ubuntu Core需要哪些命令?
Ubuntu Core的wiki页面包含在目标媒体上安装Ubuntu Core的说明:
- 解压缩( 不解包) rootfs
- 格式化目标媒体:至少一个分区应为
ext2
,ext3
或ext4
- 将Ubuntu Core解压缩到
ext{2,3,4}
分区- 安装boot-loader
- 安装Linux
- 如果Linux内核需要模块,请将它们添加到
ext{2,3,4}
文件系统中的/lib/modules/$(uname -r)
- 引导目标设备
- 使用
apt-get
安装任何其他所需的软件
但是上面做的具体命令是什么? 我特别困惑的是:
- 解压缩和拆包,有什么区别,我该怎么做?
- 如果我想要在常规Ubuntu安装中提供的通用内核,我应该安装什么软件包?
- 除了repos中提供的内容之外,我不会安装任何驱动程序或与内核相关的任何内容,我是否需要担心手动添加内核模块?
PS我想请求在答案中提到安装过程中使用的所有命令,为了那些完全不熟悉的人和我自己的利益,我是否应该忘记。
所有这些命令都需要admin-rights。 最简单的方法是使用sudo su
来获得root控制台。
-
像你的核心.tar.gz (这是oneiric,精确的beta在这里 )的档案被合并在一个文件(打包)和缩小(压缩)。
gzip -d ubuntu-core-11.10-core-i386.tar.gz
将核心解压缩到ubuntu-core-11.10-core-i386.tar(不再是.gz;一个大文件)。
-
要将设备划分为核心,最简单的方法是使用gparted等图形工具。 什么时候不可用。 看到这里 。 简而言之 – 假设您要对设备/ dev / sda进行分区:
fdisk /dev/sda
然后按n
p
1
a
1
w
(详情请见链接)。这会创建/ dev / sda1分区。
mkfs.ext4 /dev/sda1
这会在新分区上创建ext4文件系统。 您当然也可以使用
mkfs.ext3
,mkfs.ext2
。挂载它:
mount /dev/sda1 /mnt
然后去那里cd /mnt
-
tar -xf /path/to/where/you/put/ubuntu-core-11.10-core-i386.tar
将解压缩核心(许多文件)。
-
grub-install --root-directory=/mnt /dev/sda
将安装bootloader(这当然只是众多选项中的一个)。
-
cp /etc/resolv.conf /mnt/etc/resolv.conf
通过复制DNS解析器配置,允许在chroot之后进行网络访问(在步骤7中)
-
for f in /sys /proc /dev ; do mount --rbind $f /mnt/$f ; done ; chroot /mnt
会去chroot,看看有没有比chroot更容易chroot的方法? 有关mount rbind的详细信息
-
apt-get update && apt-get install linux-{headers,image}-generic
将安装内核(“linux”)
注意:
apt-get update
可能无法正常运行,因为不存在网络。 -
reboot
,你很高兴。
我没有机器来测试这个,所以答案可能不会完整。 如果你遇到问题,我会改变我的答案。
您也可以检查这个以将Ubuntu Core安装到USB记忆棒
Ubuntu Core为我们提供了一个很好的Linux启动。 它为构建rootfs节省了大量时间,这可能需要付出很多努力才能正常工作。
使用rootfs可能有很多种方法。 最简单的可能是使用chroot暂时切换到Ubuntu Core。 您熟悉的大多数实用程序都应该正常工作。 但网络不应该,因为实际上没有网络配置。 devfs和sysfs都没有创建,因此依赖于那些内核inode接口的许多实用程序都不应该工作。
然而,仍然可以在Ubuntu Core根目录上安装软件包。
安装示例
安装Ubuntu Core rootfs和内核映像。
sudo bash cd / media / duzy / Root tar xzvf~ / Downloads / ubuntu-core-15.10-core-amd64.tar.gz cp -vf /boot/vmlinuz-4.*-generic / media / duzy / Boot cp -vf /boot/initrd.img-4.*-generic / media / duzy / Boot useradd --root / media / duzy / Root -s'/ bin / bash' -m duzy passwd --root / media / duzy / Root duzy 输入新的UNIX密码:...... 重新输入新的UNIX密码:...... cp /etc/resolv.conf /media/duzy/Root/resolv.conf for proc in sys sys dev; 做mount -rbind / dev / media / duzy / Root / $ s; DONE chroot / media / duzy / Root apt-get update
安装grub( grub-install )
sudo grub-install --boot-directory=/media/duzy/Boot /dev/sdf sudo grub-mkconfig -o /media/duzy/Boot/grub/grub.cfg
使用KVM测试USB( 链接 )
kvm -hdb /dev/sde # NOT the partition (/dev/sde1)!
或者使用VirtualBox进行测试
VBoxManage internalcommands createrawvmdk -filename VirtualBox/usbdisk.vmdk -rawdisk /dev/sde