在 docker 中创建容器时只有分发文件系统的快照是什么意思?

what does it mean to have just the snapshot of the distribution filesystem when creating containers in docker?

我读到当你创建一个容器时,必须定义一个基本的操作系统镜像,而这个操作系统只是一些 Linux 分发文件系统的快照,我不明白为什么我们需要只是文件系统的快照及其重要性,文件系统是将发行版彼此分开的东西吗?

我知道发行版在 window 管理器和桌面环境方面有所不同,并且在除文件系统之外的大多数基本映像中都将其删除,所以文件系统是所有发行版中本质上不同的地方吗?

如果是这样,为什么发行版有不同的文件系统,这些文件系统之间有什么区别?

注意filesystem是一种存储数据的方法。我假设在你的问题中 "filesystem" 你的意思是 文件系统公开的目录、目录结构、文件、文件属性、文件和目录权限以及所有其他数据(修改时间、上次访问时间) 存储数据的位置。一个操作系统(例如 linux 发行版)可以在不同的文件系统上 运行。我 运行 我的 linux 在 ZFS 上,我的服务器使用 ext4。

why do we need the snapshot of just the filesystem

复制构成数据的所有信息。

what is its importance, is the filesystem is what separates distributions from each other ?

好吧,我想说的是,基本上,发行版的主要区别在于负责该发行版的人员。 Ubuntu 由 Canonical Ltd. 和 Ubuntu Foundation 所有,archlinux 由 Aaron Griffin 制作。因为不同的人管理产品,所以你会得到具有不同愿景的不同产品。就像汽车一样 - 奥迪有自己的汽车,梅赛德斯有自己的汽车。

distros differ in window managers and desktop environment

不,他们没有。 Window 管理器和桌面环境(在大多数情况下)由管理 linux 发行版的不同且独立的人员管理。您可以为奥迪和梅赛德斯购买米其林轮胎,就像您可以在 archlinux 和 ubuntu.

上安装 xfce4 一样

so is the filesystem is what essentially is different in all the distributions ?

我想说我的主观观点是:"management" 一个 linux 发行版,作为一个整体过程,作为一个操作系统目标和行为的整体社区长期愿景,但是对我来说,作为执行日常管理任务(如安装包和错误处理)的过程,发行版之间也存在本质区别。 Archlinux 想成为 simplistic, minimal, modern, user centric. Ubuntu wants to bring free software to wider audience and accelerate innovation。不同的愿景导致不同的产品。法拉利要快,奥迪要舒服等等

why do distributions have different filesystems

Linux 发行版没有文件系统。一个操作系统可以安装在很多文件系统上:你可以在 btrfs 上安装 ubuntu,在 ext4 上安装 ubuntu,等等

如果文件系统是指存储在文件系统上的所有数据:由于不同的发行版在创建操作系统时会做出不同的设计选择,因此数据打包过程与不同的数据分发方式之间存在许多差异分布。因此存储在文件系统上的结果数据不同。

what are the diffrences between these filesystems?

用户最明显的区别当然是package manager - the tool that manages and automates installing, upgrading and configuring data on your operating system. Ie. ubuntu uses apt-get, archlinux uses pacman。发行版安装过程和脚本存在差异。