• 돌아가기
  • 아래로
  • 위로
  • 목록
  • 댓글

Xpenology DSM7 만능 부트로더 만들기(Tinycore/ESXi)

달소 달소 16875

40

163

본 글은 Tinycore를 이용한 ESXi 설치글 입니다. 진행과정은 별반 다를바없지만 Native의 경우 아래 글을 참고부탁드립니다.

 

안녕하세요. 시놀로지 DSM 버전이  7.1 로 업데이트 된 이후 기존 7.0.1 을 사용하시는 분이 7.1로 업데이트를 원하시거나 처음부터 7.1 설치를 원하시는 분들을 위한...
화정큐삼 | 2022.04.12

 

++영상버전입니다

 

  애들 씻겨야해서 일단 영상만 올리겠습니다 ^^   tr_st.sh 를 2.2.0-r01로 새로 수정하며 영상작업합니다.   기존 설명과 조금은 다르지만 조그은 쉽게 접...
FOXBI | 2022.04.14

 

 


 

++ 화정큐삼 님 피드백으로 빌드시 기본드라이버 잡아주는내용추가
++ 22/03/01 UEFI 로더내용 추가.

++ 22/03/11 SataPortMap 관련 메뉴얼 내용추가

안녕하세요. 달소입니다.

 

최근에 redpill loader의 업데이트가 없어도 꾸준하게 헤놀포럼의 경우 눈팅을하고있었는데요.

인기있는 pocopico님의 tinycore를 소개해드리고자 합니다.

 

tinycore 는 초경량 리눅스로 구동되는 OS인데 이 OS에 부트로더를 생성할때 필요한 모든것을 넣어두고 이미지화 시킨게 pocopico/tinycore 입니다.
가장좋은기능은 아마 Native 유저들이 사용하시는 SataPortMap / SasIdxMap등을 자동으로 인식해서 로더에 포함시켜주는 기능이 아닐까 싶습니다.

 

간단하게 말씀드리자면 기존 Redpill 부트로더를 만들기위해서는 Linux 환경을 설치하고 docker를 설치하고 jq 등 패키지를 추가로 설치하고 툴체인을 받아서 이미지를 만들고 받고 vmdk 및 usb에 썼다면 pocopico의 tinycore의 경우 동작이 신기합니다.

 

동작을 제대로 이해하지않을경우 기존 redpill 보다 어렵게 느껴지실수도 있을거라고 생각은 하지만.. 이해하신다면 크게 어렵지는 않을 수 있습니다.
+2022/02/16 tinycore업데이트로 DS3622XS 모델도 지원대상에 추가되었습니다.

tinycore linux의 역할

-tinycore에서 부트로더 빌드시 tinycore의 파티션 자체를 별도로 빼고 tinycore 내에 부트로더를 생성합니다.(ex. 최초 grub 에 tinycore1개만 있던게 bootloader가 신규로 추가)
-tinycore는 4가지 모델을지원합니다.(DS918+/DS3615xs/DS3617xs/DS3622xs)
-tinycore는 부트로더에 필요한 기본셋팅이 되어있는 상태이고 여기서 부트로더의 pid/vid/sn/mac/sataportmap 등을 변경합니다.
-tinycore에서는 추가하고싶은 확장드라이브를 기존처럼 추가할 수 있습니다.
-tinycore에서는 각 모델별 sn/mac을 몇 가지 제공해줍니다.(vmdk일경우 유용/Native일경우 상관x)
-위 과정을 통해 이미지를 다시만들지않고도 지속적으로 부트로더를 자체 변경가능합니다.(모델/sn/mac등)
-tinycore는 img와 vmdk 두가지를 모두 지원합니다.

 

img의 경우 usb에 windiskimager 프로그램을 통해 이미지를 USB에 쓰고 기존부트로더처럼 접속해주시면 됩니다.

vmdk의 경우 바로 virtualbox,esxi나 vmworkstation에 붙여서 로드해주시면됩니다.

이 글은 가이드를 위해 esxi+vmdk를 기본으로 가이드를 진행하겠습니다.

준비사항

tinycore img/vmdk
usb일 경우 usb/windiskimager
vmdk일 경우 virtualbox/esxi/vmworkstation

ssh 접속용 putty 파일전송용 winscp
ipscanner 등등

 

