EXT4 로깅을 비활성화하는 것은 얼마나 위험합니까?

EXT4 로깅을 비활성화하는 것은 얼마나 위험합니까?

저는 Linux를 처음 접했습니다. Raspberry Pi OS Lite가 설치된 Raspberry Pi 4 장치가 있습니다. USB에 HDD 4개를 연결해 NAS로 사용하고 있습니다. 하드 드라이브는 이전에 Windows에서 사용했기 때문에 NTFS로 포맷되었습니다. 그런데 리눅스에서는 전송 속도가 너무 느린 것 같아서 EXT4로 변환했습니다. 지금은 많이 나아졌지만... 새로운 문제가 생겼습니다. EXT4 디스크는 시스템이 해당 로그를 쓰기 위해 거의 지속적으로 디스크에 액세스하기 때문에 더 이상 절전 모드로 전환되지 않습니다. 비활성화했는데 tune2fs -O ^has_journal /dev/sda1이제 드라이브가 다시 절전 모드로 전환됩니다. 저는 Linux에 대해 거의 아무것도 모르기 때문에 로깅을 비활성화한 상태에서 시스템을 실행하는 것이 얼마나 나쁜지 묻고 싶었습니다. 무슨 일이야? 어떤 상황에서 데이터 손상이 발생할 수 있나요? 나는 이 시스템에서 UPS를 사용할 계획입니다. 도움이 되었나요? 로깅이 비활성화되면 드라이브는 갑작스러운 정전 후에만 오류가 발생합니까, 아니면 정상 작동 중에도 오류가 발생합니까? 로깅은 시스템 하드 드라이브가 아닌 4개의 외부 하드 드라이브에서만 비활성화됩니다. 데이터는 어느 정도 중요하지만 중요하지는 않습니다. 그리고 거의 방문하지 않는 곳인데...

답변1

실제로 UPS가 있는 NAS는 로깅을 비활성화하기에 완벽한 장소입니다.

저널링 파일 시스템의 주요 이점(및 목표)은 HDD의 전원이 꺼졌을 때 데이터를 보존하는 것입니다. HDD의 적절한 위치에 데이터를 쓰는 데는 약간의 시간과 디스크 액세스의 몇 가지 물리적 작업이 소요되는 반면, 변경 사항을 로그에 먼저 쓰는 것이 훨씬 더 빠르다는 것입니다. FS 드라이버는 애플리케이션이 일정 기간 동안 비활성 상태임을 감지하면 로그의 데이터를 FS로 덤프합니다.

따라서 로깅을 비활성화하면 디스크 쓰기 속도가 느려집니다. 이제 운전자는 빠른 저장을 위한 편리한 위치가 없으며 HDD의 데이터를 적절하게 정리하는 데 시간이 필요하다는 것을 알고 있습니다.

NAS를 사용하는 사용자는 이미 내장 HDD(또는 SSD)와 같은 즉각적인 응답보다는 더 긴 읽기/쓰기 작업을 기대합니다. 그러므로 인간은 느린 쓰기 속도를 알아차리지 못할 것입니다. 특히 실제 감속은 실제로 1초 미만이기 때문에 더욱 그렇습니다.

로깅에 대해 더 자세히 설명하고 이를 논의하는 실제 교과서에 대한 링크를 제공하는 위키 기사를 확인할 수도 있습니다. https://en.wikipedia.org/wiki/Journaling_file_system

답변2

나는 당신이 설명하는 행동에 대한 산발적인 보고를 몇 개 보았습니다. 예: 여기https://superuser.com/a/1046164

~처럼너무 차이는 초기화 지연과 관련이 있을 수 있다고 언급했지만 일부 보고에 따르면 이 문제는 여전히 오랫동안 지속될 수 있습니다.

위에 인용된 답변에서는 드라이브를 다시 포맷하여 문제를 해결할 것을 권장합니다. "noatome"을 사용하여 설치할 수도 있습니다.


일기를 닫아도 안전한지에 대한 대답은 매우 주관적입니다. 나는 귀하의 전원 공급 장치의 신뢰성을 바탕으로 어떤 결정도 내리지 않을 것입니다. 실패하기 가장 쉬운 일이다. 무엇이든 실패할 수 있습니다. 시스템의 다른 결함으로 인해 시스템이 중지될 수도 있습니다.

8년 동안 "잘 운영"된 후에 나는 일이 실패하는 상황을 겪었습니다. 그러나 6개월 만에 또 실패했습니다.

결정의 기초가 되어야 하는 유일한 기준은 데이터의 가치를 얼마나 중요하게 생각하는지와 백업이 항상 적절하다고 확신하는지 여부입니다.

홈 NAS는 일반적으로 사진과 같은 개인 데이터를 보관하는데, 이는 대체할 수 없고 잃어버리면 매우 불편하며 종종 백업되지 않습니다. 하지만 반드시 백업해야 합니다.

즉, 그것은 귀하의 데이터입니다. 내일이나 올해에는 실패하지 않을 수도 있지만 저널링을 비활성화하면 위험이 증가합니다.


일기는 데이터 보안에 관한 것입니다. 귀하의 데이터 보안은 결코 완벽하게 보장될 수 없습니다. 로그의 실제 목적은 파일 시스템을 원자적으로(또는 가능한 한 원자에 가깝게) 업데이트하는 것입니다.

기본적으로 변경을 시작하기 전에 변경하려는 의도를 적어 두는 것입니다. 실패 시 다음 중 하나를 수행합니다.

  • 일지 항목이 불완전하므로 무시할 수 있습니다.
  • 로그 항목이 완료되었으며 실제 파일 시스템의 업데이트를 완료하는 데 사용할 수 있습니다.
  • 파일 시스템 쓰기가 완료되고 로그 항목을 사실상 무시할 수 있습니다.

어떤 이유로든 시스템이 충돌하는 경우 파일 시스템은 일관성을 유지해야 합니다. 분명히 하드웨어 자체는 다른 것으로 프로그래밍되거나 비트를 뒤집는 것(Google bot rot)으로 프로그래밍될 수 있지만 그 이상입니다. 저널링은 손상 및 데이터 손실 위험을 줄이는 데 매우 효과적입니다.

답변3

첫째, ext4에 로그인하는 것은 필수는 아니지만 선택 사항입니다.

둘째: 일기는아니요파일 시스템의 탄력성을 높이고 정전이나 커널 패닉 이후 복구에 관한 것입니다.서둘러요.

세 번째: 1) 전원 문제가 없고 시스템이 매우 안정적이기 때문에 영구적으로 비활성화했습니다. 2) 로깅으로 인해 쓰기 작업 속도가 느려집니다. 3) 로깅으로 인해 디스크에 기록되는 데이터 양이 크게 늘어납니다. 이는 SSD 저장소에 적합하지 않습니다.

어떤 상황에서 데이터 손상이 발생할 수 있나요?

로깅 자체가 부족해도 데이터가 손상되지는 않습니다.

로깅이 비활성화되면 드라이브는 갑작스러운 정전 후에만 오류가 발생합니까, 아니면 정상 작동 중에도 오류가 발생합니까?

실패하면 어떻게 해야 하나요? 육체적으로? 일기와 상관없이 발생합니다. 파일 시스템 손상과 같은 장애가 발생합니까? 일기를 쓰는 것은아니요이를 예방하면 더 빠르게 처리됩니다.

관련 정보