이제 REDPILL 에서 DS918+ 와 HBA 사용시 하드의 시리얼번호가 표시됩니다.
오늘 하루종일 여기 매달렸는데, 간만에 기쁜소식을 전해 드리네요.
DS918+ 가 이제 제일 완벽한 모델로 다시 등업할것 같습니다.
트랜스코딩, HBA 모든게 완벽합니다.
이 두가지 조건을 지원하는 유일한 모델이 된 셈입니다.
지금까지 HBA 와 사용할때 하드디스크의 S.M.A.R.T 정보인 시리얼번호를 뿌리지 못하는 문제가 있어서
레이드로 묶어서 사용하시는 경우 하드교체가 어려워지는 치명적인 문제가 있었습니다.
금일 SA6400 을 위해 개발된 커널5용 lkm5 의 소스가 커널5를 타겟으로 개발되었지만 여러가지 개선사항이 보여서
커널4용 기존 lkm 소스에도 개선된 부분만 가져와서 컴파일을 해봤습니다.
눈에 두드러지는 소스가 scsi_disk_serial.c / scsi_disk_serial.h 라는 것이 새로 생겼는데요.
이름만봐도 딱 냄새가 나서 바로 가져와 봤습니다. ㅎㅎ
scsi 는 hba 장치에 해당하고 디스크의 시리얼 관련된 소스라는 의미겠죠.
https://github.com/PeterSuh-Q3/redpill-lkm/blob/master/shim/storage/scsi_disk_serial.c
이 소스의 개선을 위해 여러 전문가들이 다 모여서 해결을 하셨네요.
3개월전인 5월19일에 개발이 마쳐진 상태인데 커널4에 적용해볼 생각을 아무도 못한것 같습니다.^^
현재는 M-SHELL 에만 적용된 상태입니다.
ARPL 개발자 분들께는 제가 따로 전파하겠습니다.
늘 그렇듯이 로더를 다시 빌드해 주셔야 합니다.
빌드과정에서 새로운 버전으로 내려와야 하는 lkm 버전은 23.5.8 입니다.
S.M.A.R.T 정보도 DS918+ 는 HBA 에서 많이 누락되어 보였는데, 이것도 완벽하게 전부 다 보이네요.^^
수고 하셨습니다 화정큐삼님~~
궁금한점이 있습니다
제가 해깔려서 그런데요
Tcrp-M-SHELL 918+
재빌드시 lkm 버전은 23.5.8
자동 설치 되는건가요 따로 설치해줘야하나요?
저도 리눅스 입문한지는 얼마 안된 초보입니다.
커널에 대한 정의는 ChatGPT 의 답변을 대신합니다.
커널은 컴퓨터 과학 및 운영 체제 분야에서 중요한 개념입니다. 커널은 운영 체제의 핵심 부분으로, 하드웨어와 소프트웨어 간의 상호 작용을 관리하고 제어합니다. 이러한 역할을 수행하기 위해 커널은 시스템 자원, 프로세스 관리, 파일 시스템 등과 같은 다양한 기능을 담당합니다.
커널은 크게 두 가지 주요 유형으로 나뉩니다. 모놀리식 커널과 마이크로커널입니다. 모놀리식 커널은 모든 기능을 단일 커널 내에서 실행하는 반면, 마이크로커널은 최소한의 기능만을 커널 내에 유지하고 다른 서비스 및 드라이버는 사용자 공간에서 실행합니다. 이러한 접근 방식은 운영 체제의 안정성과 확장성에 영향을 미칩니다.
커널은 다양한 운영 체제에서 사용되며, 예를 들어 Linux, Windows, macOS, 및 Android 운영 체제에서 모두 다른 형태의 커널을 사용합니다. 이러한 커널은 각 운영 체제의 동작과 특징을 결정하는 중요한 구성 요소 중 하나입니다.
TCRP 는 Tinycore Redpill 의 약자로 Redpill 로더 빌드를 쉽고 편리하게 만들수 있도록 pocopico님이
고안하신 아주 작은 형태의 경량 리눅스 입니다.
이 안에서 깃헙과 통신하며 각종 필요한 모듈들을 다운받고 조합하고 컴파일해서 최종적으로 레드필 로더를 만들어 냅니다.
lkm 은 Linux kernel module for RedPill 의 약자로
위에 설명드린 커널중 DSM 과 레드필 로더의 중간 컨트롤을 담당하는 또 하나의 커널이라고 보시면 됩니다.
시노롤지의 하드웨어 컨트롤을 담당하는 아주 중요한 코어라고 보시면 됩니다.
시놀롤지를 해킹해서 컨트롤이 가능하도록 개발자들이 지금도 계속 컴파일해서 개선을 하고 있습니다.
최근에는 제가 컴파일을 해서 배포한것이구요.
이번 기능은 전부다 중국 개발자 3분의 노력으로 만들어진 기능입니다.
https://github.com/XPEnology-Community/redpill-lkm5/issues/14#issue-1874738894
lkm5 SA6400 용으로만 생각하고 개발하신건데 lkm4 에도 이렇게 우연히 동작이 잘 되는걸 확인했구요.
SA6400 이 Device-Tree 모델임에도 HBA (SCSI 컨트롤러)가 동작되도록 개발하신거니까
DS920+, DS923+, DS1621+ 등에서도 HBA 를 사용할 수 있게 만들어 줄 수 있냐는 요청을 드렸습니다.
저도 HBA 와 SAS2008 같은 SCSI 컨트롤러 간에 정립이 안되어 있어서 이번기회에 ChatGPT 를 통해 정리해 봤습니다.
1. HBA의 역할은 무엇인가요?
HBA는 "Host Bus Adapter"의 약자로, 컴퓨터에서 스토리지 디바이스와 통신하기 위한 인터페이스 역할을 합니다. 즉, 컴퓨터와 스토리지 디바이스 간의 데이터 전송을 가능하게 합니다. HBA는 스토리지 디바이스와 컴퓨터 사이에서 데이터 전송 속도를 최적화하고, 데이터 무결성을 보장합니다. HBA는 SCSI, SAS, SATA 등 다양한 인터페이스를 지원하며, 서버나 스토리지 시스템에서 매우 중요한 역할을 합니다.
2. HBA를 사용하는 이유는 무엇인가요?
HBA는 Host Bus Adapter의 약자로, 컴퓨터와 스토리지 장치를 연결하는 장치입니다. HBA를 사용하면 스토리지 장치와 컴퓨터 간의 데이터 전송 속도가 높아지고, 데이터 전송 중 발생할 수 있는 에러를 감지하고 처리할 수 있습니다. 또한 HBA는 다양한 스토리지 인터페이스를 지원하므로, 서로 다른 스토리지 장치를 연결하여 사용할 수 있습니다. 따라서 대용량 데이터를 다루는 서버나 데이터 센터 등에서는 HBA를 사용하여 데이터 전송 속도와 안정성을 높이는 것이 일반적입니다.
3. HBA와 RAID 컨트롤러의 차이점은 무엇인가요?
HBA와 RAID 컨트롤러는 모두 데이터 스토리지 시스템에서 사용되는 컨트롤러입니다. 그러나 둘은 서로 다른 목적을 가지고 있습니다.
HBA는 Host Bus Adapter의 약자로, 컴퓨터와 스토리지 장치 사이의 데이터 전송을 담당합니다. 즉, HBA는 데이터를 저장하거나 관리하지 않으며, 단지 컴퓨터와 스토리지 장치 간의 통신을 돕는 중개자 역할을 합니다.
반면, RAID 컨트롤러는 Redundant Array of Independent Disks의 약자로, 여러 개의 하드 드라이브를 하나의 논리적인 드라이브로 구성하여 데이터를 저장하고 관리합니다. RAID 컨트롤러는 데이터를 여러 개의 하드 드라이브에 분산하여 저장하므로, 하나의 드라이브가 손상되더라도 데이터를 복구할 수 있는 장점이 있습니다.
따라서, HBA와 RAID 컨트롤러는 각각 다른 목적으로 사용되며, 그 차이점은 데이터를 저장하고 관리하는 기능에 있습니다.
4. HBA를 선택할 때 고려해야 할 사항은 무엇인가요?
HBA를 선택할 때 고려해야 할 사항은 다음과 같습니다:
호환성: HBA가 사용될 서버 또는 스토리지와 호환되는지 확인해야 합니다.
성능: HBA의 전송 속도와 대역폭을 고려해야 합니다.
안정성: HBA의 안정성과 신뢰성을 고려해야 합니다.
가격: HBA의 가격은 제조업체와 모델에 따라 다르므로 비교 검토 후 결정해야 합니다.
그리고, SAS2008기반의 레이드카드 는 아래와 같은 종류들이 있다고 합니다.
(lsi 9211-8i, lsi 9211-4i, dell perc h310, dell perc h200, ibm m1015 ...)
저도 이중에 lsi 9211-4i, dell perc h310, dell perc h200 3가지를 보유하고 있으며
SAS2008기반의 레이드카드는 모두 mpt3sas 모듈로 동작합니다.
HBA 와 RAID 컨트롤러는 구분되어야 맞는데 그냥 HBA 로 통칭하는것 같습니다.
와~ 수고하셨습니다. 그리고 업데이트 감사합니다.^^
cmt alert