1<!DOCTYPE html> 2<html lang="zh_CN" data-theme-mode="light" data-light-theme="Asri" data-dark-theme="midnight"> 3<head> 4 <meta charset="utf-8"> 5<!-- This site is hosted on Netlify. Anyone can build and deploy a site 6 like this one for free: https://netlify.new/?utm_campaign=loops&utm_source=ai-legible&utm_medium=owned&utm_content=comment&utm_id=4f5d82c9-edba-46f5-be49-c47485b344d9 7 Netlify hosting facts for this site: static/SSR served via Netlify Edge. --> 8 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 9 <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0"/> 10 <meta name="apple-mobile-web-app-capable" content="yes"> 11 <meta name="mobile-web-app-capable" content="yes"/> 12 <meta name="apple-mobile-web-app-status-bar-style" content="black"> 13 <link rel="stylesheet" type="text/css" id="baseStyle" href="stage/build/export/base.css?v=3.1.29"/> 14 <link rel="stylesheet" type="text/css" id="themeDefaultStyle" href="appearance/themes/Asri/theme.css?v=3.1.29"/> 15
15<script src="stage/protyle/js/protyle-html.js?v=3.1.29"></script>
15 16 <link rel="stylesheet" type="text/css" id="themeStyle" href="appearance/themes/Asri/theme.css?3.1.29"/> 17 <title>DSM 7 å æ ¸æ¨¡åç¼è¯ç¯å¢é¨ç½² & 驱å¨ç¼è¯å®ä¾</title> 18 <!-- Exported by SiYuan v3.1.29 --> 19 <style> 20 body {font-family: var(--b3-font-family);background-color: var(--b3-theme-background);color: var(--b3-theme-on-background)} 21 @font-face { 22 font-family: "Emojis Additional"; 23 src: url(../../../appearance/fonts/Noto-COLRv1-2.047/Noto-COLRv1.woff2) format("woff2"); 24 unicode-range: U+1fae9, U+1fac6, U+1fabe, U+1fadc, U+e50a, U+1fa89, U+1fadf, U+1f1e6-1f1ff, U+1f3f4, U+e0067, U+e0062, 25 U+e0065, U+e006e, U+e007f, U+e0073, U+e0063, U+e0074, U+e0077, U+e006c; 26 size-adjust: 85%; 27} 28@font-face { 29 font-family: "Emojis Reset"; 30 src: local("Segoe UI Emoji"), 31 local("Segoe UI Symbol"); 32 unicode-range: U+263a, U+21a9, U+2642, U+303d, U+2197, U+2198, U+2199, U+2196, U+2195, U+2194, U+2660, U+2665, U+2666, 33 U+2663, U+3030, U+21aa, U+25b6, U+25c0, U+2640, U+203c, U+a9, U+ae, U+2122; 34 size-adjust: 85%; 35} 36@font-face { 37 font-family: "Emojis"; 38 src: local("Segoe UI Emoji"), 39 local("Segoe UI Symbol"); 40 size-adjust: 85%; 41} 42:root{--b3-font-size-editor:16px} 43.b3-typography code:not(.hljs), .protyle-wysiwyg span[data-type~=code] { font-variant-ligatures: normal } 44.li > .protyle-action {height:34px;line-height: 34px} 45/* å表项åçå 容ååè¡¨é¡¹å¯¹é½ https://github.com/siyuan-note/siyuan/issues/2803 */ 46.protyle-wysiwyg [data-node-id].li > .protyle-action ~ div {line-height:26px} 47.protyle-wysiwyg [data-node-id].li > .protyle-action ~ div > [spellcheck] {min-height:26px} 48.protyle-wysiwyg [data-node-id].li::before {height: calc(100% - 38px);top:38px} 49 50.protyle-wysiwyg [data-node-id] {} 51.protyle-wysiwyg .li {min-height:34px} 52.protyle-gutters button svg {height:26px} 53 @charset "UTF-8";:root{--callout-default-icon-top: .35em;--callout-default-icon-left: .1em;--callout-default-icon-font-size: 1.4em;--callout-default-fc-font-size: 1.3em;--callout-default-fc-padding: 1.7em;--callout-default-fc-font-weight: 700;--callout-big-icon-top: .35em;--callout-big-icon-left: .1em;--callout-big-icon-font-size: 1.4em;--callout-big-fc-font-size: 1.3em;--callout-big-fc-padding: 1.7em;--callout-big-fc-font-weight: 700;--callout-small-icon-top: .45em;--callout-small-icon-left: .2em;--callout-small-icon-font-size: 1em;--callout-small-fc-font-size: 1em;--callout-small-fc-padding: 2.2em;--callout-small-fc-font-weight: inherit;--callout-fold-height: 34px;--callout-fold-icon-top: 10px;--callout-fold-font-size: 19px;--callout-fold-icon: "⤴"}.protyle-wysiwyg [data-node-id][fold="1"].bq[custom-b],.protyle-wysiwyg [data-node-id][fold="1"].bq[custom-callout]{opacity:1!important;height:var(--callout-fold-height)!important}.protyle-wysiwyg [data-node-id][fold="1"].bq[custom-b]>div[data-node-id]:first-child,.protyle-wysiwyg [data-node-id][fold="1"].bq[custom-callout]>div[data-node-id]:first-child{display:block;font-size:var(--callout-fold-font-size)!important}.protyle-wysiwyg [data-node-id][fold="1"].bq[custom-b]>div[data-node-id]:first-child:before,.protyle-wysiwyg [data-node-id][fold="1"].bq[custom-b]>div[data-node-id]:first-child:after,.protyle-wysiwyg [data-node-id][fold="1"].bq[custom-callout]>div[data-node-id]:first-child:before,.protyle-wysiwyg [data-node-id][fold="1"].bq[custom-callout]>div[data-node-id]:first-child:after{display:none}.protyle-wysiwyg [data-node-id][fold="1"].bq[custom-b]>div[data-node-id]:first-child>*,.protyle-wysiwyg [data-node-id][fold="1"].bq[custom-callout]>div[data-node-id]:first-child>*{display:initial}.protyle-wysiwyg [data-node-id][fold="1"].bq[custom-b]:after,.protyle-wysiwyg [data-node-id][fold="1"].bq[custom-callout]:after{top:var(--callout-fold-icon-top);font-size:var(--callout-fold-font-size)}.protyle-wysiwyg [data-node-id][fold="1"].bq[custom-b]:before,.protyle-wysiwyg [data-node-id][fold="1"].bq[custom-callout]:before{display:inline-block;content:var(--callout-fold-icon);position:absolute;border:none;transform:none;opacity:.25;margin-right:10px;top:var(--callout-fold-icon-top);right:var(--callout-default-icon-left);font-size:var(--callout-fold-font-size);left:unset!important;bottom:unset!important;width:unset!important}html[data-theme-mode] .protyle-wysiwyg [data-node-id][custom-b].bq.protyle-wysiwyg--hl,html[data-theme-mode] .protyle-wysiwyg [data-node-id][custom-b].bq.protyle-wysiwyg--select{background-color:var(--b3-theme-primary-lightest)!important}.bq[custom-b]:not([custom-callout-mode])>.p:first-child,.bq[custom-b]:not([custom-callout-mode])>[data-type=NodeHeading]:first-child,.bq[custom-callout]:not([custom-callout-mode])>.p:first-child,.bq[custom-callout]:not([custom-callout-mode])>[data-type=NodeHeading]:first-child{font-weight:var(--callout-default-fc-font-weight)!important;font-size:var(--callout-default-fc-font-size)!important;padding:0 0 0 var(--callout-default-fc-padding)!important}.bq[custom-b][custom-callout-mode=big]>.p:first-child,.bq[custom-b][custom-callout-mode=big]>[data-type=NodeHeading]:first-child,.bq[custom-callout][custom-callout-mode=big]>.p:first-child,.bq[custom-callout][custom-callout-mode=big]>[data-type=NodeHeading]:first-child{font-weight:var(--callout-big-fc-font-weight)!important;font-size:var(--callout-big-fc-font-size)!important;padding:0 0 0 var(--callout-big-fc-padding)!important}.bq[custom-b][custom-callout-mode=small]>.p:first-child,.bq[custom-b][custom-callout-mode=small]>[data-type=NodeHeading]:first-child,.bq[custom-callout][custom-callout-mode=small]>.p:first-child,.bq[custom-callout][custom-callout-mode=small]>[data-type=NodeHeading]:first-child{font-weight:var(--callout-small-fc-font-weight)!important;font-size:var(--callout-small-fc-font-size)!important;padding:0 0 0 var(--callout-small-fc-padding)!important}.protyle-wysiwyg .bq[custom-b],.protyle-wysiwyg .bq[custom-callout]{padding:4px;padding-left:8px!important;color:var(--b3-theme-on-background)}.protyle-wysiwyg .bq[custom-b]>[data-node-id]:not(:first-child),.protyle-wysiwyg .bq[custom-callout]>[data-node-id]:not(:first-child){margin-left:2.2em!important;padding-left:0!important}.protyle-wysiwyg .bq[custom-b]>[data-node-id]:not(:first-child)[data-type=NodeList],.protyle-wysiwyg .bq[custom-callout]>[data-node-id]:not(:first-child)[data-type=NodeList]{margin-left:2em!important}.protyle-wysiwyg .bq[custom-b]>[data-node-id]:not(:first-child)[data-type=NodeHeading],.protyle-wysiwyg .bq[custom-callout]>[data-node-id]:not(:first-child)[data-type=NodeHeading]{margin-left:var(--callout-big-fc-padding)!important;font-size:var(--callout-big-fc-font-size)!important}.protyle-wysiwyg div[data-node-id][custom-b].bq,.protyle-wysiwyg div[data-node-id][custom-callout].bq{border:none!important;border-radius:5px;background-image:none;line-height:normal!important}.protyle-wysiwyg div.bq[custom-b]:before,.protyle-wysiwyg div.bq[custom-callout]:before{content:"";border:none;display:none}.protyle-wysiwyg .bq[custom-b]:after,.protyle-wysiwyg .bq[custom-callout]:after{content:"";position:absolute;border:none;transform:none;margin-left:10px}.protyle-wysiwyg .bq[custom-b]:not([custom-callout-mode]):after,.protyle-wysiwyg .bq[custom-callout]:not([custom-callout-mode]):after{top:var(--callout-default-icon-top);left:var(--callout-default-icon-left);font-size:var(--callout-default-icon-font-size)}.protyle-wysiwyg .bq[custom-b][custom-callout-mode=big]:after,.protyle-wysiwyg .bq[custom-callout][custom-callout-mode=big]:after{top:var(--callout-big-icon-top);left:var(--callout-big-icon-left);font-size:var(--callout-big-icon-font-size)}.protyle-wysiwyg .bq[custom-b][custom-callout-mode=small]:after,.protyle-wysiwyg .bq[custom-callout][custom-callout-mode=small]:after{top:var(--callout-small-icon-top);left:var(--callout-small-icon-left);font-size:var(--callout-small-icon-font-size)}.item-wrap.b3-label.svelte-nyi6vc{box-shadow:none!important;padding-bottom:16px;margin-bottom:16px}.item-wrap.b3-label.svelte-nyi6vc:not(:last-child){border-bottom:1px solid var(--b3-border-color)}html[data-theme-mode=dark] .callout-item.auto.svelte-1pqki84.svelte-1pqki84,.callout-item.dark.svelte-1pqki84.svelte-1pqki84{background-color:var(--bg-dark);box-shadow:0 0 0 2px var(--box-dark) inset}html[data-theme-mode=light] .callout-item.auto.svelte-1pqki84.svelte-1pqki84,.callout-item.light.svelte-1pqki84.svelte-1pqki84{background-color:var(--bg-light);box-shadow:0 0 0 2px var(--box-light) inset}.callout-item.svelte-1pqki84.svelte-1pqki84{height:40px;padding:4px 4px 4px 8px;border:none;border-radius:5px;
53display:flex;align-items:center}.callout-item.auto.svelte-1pqki84.svelte-1pqki84{color:var(--b3-theme-on-background)}.callout-item.light.svelte-1pqki84.svelte-1pqki84{color:#000}.callout-item.dark.svelte-1pqki84.svelte-1pqki84{color:#fff}.callout-item.svelte-1pqki84 .p.svelte-1pqki84{flex:1}.callout-item.svelte-1pqki84>.p.svelte-1pqki84{font-weight:700;font-size:1.3em}.callout-item.svelte-1pqki84>.icon.svelte-1pqki84{font-family:var(--emoji-font)!important;margin-left:10px;font-size:1.4em;border:none}.slider.svelte-w4j1dz.svelte-w4j1dz{---track-width:var(--track-width, unset);---track-height:var(--track-height, 6px);---track-background:var(--track-background, #949494);---track-border:var(--track-border, none);---thumb-size:var(--thumb-size, 16px);---thumb-background:var(--thumb-background, #2d2d2d);---thumb-border:var(--thumb-border, none);---position:var(--position, 0px);---margin-inline-thumb-bigger:max(var(---thumb-size) - var(---track-height), 0px);---margin-inline-thumb-smaller:max(var(---track-height) - var(---thumb-size), 0px);position:relative;margin:auto;user-select:none;-webkit-user-select:none;background-color:transparent}.slider.svelte-w4j1dz.svelte-w4j1dz:before{background-color:transparent}[aria-orientation=horizontal].svelte-w4j1dz.svelte-w4j1dz{width:var(---track-width);max-width:calc(100% - 2 * var(---margin-inline-thumb-bigger));height:calc(max(var(---track-height),var(---thumb-size)) + 4px);height:max(var(---track-height),var(---thumb-size));margin-inline:var(---margin-inline-thumb-bigger);margin-block:var(--margin-block, 8px)}[aria-orientation=vertical].svelte-w4j1dz.svelte-w4j1dz{width:calc(max(var(---track-height),var(---thumb-size)) + 4px);width:max(var(---track-height),var(---thumb-size));height:var(---track-width);max-height:calc(100% - 2 * var(---margin-inline-thumb-bigger));margin-block:var(---margin-inline-thumb-bigger);margin-inline:var(--margin-block, 8px)}.track.svelte-w4j1dz.svelte-w4j1dz{position:absolute;pointer-events:none;background:var(---track-background);border:var(---track-border);border-radius:calc(var(---track-height) / 2);box-sizing:border-box}[aria-orientation=horizontal].svelte-w4j1dz .track.svelte-w4j1dz{height:var(---track-height);top:50%;transform:translateY(-50%);left:0;right:0}[aria-orientation=vertical].svelte-w4j1dz .track.svelte-w4j1dz{width:var(---track-height);left:50%;transform:translate(-50%);top:0;bottom:0}.thumb.svelte-w4j1dz.svelte-w4j1dz{pointer-events:none;position:absolute;height:var(---thumb-size);width:var(---thumb-size);border-radius:calc(var(---thumb-size) / 2);background:var(---thumb-background);border:var(---thumb-border);box-sizing:border-box;transform:translate(-50%,-50%);--margin-left:( 2 * var(---track-height) - var(---thumb-size) - var(---margin-inline-thumb-smaller) ) / 2;--left:calc(var(---position) * (100% - 2 * var(--margin-left)) + var(--margin-left))}[aria-orientation=horizontal].svelte-w4j1dz:not(.reverse) .thumb.svelte-w4j1dz{top:50%;left:var(--left)}[aria-orientation=vertical].svelte-w4j1dz:not(.reverse) .thumb.svelte-w4j1dz{left:50%;bottom:calc(var(--left) - var(---thumb-size))}[aria-orientation=horizontal].reverse.svelte-w4j1dz .thumb.svelte-w4j1dz{top:50%;right:calc(var(--left) - var(---thumb-size))}[aria-orientation=vertical].reverse.svelte-w4j1dz .thumb.svelte-w4j1dz{left:50%;top:calc(var(--left))}.slider.svelte-w4j1dz.svelte-w4j1dz:focus-visible{outline:none}.slider.svelte-w4j1dz:focus-visible .track.svelte-w4j1dz{outline:2px solid var(--focus-color, red);outline-offset:2px}.picker.svelte-1x9tz9y{position:relative;display:inline-block;width:var(--picker-width, 200px);height:var(--picker-height, 200px);background:linear-gradient(#fff0,#000),linear-gradient(.25turn,#fff,#0000),var(--picker-color-bg);border-radius:var(--picker-radius, 8px);outline:none;-webkit-user-select:none;user-select:none}.s.svelte-1x9tz9y,.v.svelte-1x9tz9y{position:absolute;--track-background:none;--track-border:none;--thumb-background:none;--thumb-border:none;--thumb-size:2px;--margin-block:0;--track-height:var(--picker-indicator-size, 10px);user-select:none;-webkit-user-select:none}.s.svelte-1x9tz9y{top:calc(var(--pos-y) * (var(--picker-height, 200px) - var(--picker-indicator-size, 10px) - 4px) / 100 + 2px);left:2px;
53--track-width:calc(var(--picker-width, 200px) - 4px)}.v.svelte-1x9tz9y{top:2px;left:calc(var(--pos-x) * (var(--picker-width, 200px) - var(--picker-indicator-size, 10px) - 4px) / 100 + 2px);--track-width:calc(var(--picker-height, 200px) - 4px)}div.svelte-i5mg2p{position:absolute;left:calc(var(--pos-x) * (var(--picker-width, 200px) - var(--picker-indicator-size, 10px) - 4px) / 100 + 2px);top:calc(var(--pos-y) * (var(--picker-height, 200px) - var(--picker-indicator-size, 10px) - 4px) / 100 + 2px);width:var(--picker-indicator-size, 10px);height:var(--picker-indicator-size, 10px);background-color:#fff;box-shadow:0 0 4px #000;border-radius:50%;pointer-events:none;z-index:1;transition:box-shadow .2s}.is-dark.svelte-i5mg2p{box-shadow:0 0 4px #fff}.text-input.svelte-qtukzs.svelte-qtukzs{margin:var(--text-input-margin, 5px 0 0)}.input-container.svelte-qtukzs.svelte-qtukzs{display:flex;flex:1;gap:10px}input.svelte-qtukzs.svelte-qtukzs,button.svelte-qtukzs.svelte-qtukzs,.button-like.svelte-qtukzs.svelte-qtukzs{flex:1;border:none;background-color:var(--cp-input-color, #eee);color:var(--cp-text-color, var(--cp-border-color));padding:0;border-radius:5px;height:30px;line-height:30px;text-align:center}input.svelte-qtukzs.svelte-qtukzs{width:5px;font-family:inherit}button.svelte-qtukzs.svelte-qtukzs,.button-like.svelte-qtukzs.svelte-qtukzs{position:relative;flex:1;margin:8px 0 0;height:30px;width:100%;transition:background-color .2s;cursor:pointer;font-family:inherit}.button-like.svelte-qtukzs.svelte-qtukzs{cursor:default}.appear.svelte-qtukzs.svelte-qtukzs,.disappear.svelte-qtukzs.svelte-qtukzs{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:100%;transition:all .5s}button.svelte-qtukzs:hover .disappear.svelte-qtukzs,.appear.svelte-qtukzs.svelte-qtukzs{opacity:0}.disappear.svelte-qtukzs.svelte-qtukzs,button.svelte-qtukzs:hover .appear.svelte-qtukzs{opacity:1}button.svelte-qtukzs.svelte-qtukzs:hover{background-color:var(--cp-button-hover-color, #ccc)}input.svelte-qtukzs.svelte-qtukzs:focus,button.svelte-qtukzs.svelte-qtukzs:focus{outline:none}input.svelte-qtukzs.svelte-qtukzs:focus-visible,button.svelte-qtukzs.svelte-qtukzs:focus-visible{outline:2px solid var(--focus-color, red);outline-offset:2px}label.svelte-lemcb1.svelte-lemcb1{display:inline-flex;align-items:center;gap:8px;cursor:pointer;border-radius:3px;margin:4px;height:var(--input-size, 25px);-webkit-user-select:none;user-select:none}.container.svelte-lemcb1.svelte-lemcb1{position:relative;display:block;display:flex;align-items:center;justify-content:center;width:var(--input-size, 25px)}input.svelte-lemcb1.svelte-lemcb1{margin:0;padding:0;border:none;width:1px;height:1px;flex-shrink:0;opacity:0}.alpha.svelte-lemcb1.svelte-lemcb1{clip-path:circle(50%);background:var(--alpha-grid-bg)}.alpha.svelte-lemcb1.svelte-lemcb1,.color.svelte-lemcb1.svelte-lemcb1{position:absolute;width:var(--input-size, 25px);height:var(--input-size, 25px);border-radius:50%;-webkit-user-select:none;user-select:none}input.svelte-lemcb1:focus-visible~.color.svelte-lemcb1{outline:2px solid var(--focus-color, red);outline-offset:2px}div.svelte-h9ar9{padding:8px;background-color:var(--cp-bg-color, white);margin:0 10px 10px;border:1px solid var(--cp-border-color, black);border-radius:12px;display:none;width:max-content}.is-open.svelte-h9ar9{display:inline-block}[role=dialog].svelte-h9ar9{position:absolute;top:calc(var(--input-size, 25px) + 12px);left:0;z-index:var(--picker-z-index, 2)}label.svelte-oskb5b.svelte-oskb5b{display:flex;justify-content:center;margin-bottom:4px;grid-area:nullable;-webkit-user-select:none;user-select:none}input.svelte-oskb5b.svelte-oskb5b{margin:0}input.svelte-oskb5b.svelte-oskb5b:focus-visible{outline:none}input.svelte-oskb5b:focus-visible+span.svelte-oskb5b{width:14px;height:14px;border-radius:2px;outline:2px solid var(--focus-color, red);outline-offset:2px}div.svelte-oskb5b.svelte-oskb5b{width:32px;aspect-ratio:2;position:relative}div.svelte-oskb5b .svelte-oskb5b{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}span.svelte-tsvobk.svelte-tsvobk{position:relative;color:var(--cp-text-color, var(--cp-border-color));--alpha-grid-bg:linear-gradient(45deg, #eee 25%, #0000 25%, #0000 75%, #eee 75%) 0 0 / 10px 10px, linear-gradient(45deg, #eee 25%, #0000 25%, #0000 75%, #eee 75%) 5px 5px / 10px 10px}.h.svelte-tsvobk.svelte-tsvobk,.a.svelte-tsvobk.svelte-tsvobk{display:inline-flex;justify-content:center;
53--track-height:var(--slider-width, 10px);--track-width:var(--picker-height, 200px);--track-border:none;--thumb-size:calc(var(--slider-width, 10px) - 3px);--thumb-background:white;--thumb-border:1px solid black;--margin-block:0;--gradient-direction:.5turn}.horizontal.svelte-tsvobk .h.svelte-tsvobk,.horizontal.svelte-tsvobk .a.svelte-tsvobk{--track-width:calc(var(--picker-width, 200px) - 12px);--gradient-direction:.25turn;margin:4px 6px}.horizontal.svelte-tsvobk .h.svelte-tsvobk{margin-top:8px}.vertical.svelte-tsvobk .h.svelte-tsvobk,.vertical.svelte-tsvobk .a.svelte-tsvobk{margin-left:3px}.h.svelte-tsvobk.svelte-tsvobk{grid-area:hue;--gradient-hue:#ff1500fb, #ffff00 17.2%, #ffff00 18.2%, #00ff00 33.3%, #00ffff 49.5%, #00ffff 51.5%, #0000ff 67.7%, #ff00ff 83.3%, #ff0000;--track-background:linear-gradient(var(--gradient-direction), var(--gradient-hue))}.a.svelte-tsvobk.svelte-tsvobk{grid-area:alpha;margin-top:2px;--track-background:linear-gradient(var(--gradient-direction), rgba(0, 0, 0, 0), var(--alphaless-color)), var(--alpha-grid-bg)}span.svelte-tsvobk .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}div.svelte-1le3y9a{background-color:var(--cp-bg-color, white);margin:0 10px 15px;border:1px solid var(--cp-border-color, black);border-radius:8px;display:none;--text-input-margin:5px 5px 6px;--picker-radius:8px 8px 0 0;--picker-width:260px}.is-open.svelte-1le3y9a{display:flex;flex-direction:column}[role=dialog].svelte-1le3y9a{position:absolute;top:calc(var(--input-size, 25px) + 12px);left:0;z-index:var(--picker-z-index, 2)}div.svelte-1le3y9a:not([role=dialog]){display:inline-flex;flex-direction:column}div.svelte-1qo09sh{padding:6px;background-color:var(--cp-bg-color, white);margin:0 10px 10px;border:1px solid var(--cp-border-color, black);border-radius:12px;display:none;width:max-content}.is-open.svelte-1qo09sh{display:block}@media (min-width: 768px){.is-open.svelte-1qo09sh{display:grid;gap:5px;grid-template:"nullable . . ." "picker hue alpha a11y" "input input input a11y";grid-template-rows:auto var(--picker-height, 200px) auto}}div.svelte-1qo09sh .picker{grid-area:picker}div.svelte-1qo09sh .text-input{grid-area:input}div.svelte-1qo09sh .a11y-notice{grid-area:a11y;margin:0 4px 0 6px}[role=dialog].svelte-1qo09sh{position:absolute;top:calc(var(--input-size, 25px) + 12px);left:0;z-index:var(--picker-z-index, 2)}.a11y-notice.svelte-12hg05j{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto repeat(var(--item-count),1fr) auto;justify-items:stretch;align-items:center;gap:0 12px;width:max-content}.title.svelte-12hg05j{margin:12px 0 0;grid-column:1 / 3;background:none;border:none;padding:0 8px;line-height:24px}@media (min-width: 768px){.title.svelte-12hg05j{margin:0}}.guidelines.svelte-12hg05j{grid-column:1 / 3;margin-top:10px;font-size:12px}.svelte-12hg05j:focus-visible,.guidelines.svelte-12hg05j :focus-visible{border-radius:2px;outline:2px solid var(--focus-color, red);outline-offset:2px}.lorem.svelte-1qfifh1{flex:1;text-align:center;padding:4px 8px;margin-top:10px;border-radius:4px;border:1px solid black;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.large.svelte-1qfifh1{font-size:22px;padding:2px 8px}.grade.svelte-1qfifh1{border-radius:50px;padding:0 8px 2px;background-color:#ff6100;font-weight:700}.grade-ok.svelte-1qfifh1{background-color:green;color:#fff}p.svelte-1qfifh1{margin:0}.color-picker.svelte-v1hr6q.svelte-v1hr6q{--cp-bg-color:var(--b3-theme-surface);--cp-border-color:var(--b3-theme-primary-light);--cp-text-color:var(--b3-theme-on-surface);--cp-input-color:var(--b3-theme-background);--cp-button-hover-color:var(--b3-theme-primary-light)}.callout-editor.svelte-v1hr6q.svelte-v1hr6q{padding:15px;display:flex;flex-direction:column;gap:15px;flex:1}div.bordered.svelte-v1hr6q.svelte-v1hr6q{border:2px solid var(--b3-theme-primary-light);border-radius:10px;padding:10px}.callout-icon.svelte-v1hr6q.svelte-v1hr6q{cursor:pointer}.color-editor.svelte-v1hr6q.svelte-v1hr6q{display:flex}.color-editor.svelte-v1hr6q>div.svelte-v1hr6q:first-child{display:flex;flex:1;font-size:1.5em;font-weight:700;justify-content:center;align-items:flex-start}.color-editor.svelte-v1hr6q>div.svelte-v1hr6q{display:flex;flex-direction:column;gap:10px;align-items:center;justify-content:end}.color-input-group.svelte-v1hr6q.svelte-v1hr6q{display:flex;gap:8px;align-items:center;margin-bottom:8px}.color-input-group.svelte-v1hr6q button.svelte-v1hr6q{text-align:center;width:100px}.color-input-group.svelte-v1hr6q .hex-input.svelte-v1hr6q{width:100px;text-align:center}.callouts-list.svelte-g7r7hh.svelte-g7r7hh{border:2px solid var(--b3-border-color);border-radius:10px;padding:10px}.callouts-list.svelte-g7r7hh .callout-list-item.svelte-g7r7hh{display:flex;align-items:center;margin-bottom:10px;padding:5px}.callouts-list.svelte-g7r7hh .callout-list-item .callout-item-action.svelte-g7r7hh{height:40px} 54#helloPanel{border:1px rgb(189,119,119) dashed}.plugin-note-to-website__custom-tab{background-color:var(--b3-theme-background);height:100%;width:100%;display:flex;justify-content:center;align-items:center}.plugin-note-to-website__custom-dock{display:flex;justify-content:center;align-items:center}.plugin-note-to-website__time{background:var(--b3-card-info-background);border-radius:4px;padding:2px 8px} 55 56 57.protyle-wysiwyg .bq[custom-b]::after, 58.protyle-wysiwyg .bq[custom-callout]::after { 59 font-family: 'Twitter Emoji', 'Noto Color Emoji', 'OpenMoji', sans-serif !important; 60} 61.protyle-wysiwyg div[data-node-id].bq[custom-b="info"]::after { 62 content: "â¹" !important; 63} 64 65html[data-theme-mode="light"] .protyle-wysiwyg [data-node-id].bq[custom-b="info"] { 66 background-color: rgba(221, 235, 241, .5) !important; 67 box-shadow: 0 0 0 2px rgba(221, 235, 241, 1) inset; 68} 69 70html[data-theme-mode="dark"] .protyle-wysiwyg [data-node-id].bq[custom-b="info"] { 71 background-color: rgba(54, 73, 84, .3) !important; 72 box-shadow: 0 0 0 2px rgba(54, 73, 84, 1) inset; 73} 74 75.protyle-wysiwyg div[data-node-id].bq[custom-b="light"]::after { 76 content: "ð¡" !important; 77} 78 79html[data-theme-mode="light"] .protyle-wysiwyg [data-node-id].bq[custom-b="light"] { 80 background-color: rgba(250, 235, 221, .5) !important; 81 box-shadow: 0 0 0 2px rgba(250, 235, 221, 1) inset; 82} 83 84html[data-theme-mode="dark"] .protyle-wysiwyg [data-node-id].bq[custom-b="light"] { 85 background-color: rgba(89, 79, 59, .3) !important; 86 box-shadow: 0 0 0 2px rgba(89, 79, 59, 1) inset; 87} 88 89.protyle-wysiwyg div[data-node-id].bq[custom-b="bell"]::after { 90 content: "ð" !important; 91} 92 93html[data-theme-mode="light"] .protyle-wysiwyg [data-node-id].bq[custom-b="bell"] { 94 background-color: rgba(246, 225, 205, .5) !important; 95 box-shadow: 0 0 0 2px rgba(246, 225, 205, 1) inset; 96} 97 98html[data-theme-mode="dark"] .protyle-wysiwyg [data-node-id].bq[custom-b="bell"] { 99 background-color: rgba(89, 74, 58, .3) !important; 100 box-shadow: 0 0 0 2px rgba(89, 74, 58, 1) inset; 101} 102 103.protyle-wysiwyg div[data-node-id].bq[custom-b="check"]::after { 104 content: "â " !important; 105} 106 107html[data-theme-mode="light"] .protyle-wysiwyg [data-node-id].bq[custom-b="check"] { 108 background-color: rgba(221, 237, 226, .5) !important; 109 box-shadow: 0 0 0 2px rgba(221, 237, 226, 1) inset; 110} 111 112html[data-theme-mode="dark"] .protyle-wysiwyg [data-node-id].bq[custom-b="check"] { 113 background-color: rgba(53, 76, 75, .3) !important; 114 box-shadow: 0 0 0 2px rgba(53, 76, 75, 1) inset; 115} 116 117.protyle-wysiwyg div[data-node-id].bq[custom-b="question"]::after { 118 content: "â" !important; 119} 120 121html[data-theme-mode="light"] .protyle-wysiwyg [data-node-id].bq[custom-b="question"] { 122 background-color: rgba(244, 223, 235, .5) !important; 123 box-shadow: 0 0 0 2px rgba(244, 223, 235, 1) inset; 124} 125 126html[data-theme-mode="dark"] .protyle-wysiwyg [data-node-id].bq[custom-b="question"] { 127 background-color: rgba(83, 59, 76, .3) !important; 128 box-shadow: 0 0 0 2px rgba(83, 59, 76, 1) inset; 129} 130 131.protyle-wysiwyg div[data-node-id].bq[custom-b="warn"]::after { 132 content: "â¢" !important; 133} 134 135html[data-theme-mode="light"] .protyle-wysiwyg [data-node-id].bq[custom-b="warn"] { 136 background-color: rgba(251, 243, 219, .5) !important; 137 box-shadow: 0 0 0 2px rgba(251, 243, 219, 1) inset; 138} 139 140html[data-theme-mode="dark"] .protyle-wysiwyg [data-node-id].bq[custom-b="warn"] { 141 background-color: rgba(89, 86, 59, .3) !important; 142 box-shadow: 0 0 0 2px rgba(89, 86, 59, 1) inset; 143} 144 145.protyle-wysiwyg div[data-node-id].bq[custom-b="wrong"]::after { 146 content: "â" !important; 147} 148 149html[data-theme-mode="light"] .protyle-wysiwyg [data-node-id].bq[custom-b="wrong"] { 150 background-color: rgba(251, 228, 228, .5) !important; 151 box-shadow: 0 0 0 2px rgba(251, 228, 228, 1) inset; 152} 153 154html[data-theme-mode="dark"] .protyle-wysiwyg [data-node-id].bq[custom-b="wrong"] { 155 background-color: rgba(89, 65, 65, .3) !important;
156 box-shadow: 0 0 0 2px rgba(89, 65, 65, 1) inset; 157} 158 159.protyle-wysiwyg div[data-node-id].bq[custom-b="error"]::after { 160 content: "ð«" !important; 161} 162 163html[data-theme-mode="light"] .protyle-wysiwyg [data-node-id].bq[custom-b="error"] { 164 background-color: rgba(251, 228, 228, .5) !important; 165 box-shadow: 0 0 0 2px rgba(251, 228, 228, 1) inset; 166} 167 168html[data-theme-mode="dark"] .protyle-wysiwyg [data-node-id].bq[custom-b="error"] { 169 background-color: rgba(89, 65, 65, .3) !important; 170 box-shadow: 0 0 0 2px rgba(89, 65, 65, 1) inset; 171} 172 173.protyle-wysiwyg div[data-node-id].bq[custom-b="bug"]::after { 174 content: "ð" !important; 175} 176 177html[data-theme-mode="light"] .protyle-wysiwyg [data-node-id].bq[custom-b="bug"] { 178 background-color: rgba(234, 228, 242, .5) !important; 179 box-shadow: 0 0 0 2px rgba(234, 228, 242, 1) inset; 180} 181 182html[data-theme-mode="dark"] .protyle-wysiwyg [data-node-id].bq[custom-b="bug"] { 183 background-color: rgba(68, 63, 87, .3) !important; 184 box-shadow: 0 0 0 2px rgba(68, 63, 87, 1) inset; 185} 186 187.protyle-wysiwyg div[data-node-id].bq[custom-b="note"]::after { 188 content: "ð" !important; 189} 190 191html[data-theme-mode="light"] .protyle-wysiwyg [data-node-id].bq[custom-b="note"] { 192 background-color: rgba(198, 203, 208, .5) !important; 193 box-shadow: 0 0 0 2px rgba(198, 203, 208, 1) inset; 194} 195 196html[data-theme-mode="dark"] .protyle-wysiwyg [data-node-id].bq[custom-b="note"] { 197 background-color: rgba(35, 38, 40, .3) !important; 198 box-shadow: 0 0 0 2px rgba(35, 38, 40, 1) inset; 199} 200 201.protyle-wysiwyg div[data-node-id].bq[custom-b="pen"]::after { 202 content: "ð" !important; 203} 204 205html[data-theme-mode="light"] .protyle-wysiwyg [data-node-id].bq[custom-b="pen"] { 206 background-color: rgba(235, 236, 237, .5) !important; 207 box-shadow: 0 0 0 2px rgba(235, 236, 237, 1) inset; 208} 209 210html[data-theme-mode="dark"] .protyle-wysiwyg [data-node-id].bq[custom-b="pen"] { 211 background-color: rgba(69, 75, 78, .3) !important; 212 box-shadow: 0 0 0 2px rgba(69, 75, 78, 1) inset; 213} 214 215 :root { 216 --callout-default-icon-top: var(--callout-small-icon-top); 217 --callout-default-icon-left: var(--callout-small-icon-left); 218 --callout-default-icon-font-size: var(--callout-small-icon-font-size); 219 --callout-default-fc-font-size: var(--callout-small-fc-font-size); 220 --callout-default-fc-padding: var(--callout-small-fc-padding); 221 --callout-default-fc-font-weight: var(--callout-small-fc-font-weight); 222 223 } 224 225 </style> 226</head> 227<body> 228<div class="protyle-wysiwyg protyle-wysiwyg--attr" 229style="max-width: 1000px;margin: 0 auto;" 230id="preview"><div data-subtype="h1" data-node-id="20250418102211-vx0y7la" data-type="NodeHeading" class="h1" custom-sy-readonly="true" id="20250418102211-vx0y7la" title="DSM 7 å æ ¸æ¨¡åç¼è¯ç¯å¢é¨ç½² &amp; 驱å¨ç¼è¯å®ä¾" updated="20250421103753"><div contenteditable="false" spellcheck="false">DSM 7 å æ ¸æ¨¡åç¼è¯ç¯å¢é¨ç½² & 驱å¨ç¼è¯å®ä¾</div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250418141640-s97naca" data-type="NodeParagraph" class="p" id="20250418141640-s97naca" style="color: var(--b3-card-warning-color);background-color: var(--b3-card-warning-background);" updated="20250419025417"><div contenteditable="false" spellcheck="false"><span data-type="strong">æ´æ°æ¶é´ï¼2025.4.19</span></div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419010447-buyhuiv" data-type="NodeParagraph" class="p" style="color: var(--b3-card-success-color);background-color: var(--b3-card-success-background);" updated="20250421101606" id="20250419010447-buyhuiv"><div contenteditable="false" spellcheck="false"><span data-type="strong">æ¬æç« ä½¿ç¨æ¬æºdockeré¨ç½²debianæ¥æå»ºå æ ¸æ¨¡åï¼å¨é»è£SA6400/923+/918+/䏿µè¯æåï¼ç论ä¸ä¹éç¨ç½è£åç§x86åå·</span> 231åèèµæï¼<a href="https://gist.github.com/dlareau/726df299369ec6f91c920c0be6f6c98a">Installing the Coral dual edge TPU drivers on synology</a> 232ç¼è¾&æ´ç&æµè¯ï¼éå£ç½gebi1.com/<a href="https://gebi1.com/space-uid-357082.html">gasment</a></div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419010646-fnshr8u" data-type="NodeParagraph" class="p" updated="20250419025423" id="20250419010646-fnshr8u" style="color: var(--b3-card-info-color);background-color: var(--b3-card-info-background);"><div contenteditable="false" spellcheck="false"><span data-type="strong">é¨ç½²åéè¦ç¡®è®¤ä¸äºä¿¡æ¯ï¼ 2331.ä½ ç群æDSMçæ¬ï¼å¯ä»¥å¨æ§å¶é¢æ¿ä¸æ¥å¾ï¼å¦7.2-72806 2342.ä½ ç群ælinuxå æ ¸çæ¬ï¼å¨sshä¸ä½¿ç¨</span><span data-type="code strong">uname -r</span>â<span data-type="strong">æ¥å¾ï¼å½å常è§çæ¬æ5.10.55+å4.4.302+ 2353.ä½ ç群æå¹³å°ä»£å·ï¼å¯ä»¥å¨å®æ¹ç³»ç»å </span><a href="https://archive.synology.cn/download/Os/DSM/7.2.2-72806-3">ðä¸è½½é¡µ</a><span data-type="strong">æ¥å¾ï¼æctrl+fæç´¢åå·ï¼å¦918ï¼å¾synology_apollolake_918+.patï¼é£ä¹å¹³å°ä»£å·ä¸ºapollolakeï¼923+为synology_r1000_923+.patï¼åå¹³å°ä¸ºr1000ï¼
235妿¤ç±»æ¨</span></div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250418141641-24jiqe6" data-type="NodeThematicBreak" class="hr" id="20250418141641-24jiqe6" updated="20250418141641"><div></div></div><div data-subtype="h3" data-node-id="20250419012327-ou5o0a8" data-type="NodeHeading" class="h3" updated="20250421103753" id="20250419012327-ou5o0a8"><div contenteditable="false" spellcheck="false">ç¼è¯è¿ç¨åä¸ºå·¥å ·é¾toolchainçç¼è¯ï¼åå ·ä½ç驱å¨ç¼è¯</div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="h4" data-node-id="20250419012233-niirhpv" data-type="NodeHeading" class="h4" id="20250419012233-niirhpv" updated="20250421103753"><div contenteditable="false" spellcheck="false">ä¸ãç¼è¯å·¥å ·é¾toolchain</div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419011914-me5hoyn" data-type="NodeList" class="list" id="20250419011914-me5hoyn" updated="20250419210053"><div data-marker="1." data-subtype="o" data-node-id="20250419011924-3ph7emf" data-type="NodeListItem" class="li" id="20250419011924-3ph7emf" updated="20250419210053"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">1.</div><div data-node-id="20250419011924-0g0ggiq" data-type="NodeParagraph" class="p" id="20250419011924-0g0ggiq" updated="20250419210053"><div contenteditable="false" spellcheck="false">é¨ç½²docker容å¨ï¼æ°å¢ä¸ä¸ªé¡¹ç®ï¼ä½¿ç¨composeé ç½®ï¼éä¸ä¸ªç®å½ä½ä¸ºæ°æ®ç®å½ï¼æè¿é为/volume1/docker/debian11-builder/dataï¼æ å°ä¸ºå®¹å¨å /mnt/dsm_shareï¼å¾ä¸å½ä»¤é½ä»¥æ¤è·¯å¾ä¸ºä¾ï¼å»ºè®®ç §æ</div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419011959-hg6bdh5" data-type="NodeCodeBlock" class="code-block" updated="20250419015558" id="20250419011959-hg6bdh5"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">yaml</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">version: '3.8' 236services: 237 debian11-builder: 238 image: debian:11 239 container_name: debian11-builder 240 stdin_open: true 241 tty: true 242 command: /bin/bash 243 volumes: 244 - /volume1/docker/debian11-builder/data:/mnt/dsm_share 245</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419012219-azmr2jm" data-type="NodeList" class="list" id="20250419012219-azmr2jm" updated="20250419012613"><div data-marker="2." data-subtype="o" data-node-id="20250419012508-nq2eh9x" data-type="NodeListItem" class="li" updated="20250419012613" id="20250419012508-nq2eh9x"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">2.</div><div data-node-id="20250419012508-6ro2uml" data-type="NodeParagraph" class="p" id="20250419012508-6ro2uml" updated="20250419012613"><div contenteditable="false" spellcheck="false">å¯å¨å®¹å¨ï¼è¿å ¥å®¹å¨ï¼å¾ä¸sshå½ä»¤å¦æ 声æï¼åå ¨é¨ä¸ºrootç¨æ·ï¼ï¼<span data-type="code">docker exec -it debian11-builder /bin/bash</span>â</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419012626-s32g81s" data-type="NodeList" class="list" id="20250419012626-s32g81s" updated="20250419013600"><div data-marker="3." data-subtype="o" data-node-id="20250419012629-x3ihpeu" data-type="NodeListItem" class="li" id="20250419012629-x3ihpeu" updated="20250419012629"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">3.</div><div data-node-id="20250419012629-k8cj4pf" data-type="NodeParagraph" class="p" id="20250419012629-k8cj4pf" updated="20250419012658"><div contenteditable="false" spellcheck="false">å®è£ ä¸äºåºç¡å·¥å ·ï¼<span data-type="code">apt update && apt install nano curl xz-utils -y</span>â</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="4." data-subtype="o" data-node-id="20250419012706-s7j40ki" data-type="NodeListItem" class="li" id="20250419012706-s7j40ki" updated="20250419012706"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">4.</div><div data-node-id="20250419012706-xm5m4cw" data-type="NodeParagraph" class="p" id="20250419012706-xm5m4cw" updated="20250419012746"><div contenteditable="false" spellcheck="false">è¿å ¥æè½½çæ°æ®ç®å½ï¼<span data-type="code">cd /mnt/dsm_share/</span>â</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="5." data-subtype="o" data-node-id="20250419012747-aa6p599" data-type="NodeListItem" class="li" id="20250419012747-aa6p599" updated="20250419013600"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">5.</div><div data-node-id="20250419012747-kqdyhf3" data-type="NodeParagraph" class="p" updated="20250419012838" id="20250419012747-kqdyhf3"><div contenteditable="false" spellcheck="false">ä¸è½½å¯¹åºçæ¬ãå æ ¸ãå¹³å°çtoolchainæºç ï¼</div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419012839-cy2yo8s" data-type="NodeList" class="list" id="20250419012839-cy2yo8s" updated="20250419013600"><div data-marker="1." data-subtype="o" data-node-id="20250419012907-3y6eodm" data-type="NodeListItem" class="li" id="20250419012907-3y6eodm" updated="20250419012907"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">1.</div><div data-node-id="20250419012907-hwycfrg" data-type="NodeParagraph" class="p" id="20250419012907-hwycfrg" updated="20250419013209"><div contenteditable="false" spellcheck="false">宿¹ä¸è½½é¡µé¢ï¼<a href="https://archive.synology.cn/download/ToolChain/Synology%20NAS%20GPL%20Source">Synology Archive Download Site - Index of /download/ToolChain/Synology NAS GPL Source</a></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="2." data-subtype="o" data-node-id="20250419012952-m0362id" data-type="NodeListItem" class="li" id="20250419012952-m0362id" updated="20250419012952"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">2.</div><div data-node-id="20250419012952-lnrjq7c" data-type="NodeParagraph" class="p" id="20250419012952-lnrjq7c" updated="20250419013332"><div contenteditable="false" spellcheck="false">æ ¹æ®DSMçæ¬è¿å ¥å¯¹åºç®å½ï¼æctrl+fæç´¢<span data-type="code">linux-</span>âï¼æ ¹æ®å¹³å°ä»£å·éæ©å¯¹åºå æ ¸çæ¬ç<span data-type="code">linux-x.x.x.txz</span>â</div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419013334-0zs68m3" data-type="NodeParagraph" class="p" id="20250419013334-0zs68m3" updated="20250419013428"><div contenteditable="false" spellcheck="false">
245æ¯å¦SA6400为ï¼<a href="https://global.synologydownload.com/download/ToolChain/Synology%20NAS%20GPL%20Source/7.2-72806/epyc7002/linux-5.10.x.txz">linux-5.10.x.txz</a> ï¼ 918+为<a href="https://global.synologydownload.com/download/ToolChain/Synology%20NAS%20GPL%20Source/7.2-72806/apollolake/linux-4.4.x.txz">linux-4.4.x.txz</a></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="3." data-subtype="o" data-node-id="20250419013448-xxdb2u5" data-type="NodeListItem" class="li" id="20250419013448-xxdb2u5" updated="20250419013600"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">3.</div><div data-node-id="20250419013448-kg3ob4w" data-type="NodeParagraph" class="p" updated="20250419013600" id="20250419013448-kg3ob4w"><div contenteditable="false" spellcheck="false">å¤å¶ä¸è½½é¾æ¥ï¼æ§è¡<span data-type="code">curl -O ä¸è½½å°å </span>âè¿è¡ä¸è½½ï¼å¦ï¼<span data-type="code">curl -O https://global.synologydownload.com/download/ToolChain/Synology%20NAS%20GPL%20Source/7.2-72806/r1000/linux-4.4.x.txz</span>â</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419013320-y6z0yqp" data-type="NodeList" class="list" id="20250419013320-y6z0yqp" updated="20250419015552"><div data-marker="6." data-subtype="o" data-node-id="20250419013621-vq4kimh" data-type="NodeListItem" class="li" id="20250419013621-vq4kimh" updated="20250419015552"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">6.</div><div data-node-id="20250419013621-nc20uqc" data-type="NodeParagraph" class="p" id="20250419013621-nc20uqc" updated="20250419014634"><div contenteditable="false" spellcheck="false">è§£åå¹¶éå½åtoolchainæä»¶å¤¹(<span data-type="mark">è¿éçx.x.xçæ¬å·å<platform>æ¢æèªå·±ç</span>)ï¼</div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419013710-uxcsd88" data-type="NodeCodeBlock" class="code-block" updated="20250419015552" id="20250419013710-uxcsd88"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">tar -xvf linux-x.x.x.txz 246mv linux-x.x.x linux-x.x.x-syno-<platform> #<platform>æ¢æèªå·±çå¹³å°ä»£å·ï¼å¦linux-4.4.x-syno-apollolake 247</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419013755-ncnwxzc" data-type="NodeList" class="list" id="20250419013755-ncnwxzc" updated="20250421103753"><div data-marker="7." data-subtype="o" data-node-id="20250419013959-4pjxqsu" data-type="NodeListItem" class="li" id="20250419013959-4pjxqsu" updated="20250419024205"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">7.</div><div data-node-id="20250419013959-o25adrj" data-type="NodeParagraph" class="p" id="20250419013959-o25adrj" updated="20250419014730"><div contenteditable="false" spellcheck="false">ç¼è¾ç¼è¯é项(注æä¿®æ¹çæ¬å·å<platform>)</div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419014013-y34lkhm" data-type="NodeList" class="list" id="20250419014013-y34lkhm" updated="20250419024205"><div data-marker="1." data-subtype="o" data-node-id="20250419014023-03hyrle" data-type="NodeListItem" class="li" id="20250419014023-03hyrle" updated="20250419014023"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">1.</div><div data-node-id="20250419014023-c0k84hy" data-type="NodeParagraph" class="p" id="20250419014023-c0k84hy" updated="20250419014319"><div contenteditable="false" spellcheck="false">æ·è´é ç½®æä»¶ï¼</div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419014324-uyphc9y" data-type="NodeList" class="list" id="20250419014324-uyphc9y" updated="20250419014334"><div data-marker="1." data-subtype="o" data-node-id="20250419014334-uxet3ej" data-type="NodeListItem" class="li" id="20250419014334-uxet3ej" updated="20250419014334"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">1.</div><div data-node-id="20250419014334-tu1qqnl" data-type="NodeParagraph" class="p" id="20250419014334-tu1qqnl" updated="20250419014358"><div contenteditable="false" spellcheck="false">4.4.xçæ¬ä¸ºï¼<span data-type="code">cp linux-4.4.x-syno-<platform>/synoconfigs/<platform> linux-4.4.x-syno-<platform>/.config</span>â</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="2." data-subtype="o" data-node-id="20250419014401-na3qukj" data-type="NodeListItem" class="li" id="20250419014401-na3qukj" updated="20250419014401"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">2.</div><div data-node-id="20250419014401-7iqp6qf" data-type="NodeParagraph" class="p" id="20250419014401-7iqp6qf" updated="20250419014456"><div contenteditable="false" spellcheck="false">5.10.xçæ¬ä¸ºï¼<span data-type="code">cp linux-5.10.x-syno-<platform>/synology/synoconfigs/<platform> linux-5.10.x-syno-<platform>/.config</span>â</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="2." data-subtype="o" data-node-id="20250419014535-c3zl1zb" data-type="NodeListItem" class="li" id="20250419014535-c3zl1zb" updated="20250419024205"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">2.</div><div data-node-id="20250419014535-watwai9" data-type="NodeParagraph" class="p" id="20250419014535-watwai9" updated="20250419024205"><div contenteditable="false" spellcheck="false">
247ä¿®æ¹makefileï¼<span data-type="code">nano linux-x.x.x-syno-<platform>/Makefile</span>âï¼å°ç¬¬4è¡ç<span data-type="code">EXTRAVERSION =</span>âä¿®æ¹ä¸º<span data-type="code">EXTRAVERSION = +</span>â<span data-type="mark">ï¼nanoä¿åæ¹æ³ä¸ºctrl+xåæy,ç¶åå车ï¼</span></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="3." data-subtype="o" data-node-id="20250419014707-q12i98k" data-type="NodeListItem" class="li" id="20250419014707-q12i98k" updated="20250419014707"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">3.</div><div data-node-id="20250419014707-2p3zkfx" data-type="NodeParagraph" class="p" id="20250419014707-2p3zkfx" updated="20250419014754"><div contenteditable="false" spellcheck="false">å®è£ ä¸äºä¾èµå·¥å ·ï¼<span data-type="code">apt update && apt install make bc libncurses-dev flex bison libelf-dev python3 gcc -y</span>â</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="8." data-subtype="o" data-node-id="20250419014849-i47mgsr" data-type="NodeListItem" class="li" id="20250419014849-i47mgsr" updated="20250421103753"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">8.</div><div data-node-id="20250419014849-044xn3g" data-type="NodeParagraph" class="p" updated="20250419014904" id="20250419014849-044xn3g"><div contenteditable="false" spellcheck="false">å¼å§ç¼è¯toolchain</div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419015415-jh4i3ij" data-type="NodeList" class="list" id="20250419015415-jh4i3ij" updated="20250421103753"><div data-marker="1." data-subtype="o" data-node-id="20250419014922-ynt4a2e" data-type="NodeListItem" class="li" id="20250419014922-ynt4a2e" updated="20250419015548"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">1.</div><div data-node-id="20250419014922-lqo5g5g" data-type="NodeCodeBlock" class="code-block" id="20250419014922-lqo5g5g" updated="20250419015548"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">cd linux-x.x.x-syno-<platform>/ 248make menuconfig 249</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="2." data-subtype="o" data-node-id="20250419015023-8d4e6j8" data-type="NodeListItem" class="li" id="20250419015023-8d4e6j8" updated="20250421103753"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">2.</div><div data-node-id="20250419015023-hlwhnlg" data-type="NodeParagraph" class="p" id="20250419015023-hlwhnlg" updated="20250421103753"><div contenteditable="false" spellcheck="false">ä¼åºç°ç°èè²çé¢ï¼ætab忢å°ä¸æ¹çsaveåæå车ä¿åï¼ç¶åexit</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="3." data-subtype="o" data-node-id="20250419015135-yq1px8e" data-type="NodeListItem" class="li" id="20250419015135-yq1px8e" updated="20250419015135"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">3.</div><div data-node-id="20250419015135-8dtca9z" data-type="NodeParagraph" class="p" id="20250419015135-8dtca9z" updated="20250419015202"><div contenteditable="false" spellcheck="false">ç¼è¯ï¼<span data-type="code">make modules</span>âï¼ç¼è¯è¿ç¨ä¼æç»æ°ååéï¼ç»æåçå°è¾åºå¾å¤koæä»¶ä»£è¡¨æåäº</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="9." data-subtype="o" data-node-id="20250419015250-uya84fy" data-type="NodeListItem" class="li" id="20250419015250-uya84fy" updated="20250419015629"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">9.</div><div data-node-id="20250419015250-2lsbsfm" data-type="NodeParagraph" class="p" id="20250419015250-2lsbsfm" updated="20250419015456"><div contenteditable="false" spellcheck="false">å°ç¼è¯å¥½çtoolchainè¿æ¥å°ç³»ç»å æ ¸æºç ç®å½</div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419015437-sukenx0" data-type="NodeCodeBlock" class="code-block" updated="20250419015629" id="20250419015437-sukenx0"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">mkdir -p /lib/modules/$(uname -r) 250ln -s /mnt/dsm_share/linux-x.x.x-syno-<platform>/ /lib/modules/$(uname -r)/build 251ls -l /lib/modules/$(uname -r)/build/ 252##è¾åºå 容å å«synologyåç¼æä»¶ä»£è¡¨è¿æ¥æå 253</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419014241-zm76kqt" data-type="NodeList" class="list" id="20250419014241-zm76kqt" updated="20250419020146"><div data-marker="10." data-subtype="o" data-node-id="20250419015657-18qt3d4" data-type="NodeListItem" class="li" id="20250419015657-18qt3d4" updated="20250419020146"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">10.</div><div data-node-id="20250419015657-m1waohl" data-type="NodeParagraph" class="p" id="20250419015657-m1waohl" updated="20250419015741"><div contenteditable="false" spellcheck="false">å°é 置好çdebian11容å¨å¯¼åºä¸ºæ°éåï¼æ¹ä¾¿ä»¥å使ç¨</div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419015952-dh6m9qs" data-type="NodeList" class="list" updated="20250419020146" id="20250419015952-dh6m9qs"><div data-marker="1." data-subtype="o" data-node-id="20250419015954-teze5cs" data-type="NodeListItem" class="li" id="20250419015954-teze5cs" updated="20250419015954"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">1.</div><div data-node-id="20250419015954-c49tz6a" data-type="NodeCodeBlock" class="code-block" id="20250419015954-c49tz6a" updated="20250419020000"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">exit #éåºå®¹å¨ 254docker commit debian11-builder debian11-builder-923:20250418 #åå·å为æ°éååç§°ï¼ä¸è¦å¸¦å¤§ååç¹æ®ç¬¦å·ï¼åå·åä¸ºçæ¬ï¼å¯ä»¥ç¨æ¥æè¡¨ç¤º 255</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="2." data-subtype="o" data-node-id="20250419020004-4n799yu" data-type="NodeListItem" class="li" updated="20250419020004" id="20250419020004-4n799yu"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">2.</div><div data-node-id="20250419020004-y9tap9e" data-type="NodeParagraph" class="p" id="20250419020004-y9tap9e" updated="20250419020101"><div contenteditable="false" spellcheck="false">忢debian11-builder项ç®ï¼å ædebian11-builderç容å¨ï¼ç¼è¾debian11-builder项ç®çyamlï¼å°imageæ¹ä¸ºåæcommitçæ°éååç§°å¦<span data-type="code">debian11-builder-923:20250418</span>
255âï¼éæ°æå»ºå®¹å¨</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="3." data-subtype="o" data-node-id="20250419020104-nbz5iku" data-type="NodeListItem" class="li" id="20250419020104-nbz5iku" updated="20250419020146"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">3.</div><div data-node-id="20250419020104-ij7o60k" data-type="NodeParagraph" class="p" id="20250419020104-ij7o60k" updated="20250419020130"><div contenteditable="false" spellcheck="false">å¯å¨å®¹å¨ï¼æ£æ¥ä¹åçé ç½®æ¯å¦åå¨ï¼</div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419020132-1k27t84" data-type="NodeCodeBlock" class="code-block" id="20250419020132-1k27t84" updated="20250419020146"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">docker exec -it debian11-builder /bin/bash 256ls -l /lib/modules/$(uname -r)/build/ 257</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="h3" data-node-id="20250419015744-c4yt8dv" data-type="NodeHeading" class="h3" id="20250419015744-c4yt8dv" updated="20250419021324"><div contenteditable="false" spellcheck="false">â ç°å¨å·²å®æå¸¦å·¥å ·é¾ç³»ç»çæå»ºï¼å¦æä»¥åæéè¦ç¼è¯ç模å驱å¨ï¼ç´æ¥ä½¿ç¨è¿ä¸ªå®¹å¨ç¼è¯å³å¯</div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419020422-bs1cqt4" data-type="NodeThematicBreak" class="hr" updated="20250419020422" id="20250419020422-bs1cqt4"><div></div></div><div data-subtype="h4" data-node-id="20250419020329-1r739sq" data-type="NodeHeading" class="h4" id="20250419020329-1r739sq" updated="20250419021324"><div contenteditable="false" spellcheck="false">äºãå°è¯ç¼è¯ä¸äºé©±å¨</div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="u" data-node-id="20250419020446-soemax6" data-type="NodeList" class="list" id="20250419020446-soemax6" updated="20250419024425"><div data-marker="*" data-subtype="u" data-node-id="20250419020450-bkque6g" data-type="NodeListItem" class="li" id="20250419020450-bkque6g" updated="20250419020817"><div class="protyle-action" draggable="true"><svg><use xlink:href="#iconDot"></use></svg></div><div data-node-id="20250419020450-l1rwdy1" data-type="NodeParagraph" class="p" id="20250419020450-l1rwdy1" updated="20250419020817"><div contenteditable="false" spellcheck="false">éè¦è¯´æï¼ç¸æ¯ç¼è¯é©±å¨ï¼ç¼è¯toolchainåèæ¯ç¸è¾ç®åçé£ä¸é¨åï¼æäºé©±å¨æºç å¹¶ä¸åé群æè¿ä¸ªéæ¹å æ ¸ï¼éè¦è¿è¡ä¿®æ¹éé ï¼è¿æ¯ä¸ªå¤´ç¼çäºï¼å¥½å¨ç°å¨æAI帮å©ï¼éå°æ¥éï¼æç»AIæ ¢æ ¢ç£¨ï¼ç¼è¯çæåçè¿ç®æ¯å¯ä»¥ç</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="*" data-subtype="u" data-node-id="20250419021046-k3t64xv" data-type="NodeListItem" class="li" id="20250419021046-k3t64xv" updated="20250419021046"><div class="protyle-action" draggable="true"><svg><use xlink:href="#iconDot"></use></svg></div><div data-node-id="20250419021046-eftw17r" data-type="NodeParagraph" class="p" id="20250419021046-eftw17r" updated="20250419021153"><div contenteditable="false" spellcheck="false">ä¸åå æ ¸çæ¬çç¼è¯æ åµä¸ä¸ï¼åä¸ä¸ªé©±å¨ï¼å¯è½å¨4.4.xä¸ä¸æ¬¡è¿ï¼ä¹è½å¨5.10.xä¸é常æè ¾</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="*" data-subtype="u" data-node-id="20250419021205-dubuk7l" data-type="NodeListItem" class="li" id="20250419021205-dubuk7l" updated="20250419024425"><div class="protyle-action" draggable="true"><svg><use xlink:href="#iconDot"></use></svg></div><div data-node-id="20250419021205-djo8g11" data-type="NodeParagraph" class="p" id="20250419021205-djo8g11" updated="20250419024425"><div contenteditable="false" spellcheck="false">ä¸é¢æ¯ææ¬äººçä¸äºå®ææ¡ä¾ï¼é©±å¨åªæ¯ç¼è¯åºæ¥å¹¶æåå è½½äºï¼ç±äºæ²¡æå¯¹åºè®¾å¤ï¼æ æ³å¤æé©±å¨æ¯å¦è½ä½¿ç¡¬ä»¶æ£å¸¸å·¥ä½ï¼ä¸è¿è½å 载驱å¨ï¼å·²æ¯æåçä¸å¤§æ¥</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="u" data-node-id="20250419021005-3vn8qbc" data-type="NodeList" class="list" id="20250419021005-3vn8qbc" updated="20250419210546"><div data-marker="*" data-subtype="u" data-node-id="20250419021243-gmglk2d" data-type="NodeListItem" class="li" updated="20250419210546" id="20250419021243-gmglk2d"><div class="protyle-action" draggable="true"><svg><use xlink:href="#iconDot"></use></svg></div><div data-node-id="20250419021243-hf4oscd" data-type="NodeParagraph" class="p" id="20250419021243-hf4oscd" updated="20250419022204"><div contenteditable="false" spellcheck="false"><span data-type="strong">ç¼è¯èè¹2.5G PCIEç½å¡ 8125B/BG</span>:</div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="u" data-node-id="20250419021328-xyb7ubr" data-type="NodeList" class="list" id="20250419021328-xyb7ubr" updated="20250419210546"><div data-marker="*" data-subtype="u" data-node-id="20250419021346-amklwvn" data-type="NodeListItem" class="li" id="20250419021346-amklwvn" updated="20250419210546"><div class="protyle-action" draggable="true"><svg><use xlink:href="#iconDot"></use></svg></div><div data-node-id="20250419021346-zgdkj0f" data-type="NodeParagraph" class="p" id="20250419021346-zgdkj0f" updated="20250419023534"><div contenteditable="false" spellcheck="false"><span data-type="strong">4.4.x/5.10.xå æ ¸</span>ï¼</div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419021348-k9rkekg" data-type="NodeList" class="list" id="20250419021348-k9rkekg" updated="20250419210546"><div data-marker="1." data-subtype="o" data-node-id="20250419021403-aea1ha7" data-type="NodeListItem" class="li" id="20250419021403-aea1ha7" updated="20250419021403"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">1.</div><div data-node-id="20250419021403-6y6qwei" data-type="NodeParagraph" class="p" id="20250419021403-6y6qwei" updated="20250419021419"><div contenteditable="false" spellcheck="false">ä¸è½½é©±å¨æºç ï¼<a href="https://www.realtek.com/Download/ToDownload?type=direct&downloadid=3763">2.5G Ethernet LINUX driver r8125 for kernel up to 6.12</a></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="2." data-subtype="o" data-node-id="20250419021431-ekzco5r" data-type="NodeListItem" class="li" id="20250419021431-ekzco5r" updated="20250419021431"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">2.</div><div data-node-id="20250419021431-xdmlgi1" data-type="NodeParagraph" class="p" id="20250419021431-xdmlgi1" updated="20250419021454"><div contenteditable="false" spellcheck="false">è§£å æºç ï¼</div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419021456-jjqn0ho" data-type="NodeCodeBlock" class="code-block" id="20250419021456-jjqn0ho" updated="20250419021703"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">mkdir -p /mnt/dsm_share/module_build 258##ær8125-9.xxx.xx.tar.bz2ä¸ä¼ å°module_buildå ï¼å¯¹åºDSMè·¯å¾ä¸º /volume1/docker/debian11-builder/data/module_build 259cd /mnt/dsm_share/module_build 260apt install bzip2 -y 261tar -xvf r8125-9.xxx.xx.tar.bz2 262cd r8125-9.xxx.xx 263make æ make -C /lib/modules/$(uname -r)/build M=$(pwd) modules 264</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="3." data-subtype="o" data-node-id="20250419021722-pny9opt" data-type="NodeListItem" class="li" id="20250419021722-pny9opt" updated="20250419021911"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">3.</div><div data-node-id="20250419021722-hzyatz3" data-type="NodeParagraph" class="p" updated="20250419021911" id="20250419021722-hzyatz3"><div contenteditable="false" spellcheck="false">è¾åºï¼<span data-type="code">/mnt/dsm_share/module_build/r8125-x.xxx.xx/src/r8125.ko</span>â为æå</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="4." data-subtype="o" data-node-id="20250419021804-ijq7y9f" data-type="NodeListItem" class="li" updated="20250419210546" id="20250419021804-ijq7y9f"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">4.</div><div data-node-id="20250419021804-0yiunf0" data-type="NodeParagraph" class="p" id="20250419021804-0yiunf0" updated="20250419021815"><div contenteditable="false" spellcheck="false">å°è¯å 载驱å¨</div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419021815-7gw4275" data-type="NodeCodeBlock" class="code-block" id="20250419021815-7gw4275" updated="20250419210546"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">exit #éåºå®¹å¨ 265insmod /volume1/docker/debian11-builder/data/module_build/r8125-x.xxx.xx/src/r8125.ko #ç®å½ä»¥èªå·±ä¸ºå 266#妿 æ¥éï¼æ£æ¥å è½½ç¶æåç¡¬ä»¶ç¶æ 267lsmod | grep r8125 268r8125 253952 0 - Live 0xffffffffa136f000 (OE) 269</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="u" data-node-id="20250419021718-snt5wl6" data-type="NodeList" class="list" id="20250419021718-snt5wl6" updated="20250419210950"><div data-marker="*" data-subtype="u" data-node-id="20250419022228-ijjc58b" data-type="NodeListItem" class="li" id="20250419022228-ijjc58b" updated="20250419210717"><div class="protyle-action" draggable="true"><svg><use xlink:href="#iconDot"></use></svg></div><div data-node-id="20250419022228-9luopii" data-type="NodeParagraph" class="p" id="20250419022228-9luopii" updated="20250419210625"><div contenteditable="false" spellcheck="false"><span data-type="strong">ç¼è¯intel 2.5G PCIEç½å¡ i225/i226</span></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="u" data-node-id="20250419022252-7v84f48" data-type="NodeList" class="list" id="20250419022252-7v84f48" updated="20250419210717"><div data-marker="*" data-subtype="u" data-node-id="20250419022300-cgj0go4" data-type="NodeListItem" class="li" id="20250419022300-cgj0go4" updated="20250419210637"><div class="protyle-action" draggable="true"><svg><use xlink:href="#iconDot"></use></svg></div><div data-node-id="20250419022300-o4y4bcv" data-type="NodeParagraph" class="p" id="20250419022300-o4y4bcv" updated="20250419023311"><div contenteditable="false" spellcheck="false"><span data-type="strong">4.4.xå æ ¸ï¼</span></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419022308-1u5c46p" data-type="NodeList" class="list" id="20250419022308-1u5c46p" updated="20250419210637"><div data-marker="1." data-subtype="o" data-node-id="20250419022311-c318r5y" data-type="NodeListItem" class="li" id="20250419022311-c318r5y" updated="20250419022311"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">1.</div><div data-node-id="20250419022311-34ka5rj" data-type="NodeCodeBlock" class="code-block" id="20250419022311-34ka5rj" updated="20250419022537"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">docker exec -it debian11-builder /bin/bash 270mkdir -p /mnt/dsm_share/module_build 271cd /mnt/dsm_share/module_build 272apt update && apt install git -y 273git clone https://github.com/jim3ma/synology-igc.git ####使ç¨jimçä¿®æ¹æºç ï¼éé ä½çæ¬å æ ¸ 274cd synology-igc/ 275make -C /lib/modules/$(uname -r)/build M=$(pwd) modules 276</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="2." data-subtype="o" data-node-id="20250419022545-wa69p8c" data-type="NodeListItem" class="li" id="20250419022545-wa69p8c" updated="20250419022545"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">2.</div><div data-node-id="20250419022545-srntg2p" data-type="NodeParagraph" class="p" id="20250419022545-srntg2p" updated="20250419022605"><div contenteditable="false" spellcheck="false">è¾åºï¼/mnt/dsm_share/module_build/synology-igc/igc.ko æå</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="3." data-subtype="o" data-node-id="20250419022606-qufjba3" data-type="NodeListItem" class="li" id="20250419022606-qufjba3" updated="20250419210637"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">3.</div><div data-node-id="20250419022606-wnwprku" data-type="NodeParagraph" class="p" id="20250419022606-wnwprku" updated="20250419022614"><div contenteditable="false" spellcheck="false">å°è¯å è½½ï¼</div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419022615-69sis3d" data-type="NodeCodeBlock" class="code-block" id="20250419022615-69sis3d" updated="20250419210637"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">exit #éåºå®¹å¨ 277insmod /volume1/docker/debian11-builder/data/module_build/synology-igc/igc.ko #ç®å½ä»¥èªå·±ä¸ºå 278#妿 æ¥éï¼æ£æ¥å è½½ç¶æåç¡¬ä»¶ç¶æ 279lsmod | grep igc 280igc 78592 0 281</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="*" data-subtype="u" data-node-id="20250419022708-khqenpk" data-type="NodeListItem" class="li" id="20250419022708-khqenpk
281" updated="20250419210717"><div class="protyle-action" draggable="true"><svg><use xlink:href="#iconDot"></use></svg></div><div data-node-id="20250419022708-h6pxdap" data-type="NodeParagraph" class="p" id="20250419022708-h6pxdap" updated="20250419023309"><div contenteditable="false" spellcheck="false"><span data-type="strong">5.10.xå æ ¸</span></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419022718-426i3dv" data-type="NodeList" class="list" id="20250419022718-426i3dv" updated="20250419210717"><div data-marker="1." data-subtype="o" data-node-id="20250419022724-293x7rr" data-type="NodeListItem" class="li" id="20250419022724-293x7rr" updated="20250419022724"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">1.</div><div data-node-id="20250419022724-ong0bra" data-type="NodeParagraph" class="p" id="20250419022724-ong0bra" updated="20250419022853"><div contenteditable="false" spellcheck="false">5.10.xå æ ¸èªå¸¦äºigcæºç ï¼åªéè¦å¨toolchainç®å½ç¼è¯å³å¯</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="2." data-subtype="o" data-node-id="20250419022830-ss2mtiw" data-type="NodeListItem" class="li" id="20250419022830-ss2mtiw" updated="20250419022830"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">2.</div><div data-node-id="20250419022830-i50mn4l" data-type="NodeCodeBlock" class="code-block" id="20250419022830-i50mn4l" updated="20250419023115"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">docker exec -it debian11-builder /bin/bash 282cd /mnt/dsm_share/linux-x.x.x-syno-<platform> 283make menuconfig 284##ææ¤èåè·¯å¾éæ©é©±å¨ï¼ãDevice Driversã->ãNetwork device supportã->ãEthernet driver supportã->ãIntel devicesã->ãæç©ºæ ¼éä¸I225LM/I225-Vã 285##tabå°saveåå车ä¿å,ç¶åä¸è·¯exit 286make modules_prepare 287make modules 288</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="3." data-subtype="o" data-node-id="20250419023135-w82asgk" data-type="NodeListItem" class="li" id="20250419023135-w82asgk" updated="20250419023135"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">3.</div><div data-node-id="20250419023135-p8e131w" data-type="NodeParagraph" class="p" id="20250419023135-p8e131w" updated="20250419023153"><div contenteditable="false" spellcheck="false">è¾åºï¼/mnt/dsm_share/linux-x.x.x-syno-<platform>/drivers/net/ethernet/intel/igc/igc.ko</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="4." data-subtype="o" data-node-id="20250419022824-pbkrotu" data-type="NodeListItem" class="li" id="20250419022824-pbkrotu" updated="20250419210717"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">4.</div><div data-node-id="20250419022827-17ehz8t" data-type="NodeParagraph" class="p" id="20250419022827-17ehz8t" updated="20250419023209"><div contenteditable="false" spellcheck="false">å°è¯å è½½</div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419023220-46wxu6o" data-type="NodeCodeBlock" class="code-block" id="20250419023220-46wxu6o" updated="20250419210717"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">exit #éåºå®¹å¨ 289insmod "/volume1/docker/debian11-builder/data/linux-x.x.x-syno-<platform>/drivers/net/ethernet/intel/igc/igc.ko" #ç®å½ä»¥èªå·±ä¸ºå 290#妿 æ¥éï¼æ£æ¥å è½½ç¶æåç¡¬ä»¶ç¶æ 291lsmod | grep igc 292igc 106496 0 - Live 0xffffffffa136f000 (E) 293</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="*" data-subtype="u" data-node-id="20250419023341-48ex2dq" data-type="NodeListItem" class="li" id="20250419023341-48ex2dq" updated="20250419210820"><div class="protyle-action" draggable="true"><svg><use xlink:href="#iconDot"></use></svg></div><div data-node-id="20250419023341-p34i8mj" data-type="NodeParagraph" class="p" id="20250419023341-p34i8mj" updated="20250419023432"><div contenteditable="false" spellcheck="false"><span data-type="strong">ç¼è¯AQC107 10G PCIEç½å¡</span></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="u" data-node-id="20250419023441-hyytlqp" data-type="NodeList" class="list" updated="20250419210820" id="20250419023441-hyytlqp"><div data-marker="*" data-subtype="u" data-node-id="20250419023453-zm39lwy" data-type="NodeListItem" class="li" id="20250419023453-zm39lwy" updated="20250419210820"><div class="protyle-action" draggable="true"><svg><use xlink:href="#iconDot"></use></svg></div><div data-node-id="20250419023453-f5b02lk" data-type="NodeParagraph" class="p" id="20250419023453-f5b02lk" updated="20250419023530"><div contenteditable="false" spellcheck="false"><span data-type="strong">4.4.x/5.10.xå æ ¸</span></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419023538-92p6eky" data-type="NodeList" class="list" id="20250419023538-92p6eky" updated="20250419210820"><div data-marker="1." data-subtype="o" data-node-id="20250419023540-qac4dej" data-type="NodeListItem" class="li" id="20250419023540-qac4dej" updated="20250419023540"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">1.</div><div data-node-id="20250419023540-nramo57" data-type="NodeParagraph" class="p" id="20250419023540-nramo57" updated="20250419023558"><div contenteditable="false" spellcheck="false">å®ç½é©±å¨ä¸è½½é¡µï¼<a href="https://www.marvell.com/support/downloads.html#">Support | Public Driver Downloads | QLogic Fibre Channel HBAs and FastLinQ Ethernet adapters and controllers - Marvell</a></div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419023602-dkmrejf" data-type="NodeCodeBlock" class="code-block" updated="20250419023642" id="20250419023602-dkmrejf"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">æä»¥ä¸é项æç´¢ 294CATEGORYï¼Marvell Public Drivers 295PLATFORM/OSï¼Linux 296PART NUMBERï¼AQC107 297</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="2." data-subtype="o" data-node-id="20250419023651-nul58ya" data-type="NodeListItem" class="li" updated="20250419023651" id="20250419023651-nul58ya"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">2.</div><div data-node-id="20250419023651-sk6nojw" data-type="NodeParagraph" class="p" id="20250419023651-sk6nojw" updated="20250419023719"><div contenteditable="false" spellcheck="false">æå¼å缩å ï¼å°atlantic.tar.gz导åºã</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="3." data-subtype="o" data-node-id="20250419023720-rweg08k" data-type="NodeListItem" class="li" id="20250419023720-rweg08k" updated="20250419023720"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">3.</div><div data-node-id="20250419023720-m5td31i" data-type="NodeCodeBlock" class="code-block" id="20250419023720-m5td31i" updated="20250419023824"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">docker exec -it debian11-builder /bin/bash 298mkdir -p /mnt/dsm_share/module_build 299cd /mnt/dsm_share/module_build 300##å°atlantic.tar.gzä¸ä¼ å°æ¤,对åºDSMè·¯å¾ä¸º /volume1/docker/debian11-builder/data/module_build 301tar -xpzf atlantic.tar.gz 302mv Linux atlantic 303cd atlantic 304</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="4." data-subtype="o" data-node-id="20250419023840-jah5iun" data-type="NodeListItem" class="li" id="20250419023840-jah5iun" updated="20250419023840"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">4.</div><div data-node-id="20250419023840-krkopf9" data-type="NodeParagraph" class="p" id="20250419023840-krkopf9" updated="20250419023940"><div contenteditable="false" spellcheck="false">5.10.xå æ ¸ç´æ¥æ§è¡<span data-type="code">make</span>âç¼è¯ï¼4.4.xå æ ¸éè¦åä¿®æ¹ï¼</div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419023941-dvmwgdv" data-type="NodeCodeBlock" class="code-block" updated="20250419024230" id="20250419023941-dvmwgdv"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">nano aq_compat.h
305###æctrl+wæç´¢ï¼page_ref_count,ä¿®æ¹å¦ä¸4è¡ï¼åç½®//注éï¼ 306//static inline int page_ref_count(struct page *page) 307//{ 308// return atomic_read(&page->_count); 309//} 310ä¿ååæ§è¡ make ç¼è¯ 311</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="5." data-subtype="o" data-node-id="20250419024238-zegrwaa" data-type="NodeListItem" class="li" id="20250419024238-zegrwaa" updated="20250419024238"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">5.</div><div data-node-id="20250419024238-t4o6iir" data-type="NodeParagraph" class="p" id="20250419024238-t4o6iir" updated="20250419024245"><div contenteditable="false" spellcheck="false">è¾åºï¼/mnt/dsm_share/module_build/atlantic/atlantic.ko</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="6." data-subtype="o" data-node-id="20250419024300-hjcwg13" data-type="NodeListItem" class="li" id="20250419024300-hjcwg13" updated="20250419210820"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">6.</div><div data-node-id="20250419024300-uph3alm" data-type="NodeParagraph" class="p" id="20250419024300-uph3alm" updated="20250419024303"><div contenteditable="false" spellcheck="false">å°è¯å è½½</div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419024312-rj6pvg2" data-type="NodeCodeBlock" class="code-block" id="20250419024312-rj6pvg2" updated="20250419210820"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">exit #éåºå®¹å¨ 312insmod "/volume1/docker/debian11-builder/data/module_build/atlantic/atlantic.ko" #ç®å½ä»¥èªå·±ä¸ºå 313#妿 æ¥éï¼æ£æ¥å è½½ç¶æåç¡¬ä»¶ç¶æ 314lsmod | grep atlantic 315atlantic 210612 0 316crc_itu_t 1595 2 udf,atlanti 317</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="*" data-subtype="u" data-node-id="20250419024437-8dbtlnp" data-type="NodeListItem" class="li" id="20250419024437-8dbtlnp" updated="20250419210950"><div class="protyle-action" draggable="true"><svg><use xlink:href="#iconDot"></use></svg></div><div data-node-id="20250419024437-e24umos" data-type="NodeParagraph" class="p" id="20250419024437-e24umos" updated="20250419024516"><div contenteditable="false" spellcheck="false"><span data-type="strong">ç¼è¯Coral Edge TPU AIå 鿍¡åï¼PCIEçï¼</span></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="u" data-node-id="20250419024518-elcgotv" data-type="NodeList" class="list" id="20250419024518-elcgotv" updated="20250419210950"><div data-marker="*" data-subtype="u" data-node-id="20250419024521-fivdzsu" data-type="NodeListItem" class="li" id="20250419024521-fivdzsu" updated="20250419210854"><div class="protyle-action" draggable="true"><svg><use xlink:href="#iconDot"></use></svg></div><div data-node-id="20250419024521-00m7q70" data-type="NodeParagraph" class="p" id="20250419024521-00m7q70" updated="20250419024544"><div contenteditable="false" spellcheck="false"><span data-type="strong">4.4.xå æ ¸ï¼</span></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419024548-xs8ny4n" data-type="NodeList" class="list" updated="20250419210854" id="20250419024548-xs8ny4n"><div data-marker="1." data-subtype="o" data-node-id="20250419024553-a7w848l" data-type="NodeListItem" class="li" updated="20250419210854" id="20250419024553-a7w848l"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">1.</div><div data-node-id="20250419024553-0rwo9t9" data-type="NodeCodeBlock" class="code-block" id="20250419024553-0rwo9t9" updated="20250419210854"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">docker exec -it debian11-builder /bin/bash 318mkdir -p /mnt/dsm_share/module_build 319cd /mnt/dsm_share/module_build 320apt update && apt install git -y 321git clone https://github.com/google/gasket-driver.git 322cd gasket-driver/src/ 323###ä¸è½ç´æ¥ç¼è¯ï¼éè¦ä¿®æ¹ 324nano gasket_page_table.c 325å¨é¡¶é¨ä¸å #includeéè¿æ¥æ¾MODULE_IMPORT_NS(DMA_BUF);,ä¿®æ¹ä¸º//MODULE_IMPORT_NS(DMA_BUF); 326ä¿ååæ§è¡ make 327</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="*" data-subtype="u" data-node-id="20250419024744-ddjsgel" data-type="NodeListItem" class="li" id="20250419024744-ddjsgel" updated="20250419210950"><div class="protyle-action" draggable="true"><svg><use xlink:href="#iconDot"></use></svg></div><div data-node-id="20250419024744-6973dcv" data-type="NodeParagraph" class="p" updated="20250419024758" id="20250419024744-6973dcv"><div contenteditable="false" spellcheck="false"><span data-type="strong">5.10.xå æ ¸ï¼</span></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="o" data-node-id="20250419024803-qq6r9yd" data-type="NodeList" class="list" id="20250419024803-qq6r9yd" updated="20250419210950"><div data-marker="1." data-subtype="o" data-node-id="20250419024807-wr80bh0" data-type="NodeListItem" class="li" id="20250419024807-wr80bh0" updated="20250419024823"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">1.</div><div data-node-id="20250419024816-utq0tv2" data-type="NodeParagraph" class="p" id="20250419024816-utq0tv2" updated="20250419024823"><div contenteditable="false" spellcheck="false">å æ ¸é带çgasketæºç ç¼è¯åºæ¥æ æ³å è½½ï¼éè¦ä¿®æ¹ï¼ä¿®æ¹å¥½çæºç ï¼ð¦<a href="assets/gasket-driver-mod.tar-20250418233640-3frwxbc.gz">gasket-driver-mod.tar.gz</a></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="2." data-subtype="o" data-node-id="20250419024841-16kuv0s" data-type="NodeListItem" class="li" id="20250419024841-16kuv0s" updated="20250419024841"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">2.</div><div data-node-id="20250419024841-0pbpdq6" data-type="NodeCodeBlock" class="code-block" id="20250419024841-0pbpdq6" updated="20250419024944"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">docker exec -it debian11-builder /bin/bash 328cd /mnt/dsm_share/module_build 329##å°gasket-driver-mod.tar.gzä¸ä¼ å°æ¤ï¼,对åºDSMè·¯å¾ä¸º /volume1/docker/debian11-builder/data/module_build 330tar -xpzf gasket-driver-mod.tar.gz 331cd gasket-driver-mod/src/ 332make 333</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="3." data-subtype="o" data-node-id="20250419025020-aza4w0d" data-type="NodeListItem" class="li" updated="20250419025020" id="20250419025020-aza4w0d"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">3.</div><div data-node-id="20250419025020-4p6f4jw" data-type="NodeParagraph" class="p" id="20250419025020-4p6f4jw" updated="20250419025042"><div contenteditable="false" spellcheck="false">è¾åºï¼/mnt/dsm_share/module_build/gasket-driver/src/apex.ko å /mnt/dsm_share/module_build/gasket-driver/src/gasket.ko</div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-marker="4." data-subtype="o" data-node-id="20250419025049-mvhc7ev" data-type="NodeListItem" class="li" id="20250419025049-mvhc7ev" updated="20250419210950"><div class="protyle-action protyle-action--order" contenteditable="false" draggable="true">4.</div><div data-node-id="20250419025049-z7uehrb" data-type="NodeParagraph" class="p" id="20250419025049-z7uehrb" updated="20250419025055"><div contenteditable="false" spellcheck="false">å°è¯å è½½ï¼</div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419025056-y5wjep7" data-type="NodeCodeBlock" class="code-block" id="20250419025056-y5wjep7" updated="20250419210950"><div class="protyle-action"><span class="protyle-action--first protyle-action__language" contenteditable="false">bash</span><span class="fn__flex-1"></span><span class="protyle-icon protyle-icon--only protyle-action__copy"><svg><use xlink:href="#iconCopy"></use></svg></span></div><div class="hljs"><div></div><div contenteditable="false" style="flex: 1" spellcheck="false">exit #éåºå®¹å¨ 334insmod /volume1/docker/debian11-builder/data/module_build/gasket-driver/src/gasket.ko #ç®å½ä»¥èªå·±ä¸ºå 4.4.x 335insmod /volume1/docker/debian11-builder/data/module_build/gasket-driver-mod/src/gasket.ko #ç®å½ä»¥èªå·±ä¸ºå 5.10.x 336insmod /volume1/docker/debian11-builder/data/module_build/gasket-driver/src/apex.ko #ç®å½ä»¥èªå·±ä¸ºå 4.4.x 337insmod /volume1/docker/debian11-builder/data/module_build/gasket-driver-mod/src/apex.ko #ç®å½ä»¥èªå·±ä¸ºå 5.10.x 338#妿 æ¥éï¼æ£æ¥å è½½ç¶æåç¡¬ä»¶ç¶æ 339lsmod | grep gasket 340gasket 79026 1 apex 341lsmod | grep apex 342apex 10195 0 343gasket 79026 1 apex 344</div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-subtype="h3" data-node-id="20250419025306-sli2ao6" data-type="NodeHeading" class="h3" id="20250419025306-sli2ao6" updated="20250419025755"><div contenteditable="false" spellcheck="false">â å ¨ç¯å®</div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419025433-00zt398" data-type="NodeBlockquote" class="bq" custom-b="bug" id="20250419025433-00zt398" updated="20250419025755"><div data-node-id="20250419025433-jbo9nyi" data-type="NodeParagraph" class="p" id="20250419025433-jbo9nyi" updated="20250419025755"><div contenteditable="false" spellcheck="false"><span data-type="strong">æµè¯æ¡ä»¶æéï¼æ¬¢è¿å¤§å®¶è·è´´åé¦ï¼ç½è£ç¨æ·å¤å¤å°è¯ï¼ç¥å¤§å®¶å®ç°é©±å¨èªç±~</span></div><div class="protyle-attr" contenteditable="false"></div></div><div class="protyle-attr" contenteditable="false"></div></div><div data-node-id="20250419025553-cie1vzz" data-type="NodeParagraph" class="p" id="20250419025553-cie1vzz" updated="20250419025553"><div contenteditable="false" spellcheck="false">â</div><div class="protyle-attr" contenteditable="false"></div></div></div>
345<script src="appearance/icons/material/icon.js?v=3.1.29"></script>
vendor: 1 bytes, line 345
345
346<script src="stage/build/export/protyle-method.js?v=3.1.29"></script>
vendor: 1 bytes, line 346
346
347<script src="stage/protyle/js/lute/lute.min.js?v=3.1.29"></script>
347
348<script> 349 window.siyuan = { 350 config: { 351 appearance: { mode: 0, codeBlockThemeDark: "base16/dracula", codeBlockThemeLight: "vs" }, 352 editor: { 353 codeLineWrap: true, 354 fontSize: 16, 355 codeLigatures: true, 356 plantUMLServePath: "https://www.plantuml.com/plantuml/svg/~1", 357 codeSyntaxHighlightLineNum: true, 358 katexMacros: JSON.stringify({}), 359 } 360 }, 361 languages: {copy:"å¤å¶"} 362 }; 363 const previewElement = document.getElementById('preview'); 364 Protyle.highlightRender(previewElement, "stage/protyle"); 365 Protyle.mathRender(previewElement, "stage/protyle", false); 366 Protyle.mermaidRender(previewElement, "stage/protyle"); 367 Protyle.flowchartRender(previewElement, "stage/protyle"); 368 Protyle.graphvizRender(previewElement, "stage/protyle"); 369 Protyle.chartRender(previewElement, "stage/protyle"); 370 Protyle.mindmapRender(previewElement, "stage/protyle"); 371 Protyle.abcRender(previewElement, "stage/protyle"); 372 Protyle.htmlRender(previewElement); 373 Protyle.plantumlRender(previewElement, "stage/protyle"); 374 document.querySelectorAll(".protyle-action__copy").forEach((item) => { 375 item.addEventListener("click", (event) => { 376 let text = item.parentElement.nextElementSibling.textContent.trimEnd(); 377 text = text.replace(/ /g, " "); // Replace non-breaking spaces with normal spaces when copying 378 navigator.clipboard.writeText(text); 379 event.preventDefault(); 380 event.stopPropagation(); 381 }) 382 }); 383</script>
383</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.