--- title: 如何使用debootstrap构建一个最小化的Ubuntu date: 2020-12-19 22:39:33 tags: - Ubuntu - Linux - Debootstrap --- > debootstrap是debian及其附属分支下的一个工具,用来构建一套基本的系统(根文件系统)。生成的目录符合Linux文件系统标准(FHS),即包含了/boot、/etc、/bin、/usr等等目录,但它比发行版本的Linux体积小很多 ## 0.0 debootstrap介绍 ### 0.1 啥是debootstrap debootstrap是debian及其附属分支下的一个工具,用来构建一套基本的系统(根文件系统)。生成的目录符合Linux文件系统标准(FHS),即包含了/boot、/etc、/bin、/usr等等目录,但它比发行版本的Linux体积小很多 ~~似曾相识燕归来~~ ### 0.2 debootstrap有啥用 debootstrap可以用来快速 简便的构建一个最小化的debian及其附属分支的最小化rootfs 我们可以用其构建一个最小化的rootfs (主要是这个相较于 Ubuntu Server版本还是小得多) ### 0.3 如何使用debootstrap 其实 使用debootstrap很简单 他已经被放入到默认源了 我们只需要apt install即可 ``` bash sudo apt install debootstrap ``` 如何使用呢 ~~自己看~~ 详情wiki ```bash sudo debootstrap [--arch 架构(可选项)][发行版本] [目录] [映像源(可选项)] ``` ## 1.0 开始动手构建自己的Ubuntu 我们这里使用Ubuntu Server 20.04作为Live CD来进行构建 ### 1.1 进入Shell并安装debootstrap ![Ubuntu ISO shell](https://cdn.jsdelivr.net/gh/186526/jsdelivr@master/img/Ubuntu%20ISO.png) 1. 点击Help 2. Enter Shell 3. (可选)修改sources.list 4. update sourcelist并安装debootstrap ``` bash $ sudo apt update && apt install debootstrap Ign:1 cdrom://Ubuntu-Server 20.04 LTS _Focal Fossa_ - Release amd64 (20200423) focal InRelease Hit:2 cdrom://Ubuntu-Server 20.04 LTS _Focal Fossa_ - Release amd64 (20200423) focal Release Get:4 http://mirrors.aliyun.com/ubuntu focal InRelease [265 kB] Get:5 http://mirrors.aliyun.com/ubuntu focal-updates InRelease [107 kB] Get:6 http://mirrors.aliyun.com/ubuntu focal-backports InRelease [98.3 kB] Get:7 http://mirrors.aliyun.com/ubuntu focal-security InRelease [107 kB] Get:8 http://mirrors.aliyun.com/ubuntu focal/main amd64 Packages [970 kB] Get:9 http://mirrors.aliyun.com/ubuntu focal/main Translation-en [506 kB] Get:10 http://mirrors.aliyun.com/ubuntu focal/main amd64 c-n-f Metadata [29.5 kB] Get:11 http://mirrors.aliyun.com/ubuntu focal/restricted amd64 Packages [22.0 kB] Get:12 http://mirrors.aliyun.com/ubuntu focal/restricted Translation-en [6212 B] Get:13 http://mirrors.aliyun.com/ubuntu focal/restricted amd64 c-n-f Metadata [392 B] Get:14 http://mirrors.aliyun.com/ubuntu focal/universe amd64 Packages [8628 kB] Get:15 http://mirrors.aliyun.com/ubuntu focal/universe Translation-en [5124 kB] Get:16 http://mirrors.aliyun.com/ubuntu focal/universe amd64 c-n-f Metadata [265 kB] Get:17 http://mirrors.aliyun.com/ubuntu focal/multiverse amd64 Packages [144 kB] Get:18 http://mirrors.aliyun.com/ubuntu focal/multiverse Translation-en [104 kB] Get:19 http://mirrors.aliyun.com/ubuntu focal/multiverse amd64 c-n-f Metadata [9136 B] Get:20 http://mirrors.aliyun.com/ubuntu focal-updates/main amd64 Packages [197 kB] Get:21 http://mirrors.aliyun.com/ubuntu focal-updates/main Translation-en [77.7 kB] Get:22 http://mirrors.aliyun.com/ubuntu focal-updates/main amd64 c-n-f Metadata [5676 B] Get:23 http://mirrors.aliyun.com/ubuntu focal-updates/restricted amd64 Packages [11.0 kB] Get:24 http://mirrors.aliyun.com/ubuntu focal-updates/restricted Translation-en [3000 B] Get:25 http://mirrors.aliyun.com/ubuntu focal-updates/restricted amd64 c-n-f Metadata [116 B] Get:26 http://mirrors.aliyun.com/ubuntu focal-updates/universe amd64 Packages [110 kB] Get:27 http://mirrors.aliyun.com/ubuntu focal-updates/universe Translation-en [51.9 kB] Get:28 http://mirrors.aliyun.com/ubuntu focal-updates/universe amd64 c-n-f Metadata [4092 B] Get:29 http://mirrors.aliyun.com/ubuntu focal-updates/multiverse amd64 Packages [1172 B] Get:30 http://mirrors.aliyun.com/ubuntu focal-updates/multiverse Translation-en [540 B] Get:31 http://mirrors.aliyun.com/ubuntu focal-updates/multiverse amd64 c-n-f Metadata [116 B] Get:32 http://mirrors.aliyun.com/ubuntu focal-backports/main amd64 c-n-f Metadata [112 B] Get:33 http://mirrors.aliyun.com/ubuntu focal-backports/restricted amd64 c-n-f Metadata [116 B] Get:34 http://mirrors.aliyun.com/ubuntu focal-backports/universe amd64 Packages [2784 B] Get:35 http://mirrors.aliyun.com/ubuntu focal-backports/universe Translation-en [1272 B] Get:36 http://mirrors.aliyun.com/ubuntu focal-backports/universe amd64 c-n-f Metadata [192 B] Get:37 http://mirrors.aliyun.com/ubuntu focal-backports/multiverse amd64 c-n-f Metadata [116 B] Get:38 http://mirrors.aliyun.com/ubuntu focal-security/main amd64 Packages [106 kB] Get:46 http://mirrors.aliyun.com/ubuntu focal-security/universe amd64 c-n-f Metadata [1612 B] Get:47 http://mirrors.aliyun.com/ubuntu focal-security/multiverse amd64 Packages [1172 B] Get:48 http://mirrors.aliyun.com/ubuntu focal-security/multiverse Translation-en [540 B] Get:49 http://mirrors.aliyun.com/ubuntu focal-security/multiverse amd64 c-n-f Metadata [116 B] Fetched 17.1 MB in 6s (3096 kB/s) Reading package lists... Done Building dependency tree Reading state information... Done 65 packages can be upgraded. Run 'apt list --upgradable' to see them. Reading package lists... Done Building dependency tree Reading state information... Done Suggested packages: arch-test squid-deb-proxy-client The following NEW packages will be installed: debootstrap 0 upgraded, 1 newly installed, 0 to remove and 65 not upgraded. Need to get 39.4 kB of archives. After this operation, 299 kB of additional disk space will be used. Get:1 http://mirrors.aliyun.com/ubuntu focal-updates/main amd64 debootstrap all 1.0.118ubuntu1.1 [39.4 kB] Fetched 39.4 kB in 0s (221 kB/s) Selecting previously unselected package debootstrap. (Reading database ... 33860 files and directories currently installed.) Preparing to unpack .../debootstrap_1.0.118ubuntu1.1_all.deb ... Unpacking debootstrap (1.0.118ubuntu1.1) ... Setting up debootstrap (1.0.118ubuntu1.1) ... Processing triggers for man-db (2.9.1-1) ... $ debootstrap I: usage: [OPTION]... [ [