我似乎有一个我无法看到或删除的“隐形”文件夹,但它阻止了“真实”文件的创建。
我在一个流浪者盒子里(Ubuntu 14)
我正在尝试安装https://code.google.com/p/apptrace/但 Python 包似乎遇到了这个问题https://stackoverflow.com/questions/5907359/problem-setting-up-a-virtualenv所以我修改了初始化脚本,使其不创建符号链接(打算让它回退到通过复制文件的shutil.copy2
方式)
无论如何,它仍然因协议错误而失败...但这不是我的问题,只是背景。
现在,虽然我似乎有一个apptrace
我无法看到或删除的“隐形”文件/文件夹,但却阻止了“真实”文件的创建:
$ sudo ls -la
total 6640
drwxr-xr-x 1 vagrant vagrant 1326 Oct 14 11:08 .
drwxr-xr-x 9 vagrant vagrant 4096 Oct 14 11:46 ..
-rw-r--r-- 1 vagrant vagrant 1722 Oct 14 09:46 appengine_config.py
-rw-r--r-- 1 vagrant vagrant 1077 Oct 14 09:59 appengine_config.pyc
-rw-r--r-- 1 vagrant vagrant 760 Oct 14 09:33 app.yaml
drwxr-xr-x 1 vagrant vagrant 170 Oct 8 10:24 campaigns
和:
$ file *
appengine_config.py: Python script, ASCII text executable
appengine_config.pyc: python 2.7 byte-compiled
app.yaml: ASCII text
campaigns: directory
和:
$ rm -rf apptrace
rm: cannot remove ‘apptrace’: Is a directory
$ rm -r apptrace
rm: cannot remove ‘apptrace’: No such file or directory
$ sudo vi apptrace
(says [Permission Denied] at bottom of screen, despite sudo, and can't be saved)
$ cd apptrace
apptrace$ <-- worked
apptrace$ sudo ls -la
ls: cannot open directory .: Operation not permitted
apptrace$ sudo vi newfile
(does NOT say [Permission Denied] but fails E212: Can't open file for writing on save)
(以上所有命令均在 ssh 进入 vagrant box 时运行)
请帮忙! :)
答案1
读一些内容,例如这里:http://teaching.idallen.com/dat2330/04f/notes/links_and_inodes.html听起来我可能最终会得到一个“孤立的”inode。
再读一点之后我发现我需要运行该fsck
工具来修复这个东西。
您无法fsck
在已安装的文件系统上运行,至少根据fsck
其本身的说法,这会产生严重的后果。
然而,我读到 Linux 将fsck
在启动时运行,所以解决我的问题的方法是重新启动 vagrant box。
如果您知道无需重新启动服务器即可更具体地定位特定孤儿的方法,或者如果您对这个孤儿是如何创建的有任何线索,我很乐意听到进一步的答案。
答案2
cd apptrace
_
ls -lisa:
--------
4110 24 drwxrwxrwt 20 root root 12288 Okt 14 17:52 .
2 8 drwxr-xr-x 22 root root 4096 Sep 11 13:27 ..
....
_
cd ..
_
sudo find . -inum 4110 -delete
应该删除你的孤立目录/文件