재부팅 후 Linux md 구성 변경

재부팅 후 Linux md 구성 변경

재부팅 중에 Ubuntu RAID 구성이 변경되었는데 그 이유를 이해할 수 없습니다.

  • 문제 1: 시작 시 /dev/md/host:name 장치가 생성되지 않습니다. 설명적인 이름이 어떻게, 언제, 왜 만들어졌는지 이해가 되지 않습니다. 예측 가능하다면 더 좋을 것입니다.

이 배열은 항상 장치 이름을 가져옵니다.

jak # mdadm --detail /dev/md127
[...]
이름: jak:neat(호스트 jak에 대한 로컬)
UUID:593fc406:87eefd53:0a076a84:f1405112

이 배열은 장치 이름을 거의 얻지 못합니다.

jak # mdadm --detail /dev/md130
[...]
이름: jak:sour (호스트 jak local)
UUID:809a185b:a2613844:3975b412:759ec297

내가 이해한 바에 따르면 사람이 읽을 수 있는 이름은 /etc/fstab에서 사용하기 위한 것입니다.

jak # tail -2 /etc/fstab
/dev/md130 /jak/data/sour ext4 기본값 0 0
/dev/md/jak:neat /jak/data/neat ext4 기본값 0 0

jak:sour에 대해 명시적으로 /dev/md130을 마운트한 것을 볼 수 있는데, 이는 장치 이름이 가끔 변경되기 때문에 문제가 됩니다. 저도 왜 기기번호가 바뀌는지 이해가 안가네요. fstab에서 어떤 신뢰할 수 있는 /dev 항목을 사용해야 합니까?

  • 문제 2: 재부팅할 때마다 예비 드라이브가 어레이에서 떨어집니다.

jak:neat 및 jak:sour에는 모두 백업 드라이브가 있습니다(아래 mdadm 출력). 재부팅할 때마다 예비 드라이브가 어레이에서 사라집니다. 디스크 장치는 /dev/sd*에 나타나며 이를 어레이에 쉽게 다시 연결할 수 있지만(mdadm --add /dev/md127 /dev/sdn1) 분명히 이들이 어레이에서 벗어나는 것을 원하지 않습니다.

  • 무릎 꿇기: Google 및 Stack Exchange 검색특정한Linux 소프트웨어 습격 문제는 신호 대 잡음비에 대한 고통스러운 연습입니다. 이것이 좋은 질문이기를 바랍니다.

  • 구성 세부정보:

# uname -a
Linux jak 4.15.0-65-generic #74-Ubuntu SMP 화요일 9월 17일 17:06:04 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
jak # mdadm --detail /dev/md127
/dev/md127:
           버전: 1.2
     생성일: 2018년 6월 1일 금요일 07:33:21
        레이드 레벨: raid10
        어레이 크기: 23441682432(22355.73GiB 24004.28GB)
     사용된 개발 크기: 7813894144(7451.91GiB 8001.43GB)
      레이드 장비: 6
     총 장치 수: 7
       내구성: 슈퍼블록은 내구성이 뛰어납니다.

     의도 비트맵: 내부

       업데이트 날짜: 2019년 10월 6일 일요일 07:02:47
             상태 : 깨끗하고 점검중
    활성 장치: 6
   작업 장비: 7
    실패한 장치: 0
     예비 장비: 1

            레이아웃:근처=2
        블록 크기: 512K

일관성 전략: 비트맵

      상태 확인: 18% 완료

              이름: jak:neat(호스트 jak에 대한 로컬)
              UUID:593fc406:87eefd53:0a076a84:f1405112
            이벤트: 201984

    번호 기본 보조 RaidDevice 상태
       0 8 17 0 활성 동기화 세트-A /dev/sdb1
       1 65 1 1 액티브 싱크 세트-B /dev/sdq1
       2 8 81 2 활성 동기화 세트-A /dev/sdf1
       3 65 33 3 액티브 싱크 세트-B /dev/sds1
       4 8 49 4 활성 동기화 세트-A /dev/sdd1
       6 65 17 5 활성 동기화 세트 -B /dev/sdr1

       7 8 177 - 예비 /dev/sdl1
잭#
jak # mdadm --detail /dev/md130
/dev/md130:
           버전: 1.2
     생성일: 2018년 5월 26일 토요일 10:51:23
        레이드 레벨: raid6
        어레이 크기: 39065217024(37255.49GiB 40002.78GB)
     사용된 개발 크기: 9766304256(9313.87GiB 10000.70GB)
      레이드 장비: 6
     총 장치 수: 7
       내구성: 슈퍼블록은 내구성이 뛰어납니다.

     의도 비트맵: 내부

       업데이트 날짜: 2019년 10월 6일 일요일 07:03:43
             상태 : 깨끗하고 점검중
    활성 장치: 6
   작업 장비: 7
    실패한 장치: 0
     예비 장비: 1

            레이아웃: 왼쪽 대칭
        블록 크기: 512K

