SLES 服务器崩溃,并且无法重新启动。
大约半小时前,一名团队成员运行了这个命令
zypper remove zookeeper-server - 2.2.6.0-2800
...包括空格。我担心它无意中删除了比他预期多得多的内容,现在机器无法启动。这是数据中心的一台大型富士通 SLES 机器,操作员访问存在问题。我有控制台访问权限。这是 SLES 11.3 - 我还有几台这样的机器用于比较。
它启动到 grub 并且我看到“grub>”提示符。
grub> boot
Error 8: Kernel must be loaded before booting
grub> find /etc/grub.conf
[1130655,0,10] (hd0,0)
从其他机器上我相信这个文件包含以下内容:
setup --stage2=/boot/grub/stage2 --force-lba (hd0,0) (hd0,0)
quit
grub> setup --stage2=/boot/grub/stage2
Error 11: Unrecognized device string
其他机器的 Linux 内核都在 /boot 中:-rw-r--r-- 1 root root 3231872 May 20 2010 vmlinuz-2.6.32.12-0.7-default
但是这台机器在 /boot 中没有 vmlinuz 文件:
grub> find /boot/<tab>
Possible files are: grub backup_mbr initrd-2.6.32.12-0.7-default-kdump
我的问题:1. 上述 zypper 命令是否删除了许多软件包,包括内核文件?这可能吗?2. vmlinuz 文件可能在其他地方吗?我有 grub“find”命令,但没有“ls”命令。在我的所有其他机器上,它都在 /boot 中。3. 有没有办法将 vmlinuz 文件推送到此框以启动它?我不是系统管理员(说来话长...)所以有人可以建议诊断此服务器状态的最佳技术是什么吗?
谢谢!
答案1
我认为,不幸的是,指定的命令将会卸载系统的大部分内容。
zypper 语法使用+
和-
指定要安装/删除的附加包。
例如zypper install vim -emacs
将安装vim
和删除emacs
当 之后未指定任何内容时-
,由于某种原因,zypper 会删除它可以删除的所有内容......
当我运行zypper remove -
时 zypper 立即显示:
Problem: This request will break your system!
glibc-2.11.3-17.54.1.x86_64 requires filesystem, but this requirement cannot be provided
Solution 1: Following actions will be done:
keep glibc-2.11.3-17.84.1.x86_64
keep filesystem-11.1-3.5.3.x86_64
Solution 2: ignore the warning of a broken system (requires:glibc)
Solution 3: keep filesystem-11.1-3.5.3.x86_64
Solution 4: break glibc-2.11.3-17.54.1.x86_64 by ignoring some of its dependencies
您发布的命令也会发生同样的行为。
不幸的是,我相信您必须获得对服务器的物理访问权限并重建它(当然,除非您可以访问可以使用的 PXE 服务器)。
涉事的团队成员很可能要回答y
数百个上述问题,因此我首先会将他从/etc/sudoers
...中除名。