奇怪的错误,包括所有文件都是只读的


12

我的Ubuntu 14.04.2计算机突然开始显示各种严重错误。

它是在我使用Ruby on Rails应用程序时开始的,离开了一段时间后又回来了,并尝试使用重新启动服务器rails s。作为回应,我得到了这个错误:

Rails Error: Unable to access log file. Please ensure that /home/user/app/log/development.log exists and is chmod 0666. The log level has been raised to WARN and the output directed to STDERR until the problem is fixed.

我尝试运行chmod 0666 /home/user/app/log/development.log,然后运行其他各种chmod命令,例如chmod 0664chmod 777。每次我回来:

chmod: changing permissions of ‘/home/user/app/log/development.log’: Read-only file system

我尝试了其他Rails应用程序,并遇到了相同的错误。然后,我尝试保存正在使用Komodo IDE处理的文件并退出,但Komodo告诉我该文件为只读文件,无法保存。

然后,我注意到我的Skype已经退出,并且当我尝试重新登录时,它告诉我我已经登录。

因此,我重新启动了计算机。在登录屏幕上,我收到一条错误消息,类似Errors were found when searching directory /. Press f to fix, I to ignore, and M to run a manual reboot.

我按了我忽略并登录。现在我完全无法打开Skype或Komodo。当我单击图标时,它们会闪烁几下,就像它们将要打开一样,但是随后它们只是停止闪烁而没有任何反应。

此外,rails s不再返回错误,它只是关闭了我的终端窗口。

当我运行mount时,终端关闭的时间是一半,而我收到此消息的时间是一半:

$ mount
/dev/sda2 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
none on /sys/firmware/efi/efivars type efivarfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
none on /sys/fs/pstore type pstore (rw)
/dev/sda1 on /boot/efi type vfat (rw)
systemd on /sys/fs/cgroup/systemd type cgroup (rw,noexec,nosuid,nodev,none,name=systemd)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=greg)

mount: warning: /etc/mtab is not writable (e.g. read-only filesystem).
   It's possible that information reported by mount(8) is not
   up to date. For actual information about system mount points
   check the /proc/mounts file.

我也刚刚注意到,我的所有文件上方都有一个锁定图标。我认为这意味着我所有的文件都是只读的。

输出:

sudo smartctl --all --tolerance=verypermissive /dev/sda

可以在这里找到

可能会发生什么??


请删除所有评论以保持此处的整洁,并在拥有硬盘驱动器并且遇到障碍时通过AU聊天并ping @ Fabby或@ AB进行聊天
Fabby 2015年

您有一些严重的文件系统损坏。从问题中的信息中,我无​​法说出它是由硬件问题还是其他原因引起的。
卡巴斯德(Kasperd),2015年

现在要睡觉...醒来时在聊天中给我或AB
打电话

@Fabby好的,这很令人尴尬,但我不知道如何对其他用户执行ping操作。–
Jeff Caros 2015年

@JeffCaros:您刚刚对我执行了ping操作:在用户名之前用@留下评论。我经常可以在这个聊天室里找到我。在那做同样的
事情

Answers:


12

这看起来很多喜欢你的文件系统挂载只读之前的驱动器故障...

因此,请停止使用计算机,将其完全关闭,然后:

  1. 打开计算机,然后检查硬盘。如果未将其连接到其控制板上,则购买比您当前硬盘更大的新外部硬盘。它,它附连到它的控制器板,然后购买一个新的内部与相同的连接器类型的硬盘驱动器。
  2. 将其插入计算机(如果是笔记本电脑,请在上述步骤中购买外部USB HDD)
  3. 引导Ubuntu Live DVD并选择 Try Ubuntu
  4. Ctrl+ Alt+ T转到终端并输入:

    sudo apt-get install gddrescue
    sudo ddrescue --binary-prefixes --cluster-size=64 --sparse --timeout=20s /dev/WdX /dev/YdZ
    

    注意: WX是您即将损坏的硬盘驱动器的驱动器号,Y以及Z是您新硬盘驱动器的驱动器号。

  5. 如果一切正常,没有任何错误,我们将测试我的直觉是否正确:

    sudo apt-get install smartmontools
    sudo smartclt --scan
    
  6. 然后执行:

    sudo smartctl /--test:short dev/XdY
    

扫描期间出现的所有设备。

然后请反馈!

编辑:很抱歉不得不告诉您您的驱动器已损坏。

请将外部驱动器与内部驱动器交换,然后在不连接旧驱动器的情况下在新驱动器上重新安装Ubuntu。然后通过USB机箱连接旧驱动器,然后重试...也许(极不可能),您可以通过这种方式恢复更多数据。


由于OP忽略了“搜索目录/时发现错误”消息,因此恐怕已经来不及了,挽救至少一部分数据的唯一方法是fsck -y在副本上运行并搜索lost+found目录。除此之外,邮局确实是正确的事情。
Guntram Blohm

@GuntramBlohm是的,这就是计划...
Fabby 2015年

嗯...好吧,所以我尝试用liveDVD启动。没有选项出现在“尝试U​​buntu”上,但是这次我按下了“修复错误”。计算机启动,所有错误消失。继续使用计算机是否有任何危害?
杰夫·卡罗斯

您能否将输出提供给sudo smartctl /--test:short dev/XdY
Fabby

将来任何有此问题的人都应被告知不要将每个硬盘都更换为外部硬盘驱动器。在购买新的外部硬盘驱动器之前,请检查硬盘是否已连接至其控制板。
杰夫·卡罗斯
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.