일관성 전략: 비트맵

      상태 확인: 41% 완료

              이름: jak:sour (호스트 jak local)
              UUID:809a185b:a2613844:3975b412:759ec297
            활동: 139649

    번호 기본 보조 RaidDevice 상태
       0 8 1 0 활성 동기화 /dev/sda1
       1 8 33 1 활성 동기화 /dev/sdc1
       2 8 129 2 활성 동기화 /dev/sdi1
       3 8 145 3 활성 동기화 /dev/sdj1
       4 8 161 4 활성 동기화 /dev/sdk1
       6 8 241 5 활성 동기화 /dev/sdp1

       7 8 209 - 예비 /dev/sdn1
잭#

나는 /dev/sdn이 의심스럽다는 것을 의심하지 않지만 어쨌든 자세한 내용은 다음과 같습니다.

jak # smartctl -a /dev/sdn
smartctl 6.6 2016-05-31 r4324 [x86_64-linux-4.15.0-65-generic] (로컬 빌드)
저작권 (C) 2002-16, Bruce Allen, Christian Franke, www.smartmontools.org

=== 정보 섹션 시작 ===
장비 모델: WDC WD100EFAX-68LHPN0
일련번호: JEKG3TLZ
LU WWN 장치 ID: 5 000cca 267f04f25
펌웨어 버전: 83.H0A83
사용자 용량: 10,000,831,348,736바이트[10.0TB]
섹터 크기: 논리적 512바이트, 물리적 4096바이트
속도: 5400rpm
전체 크기: 3.5인치
장치는 smartctl 데이터베이스에 없습니다. [자세한 내용은 -P showall을 사용하십시오.]
ATA 버전은 ACS-2, ATA8-ACS T13/1699-D 개정 4입니다.
SATA 버전: SATA 3.2, 6.0Gb/s(현재: 6.0Gb/s)
현지 시간: 2019년 10월 6일 일요일 07:04:58 PDT
SMART 지원: 사용 가능 - 장치가 SMART를 지원합니다.
SMART 지원은 다음과 같습니다: 활성화됨

=== 스마트 데이터 읽기 시작 부분 ===
SMART 종합건강 자가평가 테스트 결과: 합격

일반 SMART 값:
오프라인 데이터 수집 상태: (0x82) 오프라인 데이터 수집 활동
                    오류 없이 완료되었습니다.
                    자동 오프라인 데이터 수집: 활성화되었습니다.
셀프 테스트 실행 상태: (0) 마지막 셀프 테스트 루틴이 완료되었습니다.
                    오류나 자체 점검이 없습니다.
                    이미 실행 중입니다.
오프라인으로 완료하는 데 걸린 총 시간
데이터 수집: (93)초.
오프라인 데이터 수집
기능: (0x5b) SMART 즉시 오프라인 실행.
                    자동 오프라인 데이터 수집 ON/OFF를 지원합니다.
                    온라인 신제품 출시 이후 오프라인 컬렉션이 중단됩니다.
                    주문하다.
                    오프라인 표면 스캐닝을 지원합니다.
                    자체 테스트를 지원합니다.
                    전송 자체 테스트는 지원되지 않습니다.
                    선택적 자가 테스트를 지원합니다.
SMART 기능: (0x0003) 입력 전 SMART 데이터 저장
                    절전 모드.
                    SMART 자동 저장 타이머를 지원합니다.
오류 로깅 기능: (0x01) 오류 로깅을 지원합니다.
                    일반 로깅을 지원합니다.
간단한 자체 테스트 절차
권장 폴링 시간: (2)분.
확장된 자체 테스트 프로그램
권장 폴링 시간: (1116)분.
SCT 기능: (0x003d) SCT 상태를 지원합니다.
                    SCT 오류 복구 제어를 지원합니다.
                    SCT 기능 제어를 지원합니다.
                    SCT 데이터시트를 지원합니다.

SMART 속성 데이터 구조 개정 번호: 16
임계값이 있는 공급업체별 SMART 속성:
ID# ATTRIBUTE_NAME 플래그 값 최악의 임계값 유형이 업데이트되었습니다. WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate 0x000b 100 100 016 항상 사전 실패 - 0
  2 Throughput_Performance 0x0004 131 131 054 Old_age 오프라인 - 104
  3 Spin_Up_Time 0x0007 100 100 024 항상 사전 실패 - 0
  4 Start_Stop_Count 0x0012 100 100 000 Old_age 항상 - 3
  5 Realated_Sector_Ct 0x0033 100 100 005 항상 - 실패 전 0
  7 Seek_Error_Rate 0x000a 100 100 067 Old_age 항상 - 0
  8 Seek_Time_Performance 0x0004 128 128 020 Old_age 오프라인 - 18
  9 Power_On_Hours 0x0012 100 100 000 Old_age 항상 - 1148
 10 Spin_Retry_Count 0x0012 100 100 060 Old_age 항상 - 0
 12 Power_Cycle_Count 0x0032 100 100 000 Old_age 항상 - 3
 22 Unknown_Attribute 0x0023 100 100 025 항상 - 실패 전 100
