ubuntu server 10 - 速度慢且无法删除桌面环境

ubuntu server 10 - 速度慢且无法删除桌面环境

我正在运行带有桌面环境的 ubuntu server 10.10。

即使通过我们的本地网络连接到服务器,简单的页面请求也需要 5 秒以上的时间。

我相信这部分与安装的桌面环境有关,因为服务器运行速度更快(但考虑到它在本地网络上,速度并没有达到应有的水平),但 taskel 每次都会失败(aptitude 失败 100)。我对网络和 Linux 的了解有限。真的很感谢关于如何解决这个问题的想法。

哦,还有,在系统监视器中,其中一个处理器几乎总是在 100% 左右。我怀疑这也是正常的......

答案1

实际上肯定有问题...我不知道 ubuntu 服务器的详细信息,但在 Debian 上,你可以使用以下命令关闭 GUI

   /etc/init.d/gdm stop

然后关于已加载的 CPU:要么是某个疯狂的进程出错了(可能是在图形环境中),要么是内核驱动程序崩溃了。首先,使用命令top来识别哪个进程消耗了该 CPU 能力,下面是“top”输出的示例,其中进程(“dnetc”)完全加载了 CPU:

top - 18:11:54 up 157 days,  7:47,  3 users,  load average: 1.07, 1.25, 1.25
Tasks: 122 total,   2 running, 120 sleeping,   0 stopped,   0 zombie
Cpu(s):  4.7%us,  1.0%sy, 94.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.3%si,  0.0%st
Mem:   1034424k total,   971320k used,    63104k free,    61636k buffers
Swap:  8000352k total,   116816k used,  7883536k free,   202912k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                
 5059 emmanuel  39  19  7780 4364  184 R 94.4  0.4   6919:54 dnetc                                   
16077 root      20   0  117m  53m 6728 S  2.7  5.3  10:45.67 X                                       
17783 emmanuel  20   0  990m 487m  30m S  2.3 48.3  20:11.99 firefox                                 
17606 emmanuel  20   0  9340 5368 3248 S  0.7  0.5   0:02.82 wmaker                                  

'top' 输出中的另一个指示是“Cpu”行:它显示是用户、系统、nice 还是等待进程占用了您的系统资源。如果没有明确的进程占用您的 CPU,则可能是某些阻塞的 IO(等待),例如由于驱动器故障或驱动程序崩溃(通常是由于某些硬件故障)。查看 'dmesg' 命令或 '/var/log/messages' 文件的输出以识别内核驱动程序崩溃或 Oopses 或崩溃:

CPU 3:
Modules linked in: pvfs2 bonding md_mod ipv6 fan ac battery dm_snapshot dm_mirror dm_mod af_packet sg loop usbhid uhci_hc
d usb_storage e1000 8250_pnp 8250 serial_core rtc shpchp pcspkr k8temp i2c_nforce2 button pci_hotplug thermal processor i2c_core ehci_hcd forcedeth ohci_hcd u
sbcore evdev 3w_9xxx sata_nv libata
Pid: 12124, comm: pvfs2-client-co Tainted: G      D 2.6.24.7-storiq64-opteron #1
RIP: 0010:[<ffffffff80502ad7>]  [<ffffffff80502ad7>] _spin_lock+0x7/0x10
RSP: 0018:ffff8102a48e3ec0  EFLAGS: 00000286
RAX: 00000000fffffe53 RBX: 00000000fffffe53 RCX: ffff8102a48e3f50
RDX: 00000000fffffe53 RSI: 00000000000001fd RDI: ffff81041692d7e0
RBP: ffff81000104b600 R08: ffff810414c8d928 R09: ffff810414c8d900
R10: 0000000000000000 R11: 0000000000000202 R12: ffff81000104fa20
R13: 0000000000000000 R14: ffff810236df1018 R15: ffff810417662b80
FS:  00002b365c208ae0(0000) GS:ffff81041811f640(0000) knlGS:00000000f7ddf8e0
CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
CR2: 0000000000628288 CR3: 000000029b6ef000 CR4: 00000000000006a0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400

Call Trace:
 [<ffffffff881e481f>] :pvfs2:pvfs2_devreq_read+0x1cf/0x400
 [<ffffffff802954f5>] vfs_read+0xc5/0x160
 [<ffffffff802959d3>] sys_read+0x53/0x90
 [<ffffffff8020bc1e>] system_call+0x7e/0x83

另一种可能性是驱动器出现 IO 错误,例如:

Apr 30 04:05:26 linux kernel: end_request: I/O error, dev /dev/sda sector 53445

现在该如何纠正这个问题呢?如果是某个用户程序出了问题,只需将其终止即可。首先尝试使用kill <process ID>或礼貌地终止它killall <program name>,例如,要从之前看到的“top”输出中终止“dnetc”程序,可以执行以下操作之一:

kill 5059
killall dnetc

但也有可能是它根本就无法响应,因为它已经损坏到无法修复的程度。所以你必须用kill -9 <pid>或强制杀死它killall -9 <program name>

kill -9 5059
killall -9 dnetc

如果驱动程序或内核出现故障怎么办?不幸的是,只有重启才能修复它。至于出现故障的驱动器,好吧,您必须更换它,没有其他办法。

答案2

你可以使用 删除桌面管理器apt-get remove gdm。如果你想进一步删除整个 GNOME(如果你没有运行 GUI,这可能是一个好主意),请尝试

apt-get remove libgtk2.0-0

在 Debian 中,上述操作会导致所有依赖 libgtk2.0-0 的软件包(即所有 GNOME)也被删除。但在我的 Ubuntu 主机上,当我尝试此操作时,我看到 apt-get 发出了错误,抱怨软件包的依赖关系未得到满足。这似乎很愚蠢和烦人,但可以通过删除所有依赖软件包并重试来解决,您可以多次尝试,直到它们全部消失。

相关内容