gam*_*ing 5 linux raspberry-pi
我有一个关于 Linux 一直困扰我的问题。在 Windows 上,如果任何系统文件损坏,您只需重新安装系统文件即可,无需重新格式化磁盘,这是一个不错的选择。Linux 上有类似的东西吗?
我在 Raspberry Pi 上运行了 Raspbian Distro,在再次断电后,我的系统再次损坏。它运行 Netatalk 服务器作为 Mac 的 TimeMachine。断电后,系统无法启动,我不得不手动在文件系统上运行 fsck.ext4 来修复它 - 它有很多错误需要修复。运行后,系统会启动,但周围出现奇怪的错误 - 它不知道机器的名称,所以它显示为 pi@(unknown),一些基本的系统程序如 ls 或 sudo 给我“权限被拒绝”错误,我已将卡插入另一台计算机并手动设置对 sudo 的正确权限,但是现在当我运行它时,它给了我“分段错误”错误,因此文件显然已损坏。
现在我的观点是 - 重新安装所有东西会很痛苦。是否可以通过重新安装所有系统文件来修复它,而不会破坏我对 netatalk 的所有自定义设置?
如果发行版是基于 Debian/Ubuntu 的,我会选择其中一个apt
或尝试一下。aptitude
对于基于 Redhat 的发行版(例如 CentOS/Fedora/RHEL),您可以使用 RPM 来验证和修复已安装软件包的某些方面。
% rpm -qVav
......... /usr/bin/rdesktop
......... /usr/share/doc/rdesktop-1.6.0
......... d /usr/share/doc/rdesktop-1.6.0/AUTHORS
......... d /usr/share/doc/rdesktop-1.6.0/COPYING
......... d /usr/share/doc/rdesktop-1.6.0/ChangeLog
......... d /usr/share/doc/rdesktop-1.6.0/HACKING
......... d /usr/share/doc/rdesktop-1.6.0/README
......... d /usr/share/doc/rdesktop-1.6.0/TODO
......... d /usr/share/doc/rdesktop-1.6.0/ipv6.txt
......... d /usr/share/doc/rdesktop-1.6.0/keymap-names.txt
......... d /usr/share/doc/rdesktop-1.6.0/keymapping.txt
...
...
Run Code Online (Sandbox Code Playgroud)
% rpm -qVv openssh
......... /etc/ssh
..?...... c /etc/ssh/moduli
......... /usr/bin/ssh-keygen
......... /usr/libexec/openssh
......... /usr/libexec/openssh/ssh-keysign
......... /usr/share/doc/openssh-5.5p1
......... d /usr/share/doc/openssh-5.5p1/CREDITS
......... d /usr/share/doc/openssh-5.5p1/ChangeLog
......... d /usr/share/doc/openssh-5.5p1/INSTALL
......... d /usr/share/doc/openssh-5.5p1/LICENCE
......... d /usr/share/doc/openssh-5.5p1/OVERVIEW
...
...
Run Code Online (Sandbox Code Playgroud)
% rpm --setperms {packagename}
% rpm --setugids {packagename}
Run Code Online (Sandbox Code Playgroud)
注意:man rpm
有关输出的更多详细信息,请参阅参考资料-V|--verify
。
有关更多详细信息,请参阅本文:http://www.cyberciti.biz/tips/reset-rhel-centos-fedora-package-file-permission.html。