Kali-Linux
刪除了 /usr/bin/touch 和 /bin/touch。現在似乎無法安裝任何東西,也無法創建任何文件?
在將 GNOME 更新到 3.20.2 後,我的觸摸板出現了一些問題,因此在混亂中我錯誤地刪除了 /usr/bin/touch,之後我什至變得更加愚蠢並刪除了 /bin/touch。
現在在這之後我似乎無法安裝任何程序。這是安裝程序時產生的錯誤..
user1@pqrx:~$ sudo apt-get install gir1.2-gtop-2.0 [sudo] password for user1: Reading package lists... Done Building dependency tree Reading state information... Done The following NEW packages will be installed: gir1.2-gtop-2.0 0 upgraded, 1 newly installed, 0 to remove and 1 not upgraded. Need to get 0 B/54.6 kB of archives. After this operation, 104 kB of additional disk space will be used. Selecting previously unselected package gir1.2-gtop-2.0:amd64. (Reading database ... 351267 files and directories currently installed.) Preparing to unpack .../gir1.2-gtop-2.0_2.34.0-1_amd64.deb ... Unpacking gir1.2-gtop-2.0:amd64 (2.34.0-1) ... Setting up gir1.2-gtop-2.0:amd64 (2.34.0-1) ... sh: 1: touch: not found update-kali-menu: error: Can't open /var/lock/kali-menu: No such file or directory E: Problem executing scripts DPkg::Post-Invoke '[ ! -x /usr/share/kali-menu/update-kali-menu ] || /usr/share/kali-menu/update-kali-menu wait_dpkg' E: Sub-process returned an error code
任何幫助都感激不盡。
touch
包含在GNU 核心實用程序中。由於您刪除了該程序,您可以使用此命令嘗試重新安裝它:sudo apt-get install --reinstall coreutils
僅使用此命令重新安裝已刪除
/usr/bin/touch
,並/bin/touch
在全新安裝的 Kali Linux 2016.1 上使用程序。對於其他發行版,尤其是 Mint(在 17.3 Cinnamon 上測試),
sudo apt-get update
可能需要先執行。通常,可以通過搜尋
dpkg
有問題的文件名來確定涉及哪個包,在您的情況下:dpkg -S bin/touch
您可以通過製作一個 shell script 來解決(大多數)用途
/bin/touch
,並使用它來修復您的系統以重新安裝包含實際執行檔的包。一些應用程序將用於
touch
設置時間戳。這在 shell 腳本中更難。例如:
#!/bin/sh for name in "$@" do chmod +w "$name" printf '' >> "$name" done