mirror of
https://github.com/vdsm/virtual-dsm.git
synced 2025-02-24 21:40:01 +08:00
Use DSM 7.2 for new installs
This commit is contained in:
parent
d94bfca658
commit
01d874bf56
52
install.sh
52
install.sh
@ -1,16 +1,15 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
set -eu
|
set -eu
|
||||||
|
|
||||||
|
IMG="/storage"
|
||||||
|
[ ! -d "$IMG" ] && echo "Storage folder (${IMG}) not found!" && exit 69
|
||||||
|
|
||||||
if [ -z $URL ]; then
|
if [ -z $URL ]; then
|
||||||
#URL="https://global.synologydownload.com/download/DSM/beta/7.2/64216/DSM_VirtualDSM_64216.pat"
|
BASE="DSM_VirtualDSM_42962"
|
||||||
#URL="https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_VirtualDSM_42218.pat"
|
else
|
||||||
URL="https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_VirtualDSM_42962.pat"
|
BASE=$(basename "$URL" .pat)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
IMG="/storage"
|
|
||||||
BASE=$(basename "$URL" .pat)
|
|
||||||
|
|
||||||
[ ! -d "$IMG" ] && echo "Storage folder (${IMG}) not found!" && exit 69
|
|
||||||
[ ! -f "/run/server.sh" ] && echo "Script must run inside Docker container!" && exit 60
|
[ ! -f "/run/server.sh" ] && echo "Script must run inside Docker container!" && exit 60
|
||||||
|
|
||||||
[ ! -f "$IMG/$BASE.boot.img" ] && rm -f "$IMG"/"$BASE".system.img
|
[ ! -f "$IMG/$BASE.boot.img" ] && rm -f "$IMG"/"$BASE".system.img
|
||||||
@ -19,17 +18,26 @@ BASE=$(basename "$URL" .pat)
|
|||||||
# Display wait message on port 5000
|
# Display wait message on port 5000
|
||||||
/run/server.sh 5000 > /dev/null &
|
/run/server.sh 5000 > /dev/null &
|
||||||
|
|
||||||
TMP="$IMG/tmp"
|
if [ -z $URL ]; then
|
||||||
|
|
||||||
|
URL="https://global.synologydownload.com/download/DSM/beta/7.2/64216/DSM_VirtualDSM_64216.pat"
|
||||||
|
#URL="https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_VirtualDSM_42218.pat"
|
||||||
|
#URL="https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_VirtualDSM_42962.pat"
|
||||||
|
|
||||||
|
BASE=$(basename "$URL" .pat)
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
echo "Install: Downloading extractor..."
|
echo "Install: Downloading extractor..."
|
||||||
|
|
||||||
|
TMP="$IMG/tmp"
|
||||||
rm -rf $TMP && mkdir -p $TMP
|
rm -rf $TMP && mkdir -p $TMP
|
||||||
|
|
||||||
FILE="$TMP/rd.gz"
|
RD="$TMP/rd.gz"
|
||||||
curl -r 64493568-69886247 -s -k -o "$FILE" https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_VirtualDSM_42218.pat
|
curl -r 64493568-69886247 -s -k -o "$RD" https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_VirtualDSM_42218.pat
|
||||||
|
|
||||||
set +e
|
set +e
|
||||||
xz -dc <$TMP/rd.gz >$TMP/rd 2>/dev/null
|
xz -dc <$RD >$TMP/rd 2>/dev/null
|
||||||
(cd $TMP && cpio -idm <$TMP/rd 2>/dev/null)
|
(cd $TMP && cpio -idm <$TMP/rd 2>/dev/null)
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
@ -41,22 +49,22 @@ done
|
|||||||
mv /run/extract/scemd /run/extract/syno_extract_system_patch
|
mv /run/extract/scemd /run/extract/syno_extract_system_patch
|
||||||
chmod +x /run/extract/syno_extract_system_patch
|
chmod +x /run/extract/syno_extract_system_patch
|
||||||
|
|
||||||
|
rm -rf $TMP && mkdir -p $TMP
|
||||||
|
|
||||||
echo "Install: Downloading $URL..."
|
echo "Install: Downloading $URL..."
|
||||||
|
|
||||||
FILE="$TMP/dsm.pat"
|
PAT="$TMP/dsm.pat"
|
||||||
|
|
||||||
rm -rf $TMP && mkdir -p $TMP
|
|
||||||
|
|
||||||
# Check if running with interactive TTY or redirected to docker log
|
# Check if running with interactive TTY or redirected to docker log
|
||||||
if [ -t 1 ]; then
|
if [ -t 1 ]; then
|
||||||
wget "$URL" -O "$FILE" -q --no-check-certificate --show-progress
|
wget "$URL" -O "$PAT" -q --no-check-certificate --show-progress
|
||||||
else
|
else
|
||||||
wget "$URL" -O "$FILE" -q --no-check-certificate --show-progress --progress=dot:giga
|
wget "$URL" -O "$PAT" -q --no-check-certificate --show-progress --progress=dot:giga
|
||||||
fi
|
fi
|
||||||
|
|
||||||
[ ! -f "$FILE" ] && echo "Download failed" && exit 61
|
[ ! -f "$PAT" ] && echo "Download failed" && exit 61
|
||||||
|
|
||||||
SIZE=$(stat -c%s "$FILE")
|
SIZE=$(stat -c%s "$PAT")
|
||||||
|
|
||||||
if ((SIZE<250000000)); then
|
if ((SIZE<250000000)); then
|
||||||
echo "Invalid PAT file: File is an update pack which contains no OS image." && exit 62
|
echo "Invalid PAT file: File is an update pack which contains no OS image." && exit 62
|
||||||
@ -64,11 +72,11 @@ fi
|
|||||||
|
|
||||||
echo "Install: Extracting downloaded system image..."
|
echo "Install: Extracting downloaded system image..."
|
||||||
|
|
||||||
if { tar tf "$FILE"; } >/dev/null 2>&1; then
|
if { tar tf "$PAT"; } >/dev/null 2>&1; then
|
||||||
tar xpf $FILE -C $TMP/.
|
tar xpf $PAT -C $TMP/.
|
||||||
else
|
else
|
||||||
export LD_LIBRARY_PATH="/run/extract"
|
export LD_LIBRARY_PATH="/run/extract"
|
||||||
if ! /run/extract/syno_extract_system_patch $FILE $TMP/. ; then
|
if ! /run/extract/syno_extract_system_patch $PAT $TMP/. ; then
|
||||||
echo "Invalid PAT file: File is an update pack which contains no OS image." && exit 63
|
echo "Invalid PAT file: File is an update pack which contains no OS image." && exit 63
|
||||||
fi
|
fi
|
||||||
export LD_LIBRARY_PATH=""
|
export LD_LIBRARY_PATH=""
|
||||||
@ -152,7 +160,7 @@ fi
|
|||||||
|
|
||||||
rm -rf $MOUNT
|
rm -rf $MOUNT
|
||||||
|
|
||||||
mv -f "$FILE" "$IMG"/"$BASE".pat
|
mv -f "$PAT" "$IMG"/"$BASE".pat
|
||||||
mv -f "$BOOT" "$IMG"/"$BASE".boot.img
|
mv -f "$BOOT" "$IMG"/"$BASE".boot.img
|
||||||
mv -f "$SYSTEM" "$IMG"/"$BASE".system.img
|
mv -f "$SYSTEM" "$IMG"/"$BASE".system.img
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user