mirror of
https://github.com/RROrg/rr.git
synced 2025-09-07 12:27:04 +08:00
Compare commits
19 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
2c7c35b4a7 | ||
|
cdd30e0e5e | ||
|
34fb3e1968 | ||
|
1b191a4e2b | ||
|
c1fe7f7bfe | ||
|
c850e8be28 | ||
|
9c11315756 | ||
|
f2a34edeff | ||
|
3320be7a16 | ||
|
efd1d3d291 | ||
|
bd5e688f7e | ||
|
f90478e426 | ||
|
ac588eff6c | ||
|
6618efbe45 | ||
|
506451071d | ||
|
84d7425912 | ||
|
6f1b3fc9e3 | ||
|
5c9d6a4eae | ||
|
58fe6a7b13 |
28
.github/workflows/issues.yml
vendored
28
.github/workflows/issues.yml
vendored
@ -29,7 +29,9 @@ jobs:
|
|||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
import json, subprocess
|
import json, subprocess
|
||||||
def set_output(name, value):
|
def set_output(name, value):
|
||||||
subprocess.call(["echo '{}={}' >> $GITHUB_ENV".format(name, value)], shell=True)
|
subprocess.call(f'echo "{name}<<EOF" >> $GITHUB_ENV', shell=True)
|
||||||
|
subprocess.call(f'echo "{value}" >> $GITHUB_ENV', shell=True)
|
||||||
|
subprocess.call(f'echo "EOF" >> $GITHUB_ENV', shell=True)
|
||||||
|
|
||||||
issuetitle = ${{ toJSON(github.event.issue.title) }}
|
issuetitle = ${{ toJSON(github.event.issue.title) }}
|
||||||
issuebody = ${{ toJSON(github.event.issue.body) }}
|
issuebody = ${{ toJSON(github.event.issue.body) }}
|
||||||
@ -43,6 +45,7 @@ jobs:
|
|||||||
language= ''
|
language= ''
|
||||||
sn = ''
|
sn = ''
|
||||||
macs = ''
|
macs = ''
|
||||||
|
tips = ''
|
||||||
model = ''
|
model = ''
|
||||||
version = ''
|
version = ''
|
||||||
kernel = ''
|
kernel = ''
|
||||||
@ -58,6 +61,7 @@ jobs:
|
|||||||
language = jsonbody.get('language', '')
|
language = jsonbody.get('language', '')
|
||||||
sn = jsonbody.get('sn', '')
|
sn = jsonbody.get('sn', '')
|
||||||
macs = jsonbody.get('macs', '')
|
macs = jsonbody.get('macs', '')
|
||||||
|
tips = jsonbody.get('tips', '')
|
||||||
model = jsonbody.get('model', '')
|
model = jsonbody.get('model', '')
|
||||||
version = jsonbody.get('version', '')
|
version = jsonbody.get('version', '')
|
||||||
kernel = jsonbody.get('kernel', '')
|
kernel = jsonbody.get('kernel', '')
|
||||||
@ -79,6 +83,7 @@ jobs:
|
|||||||
set_output("language", language)
|
set_output("language", language)
|
||||||
set_output("sn", sn)
|
set_output("sn", sn)
|
||||||
set_output("macs", macs)
|
set_output("macs", macs)
|
||||||
|
set_output("tips", tips)
|
||||||
set_output("model", model)
|
set_output("model", model)
|
||||||
set_output("version", version)
|
set_output("version", version)
|
||||||
set_output("kernel", kernel)
|
set_output("kernel", kernel)
|
||||||
@ -257,6 +262,11 @@ jobs:
|
|||||||
writeConfigKey "mac2" "${MACS[1]}" "${USER_CONFIG_FILE}"
|
writeConfigKey "mac2" "${MACS[1]}" "${USER_CONFIG_FILE}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -n "${{ env.tips }}" ]; then
|
||||||
|
echo "set tips: ${{ env.tips }}"
|
||||||
|
echo -e "${{ env.tips }}" | sudo tee rr/ws/mnt/p3/AddTips
|
||||||
|
fi
|
||||||
|
|
||||||
if [ -n "${{ env.addons }}" ]; then
|
if [ -n "${{ env.addons }}" ]; then
|
||||||
echo "set addons: ${{ env.addons }}"
|
echo "set addons: ${{ env.addons }}"
|
||||||
USER_CONFIG_FILE="rr/ws/mnt/p1/user-config.yml"
|
USER_CONFIG_FILE="rr/ws/mnt/p1/user-config.yml"
|
||||||
@ -415,14 +425,6 @@ jobs:
|
|||||||
----
|
----
|
||||||
emoji: hooray
|
emoji: hooray
|
||||||
|
|
||||||
- name: Close Issues
|
|
||||||
if: env.iscustom == 'true' && success()
|
|
||||||
uses: actions-cool/issues-helper@v3
|
|
||||||
with:
|
|
||||||
actions: 'close-issue'
|
|
||||||
token: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
issue-number: ${{ github.event.issue.number }}
|
|
||||||
|
|
||||||
- name: Update Comment Fail
|
- name: Update Comment Fail
|
||||||
if: env.iscustom == 'true' && failure()
|
if: env.iscustom == 'true' && failure()
|
||||||
uses: actions-cool/issues-helper@v3
|
uses: actions-cool/issues-helper@v3
|
||||||
@ -437,3 +439,11 @@ jobs:
|
|||||||
> ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
> ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
||||||
----
|
----
|
||||||
emoji: confused
|
emoji: confused
|
||||||
|
|
||||||
|
- name: Close Issues
|
||||||
|
if: env.iscustom == 'true'
|
||||||
|
uses: actions-cool/issues-helper@v3
|
||||||
|
with:
|
||||||
|
actions: 'close-issue'
|
||||||
|
token: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
issue-number: ${{ github.event.issue.number }}
|
||||||
|
BIN
docs/addons.xlsx
BIN
docs/addons.xlsx
Binary file not shown.
@ -29,6 +29,23 @@
|
|||||||
.textarea-style {
|
.textarea-style {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#logo {
|
||||||
|
text-align: center;
|
||||||
|
margin: 20px auto !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#labels {
|
||||||
|
text-align: center;
|
||||||
|
margin: 20px auto !important;
|
||||||
|
height: auto !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
#products {
|
||||||
|
text-align: center;
|
||||||
|
margin: 20px auto !important;
|
||||||
|
height: auto !important;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
|
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
|
||||||
<script src="https://polyfill.io/v3/polyfill.min.js"></script>
|
<script src="https://polyfill.io/v3/polyfill.min.js"></script>
|
||||||
@ -90,9 +107,11 @@
|
|||||||
if (debug) {
|
if (debug) {
|
||||||
$('#sn_item').show();
|
$('#sn_item').show();
|
||||||
$('#macs_item').show();
|
$('#macs_item').show();
|
||||||
|
$('#tips_item').show();
|
||||||
} else {
|
} else {
|
||||||
$('#sn_item').hide();
|
$('#sn_item').hide();
|
||||||
$('#macs_item').hide();
|
$('#macs_item').hide();
|
||||||
|
$('#tips_item').hide();
|
||||||
}
|
}
|
||||||
setModels();
|
setModels();
|
||||||
});
|
});
|
||||||
@ -262,7 +281,7 @@
|
|||||||
var body = {};
|
var body = {};
|
||||||
var _parameters = ["title", "format", "size", "template", "language", "model", "version", "kernel", "addons", "modules"];
|
var _parameters = ["title", "format", "size", "template", "language", "model", "version", "kernel", "addons", "modules"];
|
||||||
if (debug) {
|
if (debug) {
|
||||||
_parameters.push("sn", "macs");
|
_parameters.push("sn", "macs", "tips");
|
||||||
}
|
}
|
||||||
for (var key in _parameters) {
|
for (var key in _parameters) {
|
||||||
var name = _parameters[key];
|
var name = _parameters[key];
|
||||||
@ -309,28 +328,21 @@
|
|||||||
╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚══════╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝
|
╚═╝ ╚═╝╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚══════╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝
|
||||||
|
|
||||||
</pre>
|
</pre>
|
||||||
<div class="image" id="products" style="height: 50px; margin-left: 200px;">
|
<div class="shields" id="labels">
|
||||||
<img src="https://www.synology.cn/img/products/detail/SA6400/heading.png" width="20%">
|
|
||||||
</div>
|
|
||||||
<div class="flex-auto min-width-0 width-fit mr-3">
|
|
||||||
<div class="d-flex flex-wrap flex-items-center wb-break-word f3 text-normal">
|
|
||||||
<a id="titleA" href="https://github.com/RROrg/rr">
|
<a id="titleA" href="https://github.com/RROrg/rr">
|
||||||
<img alt="GitHub Release"
|
<img alt="GitHub Release"
|
||||||
src="https://img.shields.io/github/v/release/rrorg/rr?include_prereleases&style=flat-square&label=current">
|
src="https://img.shields.io/github/v/release/rrorg/rr?include_prereleases&style=flat-square&label=current">
|
||||||
|
</a>
|
||||||
|
<a id="titleA" href="https://github.com/RROrg/rr">
|
||||||
<img alt="GitHub Issues"
|
<img alt="GitHub Issues"
|
||||||
src="https://img.shields.io/github/issues-closed-raw/rrorg/rr/custom?style=flat-square&label=custom">
|
src="https://img.shields.io/github/issues-closed-raw/rrorg/rr/custom?style=flat-square&label=custom">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
|
||||||
<div class="d-flex flex-wrap flex-items-center wb-break-word f3 text-normal">
|
|
||||||
<a id="titleB" href="./changelogs.html">
|
<a id="titleB" href="./changelogs.html">
|
||||||
<img alt="GitHub Release" src="https://img.shields.io/badge/Changelogs-8A2BE2&style=flat">
|
<img alt="GitHub Release" src="https://img.shields.io/badge/Changelogs-8A2BE2&style=flat">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="btn-link tabnav-tab preview-tab js-preview-tab flex-1 flex-md-auto width-full">
|
<div class="image" id="products">
|
||||||
<marquee id="content" direction="up" height="36" scrollamount="1" onMouseOut="this.start()"
|
<img src="https://www.synology.cn/img/products/detail/SA6400/heading.png" width="20%">
|
||||||
onMouseOver="this.stop()">
|
|
||||||
</marquee>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group mt-1 mb-2" id="title_item">
|
<div class="form-group mt-1 mb-2" id="title_item">
|
||||||
<div class="form-group-header">
|
<div class="form-group-header">
|
||||||
@ -422,6 +434,14 @@
|
|||||||
<input class="form-control input-contrast input-sm" type="text" id="macs" name="inputs[macs]" value=""></input>
|
<input class="form-control input-contrast input-sm" type="text" id="macs" name="inputs[macs]" value=""></input>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="form-group mt-1 mb-2" id="tips_item">
|
||||||
|
<div class="form-group-header">
|
||||||
|
<label class="color-fg-default text-mono f6">Tips:</label>
|
||||||
|
</div>
|
||||||
|
<div class="form-group-body">
|
||||||
|
<input class="form-control input-contrast input-sm" type="text" id="tips" name="inputs[tips]" value=""></input>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
<div class="form-group mt-1 mb-2" id="model_item">
|
<div class="form-group mt-1 mb-2" id="model_item">
|
||||||
<div class="form-group-header">
|
<div class="form-group-header">
|
||||||
<label class="color-fg-default text-mono f6">Model:</label>
|
<label class="color-fg-default text-mono f6">Model:</label>
|
||||||
|
BIN
docs/models.xlsx
BIN
docs/models.xlsx
Binary file not shown.
@ -13520,6 +13520,10 @@
|
|||||||
"description": "DME1737 sensors",
|
"description": "DME1737 sensors",
|
||||||
"depends": "hwmon-vid"
|
"depends": "hwmon-vid"
|
||||||
},
|
},
|
||||||
|
"drivetemp": {
|
||||||
|
"description": "Hard drive temperature monitor (Compiled by RR for DSM)",
|
||||||
|
"depends": ""
|
||||||
|
},
|
||||||
"drm": {
|
"drm": {
|
||||||
"description": "DRM shared core routines",
|
"description": "DRM shared core routines",
|
||||||
"depends": "dmabuf,drm_mipi_dsi,i915-compat,drm_panel_orientation_quirks"
|
"depends": "dmabuf,drm_mipi_dsi,i915-compat,drm_panel_orientation_quirks"
|
||||||
@ -15166,6 +15170,10 @@
|
|||||||
"description": "DME1737 sensors",
|
"description": "DME1737 sensors",
|
||||||
"depends": "hwmon-vid"
|
"depends": "hwmon-vid"
|
||||||
},
|
},
|
||||||
|
"drivetemp": {
|
||||||
|
"description": "Hard drive temperature monitor (Compiled by RR for DSM)",
|
||||||
|
"depends": ""
|
||||||
|
},
|
||||||
"drm": {
|
"drm": {
|
||||||
"description": "DRM shared core routines",
|
"description": "DRM shared core routines",
|
||||||
"depends": "dmabuf,drm_mipi_dsi,i915-compat,drm_panel_orientation_quirks"
|
"depends": "dmabuf,drm_mipi_dsi,i915-compat,drm_panel_orientation_quirks"
|
||||||
@ -19125,6 +19133,10 @@
|
|||||||
"description": "DME1737 sensors",
|
"description": "DME1737 sensors",
|
||||||
"depends": "hwmon-vid"
|
"depends": "hwmon-vid"
|
||||||
},
|
},
|
||||||
|
"drivetemp": {
|
||||||
|
"description": "Hard drive temperature monitor (Compiled by RR for DSM)",
|
||||||
|
"depends": ""
|
||||||
|
},
|
||||||
"drm": {
|
"drm": {
|
||||||
"description": "DRM panel infrastructure",
|
"description": "DRM panel infrastructure",
|
||||||
"depends": "dmabuf,drm_panel_orientation_quirks"
|
"depends": "dmabuf,drm_panel_orientation_quirks"
|
||||||
@ -25155,6 +25167,10 @@
|
|||||||
"description": "DME1737 sensors",
|
"description": "DME1737 sensors",
|
||||||
"depends": "hwmon-vid"
|
"depends": "hwmon-vid"
|
||||||
},
|
},
|
||||||
|
"drivetemp": {
|
||||||
|
"description": "Hard drive temperature monitor (Compiled by RR for DSM)",
|
||||||
|
"depends": ""
|
||||||
|
},
|
||||||
"drm": {
|
"drm": {
|
||||||
"description": "DRM shared core routines",
|
"description": "DRM shared core routines",
|
||||||
"depends": "dmabuf,drm_mipi_dsi,i915-compat,drm_panel_orientation_quirks"
|
"depends": "dmabuf,drm_mipi_dsi,i915-compat,drm_panel_orientation_quirks"
|
||||||
@ -29061,6 +29077,10 @@
|
|||||||
"description": "DME1737 sensors",
|
"description": "DME1737 sensors",
|
||||||
"depends": "hwmon-vid"
|
"depends": "hwmon-vid"
|
||||||
},
|
},
|
||||||
|
"drivetemp": {
|
||||||
|
"description": "Hard drive temperature monitor (Compiled by RR for DSM)",
|
||||||
|
"depends": ""
|
||||||
|
},
|
||||||
"drm": {
|
"drm": {
|
||||||
"description": "DRM shared core routines",
|
"description": "DRM shared core routines",
|
||||||
"depends": "dmabuf,drm_mipi_dsi,i915-compat,drm_panel_orientation_quirks"
|
"depends": "dmabuf,drm_mipi_dsi,i915-compat,drm_panel_orientation_quirks"
|
||||||
|
Binary file not shown.
138
docs/pats.json
138
docs/pats.json
@ -1,4 +1,40 @@
|
|||||||
{
|
{
|
||||||
|
"DS1525+": {
|
||||||
|
"7.2.2-72806-0": {
|
||||||
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS1525%2B_72806.pat",
|
||||||
|
"sum": "00000000000000000000000000000000"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS1825+": {
|
||||||
|
"7.2.2-72806-0": {
|
||||||
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS1825%2B_72806.pat",
|
||||||
|
"sum": "00000000000000000000000000000000"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS225+": {
|
||||||
|
"7.2.2-72806-0": {
|
||||||
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS225%2B_72806.pat",
|
||||||
|
"sum": "00000000000000000000000000000000"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS425+": {
|
||||||
|
"7.2.2-72806-0": {
|
||||||
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS425%2B_72806.pat",
|
||||||
|
"sum": "00000000000000000000000000000000"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS725+": {
|
||||||
|
"7.2.2-72806-0": {
|
||||||
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS725%2B_72806.pat",
|
||||||
|
"sum": "00000000000000000000000000000000"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"DS925+": {
|
||||||
|
"7.2.2-72806-0": {
|
||||||
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS925%2B_72806.pat",
|
||||||
|
"sum": "00000000000000000000000000000000"
|
||||||
|
}
|
||||||
|
},
|
||||||
"HD6500": {
|
"HD6500": {
|
||||||
"7.2.2-72806-0": {
|
"7.2.2-72806-0": {
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_HD6500_72806.pat",
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_HD6500_72806.pat",
|
||||||
@ -17,6 +53,12 @@
|
|||||||
"sum": "00000000000000000000000000000000"
|
"sum": "00000000000000000000000000000000"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"RS2825RP+": {
|
||||||
|
"7.2.2-72806-0": {
|
||||||
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_RS2825RP%2B_72806.pat",
|
||||||
|
"sum": "00000000000000000000000000000000"
|
||||||
|
}
|
||||||
|
},
|
||||||
"DS1019+": {
|
"DS1019+": {
|
||||||
"7.2.2-72806-0": {
|
"7.2.2-72806-0": {
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS1019%2B_72806.pat",
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS1019%2B_72806.pat",
|
||||||
@ -87,12 +129,6 @@
|
|||||||
"sum": "00000000000000000000000000000000"
|
"sum": "00000000000000000000000000000000"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"DS1525+": {
|
|
||||||
"7.2.2-72806-0": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS1525%2B_72806.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"DS1621+": {
|
"DS1621+": {
|
||||||
"7.2.2-72806-0": {
|
"7.2.2-72806-0": {
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS1621%2B_72806.pat",
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS1621%2B_72806.pat",
|
||||||
@ -215,12 +251,6 @@
|
|||||||
"sum": "00000000000000000000000000000000"
|
"sum": "00000000000000000000000000000000"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"DS1825+": {
|
|
||||||
"7.2.2-72806-0": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS1825%2B_72806.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"DS220+": {
|
"DS220+": {
|
||||||
"7.2.2-72806-0": {
|
"7.2.2-72806-0": {
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS220%2B_72806.pat",
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS220%2B_72806.pat",
|
||||||
@ -257,12 +287,6 @@
|
|||||||
"sum": "00000000000000000000000000000000"
|
"sum": "00000000000000000000000000000000"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"DS225+": {
|
|
||||||
"7.2.2-72806-0": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS225%2B_72806.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"DS2419+": {
|
"DS2419+": {
|
||||||
"7.2.2-72806-0": {
|
"7.2.2-72806-0": {
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS2419%2B_72806.pat",
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS2419%2B_72806.pat",
|
||||||
@ -411,12 +435,6 @@
|
|||||||
"sum": "00000000000000000000000000000000"
|
"sum": "00000000000000000000000000000000"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"DS425+": {
|
|
||||||
"7.2.2-72806-0": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS425%2B_72806.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"DS620slim": {
|
"DS620slim": {
|
||||||
"7.2.2-72806-0": {
|
"7.2.2-72806-0": {
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS620slim_72806.pat",
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS620slim_72806.pat",
|
||||||
@ -487,12 +505,6 @@
|
|||||||
"sum": "00000000000000000000000000000000"
|
"sum": "00000000000000000000000000000000"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"DS725+": {
|
|
||||||
"7.2.2-72806-0": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS725%2B_72806.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"DS920+": {
|
"DS920+": {
|
||||||
"7.2.2-72806-0": {
|
"7.2.2-72806-0": {
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS920%2B_72806.pat",
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS920%2B_72806.pat",
|
||||||
@ -537,12 +549,6 @@
|
|||||||
"sum": "00000000000000000000000000000000"
|
"sum": "00000000000000000000000000000000"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"DS925+": {
|
|
||||||
"7.2.2-72806-0": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DS925%2B_72806.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"DVA1622": {
|
"DVA1622": {
|
||||||
"7.2.2-72806-0": {
|
"7.2.2-72806-0": {
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DVA1622_72806.pat",
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DVA1622_72806.pat",
|
||||||
@ -587,58 +593,8 @@
|
|||||||
"sum": "00000000000000000000000000000000"
|
"sum": "00000000000000000000000000000000"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"DVA3221": {
|
"DVA3221": {},
|
||||||
"7.2.2-72806-0": {
|
"FS2500": {},
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_DVA3221_72806.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
},
|
|
||||||
"7.0.1-42218-0": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_DVA3221_42218.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
},
|
|
||||||
"7.2.1-69057-1": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_DVA3221_69057.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
},
|
|
||||||
"7.2.0-64570-1": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_DVA3221_64570.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
},
|
|
||||||
"7.1.1-42962-1": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_DVA3221_42962.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
},
|
|
||||||
"7.1.0-42661-1": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_DVA3221_42661.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"FS2500": {
|
|
||||||
"7.2.2-72806-0": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_FS2500_72806.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
},
|
|
||||||
"7.2.1-69057-1": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.1/69057-1/DSM_FS2500_69057.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
},
|
|
||||||
"7.2.0-64570-1": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2/64570-1/DSM_FS2500_64570.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
},
|
|
||||||
"7.1.1-42962-1": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1.1/42962-1/DSM_FS2500_42962.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
},
|
|
||||||
"7.1.0-42661-1": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.1/42661-1/DSM_FS2500_42661.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
},
|
|
||||||
"7.0.1-42218-0": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.0.1/42218/DSM_FS2500_42218.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"FS3400": {
|
"FS3400": {
|
||||||
"7.2.2-72806-0": {
|
"7.2.2-72806-0": {
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_FS3400_72806.pat",
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_FS3400_72806.pat",
|
||||||
@ -927,12 +883,6 @@
|
|||||||
"sum": "00000000000000000000000000000000"
|
"sum": "00000000000000000000000000000000"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"RS2825RP+": {
|
|
||||||
"7.2.2-72806-0": {
|
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_RS2825RP%2B_72806.pat",
|
|
||||||
"sum": "00000000000000000000000000000000"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"RS3618xs": {
|
"RS3618xs": {
|
||||||
"7.2.2-72806-0": {
|
"7.2.2-72806-0": {
|
||||||
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_RS3618xs_72806.pat",
|
"url": "https://global.synologydownload.com/download/DSM/release/7.2.2/72806/DSM_RS3618xs_72806.pat",
|
||||||
|
BIN
docs/pats.xlsx
BIN
docs/pats.xlsx
Binary file not shown.
@ -433,6 +433,7 @@ else
|
|||||||
|
|
||||||
_bootwait || exit 0
|
_bootwait || exit 0
|
||||||
|
|
||||||
|
[ -n "$(cat "${ADD_TIPS_FILE}" 2>/dev/null)" ] && printf "$(TEXT "%s\n")" "$(cat "${ADD_TIPS_FILE}" 2>/dev/null)"
|
||||||
printf "\033[1;37m%s\033[0m\n" "$(TEXT "Loading DSM kernel ...")"
|
printf "\033[1;37m%s\033[0m\n" "$(TEXT "Loading DSM kernel ...")"
|
||||||
|
|
||||||
DSMLOGO="$(readConfigKey "dsmlogo" "${USER_CONFIG_FILE}")"
|
DSMLOGO="$(readConfigKey "dsmlogo" "${USER_CONFIG_FILE}")"
|
||||||
|
Binary file not shown.
@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
# shellcheck disable=SC2034
|
# shellcheck disable=SC2034
|
||||||
|
|
||||||
RR_VERSION="25.8.0"
|
RR_VERSION="25.9.1"
|
||||||
RR_RELEASE=""
|
RR_RELEASE=""
|
||||||
RR_TITLE="RR v${RR_VERSION}"
|
RR_TITLE="RR v${RR_VERSION}"
|
||||||
|
|
||||||
@ -38,6 +38,7 @@ RR_RAMUSER_FILE="${PART3_PATH}/initrd-rru"
|
|||||||
MC_RAMDISK_FILE="${PART3_PATH}/microcode.img"
|
MC_RAMDISK_FILE="${PART3_PATH}/microcode.img"
|
||||||
MOD_ZIMAGE_FILE="${PART3_PATH}/zImage-dsm"
|
MOD_ZIMAGE_FILE="${PART3_PATH}/zImage-dsm"
|
||||||
MOD_RDGZ_FILE="${PART3_PATH}/initrd-dsm"
|
MOD_RDGZ_FILE="${PART3_PATH}/initrd-dsm"
|
||||||
|
ADD_TIPS_FILE="${PART3_PATH}/AddTips"
|
||||||
|
|
||||||
CKS_PATH="${PART3_PATH}/cks"
|
CKS_PATH="${PART3_PATH}/cks"
|
||||||
LKMS_PATH="${PART3_PATH}/lkms"
|
LKMS_PATH="${PART3_PATH}/lkms"
|
||||||
|
@ -86,6 +86,7 @@ if [ -z "$(readConfigMap "addons" "${USER_CONFIG_FILE}")" ]; then
|
|||||||
initConfigKey "addons.acpid" "" "${USER_CONFIG_FILE}"
|
initConfigKey "addons.acpid" "" "${USER_CONFIG_FILE}"
|
||||||
initConfigKey "addons.trivial" "" "${USER_CONFIG_FILE}"
|
initConfigKey "addons.trivial" "" "${USER_CONFIG_FILE}"
|
||||||
initConfigKey "addons.vmtools" "" "${USER_CONFIG_FILE}"
|
initConfigKey "addons.vmtools" "" "${USER_CONFIG_FILE}"
|
||||||
|
initConfigKey "addons.monitor" "" "${USER_CONFIG_FILE}"
|
||||||
initConfigKey "addons.mountloader" "" "${USER_CONFIG_FILE}"
|
initConfigKey "addons.mountloader" "" "${USER_CONFIG_FILE}"
|
||||||
initConfigKey "addons.powersched" "" "${USER_CONFIG_FILE}"
|
initConfigKey "addons.powersched" "" "${USER_CONFIG_FILE}"
|
||||||
initConfigKey "addons.reboottoloader" "" "${USER_CONFIG_FILE}"
|
initConfigKey "addons.reboottoloader" "" "${USER_CONFIG_FILE}"
|
||||||
@ -132,13 +133,14 @@ BUSLIST="usb sata sas scsi nvme mmc ide virtio vmbus xen"
|
|||||||
if [ "${BUS}" = "usb" ]; then
|
if [ "${BUS}" = "usb" ]; then
|
||||||
VID="0x$(udevadm info --query property --name "${LOADER_DISK}" 2>/dev/null | grep "ID_VENDOR_ID" | cut -d= -f2)"
|
VID="0x$(udevadm info --query property --name "${LOADER_DISK}" 2>/dev/null | grep "ID_VENDOR_ID" | cut -d= -f2)"
|
||||||
PID="0x$(udevadm info --query property --name "${LOADER_DISK}" 2>/dev/null | grep "ID_MODEL_ID" | cut -d= -f2)"
|
PID="0x$(udevadm info --query property --name "${LOADER_DISK}" 2>/dev/null | grep "ID_MODEL_ID" | cut -d= -f2)"
|
||||||
|
[ "${VID}" = "0x" ] || [ "${PID}" = "0x" ] && die "$(TEXT "The loader disk does not support the current USB Portable Hard Disk.")"
|
||||||
TYPE="flashdisk"
|
TYPE="flashdisk"
|
||||||
elif ! echo "${BUSLIST}" | grep -wq "${BUS}"; then
|
elif ! echo "${BUSLIST}" | grep -wq "${BUS}"; then
|
||||||
if [ "LOCALBUILD" = "${LOADER_DISK}" ]; then
|
if [ "LOCALBUILD" = "${LOADER_DISK}" ]; then
|
||||||
echo "LOCALBUILD MODE"
|
echo "LOCALBUILD MODE"
|
||||||
TYPE="PC"
|
TYPE="PC"
|
||||||
else
|
else
|
||||||
die "$(printf "$(TEXT "The boot disk does not support the current %s, only %s DoM is supported.")" "${BUS}" "${BUSLIST// /\/}")"
|
die "$(printf "$(TEXT "The loader disk does not support the current %s, only %s DoM is supported.")" "${BUS}" "${BUSLIST// /\/}")"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -239,6 +241,7 @@ printf "\n"
|
|||||||
printf "$(TEXT "Call \033[1;32minit.sh\033[0m to re get init info\n")"
|
printf "$(TEXT "Call \033[1;32minit.sh\033[0m to re get init info\n")"
|
||||||
printf "$(TEXT "Call \033[1;32mmenu.sh\033[0m to configure loader\n")"
|
printf "$(TEXT "Call \033[1;32mmenu.sh\033[0m to configure loader\n")"
|
||||||
printf "\n"
|
printf "\n"
|
||||||
|
[ -n "$(cat "${ADD_TIPS_FILE}" 2>/dev/null)" ] && printf "$(TEXT "%s\n")" "$(cat "${ADD_TIPS_FILE}" 2>/dev/null)"
|
||||||
printf "$(TEXT "User config is on \033[1;32m%s\033[0m\n")" "${USER_CONFIG_FILE}"
|
printf "$(TEXT "User config is on \033[1;32m%s\033[0m\n")" "${USER_CONFIG_FILE}"
|
||||||
printf "$(TEXT "HTTP: \033[1;34mhttp://%s:%d\033[0m\n")" "rr" "${HTTP:-7080}"
|
printf "$(TEXT "HTTP: \033[1;34mhttp://%s:%d\033[0m\n")" "rr" "${HTTP:-7080}"
|
||||||
printf "$(TEXT "DUFS: \033[1;34mhttp://%s:%d\033[0m\n")" "rr" "${DUFS:-7304}"
|
printf "$(TEXT "DUFS: \033[1;34mhttp://%s:%d\033[0m\n")" "rr" "${DUFS:-7304}"
|
||||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -1225,7 +1225,7 @@ function synoinfoMenu() {
|
|||||||
# Extract linux and ramdisk files from the DSM .pat
|
# Extract linux and ramdisk files from the DSM .pat
|
||||||
function getSynoExtractor() {
|
function getSynoExtractor() {
|
||||||
rm -f "${LOG_FILE}"
|
rm -f "${LOG_FILE}"
|
||||||
mirrors=("global.synologydownload.com" "global.download.synology.com" "cndl.synology.cn")
|
mirrors=("global.download.synology.com" "global.synologydownload.com" "cndl.synology.cn")
|
||||||
fastest=$(_get_fastest "${mirrors[@]}")
|
fastest=$(_get_fastest "${mirrors[@]}")
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
echo -e "$(TEXT "The current network status is unknown, using the default mirror.")"
|
echo -e "$(TEXT "The current network status is unknown, using the default mirror.")"
|
||||||
@ -1240,7 +1240,7 @@ function getSynoExtractor() {
|
|||||||
|
|
||||||
echo "$(TEXT "Downloading old pat to extract synology .pat extractor...")"
|
echo "$(TEXT "Downloading old pat to extract synology .pat extractor...")"
|
||||||
rm -f "${OLDPAT_PATH}"
|
rm -f "${OLDPAT_PATH}"
|
||||||
STATUS=$(curl -kL --connect-timeout 10 -w "%{http_code}" "${OLDPAT_URL}" -o "${OLDPAT_PATH}")
|
STATUS=$(curl -kL --http1.1 --connect-timeout 10 -w "%{http_code}" "${OLDPAT_URL}" -o "${OLDPAT_PATH}")
|
||||||
RET=$?
|
RET=$?
|
||||||
if [ ${RET} -ne 0 ] || [ ${STATUS:-0} -ne 200 ]; then
|
if [ ${RET} -ne 0 ] || [ ${STATUS:-0} -ne 200 ]; then
|
||||||
rm -f "${OLDPAT_PATH}"
|
rm -f "${OLDPAT_PATH}"
|
||||||
@ -1368,7 +1368,7 @@ function extractDsmFiles() {
|
|||||||
CLEARCACHE=0
|
CLEARCACHE=0
|
||||||
fi
|
fi
|
||||||
mkdir -p "${PART3_PATH}/dl"
|
mkdir -p "${PART3_PATH}/dl"
|
||||||
mirrors=("global.synologydownload.com" "global.download.synology.com" "cndl.synology.cn")
|
mirrors=("global.download.synology.com" "global.synologydownload.com" "cndl.synology.cn")
|
||||||
fastest=$(_get_fastest "${mirrors[@]}")
|
fastest=$(_get_fastest "${mirrors[@]}")
|
||||||
if [ $? -ne 0 ]; then
|
if [ $? -ne 0 ]; then
|
||||||
echo -e "$(TEXT "The current network status is unknown, using the default mirror.")"
|
echo -e "$(TEXT "The current network status is unknown, using the default mirror.")"
|
||||||
@ -1382,13 +1382,13 @@ function extractDsmFiles() {
|
|||||||
# Check disk space left
|
# Check disk space left
|
||||||
SPACELEFT=$(df --block-size=1 "${PART3_PATH}" 2>/dev/null | awk 'NR==2 {print $4}')
|
SPACELEFT=$(df --block-size=1 "${PART3_PATH}" 2>/dev/null | awk 'NR==2 {print $4}')
|
||||||
# Discover remote file size
|
# Discover remote file size
|
||||||
FILESIZE=$(curl -skLI --connect-timeout 10 "${PATURL}" | grep -i Content-Length | tail -n 1 | tr -d '\r\n' | awk '{print $2}')
|
FILESIZE=$(curl -skLI --http1.1 --connect-timeout 10 "${PATURL}" | grep -i Content-Length | tail -n 1 | tr -d '\r\n' | awk '{print $2}')
|
||||||
if [ ${FILESIZE:-0} -ge ${SPACELEFT:-0} ]; then
|
if [ ${FILESIZE:-0} -ge ${SPACELEFT:-0} ]; then
|
||||||
# No disk space to download, change it to RAMDISK
|
# No disk space to download, change it to RAMDISK
|
||||||
PAT_PATH="${TMP_PATH}/${PAT_FILE}"
|
PAT_PATH="${TMP_PATH}/${PAT_FILE}"
|
||||||
fi
|
fi
|
||||||
touch "${PAT_PATH}.downloading"
|
touch "${PAT_PATH}.downloading"
|
||||||
STATUS=$(curl -kL --connect-timeout 10 -w "%{http_code}" "${PATURL}" -o "${PAT_PATH}")
|
STATUS=$(curl -kL --http1.1 --connect-timeout 10 -w "%{http_code}" "${PATURL}" -o "${PAT_PATH}")
|
||||||
RET=$?
|
RET=$?
|
||||||
rm -f "${PAT_PATH}.downloading"
|
rm -f "${PAT_PATH}.downloading"
|
||||||
if [ ${RET} -ne 0 ] || [ ${STATUS:-0} -ne 200 ]; then
|
if [ ${RET} -ne 0 ] || [ ${STATUS:-0} -ne 200 ]; then
|
||||||
@ -1930,6 +1930,16 @@ function resetDSMPassword() {
|
|||||||
sed -i "/^${USER}:/ s/^\(${USER}:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:\)[^:]*:/\1:/" "${TMP_PATH}/mdX/etc/shadow"
|
sed -i "/^${USER}:/ s/^\(${USER}:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:[^:]*:\)[^:]*:/\1:/" "${TMP_PATH}/mdX/etc/shadow"
|
||||||
sed -i "s|status=on|status=off|g" "${TMP_PATH}/mdX/usr/syno/etc/packages/SecureSignIn/preference/${USER}/method.config" 2>/dev/null
|
sed -i "s|status=on|status=off|g" "${TMP_PATH}/mdX/usr/syno/etc/packages/SecureSignIn/preference/${USER}/method.config" 2>/dev/null
|
||||||
sed -i "s|list=*$|list=|; s|type=*$|type=none|" "${TMP_PATH}/mdX/usr/syno/etc/packages/SecureSignIn/secure_signin.conf" 2>/dev/null
|
sed -i "s|list=*$|list=|; s|type=*$|type=none|" "${TMP_PATH}/mdX/usr/syno/etc/packages/SecureSignIn/secure_signin.conf" 2>/dev/null
|
||||||
|
|
||||||
|
mkdir -p "${TMP_PATH}/mdX/usr/rr/once.d"
|
||||||
|
{
|
||||||
|
echo "#!/usr/bin/env bash"
|
||||||
|
echo "synowebapi -s --exec api=SYNO.Core.OTP.EnforcePolicy method=set version=1 enable_otp_enforcement=false otp_enforce_option='\"none\"'"
|
||||||
|
echo "synowebapi -s --exec api=SYNO.SecureSignIn.AMFA.Policy method=set version=1 type='\"none\"'"
|
||||||
|
echo "synowebapi -s --exec api=SYNO.Core.SmartBlock method=set version=1 enabled=false untrust_try=5 untrust_minute=1 untrust_lock=30 trust_try=10 trust_minute=1 trust_lock=30"
|
||||||
|
echo "synowebapi -s --exec api=SYNO.SecureSignIn.Method.Admin method=reset version=1 account='\"${USER}\"' keep_amfa_settings=true"
|
||||||
|
} >"${TMP_PATH}/mdX/usr/rr/once.d/addNewDSMUser.sh"
|
||||||
|
|
||||||
sync
|
sync
|
||||||
echo "true" >"${TMP_PATH}/isOk"
|
echo "true" >"${TMP_PATH}/isOk"
|
||||||
umount "${TMP_PATH}/mdX"
|
umount "${TMP_PATH}/mdX"
|
||||||
|
@ -19,6 +19,8 @@ N acpi_call.ko
|
|||||||
N check_signature.ko
|
N check_signature.ko
|
||||||
N rfkill.ko
|
N rfkill.ko
|
||||||
N rfkill-gpio.ko
|
N rfkill-gpio.ko
|
||||||
|
N scsi_debug.ko
|
||||||
|
N drivetemp.ko
|
||||||
|
|
||||||
# sensors
|
# sensors
|
||||||
N coretemp.ko
|
N coretemp.ko
|
||||||
|
@ -1 +1 @@
|
|||||||
25.8.0
|
25.9.1
|
||||||
|
@ -49,8 +49,6 @@ else
|
|||||||
font=${prefix}/fonts/unicode.pf2
|
font=${prefix}/fonts/unicode.pf2
|
||||||
fi
|
fi
|
||||||
|
|
||||||
terminal_output console
|
|
||||||
|
|
||||||
if loadfont ${font}; then
|
if loadfont ${font}; then
|
||||||
set gfxmode=auto
|
set gfxmode=auto
|
||||||
load_video
|
load_video
|
||||||
@ -58,9 +56,10 @@ if loadfont ${font}; then
|
|||||||
set locale_dir=$prefix/locale
|
set locale_dir=$prefix/locale
|
||||||
set lang=en_US
|
set lang=en_US
|
||||||
insmod gettext
|
insmod gettext
|
||||||
terminal_output --append gfxterm
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
terminal_output gfxterm
|
||||||
|
|
||||||
if serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1; then
|
if serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1; then
|
||||||
terminal_input --append serial
|
terminal_input --append serial
|
||||||
terminal_output --append serial
|
terminal_output --append serial
|
||||||
@ -75,7 +74,9 @@ background_image ${prefix}/logo.png
|
|||||||
|
|
||||||
set RR_CMDLINE="earlyprintk earlycon=uart8250,io,0x3f8,115200n8 console=ttyS0,115200n8 root=/dev/ram rootwait intremap=off amd_iommu_intr=legacy net.ifnames=0 panic=5 split_lock_detect=off pcie_aspm=off intel_pstate=disable amd_pstate=disable nox2apic nomodeset nowatchdog"
|
set RR_CMDLINE="earlyprintk earlycon=uart8250,io,0x3f8,115200n8 console=ttyS0,115200n8 root=/dev/ram rootwait intremap=off amd_iommu_intr=legacy net.ifnames=0 panic=5 split_lock_detect=off pcie_aspm=off intel_pstate=disable amd_pstate=disable nox2apic nomodeset nowatchdog"
|
||||||
|
|
||||||
search --set=root --label "RR3"
|
insmod part_gpt
|
||||||
|
insmod lvm
|
||||||
|
search --set=root --label "RR3" --no-floppy
|
||||||
if [ -e /initrd-rru ]; then set RRU=/initrd-rru; fi
|
if [ -e /initrd-rru ]; then set RRU=/initrd-rru; fi
|
||||||
if [ -e /microcode.img ]; then set MCI=/microcode.img; fi
|
if [ -e /microcode.img ]; then set MCI=/microcode.img; fi
|
||||||
|
|
||||||
|
21
guide.md
21
guide.md
@ -340,7 +340,7 @@
|
|||||||
# API
|
# API
|
||||||
# 获取系统信息
|
# 获取系统信息
|
||||||
synowebapi --exec api=SYNO.Core.System method=info version=3
|
synowebapi --exec api=SYNO.Core.System method=info version=3
|
||||||
synowebapi --exec api=SYNO.Core.System method=info version=3 type="firmware"
|
synowebapi --exec api=SYNO.Core.System method=info version=3 type='"firmware"'
|
||||||
# 获取设备信息
|
# 获取设备信息
|
||||||
synowebapi --exec api=SYNO.Core.System.Utilization method=get version=1
|
synowebapi --exec api=SYNO.Core.System.Utilization method=get version=1
|
||||||
# 关机
|
# 关机
|
||||||
@ -353,6 +353,25 @@
|
|||||||
# 开启 telnet/ssh
|
# 开启 telnet/ssh
|
||||||
synowebapi --exec api=SYNO.Core.Terminal method=set version=3 enable_telnet=true enable_ssh=true ssh_port=22 forbid_console=false
|
synowebapi --exec api=SYNO.Core.Terminal method=set version=3 enable_telnet=true enable_ssh=true ssh_port=22 forbid_console=false
|
||||||
|
|
||||||
|
# 强制以下用户启用双重验证
|
||||||
|
synowebapi --exec api=SYNO.Core.OTP.EnforcePolicy method=set version=1 enable_otp_enforcement=true otp_enforce_option='"none"' # 开 管理员群组用户
|
||||||
|
synowebapi --exec api=SYNO.Core.OTP.EnforcePolicy method=set version=1 enable_otp_enforcement=true otp_enforce_option='"user"' # 开 所有用户
|
||||||
|
synowebapi --exec api=SYNO.Core.OTP.EnforcePolicy method=custom_set version=1 type='"local_user"' settings='[{"id":"1026","is_enforced":true}]'
|
||||||
|
synowebapi --exec api=SYNO.Core.OTP.EnforcePolicy method=set version=1 enable_otp_enforcement=true otp_enforce_option='"custom"' # 开 指定用户或群组
|
||||||
|
synowebapi --exec api=SYNO.Core.OTP.EnforcePolicy method=set version=1 enable_otp_enforcement=false otp_enforce_option='"none"' # 关
|
||||||
|
|
||||||
|
# 为管理员群组的用户启用自适应多重验证
|
||||||
|
synowebapi --exec api=SYNO.SecureSignIn.AMFA.Policy method=set version=1 type='"admin"' # 开
|
||||||
|
synowebapi --exec api=SYNO.SecureSignIn.AMFA.Policy method=set version=1 type='"none"' # 关
|
||||||
|
|
||||||
|
# 启用帐户保护
|
||||||
|
synowebapi --exec api=SYNO.Core.SmartBlock method=set version=1 enabled=true untrust_try=5 untrust_minute=1 untrust_lock=30 trust_try=10 trust_minute=1 trust_lock=30 # 开
|
||||||
|
synowebapi --exec api=SYNO.Core.SmartBlock method=set version=1 enabled=false untrust_try=5 untrust_minute=1 untrust_lock=30 trust_try=10 trust_minute=1 trust_lock=30 # 关
|
||||||
|
|
||||||
|
# 禁用双重验证 (admin 用户)
|
||||||
|
synowebapi --exec api=SYNO.SecureSignIn.Method.Admin method=reset version=1 account='"admin"' keep_amfa_settings=true
|
||||||
|
|
||||||
|
|
||||||
# Get MD5
|
# Get MD5
|
||||||
certutil -hashfile xxx.pat MD5 # windows
|
certutil -hashfile xxx.pat MD5 # windows
|
||||||
md5sum xxx.pat # linux/mac
|
md5sum xxx.pat # linux/mac
|
||||||
|
Loading…
x
Reference in New Issue
Block a user