bcache0 볼륨을 삭제하는 방법은 무엇입니까?

bcache0 볼륨을 삭제하는 방법은 무엇입니까?

에코를 사용하여 분리하고 중지해 보았습니다. 장치는 자동으로 삭제되지만 재부팅 후에 다시 표시됩니다. 한 번 재부팅한 후 mdadm raid를 백업으로 복원했습니다!

또 한 번은 페어링된 메모리 드라이브를 비활성화하여 분리했습니다. 다시 시작한 후 /dev/bcache0이 복원되었습니다.

로그아웃이 되지 않습니다

/sys/fs/블록/bcache

또한 /sys/fs/bcache... /sys/block/md0/md0p1/bcache를 살펴보았습니다.

존재하지 않는 로그아웃의 경우.

등록 전용 및 자동 등록

bcache-tools를 제거했는데 재부팅 후에도 /dev/bcache0이 계속 나타나고 /dev/md0이 캐시됩니다!

답변1

bcache 볼륨을 영구적으로 삭제하려면 기본 장치에서 bcache 수퍼블록을 삭제해야 합니다. 이 작업은아니요sysfs 인터페이스를 통해 노출됩니다. 그래서:

  1. 평소대로 bcache 장치를 중지합니다 echo 1 > /sys/block/<device>/bcache/stop. 최신 커널에서는 "Permission Denied"로 인해 실패할 수 있습니다. 이 경우 아래와 같이 UUID로 장치를 중지해야 합니다.여기에 설명되어 있습니다:

    ls -la /sys/block/<device>/bcache/set 
    # lrwxrwxrwx 1 root root 0 Jun 19 18:42 /sys/block/<device>/bcache/set -> ../../../../../../../../fs/bcache/<UUID>
    # Note: UUID is something like "89f4c92a-7fae-4d04-ab3c-7c1dd41fa1a5"
    
    echo 1 > /sys/fs/bcache/<UUID>/stop
    
  2. 닦아 슈퍼 블록을 사용하십시오 head -c 1M /dev/zero > /dev/<device>. (충분한 새 버전이 있는 경우 이를 대신 util-linux사용할 수 있습니다 wipefs. 이는 bcache 서명을 지우는 데 더 정확합니다: wipefs -a /dev/<device>.) 이는 파괴적인 작업이므로 서명을 지우게 되므로 올바른 장치를 선택하는 데 주의해야 합니다. 헤드 장치. 더 이상 bcache 볼륨의 데이터에 액세스할 수 없다는 점에 유의하세요!

관련 정보