192 Power-Off_Retract_Count 0x0032 100 100 000 Old_age 항상 - 51
193 Load_Cycle_Count 0x0012 100 100 000 Old_age 항상 - 51
194Temperature_Celsius 0x0002 144 144 000 Old_age 항상 - 45(최소/최대 20/54)
196 Realated_Event_Count 0x0032 100 100 000 Old_age 항상 - 0
197 Current_Pending_Sector 0x0022 100 100 000 Old_age 항상 - 0
198 Offline_Un 수정 가능 0x0008 100 100 000 Old_age 오프라인 - 0
199 UDMA_CRC_Error_Count 0x000a 200 200 000 Old_age 항상 - 0

SMART 오류 로그 버전: 1
기록된 오류 없음

SMART 자체 테스트 로그 구조 개정 번호 1
자체 테스트는 기록되지 않습니다. [자체 테스트를 실행하려면 다음을 사용하십시오: smartctl -t]

SMART 선택적 자가 테스트 로그 데이터 구조 개정 번호 1
 범위 MIN_LBA MAX_LBA CURRENT_TEST_STATUS
    1 0 0 테스트되지 않음
    2 0 0 테스트되지 않음
    3 0 0 테스트되지 않음
    4 0 0 테스트되지 않음
    5 0 0 테스트되지 않음
선택적 자체 테스트 플래그(0x0):
  선택한 범위를 스캔한 후 스캔된 디스크의 나머지 부분을 읽지 마십시오.
전원을 켤 때 선택적 자가 테스트가 대기 중인 경우 0분 후에 재개하십시오.

잭#
#mdadm.conf
#
#! 알아채다! 이 파일을 업데이트한 후 update-initramfs -u를 실행하십시오.
#! 알아채다! 이렇게 하면 initramfs에 최신 복사본이 있게 됩니다.
#
# 이 파일에 대한 자세한 내용은 mdadm.conf(5)를 참조하세요.
#

# 기본적으로(내장됨) 모든 파티션(/proc/partitions)과 모든 파티션을 스캔합니다.
# MD 슈퍼블록 컨테이너. 또는 검색할 장치를 지정하려면 다음을 사용하세요.
# 필요한 경우 와일드카드를 사용합니다.
#DEVICE 컨테이너 파티션 나누기

# 자동으로 새 어레이를 로컬 시스템에 속하는 것으로 표시합니다.
홈 호스팅

# 모니터링 데몬에게 이메일 경고를 보낼 위치를 지시합니다.
MAILADDR 루트

# 기존 MD 어레이의 정의
배열/dev/md/0 메타데이터=1.2 UUID=7636d5d0:8c9d0823:7252c563:30724789 이름=jak:0
ARRAY /dev/md130 메타데이터=1.2 UUID=809a185b:a2613844:3975b412:759ec297 이름=jak:sour

# 이 구성은 2018년 4월 28일 토요일 16:34:38 ​​​​-0700에 mkconf에 의해 자동으로 생성되었습니다.

이제 남은 질문

  • /etc/md/jak:neat그리고 /etc/md/jak:sour나타나지 마세요. 어떤 프로세스가 이를 생성합니까?

  • 실행하면 blkid /dev/md127출력이 반환되지 않습니다. 예상되는 출력을 반환합니다 /dev/md0. 그래서 fstab이제 파일 시스템 장치를 및 으로 나열하는데 /dev/md127이는 /dev/md130일시적인 느낌입니다.

의견을 보내주셔서 미리 감사드립니다!

답변1

감사해요리눅스 보안 괴물단서를 찾아보세요.

(의도적으로) 업데이트한 적이 없습니다.mdadm.conf(맨 페이지);거기 있는지 몰랐어요. 누락된 콘텐츠를 추가하면 ARRAY정말 도움이 됩니다.

그리고 나는 (의도적으로) 뛰지 않았다.update-initramfs(맨 페이지).

이 두 단계를 수행하면 내 워크스테이션이 두 번 연속으로 성공적으로 부팅되었습니다. 정말 대단합니다.


내 질문 끝에 있는 나머지 질문을 참조하세요.

관련 정보