tinycore 이미지와 vmdk 파일은 아래 공식 깃 이나 한방팩을 통해 다운로드 받아주세요.
https://github.com/pocopico/tinycore-redpill

 

22/03/01 -- UEFI 이미지 추가 완료.
Native의 경우 사용하시는 메인보드 지원에 따라서 Lagacy의 경우 기본/ UEFI의 경우 UEFI 이름이 있는 img를 사용해주시면되겠습니다.

 

Xpenology DSM7 만능 부트로더 만들기(Tinycore) 안녕하세요. 달소입니다.   최근에 redpill loader의 업데이트가 없어도 꾸준하...
달소 | 2022.01.27

 

 

다운로드 받은 gz 파일의 압축을 풀어서 Native와 가상환경에 맞춰서 준비해줍니다.

 

Native - windiskimager로 usb에 이미지 쓰기

가상환경 - esxi/vmworkstation인 경우 이미지를 데이터스토어에 올리고 vmdk 형식 변경. cmd나 shell에서 (vmkfstools -i [기존vmdk파일] [변경할vmdk파일])

 

자 길고 긴 준비가 끝났으니 부팅됐다는 가정하에(?) 바로 시작해보겠습니다.

VM 가상머신 생성하기

ESXi의 경우 깡통 VM을 먼저 만들어주세요.

linux 커널 4버전 64비트,디스크는모두 제거 , SCSI 컨트롤러 삭제 / CD 디스크 삭제 / 부트옵션 UEFI, CD롬 삭제 등등을 해주고 만들어줍니다.

ESXi의 경우 위에서 말씀드린대로 vmdk 형식변경이 필요하기때문에 데이터스토어를통해 vmdk를 먼저 업로드해주세요.

그리고 esxi ssh로 접근해서 해당볼륨으로 가신뒤 아래 명령어로 부트로더 형식을 바꿔줍니다.
vmkfstools -i tinycore-redpill.v0.4.4.vmdk tinycore-redpill.vmdk

이제 깡통 VM에 디스크를 추가해줄 차례입니다.
기존디스크에 아까만든 ESXi vmdk 및 신규디스크(데이터저장용) 하나를 추가해줍니다.

시작을 누르면 tinycore linux로 자동으로 부팅이되며 로딩 후 터미널을 실행시켜서 ip를 확인해주시거나 ip스캐너로 22번포트가 열려있는 새로운 ip를 확인해주셔도 됩니다.

 

*혹 부팅이 안되신다면 vmdk파일을 디스크설정에서 종속이아닌 독립비영구로 변경해주세요.

이제 이 ip로 putty를 사용해서 접근해줍니다.

putty는 ssh 접근 툴 입니다.

계정명 : tc // 비밀번호 : P@ssw0rd

 

*업데이트된 내용으로 별도의 sudo나 root 권한 사용을 할필요가 없다고하니 참고하시어 진행하시면 되겠습니다

 

부트로더 세부 값 설정하기(vid/pid/mac/sn/satamap/idxmap 등등)

 

진행전에  ./rploader.sh update now 명령어로 tinycore의 최신버전으로 업데이트를 한번진행해주세요.

 

저는 DS918+를 기준으로 진행할 예정이며 차근차근 하나씩 해주시면됩니다.

아예 native처럼 사용하고 계신 mac이나 s/n 정보들이 있는경우에는

vi user_config.json 를통해 입맛에 맞게 수정하신뒤 추후 확장 드라이버 추가부터 봐주시면됩니다.

먼저 DS918+에 사용할 시리얼넘버를 자동으로 생성해서 user_config.json에 넣겠습니다.
./rploader.sh serialgen DS918+

여기서 y를 눌러주면 나온 mac/s/n이 설정파일에 자동으로 적용됩니다.

이제 vid/pid를 자동으로 인식해서 설정값에 넣어주겠습니다.
./rploader.sh identifyusb now

vm은 이렇게 나옵니다.

SataPortMap이나 DiskIdxMap도 인식하긴하는데 이기능은 테스트중이라고하니 절대적으로 신뢰해서는 안됩니다.(확실히 다르긴합니다. ESXi인 경우 SataPortMap을 9로 설정해주세요)
./rploader.sh satamap now

여기나온 값으로 user_config.json을 수정해줍니다.
MAC/Sn도 한번확인해주세요.

