BBB 기반 사용자 정의 보드의 루트 파티션에 있는 fsck

BBB 기반 사용자 정의 보드의 루트 파티션에 있는 fsck

우리는 BeagleBone Black 기반 맞춤형 임베디드 Linux 보드를 보유하고 있습니다. Linux-3.12, 256MB RAM 및 ext4파일 시스템이 포함된 4GB eMMC가 있습니다.

때때로 파일 시스템 오류가 발생합니다(드물지만 불가능하지는 않음). 그래서 우리는 파일 시스템 오류를 확인하고 부팅 시 이를 수정하려고 합니다.
분명히 우리는 fsck나 다른 유틸리티가 파일 시스템의 데이터를 파괴하는 것을 원하지 않습니다.

SysVinit비지박스 기반 이 있으므로 /forcefsck작동하지 않습니다. 그런 다음 /etc/fstab(5번째 필드를 1로 설정) 사용하고 스크립트 fsck -p에서 실행했습니다 rcS.

이 조합은 파티션 이외의 파티션에도 적용됩니다 rootfs. 그것에 관해 몇 가지 질문이 있습니다.

  1. fsck어쨌든 파티션 에서 실행할 수 있습니까 rootfs?
  2. fsck -p파티션의 데이터를 삭제할 수 있나요 ?
  3. 이 상황을 처리하는 더 좋은 방법이 있습니까? 파일 시스템 오류를 확인하고 수정하는 서비스를 의미합니까?

답변1

SysVinit 기반 데스크톱 Linux 배포판의 일반적인 방법은 부팅 중에 루트 파일 시스템에서 오류가 감지되면 루트 암호를 요청하는 것입니다. 그런 다음 이를 사용하여 fsck루트 fs에서 실행할 수 있습니다 . 귀하의 내장 배포판이 이를 수행하는지 여부는 알 수 없지만, 그렇게 구성하는 것은 확실히 가능합니다.

부팅 중에 오류가 감지되지 않으면 루트로 로그인하여 실제로 필요하지 않은 모든 것을 중지하고 루트 파일 시스템을 읽기 전용으로 다시 마운트한 다음 fsck를 실행하는 것이 또 다른 옵션입니다.

이는 블록 스토리지의 루트 파일 시스템에 관한 것이지,루트프스. Rootfs는 부팅 중에 사용되는 최소 RAM 기반 파일 시스템이며 손상될 수 없습니다(부팅 커널 이미지가 손상되거나 RAM이 불량하지 않는 한).

원칙적으로는 fsck -p"안전한" 수리만 수행하기 위한 것이지만 실제로 나쁜 일이 발생하지 않도록 하려면 수동으로 실행하여 각 작업에 대한 메시지가 표시되도록 하십시오. 어떤 이유로든 루트 파일 시스템에 귀중한 데이터가 있는 경우(발생해서는 안 되지만 실제로 발생할 수도 있음) dd먼저 백업을 만드십시오.

관련 정보