安装Ubuntu Core需要什么命令?


18

Ubuntu Core的Wiki页面页面包含在目标媒体上安装Ubuntu Core的说明:

  1. 解压缩(不解压缩)rootfs
  2. 格式目标媒体:至少一个分区应ext2ext3ext4
  3. 解压Ubuntu Core进行ext{2,3,4}分区
  4. 安装引导程序
  5. 安装Linux
  6. 如果Linux内核需要的模块,这些增加/lib/modules/$(uname -r)ext{2,3,4}文件系统
  7. 引导目标设备
  8. 使用以下命令安装任何其他必需的软件 apt-get

但是执行上述操作的具体命令是什么?我特别困惑的是:

  1. 解压缩和拆包有什么区别,我该怎么做?
  2. 如果我想要常规Ubuntu安装中提供的通用内核,应该安装哪个软件包?
  3. 除了存储库中提供的驱动程序之外,我将不会安装任何驱动程序或与内核相关的任何东西,我是否需要担心手动添加内核模块?

PS:我想请求在安装过程中使用的所有命令都在答案中提及,以使那些自己和我完全不熟悉的人受益,如果我忘记的话。

Answers:


19

所有这些命令都将需要管理员权限。最简单的方法是sudo su获取根控制台。

  1. 像您的核心.tar.gz(这是oneiric,此处是精确的beta )之类的档案被合并到一个文件中(打包)并减小大小(压缩)。

    gzip -d ubuntu-core-11.10-core-i386.tar.gz

    会将内核解压缩到ubuntu-core-11.10-core-i386.tar(不再有.gz;一个大文件)。

  2. 要将设备分区为核心,最简单的方法是使用gparted之类的图形工具。当不可用时。看这里。简而言之-假设您要对设备/ dev / sda进行分区:

    fdisk /dev/sda然后按n p 1 <Return> <Return> a 1 w(有关详细信息,请参阅链接)。

    这将创建/ dev / sda1分区。

    mkfs.ext4 /dev/sda1

    这将在新分区上创建一个ext4文件系统。当然你也可以使用mkfs.ext3mkfs.ext2也是如此。

    安装它:mount /dev/sda1 /mnt并去那里cd /mnt

  3. tar -xf /path/to/where/you/put/ubuntu-core-11.10-core-i386.tar

    将解压缩核心(许多文件)。

  4. grub-install --root-directory=/mnt /dev/sda

    将安装引导加载程序(当然,这只是许多选项之一)。

  5. cp /etc/resolv.conf /mnt/etc/resolv.conf

    通过复制DNS解析器配置在chroot-ing之后(在步骤7中)将允许网络访问

  6. for f in /sys /proc /dev ; do mount --rbind $f /mnt/$f ; done ; chroot /mnt

    将转到chroot,请参见有没有比绑定安装更简单的chroot方式?有关Mount rbind的详细信息

  7. apt-get update && apt-get install linux-{headers,image}-generic

    将安装内核(“ linux”)

    注意:apt-get update由于没有网络,因此可能无法正常工作。

  8. reboot 而且你很好。

我没有机器对此进行测试,因此答案可能并不完整。如果您偶然发现问题,我将更改答案。


我想我可以使用chroot环境创建用户吗?
Oxwivi

是的,绝对!请记住使用adduser它而不是useradd使它更舒适。
涡轮增压

1
我将无法立即尝试使用它们,但是我接受它,因为据我所知,它可以完美运行。如果遇到任何问题,我将进行评论和编辑。
Oxwivi

1
优秀的指南。我发现此过程比Ubuntu Wiki上的wiki.ubuntu.com/Core/InstallationExample更为简单。但是一旦完成,我将无法以普通用户身份登录,甚至无法以root用户身份登录到普通用户。 。我收到错误“无法执行/ bin / bash:权限被拒绝”和“底层身份验证模块未知的用户”。问题是根(/)目录没有对组或其他目录的读取或执行权限。chmod go+rx /以root身份运行可解决此问题。需要提防的东西!
亚历克斯

@turbo您正在解释的每个步骤。除了第五步“转到chroot:”之外,这里没有解释您在做什么。您能详细说明一下吗?
Pro Backup

2

您也可以选中此选项以将Ubuntu Core安装到USB记忆棒

Ubuntu Core为我们提供了一个使用Linux的不错的创业公司。它节省了构建rootfs的大量时间,这可能需要大量的努力才能开始工作。

使用rootfs可能有很多方法。最简单的方法是使用chroot临时切换到Ubuntu Core。您熟悉的大多数实用程序都应该可以使用。但是网络不应该这样,因为实际上没有网络配置。devfs和sysfs均未创建,因此依赖于这些内核inode接口的许多实用程序均不起作用。

但是仍然可以将软件包安装到Ubuntu Core根目录上。

安装实例

安装Ubuntu Core rootfs和内核映像。

须藤bash
cd / media / duzy / Root
tar xzvf〜/下载/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
对于proc sys dev中的s; 挂载--rbind / dev / media / duzy / Root / $ s; 完成
chroot / media / duzy / Root
apt-get更新

安装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
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.