최종적으로 이렇게 됐습니다.

이제 설정파일 작성이 완료되었으니 확장 드라이버 추가로 넘어가겠습니다.

 

혹 SataPortMap을 아무리해도 안되신다면 아래글을 참조하시어 설정해보시길바랍니다.

  참으로 많은 고생을 했습니다 ㅎㅎ...서론에 앞서 ..다음과 같은 단어를 단축하여 작성하오니 ... 헷갈리지 마시길 바랍니다.... 여러분들의 이해를 쉽게하기 위해 제가 ...
TheSTREET | 2022.03.11

 

부트로더에 확장드라이버 추가하기.

헤놀로지의 경우 사용하고 계신 환경이 모두 다릅니다. Disk 조합부터 Lan 어댑터나 심지어 Realtek에서 어떤 모델인지 Raid카드나 sata 확장카드에 대한 모든 경우의 수가 많습니다.
이때문에 헤놀리지의 사용이 어려운 경우도 있구요.

 

Tinycore에서는 기본적으로 부팅된 하드웨어에 따라서 자동으로 드라이버를 인식해서 추가해줍니다.

혹 build시 자동으로 드라이버 추가가 안될경우 수동으로 확장드라이버를 추가하는 방법을 제공해주고있습니다.


자세한 확장드라이버 목록은 아래에서 확인할 수 있으며 저는 ESXi용이기때문에 PVSCSI/VMXNET3 정도만 추가하겠습니다.

(기본 build시 Native라면 랜카드나 컨트롤러 등을 자동으로 검색해 빌드시 추가해줍니다.)
https://github.com/pocopico/rp-ext

지원해주는 플랫폼은 아래와 같습니다. DS918은 apollolake DS3615xs는 bromolow 입니다.

이제 아래 명령어들로 확장드라이버를 추가해주세요.

./rploader.sh ext apollolake-7.0.1-42218 add https://raw.githubusercontent.com/pocopico/rp-ext/master/vmw_pvscsi/rpext-index.json

./rploader.sh ext apollolake-7.0.1-42218 add https://raw.githubusercontent.com/pocopico/rp-ext/master/vmxnet3/rpext-index.json

필요하신 드라이버를 모두 설치하셨으면 이제 빌드만 해주시면 됩니다.
빌드 과정은 redpill 로더와 거의 똑같습니다.

./rploader.sh build apollolake-7.0.1-42218

빌드가 종료되면 /home/tc/redpill-load/cache/ 경로에 해당 pat설치파일이 남는데. 공홈에서 받은 설치파일도 잘되서.. 굳이 안받으셔도 되고 혹 공홈에서 받으신게 안되신다면 winscp와같은 툴로 받아주시면됩니다.

또한 자동으로 파티션이 분할되면서 종료 후 다시 실행시에는 기존 부트로더에서 자주보던 화면이 보이실겁니다.

ESXi 유저들은 tinycore 종료 전에 user_config에서 mac주소를 미리 복사해주세요.

테스트하기(DSM 7 설치하기)

filetool.sh -b &&/usr/bin/exitcheck.sh 로 tiny코어를 종료시켜주시고 편집 -> 네트워크로 가서 아까 복사해놓은 MAC 주소를 넣어줍니다.

다시 부팅을 시켜주시면 아래처럼 로더창이 뜨실겁니다.
저는 SATA 부팅이기때문에 두번쨰로..
*혹 이미지의 변경을 하시려면 3번째인 tinycore로 가서 동일하게 셋팅하고 빌드해주면 자동으로 로더도 변경됩니다.

이제부터는 기존 헤놀로지 설치와 똑같습니다 find.synology.com 이나 ip scanner로 해당 ip에 접근해주시고 설치를 진행해주세요.

길고긴 여정이 끝났습니다 ㅎㅎ 아마 이 글을 기점으로 대부분의 사용자들이 tinycore를통해 직접 하드웨어 상황에 맞게 이미지를 만드시고 유지보수 하시기를 기대합니다.

감사합니다.

 

https://svrforum.com/nas/221981

  안녕하세요 여러분~ 벌써 3월의 마지막날인 31일입니다 ㅎㅎ   요즘 헤놀을 성공하시는분들께서 후기글도 많이올려주셔서 뿌듯한 하루를 시작하고있...
