ds-101g+에 ds-106e의 펌웨어를 올리는 방법을 설명합니다.

거의 참고 사이트를 번역한 수준에 불과합니다.

제가 사용한 펌웨어 정보는 다음과 같습니다.
DS-106e Version: DSM 2.0-0598; Build Date: 2008/04/13

1. 펌웨어 압축 풀기

# tar xvf synology_powerpc_106e_0598.pat
# rm synology_powerpc_106e_0598.pat

2. 버전 파일 수정

파일 VERSION을 아래와 같이 수정합니다.

majorversion=”2″
minorversion=”0″
buildphase=”3″
buildnumber=”0598″
builddate=”2008/04/12″
unique=”synology_powerpc_101g+_1hd

3. CRC32 생성

3가지 방법이 있습니다. 아래 셋 중 하나로 하면 됩니다.

A. cksum 이용

# cksum -o 2 VERSION
0e2d2e9b 122 VERSION

 

B. cfv 이용 (apt-get install cfv로 설치)

# cfv -t crc -C -f – VERSION
Generated by: cfv (v1.18)
Generated at: Wed, 30 Apr 2008 11:00:20
Find  it  at: http://cfv.sourceforge.net/

Filename   Filesize    CRC-32   Description
——–  ———-  ——–
VERSION          127  0e2d2e9b
——–  ———-  ——–

Count of files: 1
Total of sizes: 127
-: 1 files, 1 OK.  0.040 seconds, 3.1K/s

 

C. cksfv 이용(2017-02-04 추가)

bootstrap을 먼저 설치하고 아래와 같이 진행

# ipkg install cksfv

cksfv VERSION

; Generated by cksfv v1.3.14 on 2017-02-04 at 12:38.10
; Project web site: http://www.iki.fi/shd/foss/cksfv/
;
;          287  07:31.28 2016-08-17 VERSION
VERSION 0E2D2E9B

 

VERSION 파일의 CRC-32값을 구하고 결과로 출력된 헥사코드로된 CRC-32값을 Decimal로 변환합니다.
윈도우에 있는 계산기를 공학용으로 설정하여 계산해도 되고, 아래 웹페이지에서 변환해도 됩니다.
http://www.statman.info/conversions/hexadecimal.html
위 웹페이지에서 변환할 경우
Convert에 CRC-32값인 헥사코드 “0e2d2e9b”를 넣고 “to decimal” 버튼을 클릭하면 결과가 나옵니다.

checksum.syno의 첫 번째 값을 결과(237842075)값으로 대체하면 됩니다.

237842075 122 VERSION 151 177
3457460874 688433 rd.bin 1283356 491
1260244284 41277920 hda1.tgz 70616743 474
3679547135 1962364 updater 2839231 468
2898455093 824424 zImage 1274095 370
#Synocksum 44753263 76013576 1980

3. 펌웨어 파일 생성

# tar cvf synology_powerpc_106e_0598.pat *

4. 관리자 페이지에서 펌웨어 업데이트

5. 업데이트된 ds-101g+

업데이트 후 ds-101g+의 관리자 페이지입니다.
아래 보시는  것처럼 모델 이름은 DS-106e로 표시되며, 메모리는 64 MB로 표시됩니다.(106e는  32 MB죠)
사용자 삽입 이미지
일반적으로 펌웨어 업데이트 후 변경되는 사항 정도 변경된 것 외에는 101g+에 설정되어 있던 사항은 대부분 그대로 유지됩니다.

제가 수정한 0598 버전의 VERSION과 checksum.syno를 압축하여 올립니다.
1296092550.tar

참고 사이트:
http://www.nslu2-linux.org/wiki/DS101/DS-106eFirmwareOnADS-101g