Ubuntu Headless: 읽기 전용 시스템/잠김

Ubuntu Headless: 읽기 전용 시스템/잠김

나는 Rasperry Pi를 가지고 있고 SD 카드에서 Ubuntu를 실행하고 있습니다. 설정은 "헤드리스"로 실행됩니다. 즉, 별도의 PC에 있는 SD 카드에 Ubuntu를 설치한 다음 SSH를 통해 나머지를 구성했습니다.

마지막으로 SSH를 통해 연결했을 때 컴퓨터에서 실행 중인 일부 응용 프로그램이 매우 느리기 때문에 "apt get update"를 시도했는데 내 시스템이 "읽기 전용" 시스템이라는 메시지를 받았습니다.

인터넷에서 일부 조사 결과 파일 시스템에 문제가 있을 때 Ubuntu가 읽기 전용으로 전환된다고 믿게 되었습니다.

그런 다음 시스템을 재부팅하려고 시도했지만 제대로 부팅되지 않아 더 이상 시스템에 SSH로 접속할 수도 없습니다. Ubuntu는 Headless로 실행되기 때문에 키보드 + 모니터를 연결해도 문제를 해결할 수 없습니다.

유일한 기회는 SD 카드를 다른 시스템에 마운트하여 시스템을 수리하는 것뿐이라는 직감이 있었습니다.

내 질문은 다음과 같습니다.

최소한 다시 SSH로 연결할 수 있도록 Ubuntu를 수정하는 가장 좋은 전략은 무엇입니까(우분투를 처음부터 설정할 필요가 없음) 이를 방지하기 위해 내 시스템이 읽기 전용 모드로 전환된 이유를 알아내는 방법에 대한 아이디어가 있습니까? 미래의 상황은 어떻게 될까요? 도움을 주신 모든 분들께 진심으로 감사드립니다!

이전에 이 문제가 발생했을 때 SD 카드를 다시 포맷하고 모든 것을 다시 설치했습니다. 하지만 이것이 최선의 해결책은 될 수 없습니다. 나는 이 문제를 "치료"하는 최선의 방법과 우선적으로 이를 방지하는 방법을 알고 싶습니다.

답변1

인터넷에서 일부 조사 결과 파일 시스템에 문제가 있을 때 Ubuntu가 읽기 전용으로 전환된다고 믿게 되었습니다.

저장 장치 손상의 일반적인 증상.

이는 RP에서 일반적입니다. 이유는 간단합니다. 소비자용 SD 카드는 로그, 데이터베이스, 구성 파일을 작성하는 시스템이 아니라 사람이 찍는 속도로 사진과 비디오를 작성하도록 설계되었습니다.

dmesg관련 오류를 찾아보면 mmc이를 알 수 있습니다 .

SD 카드의 컨트롤러는 가능한 모든 작업을 수행하지만 결국 이러한 사용 패턴으로 인해 일부 SD 카드의 물리적 스토리지가 빠르게 마모되고 쓰기 볼륨이 충분히 높으면 웨어 레벨링이 아무 것도 할 수 없게 됩니다.

이 경우 SD 카드를 외부에 장착하더라도 데이터 쓰기 기능이 복원되지 않습니다.

하지만,아니요원본 데이터를 유지하려면 RPi에서 다시 작성해 보는 것이 좋습니다.

이전에 이 문제가 발생했을 때 SD 카드를 다시 포맷하고 모든 것을 다시 설치했습니다. 하지만 이것이 최선의 해결책은 될 수 없습니다. 나는 이 문제를 "치료"하는 최선의 방법과 우선적으로 이를 방지하는 방법을 알고 싶습니다.

치료법은 없습니다. 유일한 옵션은 이러한 사용 패턴에 맞게 설계된 SD 카드를 구입하는 것입니다. 그러나 이는 어렵습니다. 합법적인 제조사 패키지임에도 불구하고같은 제품이라도 칩이 전혀 다르고, 그레이마켓이나 위조품이 많습니다., 심지어 서구 소매 시장에서도 마찬가지입니다.