달소 | 2022.03.31

 

신고공유스크랩
163
profile image
달소 글쓴이 2022.03.10. 10:49
FOXBI

헉... 반갑습니다 Foxbi님! 헤놀포럼에서 CPU 정보 인식 쉘 잘쓰고있습니다 ㅎㅎ 잘되셨다니 기분이좋네요

profile image
까치산개꿀탱 2022.03.12. 11:31

부트로더가 사타컨트롤러 0:0에 할당되서

디스크 1번으로 잡혀있는 부분은 어떻게 없애버릴 수 있을까요?

jun로더 쓸 때에는 해결방법이 있었었는데 레드필에선 어떻게 하는지 질문드려요

https://xpenology.com/forum/topic/28183-running-623-on-esxi-synoboot-is-broken-fix-available/

profile image
달소 글쓴이 2022.03.12. 14:00
까치산개꿀탱

2cpu 에서 foxbi 님께서 작성해주신글이있는데 native에서 해결방법은 아직 안나온듯합니다

https://www.2cpu.co.kr/nas/37856

또리 2022.03.13. 21:51

6.2.4로 마이그레이션을 하기 위해 설치해봤는데

 

kernel dosen't support EFI handover.

you need to load the kernel first

starting kernel with USB boot 라고 뜨네요. ㅠㅠ

 

왜 그런걸까요..

완벽한승리 2022.03.17. 14:04

정말 잘 따라했는데 UEFI usb부팅하면 선택메뉴가 뜨는데 어떤 선택을 하던 에러가 있고 일반usb부팅하면 'error : symbol 'grud_disk_natie_sectors' not found'메세지가 뜨는데 왜 그런지 알수 있을까요?

profile image
달소 글쓴이 2022.03.17. 15:33

이미지는 UEFI 이미지를 사용하신게 맞으신가요?

https://svrforum.com/nas/195430/comment/196649

완벽한승리 2022.03.17. 18:23
달소

답변 감사합니다. 현재 uefi 아닌 tinycore-redpill.v0.4.5 이 버전을 이용해 선택 메뉴가 나오는 단계까지 성공했습니다. 하지만 ip scanner에 나오지 않네요. 혹시 ip를 잡지 못하는 이유도 알수 있을까요?

profile image
달소 글쓴이 2022.03.17. 18:31
완벽한승리

vid/pid와 mac주소 일치여부 + Lan 어댑터의 드라이버 가 안맞으면 ip가 안뜰수도있습니다

슈슈 2022.03.17. 18:43
완벽한승리

승리님께서 헤놀에 얼마나 지식이 있으신지 몰라서.. ip스캐너를 킨 pc와 헤놀 pc가 같은 망에 있어야 해요. 그 말은 두 인터넷 선이 같은 공유기를 타고 나오거나, 헤놀pc가 연결된 공유기의 와이파이로 find.synology를 주소로 접속하시거나.. 그래야 ip를 잡을 수 있습니다. // 빌드과정에서 sudo 명령어는 잘 줬는지 체크해보세요. // 랜 드라이버가 없으면 직접 드라이버를 올려줘야 합니다. 저는 삼성pc 보드를 써서 구글에 찾아봐도 무슨 랜카드인지 자료가 없어서.. 남는 ssd에 윈도우를 올려주고 장치관리자에서 확인했어요. // 저같은 초보시면.. 제가 어젯밤 처음에 헤맸던 부분이어서 알려드려요.ㅎ

완벽한승리 2022.03.17. 19:31
슈슈

답변 감사합니다. 현재 dsm 5버전을 사용중입니다.7.0에 도전중입니다. 다른건 모두 확인이 됬는데 랜카드 드라이버만 확인을 못하고 있습니다. 그럼 혹시 리얼텍 8111F(내장) 랜카드 관련하여 참고할만한 글이 있을까요?

profile image
달소 글쓴이 2022.03.17. 19:35
완벽한승리

빌드하실때 8111 드라이버가 함께 빌드되었는지 모르겠네요.

확장드라이버 추가를 수동으로 하셨나요?

완벽한승리 2022.03.18. 10:47
달소

답변 감사합니다. pocopico님의 확장드라이버 링크 리스트에 없네요. ㅎㅎ..

