诊断Ubuntu问题的工具

随着时间的推移,用户将遇到Ubuntu与世界上任何其他操作系统一样的问题。 Ubuntu中存在哪些工具和终端命令,以帮助诊断问题的发生方式,并在可以完成时帮助解决问题。

问题如:

  • Ubuntu在X时间后或使用Y app时冻结
  • Ubuntu自行重启/hibernate/暂停
  • Ubuntu没有显示video或video有问题
  • Ubuntu没有任何声音或声音有问题
  • Ubuntu没有读取X驱动器(笔式驱动器,内置驱动器,外置驱动器……)
  • Ubuntu很慢
  • 连接时Ubuntu不使用X硬件
  • Ubuntu网络问题

通常,有一些GUI工具或终端命令,Ubuntu专家通常首先提到这些命令用于对此进行初步诊断。 什么GUI工具(如果问题与video无关或限制用户使用GUI)和终端命令(如果GUI不工作),用户可以使用它来诊断并帮助自己找到/解决问题。

由于错误日志是诊断问题的最常用工具之一,因此tail -f logfile可能是一个非常有用的命令 – 如果行为可以重复。 运行X时~/.xsession-errors许多错误记录到/var/log/Xorg.0.log~/.xsession-errors ; X本身到第一个的错误,以及在X内部运行到第二个的程序中的错误。 虽然可以在文本编辑器中打开日志文件,但使用此命令在开放式终端中查看日志文件允许用户查看记录的最后十行,然后在实时添加到日志中时出现任何错误,允许用户可以更轻松地将错误消息与需要排除故障的问题相关联。 用户可以简单地“尾随”日志文件,然后尝试重现错误,并观察新线条的显示。 由于此命令将永久运行,因此可以使用Ctrl-C返回提示。 其他日志有助于观察,例如/var/log/dmesg用于来自内核的消息,例如,与USB设备插入时相关,硬盘故障和其他硬件问题。 很多时候,只是在互联网上搜索特定的记录错误,可以将用户指向已记录相同问题的其他人,或者帮助向那些试图提供帮助的人提供具体信息。

在终端中存在一些做初步诊断的工具:

在提到一些工具之前,记住在任何命令中添加--help通常会为命令提供一些帮助。 例如dmesg --help 。 为什么我要提到这一点,因为大多数情况下,这将为您提供有关如何使用命令的非常好的信息,使其更详细或更简单或如何输出一些信息。 --help参数是3中的一个,可以显示有关命令的信息。 另外2个是infoman 。 例如man dmesginfo dmesg 。 这2显示有关命令的更多信息。 按顺序--help显示你的帮助较少,而man向你展示最多。

以下列表是我用来检查问题的一小部分命令:

dmesg – 显示启动消息和其他内核相关消息,如设备连接(当您插入新设备时,例如:外部硬盘驱动器,网络摄像头,蓝牙设备……)。 在控制台中键入dmesg ,它将显示系统如何启动。 如果您有硬盘驱动器问题或任何其他启动问题,他们可能会在此处显示。

lshw – 显示连接的所有设备和PC中的硬件列表。

lsusb – 它显示所有连接的USB设备。

lscpu – 显示基本的CPU信息。

lspci – 显示所有PCI设备(video卡,声卡,采集卡……)

lsb_release -a – 显示Ubuntu版本,代号,发布..

lspcmcia – 显示连接到PC的所有pcmcia设备。

lshal – 显示所有使用HAL注册的设备。 如果设备使用HAL,它将出现。

lsmod – 显示加载内核的所有模块

modprobe – 在内核中添加或删除模块。

lsblk – 显示所有块设备。 在普通语言中,它意味着它会向您显示一个很好的小清单,列出您如何对硬盘进行分区,每个分区的大小,安装位置等等…

fsck – 用于修复多个文件系统错误。 不要在安装的分区上使用它! 这类似于Windows上的chkdsk但具有类固醇。

X (大写字母X) – X系统。 如果你有xorg.conf问题,你可以做X --configure来创建一个新的xorg.conf和X -config XORGFILE来测试xorg.conf(XORGFILE是xorg.conf文件的路径和名称)。 X也做了很多事情。

xrandr – 更改,检查并对分辨率进行自定义更改。

dmidecode – 显示特定于内存的信息。 需要sudo才能运行。

add-apt-repository / apt-add-repository – 用于添加PPA。 例如add-apt-repository ppa:ubuntu-wine/ppa 。 不必手动添加它,然后为其添加密钥。

apt-get – Ubuntu中软件包的默认安装程序。 示例: apt-get install wine1.3

aptitude – Ubuntu软件包的优秀安装程序。 示例: aptitude install wine1.3 。 在一个命令中包含搜索选项,清理和其他function。 这也包含在apt包中,但分为几个命令。

alsamixer – 控制台中的混音器。 这解决了一些与麦克风无关的声音问题,声音不是很响…

dpkg – 基于debian的软件包的官方软件包管理器。

df – 显示每个分区/已安装设备的可用空间和已用空间。

glxinfo – 用于显示有关video卡的OpenGL信息。 需要安装mesa-util包才能使用它。

glxheads – 用于显示基本的OpenGLvideo卡信息。 显卡名称,OpenGL版本和供应商。

hdparm – 用于检查和执行有关硬盘驱动器的多个操作/测试/检查。

netstat – 显示网络连接,路由…

nano / pico – 我最好的朋友。 编辑终端中的文件。 我知道我知道。 vi或vim。 但它有一个非常奇怪的学习曲线,我想要一些“用户友好”而不是“黑客生气”。 确实,你可以用vi做很多事情但是学习nano或pico比学习vi更容易。 我会在今年年底前学习vi ..这是我的愿望/工作清单。

ntfsfix – 修复了一些ntfs分区问题。

wineserver – 管理葡萄酒应用程序。 如果你添加参数-k像wineserver -k那么它会关闭/杀死任何打开的葡萄酒应用程序。 这将解决在没有关闭或出现悬挂问题的情况下保持打开的葡萄酒应用问题。

testdisk – 恢复已删除的分区。

photorec – 恢复超时删除的多个文件。 有很好的恢复百分比。

最重要的 – 恢复多个文件删除超时。 比几种格式的photorec有更好的恢复,但由于它自2007年以来没有更新过photorec,其中完成的工作有很多超过它。 版本6.13 Beta好多倍。 虽然我仍然使用两者以防万一。

parted – 分区操作软件。 好一个。

fdisk – 与parted相似。 非常好。

ssh – 远程控制协议。 如果没有这个,大约90%的远程协助对我来说都会消失。

kill – 使用其ID杀死特定进程。 添加参数-9以使用装有剪刀和子弹的快速龙枪的机枪将其杀死。 示例: kill -9 12345

killall – 类似于kill但使用进程名称。 示例: killall lightdm 。 您也可以使用-9参数,但将其与kill命令中的ID一起使用。

top – 显示所有处理活动,僵尸和诸如此类的东西。 实时检查。

ps – 显示runnin进程列表。 不像在顶部那样实时。 将-ex添加到其中以查看具有名称,位置,父ID …的更好的流程列表。 示例: ps -ex

有一个硬件探测工具 ,可以收集流行的Linux诊断工具(如smartctl,memtester等),硬件“listers”(hwinfo,inxi,dmidecode,biosdecode等)和系统日志(Xorg.log,dmesg)的输出。等)。

这个Docker镜像可用于探测Ubuntu上的硬件,而无需在除Docker之外的主机上安装任何东西。

探针示例: https : //linux-hardware.org/ ? probe = 0b29192f95