Linux
Fedora 的 command-not-found 不起作用
我最近安裝了 Fedora 19。Packagekit-command-not-found已安裝。但它自己的例子不起作用。當我輸入
gedti
輸出是:bash: gedti: command not found... Similar command is: 'gedit'
它工作正常,但是當我進入 powertop 時,輸出是:
bash: powertop: command not found...
沒有關於包裹的建議。為什麼?我應該編輯一些配置文件或更新一些記憶體還是…?
PackageKit 肯定有一些奇怪之處。我已經
powertop
安裝了,但想測試一下你有什麼問題。$ rpm -ql PackageKit-command-not-found /etc/PackageKit/CommandNotFound.conf /etc/profile.d/PackageKit.sh /usr/libexec/pk-command-not-found
因此,從上面您可以執行 PackageKit 將執行的命令來執行搜尋,如下所示:
$ /usr/libexec/pk-command-not-found <command>
例子
$ /usr/libexec/pk-command-not-found powertop bash: powertop: command not found... $ which powertop /usr/bin/powertop
第二次執行它,我得到了推薦
powertop
:$ /usr/libexec/pk-command-not-found powertop bash: powertop: command not found... Install package 'powertop' to provide command 'powertop'? [N/y]
那麼為什麼它沒有找到powertop呢?
我認為最終的根本原因是配置文件中定義的超時
/etc/PackageKit/CommandNotFound.conf
:MaxSearchTime=2000
這個超時是為了限制 PackageKit 需要多長時間來完成它的查詢。該查詢不是針對您本地的 Yum 記憶體,而是針對您在 Internet 上配置的 Yum 儲存庫進行實時搜尋。因此,如果您希望它更徹底而不是更高性能,您可以進行以下權衡:
# aggressive find MaxSearchTime=15000 # more responsive MaxSearchTime=250