DS920 + ASM1166(SATA 확장) Native 로 설치하기 (수정)
안녕하세요. 기라 입니다.
많은 분들의 도움을 받아 DS920 DSM7.1.0-42166 에 SATA 확장카드 까지 Native 로 셋업하게 되어
감사한 마음으로 내용을 정리 해보고자 합니다.
이 글을 빌어, 달소님, 화정큐삼님, 핫포사이님, knight2022님 그리고 도움 주셨던 다른 분들께도
진심으로 감사하다는 말씀 드립니다. (_ _) 넙죽
이미 많은 분들이 성공하셨던 걸로 알고 있지만 저와 비슷한 문제를 겪으시는 분들께
조금이나마 도움이 되었으면 합니다.
1. 시작
- Asrock z490m-itx/ac + I3-10100 으로 Native Nas 구축
- 위 보드는 Fixed 6 Sataport 로 되어 있으며, Sata0과 1은 m.2가 점유하고 있어서
Sata 0 번 부터 HDD가 설치 되어야 하는 DS918+ 과 같은 모델에서는 SATA 0, 1 오류가 발생하게 됩니다
그래서 트랜스코딩이 가능하고 여러개의 HDD를 설치할 수 있으며 Sataportmap 에서 자유로운
DS920+ 를 타겟으로 하게 되었습니다.
2. 설치
- 화정큐삼님께서 올려주신 m shell을 이용하면 매우 간단합니다.
아래의 모든 과정은 화정큐삼님이 올려주신 redpill tinycore linux 상에서 이루어 졌습니다.
- m shell 관련 링크는 아래와 같습니다. (공지로 등록되어 있습니다.)
https://svrforum.com/nas/250098
- 우선 실행한 명령부터 써보겠습니다.
- 참고로 저는 메인보드 SATA에 4개. 확장카드에 1개가 임시로 설치 되어 있습니다.
그래서 아래 설명은 확장카드에 추가로 1개만 증가한 것이니 참고바랍니다.
- redpill tinycore linux 로 진입하는 부분 까지는 위 공지글 링크를 참고 부탁드립니다.
//////////////////////////////////////////////////
1) wget https://github.com/PeterSuh-Q3/tinycore-redpill/raw/main/my.sh.gz; tar -zxvf my.sh.gz;
자동입력 버전의 my shell 을 다운받습니다
2) ./my.sh DS920+ noclean
noclean 옵션을 주어야 redpill-loader 폴더가 지워지지 않습니다
3) lspci -tvnnq
위 명령어로 확장카드의 ID를 확인해줍니다
저의 확장카드 ASM1166은 00:01.0,00.0 입니다.
4) ll /sys/block
추가할 하드의 target 번호를 확인합니다. 명령을 치면 아래와 비슷하게 나옵니다
lrwxrwxrwx 1 root root 0 May 2 12:44 sda -> ../devices/pci0000:00/0000:00:0d.0/ata1/host0/target0:0:0/0:0:0:0/block/sda
lrwxrwxrwx 1 root root 0 May 2 12:44 sdb -> ../devices/pci0000:00/0000:00:0d.0/ata2/host1/target1:0:0/1:0:0:0/block/sdb
lrwxrwxrwx 1 root root 0 May 2 12:44 zram0 -> ../devices/virtual/block/zram0
target 번호를 확인해야 하는데
보통.. 내장 슬롯에 sda, sdb, sdc, sdd 이렇게 4개라면 확장에 연결한 하드는 sde 일 거고
거기에 맞는 target 번호를 확인해주시면 되겠습니다.
저는 6이라서 밑에 ata_port 가 확장카드는 6번 부터 일줄 알았는데.. 0번 부터 시작이네요.
혹시 모르니 기억은 해주는걸로..
5) vi /home/tc/redpill-load/ds920p.dts
아래와 같이 ds920.dts 파일을 수정합니다. internal_slot 을 추가한 하드만큼 추가로 작성해줍니다.
아래 내용은 internal_slot@4의 내용을 복사해서 밑에 추가 하면서 수정한 것입니다.
internal_slot@5 { DS920 은 슬롯이 4개라서 5번 슬롯을 추가했습니다.
protocol_type = "sata";
power_pin_gpio = <0x18 0x0>; 0x18 은 4번 슬롯에서부터 계속 이어집니다 4번슬롯은 0x17
detect_pin_gpio = <0x27 0x1>; 0x27도 4번 슬롯에서부터 이어집니다. 4번 슬롯은 0x26
led_type = "lp3943";
ahci {
pcie_root = "00:01.0,00.0"; pcie_root 는 SATA 확장카드의 ID를 적습니다.
ata_port = <0x0>; 어째서인지는 잘 모르겠습니다. 0번부터 하니 인식하네요..
};
led_green {
led_name = "syno_led8"; 4번슬롯부터 이어집니다. 4번슬롯의 led_orange는 syno_led7
};
led_orange {
led_name = "syno_led9"; 위 번호부터 계속 이어가면 됩니다.
};
};
저장하고 빠져나옵니다. esc -> ":" -> "wq"
6) vi ./rploader.sh
rploader.sh 파일을 아래와 같이 일부 주석처리 합니다
아래 내용을 찾으시려면 "/internal_slot " 이라고 검색하시면 현재 rploader 버전에서는 저 부분 뿐입니다.
(원본 내용)
(수정된 내용)
앞에 전부 "#"을 붙여서 주석처리를 해줍니다.
저장하고 빠져 나와주시구요..
7) ./rploader.sh build geminilake-7.1.0-42661
이번엔 my shell 이 아니라 그냥 rploader 로 한줄만 실행시켜 줍니다.
m shell로도 될 것 같은데 자세히 몰라서 rploader 로 빌드만 했습니다.
빌드를 시작하면 아래 그림의 맨 아래와 같이 새 버전의 스크립트가 있다고 업데이트 할거냐고 묻는데 n 을 치시면 됩니다
그리고 잠시 후 아래와 같이 마무리가 됩니다
8) sudo reboot
재부팅 하고 나면 (PAT 설치도 다 하고 나면) 아래와 같이 추가된 하드가 보입니다.
외출해서 답변 못드렸는데 해결하셨네요.
dts를 수정하고 빌드하면 dts파일을 다시 변경하면서 문제가 발생해서 dts hdd변경부분 주석처리로 해결했었습니다.
감사합니다. 덕분에 잘 해결되었습니다. 이제 나머지 포트에도 하드 채워서 해보려던 참입니다 ^^;
NAS케이스롤 8베이 짜리를 사서 메인보드 기본6개 + 알리발 싸구려 확장 2개 로 일단 구성하려고 하는데 제대로 918+에서 제대로 되려나 모르겠네요... 보고서 대리만족 합니다 =_=
한번 도전해보시지요~! 빠세! 할 수 이씀미다~!
제가 쓰는 ASM1166 칩셋은 별도 드라이버 설치 없이도 자동으로 먹혀서 편했습니다. 참고하세용
고생하셨습니다. 소스 변경사항을 몇번씩 다시 읽어봤는데
제가 실제 시험을 한번 해본다는게 늦어서 괜히 고생을 시켜 드렸네요.
포코피코님이 기왕 기능을 넣어주시려면 더 편리하게 넣어주셨어야 하는데, 좀 어설픈 상태입니다.
원래는 dtc 컴파일러로 편집해둔 dts 파일을 dtb 파일로 바이너리 행태로 만들고 이걸 로더의 dtb 확장쪽에 사용되도록 하는 구조인데요.
이 ds920p.dts 텍스트 파일만 aux에 넣어두면 알아서 컴파일까지 해줄줄 알았는데,
컴파일이 이미 완료된 dtb 파일을 사용하겠다고 소스가 되어 있군요.
유저들이 이 컴파일까지 하는게 쉽지 않은데도 이렇게만 만들어두면 누가 쓰려는지...
차라리 제가 m shell 수정해서 dts로 사용할 수 있도록 한번더 커버해 드려야 겠습니다.
m shell 이 애초에 생긴 이유가 포코피코님이 자잘한 버그 잡는 걸 너무 귀찮아 하셔서
커버하려고 만든거 였습니다.
머 어짜피 이런역할 하려 만든 프로그램이니 한번더 쓰이게 되겠네요. ㅎㅎ
포코피코님께 직접 수정해서 넣어달라고 요청했는데, 긍정적 답변이 왔습니다. 다시 수정해 주실것 같네요.^^
https://xpenology.com/forum/topic/53817-redpill-tinycore-loader/?do=findComment&comment=281765
소리질러 예~ 화져댓!! 라져댓!
뭐가 됐던 포코피코님이나 화정큐삼님 같은 분들 덕분에 저희가 편히 헤놀을 쓰고 있습니다 ^^
돌아돌아 많은 분들 도움으로 원하던 셋업 하게 되서 저는 더없이 기쁠뿐 ㅎㅎ
매번 고생많으시구 늘 감사합니다.
포코피코님이 일단 알겠다고 했는데, 당장해줄 생각은 없는것 같습니다. 보통은 바로바로 적용하던데요.
그래서 위에 말씀드린대로 M SHELL 에 기능보강 했습니다.
https://github.com/PeterSuh-Q3/tinycore-redpill
처음 말씀드린대로 ds920p.dts 나 ds1621p.dts 파일만 /mnt/sd#3/auxfiles 폴더에 복사만 해두시면 동작합니다.
실제 시험도 마친상태입니다.
1. y 수동 입력버전
wget https://github.com/PeterSuh-Q3/tinycore-redpill/raw/main/m.sh.gz; tar -zxvf m.sh.gz;
2. y 자동 입력버전
wget https://github.com/PeterSuh-Q3/tinycore-redpill/raw/main/my.sh.gz; tar -zxvf my.sh.gz;
3. y 자동 입력 및 드라이버 멀티수동 선택버전 (FOXBI님 드라이버 다중선택 함수 채택) , VM 환경용
wget https://github.com/PeterSuh-Q3/tinycore-redpill/raw/main/myv.sh.gz; tar -zxvf myv.sh.gz;
M SHELL 3개 쉘파일중 아무거나 다시한번 다운 받으시고 사용하시면 됩니다.
오오 빠른 업데이트 감사합니다 ^^
어디서 다운받나요? 다운이 안받아집니다
hw 트랜스코딩 되나요?
저는 아직 Plex 를 구매하지 않아서 테스트 해보진 못했는데
more /usr/syno/etc/codec/activation.conf 이걸로 확인했을 땐
success 로 떴습니다.
6사타 포트로 설정하려면 어떻게 해야되나요? 현재 918 사용중인데 6개 하드디스크가 있는데 방금 마이너 920 했는데 4개 하드만 잡히네요
메인보드에 sata가 6개인지 확장카드로 6개인지는 모르겠으나
위에 내용처럼 ds920p.dts 파일을 수정하셔야 합니다.
internal_slot 을 늘려주면 되지 않을까 싶네요. ds918 ds920 은 기본 4슬롯이기 때문에
화면에는 4슬롯만 보이는게 정상이고, 실제 하드를 6개 설치하고
ds920p.dts 를 수정해서 다시 빌드하면 HDD 목록에는 6개가 다 보입니다.
와우.. 완전 상세한 가이드 감사드리고
성공 축하드립니다!!👍👍
wget https://github.com/PeterSuh-Q3/tinycore-redpill/raw/main/my.sh.gz; tar -zxvf my.sh.gz; 다운 어떻게 받는지 알려주실수있나요?
wget 명령어 자체가 저 링크 파일을 다운받는 명령입니다.
저 한줄 그대로 치시면 됩니다.
제가 쓴 글에 1) 2) 3) 이렇게 숫자가 붙은건 그대로 복사해서 붙여넣기 하시믄 되는 명령어 입니다.
화정큐삼님 댓글 역시 TC 리눅스에서 그대로 치시면 될거에요
감사합니다^^
포코피코님이 제가 요청한 dts 파일을 사용할 수 있도록 TC 에도 1시간전에 기능추가를 해주셨습니다.
지금 업데이트 해보시면 0.7.1.0 으로 버전업 되실겁니다.
사용자 dts 파일 지원이 이 버전의 주요기능입니다.^^
cmt alert