![意外删除了 $HOME/bin](https://linux22.com/image/1011415/%E6%84%8F%E5%A4%96%E5%88%A0%E9%99%A4%E4%BA%86%20%24HOME%2Fbin.png)
我意外删除了我的~/bin
目录。我看到过很多问题询问如果/usr/bin
删除了该怎么办,这种情况似乎要严重得多。我该怎么做才能重建文件夹?
答案1
什么是 ~/bin 以及它为什么存在?
~/bin
适用于用户自己的脚本和可执行文件。与 不同,它不是系统关键的,也不受任何标准指定/usr/bin
。引用Debian 文档:
/垃圾桶/
所有用户的基本可执行命令(二进制文件)(例如 cat、ls、cp)(尤其是启动或救援系统所需的文件)
...
/usr/
可共享、只读数据的二级层次结构(以前来自 UNIX 源存储库,现在来自 UNIX 系统资源)(启动或救援系统不需要的文件)
/usr/bin/ :与顶层层次相同
也可以看看对文件层次结构系统进行分类。
该目录被添加到用户的PATH
变量中(当您通过名称而不是完整路径名调用命令时,将引用该变量,例如bash
vs /bin/bash
)。目的是允许用户通过名称调用自己的私有脚本和可执行文件。具体来说,这是在 中处理的~/.profile
:
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
当shell~/.profile
用作登录外壳或根据geirha 的回答登录基于 GNOME 的桌面时。
大部分情况下,它包含的内容都是由用户自己定义的。第三方软件很有可能会将脚本放在那里,尽管我还没有遇到过这种情况。
删除了 ~/bin 该怎么办?
如前所述,该目录对系统并不重要。除非您自己将一些对系统重要的内容放在那里(这可能是一个坏主意,也不切实际),否则它可能会在实际操作范围内引起问题。否则,基本上没有效果,就像您删除任何其他非关键目录一样。如果它是空的或者您有其中包含的文件的备份,则无需执行任何其他操作。您可以通过文件管理器或命令行使用 重新创建它mkdir ~/bin
。
如果你有自己的脚本/程序,你可以尝试恢复它们。请参阅如何恢复已删除的文件?,从闪存驱动器恢复已删除数据的工具, 和Unix/Linux 取消删除/恢复已删除的文件。有多种实用程序可供选择。请注意,假设您有默认的 ext4 文件系统。如果您有其他文件系统,文件系统可能有自己的特定实用程序来恢复文件,例如 btrfs。为了将来,您可以考虑备份目录和文件。请参阅1 台台式电脑的良好备份策略是什么?