가장 좋은 해결책은 필요한 SD 카드를 정확하게 조립할 수 있는 빠른 방법이 있는지 확인하는 것입니다. 일반적인 솔루션은 실제로 SD 카드에 기본 Ubuntu + SSH 서버를 설치하는 것입니다.이미지 촬영. 이는 향후 설정의 기초가 됩니다.

향후 SD 카드의 급격한 성능 저하를 방지하려면 다음을 수행하는 것이 좋습니다.

빠른 SD 카드라도 Raspberry Pi에서는 느립니다. 최신 RPi 4에는 최고의 SD 카드도 포함되어 있습니다.4MB/s 미만의 무작위 쓰기 속도. 이것은 현대 플래시 메모리에 비해 엄청나게 작습니다! RPi의 USB2(또는 RPi4인 경우 USB3)는 이보다 훨씬 빠릅니다. /boot 파티션을 제외한 모든 것을 외부에 저장하도록 선택하세요(지금은 데비안 설치 중에 이 작업을 수행할 수 있을 것 같지만 확실하지 않습니다! /volume을 외부 저장소로 수동으로 이동해야 하더라도 /etc/fstab을 변경하고 initrd를 다시 생성해야 합니다. 한 번만 성공하면 됩니다. 해당 상태를 시각화하고 미래를 위한 기초로 사용할 수 있습니다!) USB 연결 메모리를 사용하면 시스템 실행 속도가 더 빨라집니다. 놀랍도록 빠른 USB 저장 장치는 데스크탑과 함께 사용하기에 매우 저렴합니다.100GB+ SATA SSD는 €10 미만의 가격으로 실행됩니다.및 이를 위한 외부 USB 상자게다가 10유로 미만, 스토리지 집약적인 워크로드가 있는 경우 SD 카드와 같은 쓰기 방지 미디어에 의존할 이유가 없습니다. 그러나 중간급 USB "엄지 드라이브"도 빠르지만 SD 카드와 마찬가지로 가장 저렴한 부서의 더 낮은 수준의 장치에서도 품질에 큰 차이가 있다는 점에 유의하세요.

대부분의 시스템을 USB 저장소로 옮기기로 결정했는지 여부에 관계없이 동일한 것을 계속해서 설치하는 데 몇 시간을 소비하는 대신 시스템에 수행하는 모든 작업을 한 번의 호출로 복제할 수 있는지 확인하고 싶을 것입니다. .안시푸르일반적인 도구입니다. 설치할 적절한 패키지, PC에서 복사할 파일, 추가할 사용자, 수정할 구성 파일 등을 설명하는 "스크립트"를 작성하면 새로 생성된 시스템에서 이 작업이 수행됩니다. 필요한 것은 시스템에 대한 SSH 액세스뿐입니다.

답변2

우선, 시간을 내어 도움을 주시고 안내해 주셔서 정말 감사드립니다.

모니터를 Raspberry Pi에 연결한 다음 콘솔에 액세스하여 fsk 명령을 실행하여 문제를 해결했습니다. 비결은 컴퓨터가 실행되기 전에 모니터를 연결하는 것이었습니다(핫 스와핑은 작동하지 않았습니다). 이로 인해 "헤드리스" 시스템은 콘솔도 제공하지 않는다는 잘못된 인상을 받았습니다(실제로 콘솔은 제공했습니다. 이것이 제가 해결할 수 있는 문제입니다). 문제).

또한 애플리케이션을 SD 카드에 보관하는 것은 좋지 않은 생각이며 시스템의 일부를 USB 드라이브로 옮기고 SD 카드의 핵심 OS를 읽기 전용 모드로 유지하는 것을 고려한다는 것도 여기서 배웠습니다.

다들 감사 해요

관련 정보