# 软件包掩码与解锁

URL: https://caijiao.org/gentoo/package-mask
Source: docs/gentoo/package-mask.md
Description: 本章介绍 Gentoo 系统中软件包掩码（mask）和解锁（unmask）方法，控制软件包版本安装与系统稳定性。

在掌握 USE 标志管理实践后，下一步是 **理解 Gentoo 软件包掩码与解锁机制**，管理软件包版本和稳定性。

## 一、什么是软件包掩码（Mask）

软件包掩码用于控制某些版本软件包不可安装，包括：

- **关键掩码（Keyword Mask）**：限制软件包架构或稳定性，例如 `~amd64` 表示测试版本  
- **包掩码（Package Mask）**：禁止特定软件包版本安装，例如存在已知 bug 的版本  

## 二、查看软件包状态

1. 查询软件包版本：

```bash
emerge --search firefox
````

2. 查看可用关键字：

```bash
equery list -p firefox
```

- `~amd64`：测试版本
- `amd64`：稳定版本

## 三、解锁软件包

1. **关键字解锁（Keyword Unmask）**

在 `/etc/portage/package.accept_keywords` 添加条目：

```text
app-editors/vim ~amd64
```

2. **包版本解锁（Unmask）**

在 `/etc/portage/package.unmask` 添加条目：

```text
=app-editors/vim-9.0.0
```

> ⚡ 解锁后可安装测试版本或特定版本软件包，但可能存在不稳定风险。

## 四、安装被掩码的软件包

解锁后即可正常安装：

```bash
emerge --ask app-editors/vim
```

或者指定版本：

```bash
emerge =app-editors/vim-9.0.0
```

## 五、建议操作

- 保持系统稳定版本为主，仅在必要时解锁测试版软件
- 定期检查 `package.accept_keywords` 和 `package.unmask` 的配置
- 解锁前可参考 Gentoo 官方稳定性信息，避免系统不稳定
