헤드리스 서버를 생각해 보세요. 즉, 스톡(예: Ubuntu 이미지)을 사용하여 원격으로 초기화하는 원격 위치의 일반적인 x86 시스템입니다. 초기화 후에는 SSH를 통해서만 로그인하거나 원격으로 재설정할 수 있습니다. 즉, BIOS 또는 부팅 관리자 프롬프트(예: Grub 1)에 액세스할 수 없습니다.
어떤 종류의 KVM을 사용할 수도 있지만 KVM은 사용 비용이 매우 비싸고 시간 단위로 예약해야 합니다.
상황을 고려하면 스타트업 문제에 대해 편집증적인 사람이 있을 수도 있습니다. 예를 들어:
- 커널 업그레이드가 실패하면 어떻게 되나요?
- 초기 부팅 중 fsck 프롬프트는 어떻습니까? 아직 SSH를 사용할 수 없는 것일 수도 있습니다.
주의가 필요한 다른 문제가 있습니까?
menu.lst
커널 업그레이드의 경우 서문에 다음이 포함 되도록 grub(레거시)을 구성합니다.
default saved
fallback 2 # counts from 0
첫 번째 항목은 다음으로 끝납니다.
savedefault fallback
첫 번째 grub 항목은 업그레이드된 커널이고, 세 번째 항목은 알려진 작동 커널입니다. 또한보십시오대체 부팅에 대한 grub 매뉴얼 섹션.
성공적인 시작 시 기본 항목 설정을 재설정하기 위해 시작 스크립트 /etc/rc.local
(Debian과 같은 시스템에서)를 변경했습니다.
grub-set-default 0
이 grub 설정은 작동하지만 예를 들어 Ubuntu에서는 기본값이 아니며 menu.lst
모든 커널 업데이트 후에 수동으로 조정해야 합니다.
나는 공급한다
panic=60
커널 매개변수로서, 예를 들어 root=
매개변수가 잘못되었거나 커널이 손상된 경우 오류 발생 시 시스템이 자동으로 재부팅됩니다.
fsck 문제와 관련하여 최선의 접근 방식이 무엇인지 잘 모르겠습니다. 데비안과 유사한 시스템에서는 다음을 설정할 수 있습니다.
FSCKFIX=yes
in /etc/default/rcS
, 기본적으로 fsck에 자동으로 복구하도록 지시합니다.
하지만 자동 복구가 실패하면 원격 액세스가 불가능하다는 메시지가 계속 표시될 수 있습니까?
또는 여섯 번째 열의 0을 사용하여 fsck 검사를 비활성화할 수 있습니까? /etc/fstab
fs 오류가 발생하는 경우 시스템을 다시 초기화하고 백업을 복원하면 모든 fsck 문제를 피할 수 있습니까?
답변1
심각하게 말하면, 공급자가 극단적인 경우에 대해 무료(또는 최소한 저렴한) 수동 지원을 제공하지 않는다면 전환해야 할 때입니다. 그렇지 않으면 설정에 매우 만족하실 것 같습니다.
시스템이 fsck의 복구 이상으로 손상된 경우 완전히 다시 설치하는 것 외에는 할 수 있는 일이 별로 없습니다. 치명적인 하드웨어 오류를 제외하고는 실제로 이런 일이 발생하는 것을 본 적이 없습니다.
주의할 점이 하나 있습니다. 이러한 머신의 경우 안정적인 배포판(Debian, RHEL, SLES)을 선택하고 업그레이드하기 전에 적절한 시간을 기다려야 합니다(새 버전은 최소 6개월 동안 안정적입니다).
답변2
답변3
dropbear(물론 다른 포트에서 실행)를 포함하는 사용자 정의 initrd를 만들고 네트워크를 시작하고 실행하기에 충분한 논리를 만들고 필요한 경우 일부 복구 도구를 로드하는 것을 고려할 수 있습니다. 이를 기반으로 네트워킹 기능을 로드하고 SSH를 통해 로그인하여 시스템으로 돌아가 복구를 시도할 수 있는 복구 커널 구성을 생성할 수 있습니다.