혹시 수동으로 랜카드 드라이버 빌드하는 방법이 있을까요?

profile image
달소 글쓴이 2022.03.18. 11:42
완벽한승리

수동드라이버쪽은 저도 잘알지못합니다ㅠㅠ 성공사례에 보면 8111모델로 하신분들도 계신데

8169 드라이버에 같이 포함되어있는듯(?)하니 8169로 한번 드라이버 추가해서진행해보시는걸 추천드립니다

폴리76 2022.03.18. 21:39

ESXi 초보 입니다.

ssh에 접속까지는 했는데, tinycore가 저장된 볼륨까지 이동을 못하겠네요.

dos와는 명령어가 다른거 같습니다.....

명령어에 대한 정보나 방법 알려주실수 있으실까요?

초보적인 질문이라 죄송 합니다.

profile image
달소 글쓴이 2022.03.18. 22:40
폴리76

데이터스토어에 따라 다르시겠지만

cd /vmfs/volumes/[데이터스토어이름]/[디렉터리이름] 이렇게 이동하시면 됩니다.

사용하고계신 데이터스토어 구조를 알려주시면 명령어로 변경해서 댓글달아드리겠습니다.

처음사용하시면 당연히(?) 어렵습니다 ㅎㅎ 차근차근하시면됩니다

폴리76 2022.03.20. 23:26
달소

위 알려 주신 내용으로 잘 처리 했습니다~ 감사합니다.

추가적인 질문이 있습니다.

 

SataPortMap이나 DiskIdxMap도 인식하긴하는데 이기능은 테스트중이라고하니 절대적으로 신뢰해서는 안됩니다.(확실히 다르긴합니다. ESXi인 경우 SataPortMap을 9로 설정해주세요)

./rploader.sh satamap now

 

SataPortMap을 어떻게 설정해야 할까요?

댓글 쓰기 권한이 없습니다. 로그인

취소 댓글 등록

cmt alert

신고

"님의 댓글"

이 댓글을 신고하시겠습니까?

댓글 삭제

"님의 댓글"

삭제하시겠습니까?


목록

공유

facebooktwitterpinterestbandkakao story
번호 분류 제목 글쓴이 날짜 조회 추천
공지 정보 DSM 7.2v) Mshell로 헤놀로지 부트로더 빌드하기. 59 달소 23.05.29.01:57 24074 +23
공지 정보 DSM 7.2v) ARPL-i18n(rr)으로 헤놀로지 부트로더 빌드하기. 71 달소 23.05.23.23:58 25673 +23
잡담 RAID5(SHR)의 저장속도가 이렇게나 빠른거였네요.. (NVMe SSD삽질) 10 estel1 17시간 전23:51 299 +2
가이드 시놀로지 도커로 Wireguard VPN + qBittorrent + tsharp(It's torr) 사용하기 10 펜타네스트 4일 전16:13 323 +4
질문 헤놀로지 2.5g usb 랜카드 추가 4 넌누구냐 4일 전14:38 259 +1
5061 질문
image
사십동 11시간 전05:49 98 0
5060 질문
image
서브어린이 17시간 전23:57 95 0
5059 잡담
image
estel1 17시간 전23:51 299 +2
5058 질문
image
까칠한나그네 1일 전14:20 191 0
5057 질문
normal
라라라라데이 1일 전12:29 272 0
5056 질문
image
orange0909 1일 전12:20 231 0
5055 질문
image
금화 2일 전15:14 293 0
5054 질문
image
당신의곁애 2일 전12:24 209 0
5053 질문
normal
정전리 2일 전12:14 117 0
5052 질문
normal
xpnol 2일 전11:09 241 0
5051 질문
normal
서브어린이 2일 전11:06 61 0
5050 질문
image
맥주소주양주 2일 전10:47 67 0
5049 질문
image
nvses 2일 전22:55 207 0
5048 질문
normal
estel1 3일 전12:33 232 0
5047 질문
normal
지나가는_문과생 3일 전12:05 188 0
5046 질문
image
라라라라데이 3일 전10:39 149 0
5045 질문
image
지나가는_문과생 3일 전09:17 122 0
5044 후기
image
동도리군 3일 전01:06 96 0
5043 질문
normal
블랙앤해적 3일 전23:19 74 0
5042 질문
image
서브어린이 3일 전21:58 65 0