修复 Arch Linux 中的 “Bash: man command not found” 错误
man
![](/data/attachment/album/202310/09/231716f6ehhv6u9sueuts4.jpg)



> 
> 我遇到 “找不到 man 命令” 错误的小插曲，以及我是如何解决的。
> 
> 
> 


多年后，我再次尝试 Arch Linux。我忘记了 [pacman 命令的用法](https://itsfoss.com/pacman-command/)，所以我尝试访问它的手册页。


接下来发生的事情让我震惊（是的！我一直在阅读 BuzzFeed ?）。它向我展示了这个错误：



> 
> bash: man: command not found
> 
> 
> 


当然，这不仅是 pacman，所有命令都是这样。


![](/data/attachment/album/202310/09/231740x9oeyy99ifeafmdo.png)


这让我感到困惑，因为我以前从未遇到过无法使用 `man` 命令的情况。


如果你发现自己处于找不到 `man` 命令的类似情况，我向你保证，修复很简单：


* 安装 `man-db` 包（安装手册页）
* 更新 `mandb` 缓存（用于索引所有命令的手册页）


让我们更详细地看看。


### 在 Linux 中安装手册页


我从未想过我必须明确安装手册页。但是 [Arch Linux](https://archlinux.org/) 将你带入未知领域。这在某种程度上是件好事，因为你会发现以前从未遇到过的事情。


**这里的关键是安装手册页的包名为 `man-db`**。这对我来说也是一个发现。


你可以使用发行版的包管理器来安装它。


[对于 Arch 和 Manjaro](https://itsfoss.com/manjaro-vs-arch-linux/)，使用：



```
sudo pacman -S man-db

```

![](/data/attachment/album/202310/09/231740cw5g7v3t7l8787ow.png)


对于 Ubuntu 和 Debian，请使用：



```
sudo apt install man-db

```

对于 Fedora，请使用：



```
sudo dnf install man-db

```

对于 Red Hat Linux，请使用：



```
sudo yum install man-db

```

**你明白了要点**。为手册页构建缓存也是明智的一步。


### 构建手册页缓存


要刷新或构建手册页缓存，请运行 [mandb 命令](https://www.man7.org/linux/man-pages/man8/mandb.8.html)：



```
sudo mandb

```

它将在不同位置查找手册页并构建缓存，以便你可以快速访问手册页。


![](/data/attachment/album/202310/09/231740h1rltlx44p4tr81t.png)


完成后，我就可以像往常一样使用 `man` 命令。


### 结论


这确实让我感到震惊，因为我一直认为手册页是 Linux 的核心部分。从未想过我必须安装它们。


我应该将其添加到 [安装 Arch Linux 后要做的事情列表](https://itsfoss.com/things-to-do-after-installing-arch-linux/) 吗？我还没有把握。


也许我是在 Arch 中遇到这个缺少 `man` 命令问题的极少数用户之一。也许不是。如果你遇到过这样的“意外错误”，请在评论中告诉我。


*（题图：MJ/a582366a-ee9d-4583-9025-eed6a4e96108）*




---


via: <https://itsfoss.com/man-command-not-found/>


作者：[Abhishek Prakash](https://itsfoss.com/author/abhishek/) 选题：[lujun9972](https://github.com/lujun9972) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


OK
![Warp Terminal](/assets/images/warp-terminal.webp)


![Warp Terminal](/assets/images/warp-terminal.webp)

After years, I have been experimenting with Arch Linux again. I had forgotten the [usage of the pacman command](https://itsfoss.com/pacman-command/) so I tried accessing its man page.

What happened next shocked me (yeah! I have been reading BuzzFeed 😜). It showed me this error:

**bash: man: command not found**

And it was not just for pacman but for all commands, of course.

![bash man command not found error in Linux](https://itsfoss.com/content/images/2023/10/bash-man-command-not-found-error.png)

It baffled me because I have never been in a situation before where man command was not available to use.

If you find yourself in a similar situation where man command is not found, let me assure you that t**he fix is easy**:

- Install
`man-db`

package (to install man pages) - Update
`mandb`

cache (for indexing the man pages for all commands)

Let's see it in a bit more deatil.

## Install man pages in Linux

I never imagined that I would have to install man pages explictely. But [Arch Linux](https://archlinux.org/) puts you in uncharted territory. Which is good in a way, as you discover things you never encountered before.

**The key here is that the package that installs the man pages is named man-db**. That was also a discovery for me.

You can use your distribution's package manager to install it.

[For Arch and Manjaro](https://itsfoss.com/manjaro-vs-arch-linux/), use:

`sudo pacman -S man-db`


![Install man command in Arch Linux](https://itsfoss.com/content/images/2023/10/installing-man-command-arch-linux.png)

For Ubuntu and Debian, use:

`sudo apt install man-db`


For Fedora, use:

`sudo dnf install man-db`


For Red Hat Linux, use:

`sudo yum install man-db`


**You get the gist**. It is also a wise step to build the cache for manpages.

## Build man page cache

To refresh or build the man page cache, run the [mandb command](https://www.man7.org/linux/man-pages/man8/mandb.8.html):

`sudo mandb`


It will look for the manual pages at different locations and build the cache so that you can access the man pages quickly.

![mandb cache updated in Linux](https://itsfoss.com/content/images/2023/10/updating-man-command-database-linux.png)

Once that is done, I was able to use the man command as usual.

## Conclusion

This did come as shock to me because I always thought that manpages were a core part of Linux. Never imagined that I would have to install them explicitely.

Should I add it to the [list of things to do after installing Arch Linux](https://itsfoss.com/things-to-do-after-installing-arch-linux/)? Not sure.

Perhaps I am one of the rare few users who encountered this missing man command issue in Arch. Perhaps not. Do let me know in the comments if you ever encounted such an 'unexepected error'.