debian源目录结构及debian包结构

本文介绍了Debian包管理系统的基本结构,包括顶层目录及其子目录的组织方式,详细解释了stable、testing、unstable等不同阶段软件的区别,并阐述了debian包管理机制及包的组成。

顶层目录包括两个子目录,dists/和pool/,pool是包文件存放的目录,dists中包含一些分制(stable、testing、unstable目录),这里ubuntu下的文件目录结构和debian 是不太一样的。dists/stable 下包含三个子目录,main、contrib、non-free。在这些子目录中,每个里面都有一个source 目录 和多个支持不同体系结构(如binary-i386、binary-amd64)的目录。

        main 、contrib 、non-free是根据不同的用户使用权限来分类的。

        stable 、testing 、unstable 分别是软件的几个不同的阶段来分类。

        stable阶段的软件主要就是稳定,一般作为企业级的应用,当然如果对于稳定性要求比较高的个人用户,也可以使用,但是,这个阶段的软件通常比较旧。

       testing阶段,顾名思义,是测试阶段的软件,处在这个阶段的软件,都是测试版的软件,但是它们已经通过了初步的测试,具有一定的稳定性,可以进行使用,这里的软件,一般比较新。

      unstable阶段的软件,是最新的软件,当然也是最不稳定的,如果只是玩的话,可以在这里面找。

对于debian包的结构进行了调研,首先谈谈debian包的管理机制

     分为两层:

      对软件包文件操作和对包中文件的操作。

      前者通过apt和dselect完成,这两个属于高级包管理工具

      后者通过dpkg完成,对单个的deb包进行处理。

    对于debian包本身,它分为两类,source包和binary包

在binary 包中包含两部分文件,一部分是用户安装的,另一部分是为包提供控制信息的文件,用于包的安装和删除。

 debian包内部是:

   一个”debian-binary”文件,现在它的内容只包含一行”2.0″。

   Control.tar.gz文件,它是一个用gzip压缩的打包存档文件,它包括这个包的控制信息。

           control.tar.gz中包含control文件,md5sums验证文件,和一些诸如preinst, postinst, prerm, 和 postrm 脚本的信息

   Data.tar 它包含一个打包的存档文件,这个存档文件中是一个文件系统,这个tar文件会被再次压缩。

### Debian 源码的目录结构解释 Debian 的源码目录结构遵循标准的 Linux 文件系统层次结构标准(Filesystem Hierarchy Standard, FHS),这使得其布局清晰且易于理解。以下是关于 Debian 源码目录的主要组成部分及其功能说明: #### 1. `/` (根目录) 根目录是整个文件系统的起点,所有的其他目录都挂载于此位置[^1]。 #### 2. `/boot` 该目录包含了启动操作系统所需的静态文件,例如内核镜像 (`vmlinuz`) 引导加载程序配置文件。对于 Debian 来说,这些文件通常由 `grub` 或者其他的引导管理器生成并维护。 #### 3. `/dev` 设备节点存储在此处,表示硬件设备或者伪设备。这是通过 udev 动态创建删除设备文件的地方。 #### 4. `/etc` 此目录保存着系统范围内的配置文件以及脚本。它不包含任何二进制数据或用户特定的数据。典型的例子有网络设置、服务配置等。 #### 5. `/home` 用户的个人工作空间位于这个路径下,默认情况下每位用户都会有一个独立子目录用于存放文档其他私人物品。 #### 6. `/lib`, `/usr/lib`, `/var/lib` 库文件被放置在这里供可执行程序调用。其中: - `/lib`: 基础运行时所需的核心共享对象; - `/usr/lib`: 较高级别的应用程序依赖项; - `/var/lib`: 应用状态信息或其他持久化资料。 #### 7. `/media`, `/mnt` 临时安装外部介质的位置分别是媒体自动挂载点(`/media`) 及手动指定挂载目标(`/mnt`)。 #### 8. `/opt` 第三方软件包可以安装到此处而不干扰核心系统组件。 #### 9. `/root` 超级管理员(root user)专用的工作区不同于普通用户的 /home 结构单独设立。 #### 10. `/run`, `/tmp` 短期存在的进程间通信(IPC),锁文件(lock files), socket 等暂存于这两个区域之一;区别在于前者重启后保留而后者完全清空。 #### 11. `/srv` 服务器上的数据应该放在这一级下面以便区分不同类型的站点资源比如网站内容(web sites content). #### 12. `/sys`, `/proc` 虚拟文件系统展示当前内核内部状况给用户层访问接口分别对应/sysfs procfs 类型. 以上即为 Debian 源码所体现出来的典型Linux发行版的标准目录架构概述[^2]. ```bash tree -L 2 / ``` 上述命令可以帮助直观查看实际机器上按照前述描述构建起来的具体实例树形图样貌。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值