1<!DOCTYPE html> 2<html lang="zh-CN"> 3 <head> 4 <meta charset="utf-8" /> 5 <meta -equiv="X-UA-Compatible" content="chrome=1" /> 6 <meta http-equiv="X-UA-Compatible" content="IE=7" /> 7 <meta http-equiv="Content-Security-Policy" content="block-all-mixed-content" /> 8 <title>è§£å³ macOS ä¸ Samba æ·è´å¤§æä»¶ææµæ¥éçé®é¢ - ç¡æ¨é¡ææª</title> 9 <meta name="keywords" 10 content="php,linux,javascript,android,gracecode,vim,tracker,blog,feelinglucky,æå,å客,çæ´»,ç¼ç¨,代ç ,ç¨åºå" /> 11 <meta name="viewport" 12 content="width=device-width,initial-scale=1,maximum-scale=1" /> 13 <link rel="icon" href="https://www.gracecode.com/usr/themes/untitled/images/[email protected]" type="image/x-icon"/> 14 <link rel="shortcut icon" href="https://www.gracecode.com/usr/themes/untitled/images/[email protected]" type="image/png" /> 15 <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/[email protected]/style.css" /> 16 <style>body{display:none\0;*display:none;}/* I don't care IE9(and below) users. :-6 */ /*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none} 17/*# sourceMappingURL=normalize.min.css.map */*,*:after,*:before{box-sizing:inherit}html{box-sizing:border-box;font-size:62.5%}body{color:#606c76;font-family:'Roboto', 'Helvetica Neue', 'Helvetica', 'Arial', sans-serif;font-size:1.6em;font-weight:300;letter-spacing:.01em;line-height:1.6}blockquote{border-left:0.3rem solid #d1d1d1;margin-left:0;margin-right:0;padding:1rem 1.5rem}blockquote *:last-child{margin-bottom:0}.button,button,input[type='button'],input[type='reset'],input[type='submit']{background-color:#9b4dca;border:0.1rem solid #9b4dca;border-radius:.4rem;color:#fff;cursor:pointer;display:inline-block;font-size:1.1rem;font-weight:700;height:3.8rem;letter-spacing:.1rem;line-height:3.8rem;padding:0 3.0rem;text-align:center;text-decoration:none;text-transform:uppercase;white-space:nowrap}.button:focus,.button:hover,button:focus,button:hover,input[type='button']:focus,input[type='button']:hover,input[type='reset']:focus,input[type='reset']:hover,input[type='submit']:focus,input[type='submit']:hover{background-color:#606c76;border-color:#606c76;color:#fff;outline:0}.button[disabled],button[disabled],input[type='button'][disabled],input[type='reset'][disabled],input[type='submit'][disabled]{cursor:default;opacity:.5}.button[disabled]:focus,.button[disabled]:hover,button[disabled]:focus,button[disabled]:hover,input[type='button'][disabled]:focus,input[type='button'][disabled]:hover,input[type='reset'][disabled]:focus,input[type='reset'][disabled]:hover,input[type='submit'][disabled]:focus,input[type='submit'][disabled]:hover{background-color:#9b4dca;border-color:#9b4dca}.button.button-outline,button.button-outline,input[type='button'].button-outline,input[type='reset'].button-outline,input[type='submit'].button-outline{background-color:transparent;color:#9b4dca}.button.button-outline:focus,.button.button-outline:hover,button.button-outline:focus,button.button-outline:hover,input[type='button'].button-outline:focus,input[type='button'].button-outline:hover,input[type='reset'].button-outline:focus,input[type='reset'].button-outline:hover,input[type='submit'].button-outline:focus,input[type='submit'].button-outline:hover{background-color:transparent;border-color:#606c76;color:#606c76}.button.button-outline[disabled]:focus,.button.button-outline[disabled]:hover,button.button-outline[disabled]:focus,button.button-outline[disabled]:hover,input[type='button'].button-outline[disabled]:focus,input[type='button'].button-outline[disabled]:hover,input[type='reset'].button-outline[disabled]:focus,input[type='reset'].button-outline[disabled]:hover,input[type='submit'].button-outline[disabled]:focus,input[type='submit'].button-outline[disabled]:hover{border-color:inherit;color:#9b4dca}.button.button-clear,button.button-clear,input[type='button'].button-clear,input[type='reset'].button-clear,input[type='submit'].button-clear{background-color:transparent;border-color:transparent;color:#9b4dca}.button.button-clear:focus,.button.button-clear:hover,button.button-clear:focus,button.button-clear:hover,input[type='button'].button-clear:focus,input[type='button'].button-clear:hover,input[type='reset'].button-clear:focus,input[type='reset'].button-clear:hover,input[type='submit'].button-clear:focus,input[type='submit'].button-clear:hover{background-color:transparent;border-color:transparent;color:#606c76}.button.button-clear[disabled]:focus,.button.button-clear[disabled]:hover,button.button-clear[disabled]:focus,button.button-clear[disabled]:hover,input[type='button'].button-clear[disabled]:focus,input[type='button'].button-clear[disabled]:hover,input[type='reset'].button-clear[disabled]:focus,input[type='reset'].button-clear[disabled]:hover,input[type='submit'].button-clear[disabled]:focus,input[type='submit'].button-clear[disabled]:hover{color:#9b4dca}code{background:#f4f5f6;border-radius:.4rem;font-size:86%;margin:0 .2rem;padding:.2rem .5rem;white-space:nowrap}pre{background:#f4f5f6;border-left:0.3rem solid #9b4dca;overflow-y:hidden}pre>code{border-radius:0;display:block;padding:1rem 1.5rem;white-space:pre}hr{border:0;border-top:0.1rem solid #f4f5f6;margin:3.0rem 0}input[type='color'],input[type='date'],input[type='datetime'],input[type='datetime-local'],input[type='email'],input[type='month'],input[type='number'],input[type='password'],input[type='search'],input[type='tel'],input[type='text'],input[type='url'],input[type='week'],input:not([type]),textarea,select{-webkit-appearance:none;background-color:transparent;border:0.1rem solid #d1d1d1;border-radius:.4rem;box-shadow:none;box-sizing:inherit;height:3.8rem;padding:.6rem 1.0rem .7rem;width:100%}input[type='color']:focus,input[type='date']:focus,input[type='datetime']:focus,input[type='datetime-local']:focus,input[type='email']:focus,input[type='month']:focus,input[type='number']:focus,input[type='password']:focus,input[type='search']:focus,input[type='tel']:focus,input[type='text']:focus,input[type='url']:focus,input[type='week']:focus,input
17:not([type]):focus,textarea:focus,select:focus{border-color:#9b4dca;outline:0}select{background:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 8" width="30"><path fill="%23d1d1d1" d="M0,0l6,8l6-8"/></svg>') center right no-repeat;padding-right:3.0rem}select:focus{background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 8" width="30"><path fill="%239b4dca" d="M0,0l6,8l6-8"/></svg>')}select[multiple]{background:none;height:auto}textarea{min-height:6.5rem}label,legend{display:block;font-size:1.6rem;font-weight:700;margin-bottom:.5rem}fieldset{border-width:0;padding:0}input[type='checkbox'],input[type='radio']{display:inline}.label-inline{display:inline-block;font-weight:normal;margin-left:.5rem}.container{margin:0 auto;max-width:112.0rem;padding:0 2.0rem;position:relative;width:100%}.row{display:flex;flex-direction:column;padding:0;width:100%}.row.row-no-padding{padding:0}.row.row-no-padding>.column{padding:0}.row.row-wrap{flex-wrap:wrap}.row.row-top{align-items:flex-start}.row.row-bottom{align-items:flex-end}.row.row-center{align-items:center}.row.row-stretch{align-items:stretch}.row.row-baseline{align-items:baseline}.row .column{display:block;flex:1 1 auto;margin-left:0;max-width:100%;width:100%}.row .column.column-offset-10{margin-left:10%}.row .column.column-offset-20{margin-left:20%}.row .column.column-offset-25{margin-left:25%}.row .column.column-offset-33,.row .column.column-offset-34{margin-left:33.3333%}.row .column.column-offset-40{margin-left:40%}.row .column.column-offset-50{margin-left:50%}.row .column.column-offset-60{margin-left:60%}.row .column.column-offset-66,.row .column.column-offset-67{margin-left:66.6666%}.row .column.column-offset-75{margin-left:75%}.row .column.column-offset-80{margin-left:80%}.row .column.column-offset-90{margin-left:90%}.row .column.column-10{flex:0 0 10%;max-width:10%}.row .column.column-20{flex:0 0 20%;max-width:20%}.row .column.column-25{flex:0 0 25%;max-width:25%}.row .column.column-33,.row .column.column-34{flex:0 0 33.3333%;max-width:33.3333%}.row .column.column-40{flex:0 0 40%;max-width:40%}.row .column.column-50{flex:0 0 50%;max-width:50%}.row .column.column-60{flex:0 0 60%;max-width:60%}.row .column.column-66,.row .column.column-67{flex:0 0 66.6666%;max-width:66.6666%}.row .column.column-75{flex:0 0 75%;max-width:75%}.row .column.column-80{flex:0 0 80%;max-width:80%}.row .column.column-90{flex:0 0 90%;max-width:90%}.row .column .column-top{align-self:flex-start}.row .column .column-bottom{align-self:flex-end}.row .column .column-center{align-self:center}@media (min-width: 40rem){.row{flex-direction:row;margin-left:-1.0rem;width:calc(100% + 2.0rem)}.row .column{margin-bottom:inherit;padding:0 1.0rem}}a{color:#9b4dca;text-decoration:none}a:focus,a:hover{color:#606c76}dl,ol,ul{list-style:none;margin-top:0;padding-left:0}dl dl,dl ol,dl ul,ol dl,ol ol,ol ul,ul dl,ul ol,ul ul{font-size:90%;margin:1.5rem 0 1.5rem 3.0rem}ol{list-style:decimal inside}ul{list-style:circle inside}.button,button,dd,dt,li{margin-bottom:1.0rem}fieldset,input,select,textarea{margin-bottom:1.5rem}blockquote,dl,figure,form,ol,p,pre,table,ul{margin-bottom:2.5rem}table{border-spacing:0;display:block;overflow-x:auto;text-align:left;width:100%}td,th{border-bottom:0.1rem solid #e1e1e1;padding:1.2rem 1.5rem}td:first-child,th:first-child{padding-left:0}td:last-child,th:last-child{padding-right:0}@media (min-width: 40rem){table{display:table;overflow-x:initial}}b,strong{font-weight:bold}p{margin-top:0}h1,h2,h3,h4,h5,h6{font-weight:300;letter-spacing:-.1rem;margin-bottom:2.0rem;margin-top:0}h1{font-size:4.6rem;line-height:1.2}h2{font-size:3.6rem;line-height:1.25}h3{font-size:2.8rem;line-height:1.3}h4{font-size:2.2rem;letter-spacing:-.08rem;line-height:1.35}h5{font-size:1.8rem;letter-spacing:-.05rem;line-height:1.5}h6{font-size:1.6rem;letter-spacing:0;line-height:1.4}img{max-width:100%}.clearfix:after{clear:both;content:' ';display:table}.float-left{float:left}.float-right{float:right} 18 19/*# sourceMappingURL=milligram.min.css.map */.optimizelegibility{text-rendering:optimizelegibility}.align-right{text-align:right}.hr{display:none;width:30%;margin:2.5em auto;height:1px;background:#f6f7fa;overflow:hidden;border:none;*font-size:1px}body>hr{display:none;width:30%;margin:2.5em auto;height:1px;background:#f6f7fa;overflow:hidden;border:none;*font-size:1px}.hidden{display:none !important}html{width:100%;height:100%}a,a:link,a:visited{color:#800;text-decoration:none;border-bottom:1px dotted #800}.search{max-width:250px}.search input{display:inline-block}.search .row{margin-left:0 !important}.search input.text{border-bottom-right-radius:0;border-top-right-radius:0}.search input.text:focus{border-color:#800}.search .button-primary{border-bottom-left-radius:0;border-top-left-radius:0;background-color:#800;border-color:#800;text-transform:uppercase}.search p{text-indent:0;padding:0 0 .5em 0}h1,h2,h3,h4,h5,h6{color:#800;font-family:"LXGW WenKai","STFangsong","Fangsong",ui-sans-serif,system-ui,sans-serif;text-rendering:optimizelegibility}h1{font-size:1.4em}h2{font-size:1.3em}h3{font-size:1.2em}h4{font-size:1.1em}h5{font-size:1.1em}em,strong{color:#800}body{font:18px "Space Grotesk","PingFang SC","Microsoft YaHei","N
19oto Sans CJK SC",ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";line-height:1.7em;color:#333;background:#faf9f6;border-top:5px solid #333;font-weight:300;padding-top:100px}.body{margin:0 auto;width:1080px}header{position:absolute;top:50px;overflow:hidden;box-sizing:content-box}header #logo{display:block;font-size:1.5em;height:1.5em;line-height:1.5em;padding:.3em 1em .3em 1.5em;user-select:none;background:#800;vertical-align:middle;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px}header #logo a,header #logo a:link,header #logo a:visited,header #logo a:hover{color:#faf9f6;text-decoration:none}footer{font-family:"LXGW WenKai","STFangsong","Fangsong",ui-sans-serif,system-ui,sans-serif;border-top:5px solid #800;background-color:#333;clear:both;overflow:hidden;padding:1em 5em;color:#faf9f6;margin-top:1em}footer a:link,footer a:hover,footer a:visited{color:#faf9f6;text-decoration:none;border:none;background:#800;padding:0 .2em;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px}footer a[ref="nofollow"]{font-size:.8em;color:#f6f7fa;border:none;background:none}footer #footnote{float:left}footer #footnote p{margin:0}footer #copyright{float:right;text-align:right;font-size:small;font-weight:lighter}.about{padding:2em 0;background:#f6f7fa;color:#333;margin:2em 0;font-family:"LXGW WenKai","STFangsong","Fangsong",ui-sans-serif,system-ui,sans-serif;clear:both}.about img{border:none}.about p>img{border:1px solid #f6f7fa;float:right;padding:.3em;margin:0 0 2em 2em;background:#fff}.about kbd{-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px;padding:.3em .5em;font-size:small;background:#800;color:#faf9f6;opacity:.75}.about .body .fa{display:inherit;margin-right:.1em}[class^="icon-"]{margin-right:.3em}.projects,.resources{margin-bottom:1em}.blog,.projects,.resources{font-family:"LXGW WenKai","STFangsong","Fangsong",ui-sans-serif,system-ui,sans-serif;clear:both}.blog ul,.projects ul,.resources ul{list-style:none;overflow:hidden;clear:both;margin:1em 0}.blog ul img,.projects ul img,.resources ul img{max-width:200px;height:auto;-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;-o-border-radius:2px;border-radius:2px}.blog ul h3,.projects ul h3,.resources ul h3{margin:1em 0}.blog ul p,.projects ul p,.resources ul p{text-align:justify}.pagination a{font-family:"LXGW WenKai","STFangsong","Fangsong",ui-sans-serif,system-ui,sans-serif}.blog{overflow:hidden}.blog>.body{display:flex;flex-wrap:nowrap;flex-direction:row;align-items:flex-start;gap:2em}.blog .posts .widget-list,.blog .pages .widget-list,.blog .categories .widget-list{margin:2em 0 !important;overflow:visible;list-style:circle}.blog .posts .widget-list li,.blog .pages .widget-list li,.blog .categories .widget-list li{margin:0}.blog .posts .widget-list::after,.blog .pages .widget-list::after,.blog .categories .widget-list::after{content:"";clear:both;display:table}.blog .posts,.blog .pages{flex:1 1 0;min-width:0}.blog .categories{flex:0 0 25%;width:25%;max-width:25%;min-width:220px}.blog .categories ul{margin:1em 0}.blog .categories li{width:7em;float:left}.blog .categories li>ul{margin:0}.projects{padding:1em 0;margin:1em 0}.projects ul{list-style:none}.resources li{width:50%;float:left}.article{position:relative;width:1080px;margin:2em auto}.article h1,.article h2,.article h3,.article h4,.article h5{color:#800;padding:5px 0;margin:1.2em 0 .5em 0;font-weight:normal}.article h1{font-size:1.4em}.article h1:first-child{font-size:1.8em;text-align:right}.article h2{font-size:1.3em}.article h3{font-size:1.2em}.article h4{font-size:1.1em}.article h5{font-size:1em}.article p.metas{font-size:1.1em;padding:0 .2em 2em 0;color:#555;text-align:right}.article p>img{margin:0 auto;max-width:95%}.article>pre,.article>code,.article>table{background:#f6f7fa;margin:.5em 2em;overflow-x:auto;-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;-o-border-radius:2px;border-radius:2px}.article pre,.article code,.article table{font:1em 'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:normal;border:0}.article .post-content{font-family:"Noto Serif CJK SC","Noto Serif SC","Songti SC","STSong","SimSun","NSimSun",Georgia,"Times New Roman",Times,serif}.article .post-content a{font-family:"LXGW WenKai","STFangsong","Fangsong",ui-sans-serif,system-ui,sans-serif}.article table{width:95%;border-collapse:collapse;border-spacing:0;font-size:1em}.article table tr{display:table-row;vertical-align:inherit;border-color:inherit}.article table th{vertical-align:middle;background:#f6f7fa}.article table td{display:table-cell}.article table td,.article table th{border:1px solid #ddd;padding:.5em;word-break:break-all}.article table tbody tr:nth-child(even){background-color:white}.article table tbody tr:nth-child(odd){background-color:#eee}.article p code,.article pre code{font-size:.9em;margin:0}.article ul,.article ol{margin:0 2em;list-style-position:inside}.article ul{list-style-type:circle}.article ol{list-style-type:decimal}.tag_box,.pagination{list-style:none;clear:both;width:85%;margin:3em auto 1em;text-align:center}.tag_box li,.pagination li{color:#333;display:inline-block;margin:.5em;text-align:center;padding:0 .3em;opacity:.9;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;-o-border-radius:3px;border-radius:3px}.tag_box li a,.pagination li a{border:none;display:inline-block}.tag_box li:hover,.pagination li:hover,.tag_box li:focus,.pagination li:focus,.tag_box li.active,.pagination li.active{background:#800;opacity:1}.tag_box li:hover a,.pagination li:hover a,.tag_box li:focus a,.pagination li:focus a,.tag_box li.active a,.pagination li.active a{color:#faf9f6}.pagination{overflow:auto}.pagination li{min-width:1.5em}.tag_box li span{color:#fff;font-size:small}.see-more{text-align:right;margin:2em 0 1em 0}#forkme{position:absolute;*display:none;top:0;right:0;border:none;outline:none;margin:0;padding:0}#comments{width:750px;margin:2em auto}#comments ol,#comments ul{margin:.5em 0}.comment-list{color:#333}.comment-list a,.comment-list a:link{border:none}.comment-list p{text-indent:0;font-size:1em}.comment-list li{list-style:none;position:relative;padding:.1em 0 .5em 45px;word-break:break-word;-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;-o-border-radius:2px;border-radius:2px}.comment-list li .avatar{position:absolute;width:32px;height:32px;top:.5em;
19left:.5em;-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;-o-border-radius:2px;border-radius:2px}.comment-list li .comment-author{color:#800;font-weight:normal}.comment-list li .comment-meta,.comment-list li .comment-meta a{line-height:1em;font-size:small;color:#333}.comment-list li:nth-child(odd){background:#f6f7fa}#comments form input,#comments form textarea{width:100%}#comments form textarea{height:8em}#comments form p{text-indent:0}#comments form label{display:block}.code-toolbar{-webkit-border-radius:2px;-moz-border-radius:2px;-ms-border-radius:2px;-o-border-radius:2px;border-radius:2px;font:1em 'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;margin:.5em 2em;position:relative}.code-toolbar .toolbar{position:absolute;top:0;right:0;visibility:hidden;padding:.5em;font-size:small}.code-toolbar .toolbar a{cursor:pointer;border:none !important}.code-toolbar .toolbar a:hover{text-decoration:none}.code-toolbar:hover .toolbar{visibility:visible}@media only screen and (max-width:900px){header{margin-top:50px / 3}.blog>.body{flex-direction:column}.p{text-indent:1em;line-height:1.4em;font-size:1em;margin:.7em 0}.about{padding:.5em 0;margin:1em 0}.about p{text-indent:1em;line-height:1.4em;font-size:1em;margin:.7em 0}.blog p,.projects p,.resources p{text-indent:1em;line-height:1.4em;font-size:1em;margin:.7em 0}.blog ul,.projects ul,.resources ul{margin:0}.body{width:95%;margin:0 auto}.article{font-size:18px;width:95%;margin:0 auto}.article .wrap-all{word-wrap:break-word;word-break:break-all}.article h1,.article h2,.article h3,.article h4,.article h5{font-size:1.2em}.article h1:first-child{font-size:1.4em}.article p{text-indent:1em;line-height:1.4em;font-size:1em;margin:.7em 0;line-height:1.7em;text-align:justify;font-size:1.1em}.article pre,.article code{text-shadow:none !important;margin:0;word-wrap:break-word;word-break:break-all}.article a,.article a:link,.article a:visited{word-wrap:break-word;word-break:break-all}footer{font-size:small}footer a[ref="nofollow"]{display:none !important}footer #footnote,footer #copyright{text-align:center;float:none;text-indent:0}#comments{width:90%;margin:2em auto;font-size:small}#comments form input,#comments form textarea{width:80%}.blog .widget{width:100%;float:none;clear:both;margin:0 1em}.blog .widget ul{margin:1em 0}.blog .pages,.blog .posts,.blog .categories{flex:1 1 auto;width:auto;max-width:none;min-width:0}.blog .widget-list{margin-left:1em}}@media screen and (prefers-color-scheme:dark){body{background-color:#ccc}.article pre,.article code,.article table{background-color:#ddd;color:#333}input.text{border-color:#800}}</style> 20 <meta name="author" content="æå" /> 21 <meta name="application-name" content="ç¡æ¨é¡ææª" /> 22 <meta name="verify-v1" content="4BJs16VTJDDsu9Ngl8AOdXkxG0MgCB92r/CgcHOROpA=" /> 23 <meta name="google-site-verification" content="_vdlyEFV7wjpwfq3gDPeJtbfKA85KDi10IUQeZ9J5eg" /> 24 <meta name="follow.it-verification-code" content="uzKJSs3L9TJsXGuXpufs"/> 25 26<!-- https://neat-annotations.syabro.com/#installation --> 27<link rel="stylesheet" href="https://cdn.jsdelivr.net/gh/syabro/neat-annotations/neat-annotations.css" /> 28<!-- 29<link href="https://fonts.googleapis.com/css2?family=Shantell+Sans:wght@400;500;600&display=swap" rel="stylesheet" /> 30--> 31<link href="https://cdn.tsinbei.com/fga/css2?family=Shantell+Sans:wght@400;500;600&display=swap" rel="stylesheet" /> 32<style> 33body .ann::after { 34font-size: .9em; 35} 36 37body header { 38overflow: visible; 39} 40 41body header .ann::after { 42font-size: .7em; 43} 44</style> 45 46 <link rel="canonical" href="https://www.gracecode.com/posts/3208.html" /> 47<link rel="alternate" type="application/rss+xml" title="è§£å³ macOS ä¸ Samba æ·è´å¤§æä»¶ææµæ¥éçé®é¢ » ç¡æ¨é¡ææª » RSS 2.0" href="https://www.gracecode.com/feed/posts/3208.html" /> 48<link rel="alternate" type="application/rdf+xml" title="è§£å³ macOS ä¸ Samba æ·è´å¤§æä»¶ææµæ¥éçé®é¢ » ç¡æ¨é¡ææª » RSS 1.0" href="https://www.gracecode.com/feed/rss/posts/3208.html" />
49<link rel="alternate" type="application/atom+xml" title="è§£å³ macOS ä¸ Samba æ·è´å¤§æä»¶ææµæ¥éçé®é¢ » ç¡æ¨é¡ææª » ATOM 1.0" href="https://www.gracecode.com/feed/atom/posts/3208.html" /> 50<meta name="description" content="è¿æ¬¡æè ¾çèæ¯æ¯æ°æäºå°å°ä¸»æºï¼ç¶åè®¡åæ¿æ¥å½è½¯è·¯ç±ä½¿ç¨ï¼å å ¶è¿æä¸ªé²ç½®ç NVME ææ§½ä»¥åä¸åé²ç½®ç NVME çï¼å°±é¡ºä¾¿å°±æ³æå®å½ NAS ç¨ã使¯é 置好ä¹åï¼åç°ä» Mac ææ½å¤§æä»¶å°..." /> 51<meta name="generator" content="Typecho 1.3.0" /> 52<meta name="template" content="untitled" /> 53<meta property="og:type" content="article" /> 54<meta property="og:url" content="https://www.gracecode.com/posts/3208.html" /> 55<meta name="twitter:title" property="og:title" itemprop="name" content="è§£å³ macOS ä¸ Samba æ·è´å¤§æä»¶ææµæ¥éçé®é¢" /> 56<meta name="twitter:description" property="og:description" itemprop="description" content="è¿æ¬¡æè ¾çèæ¯æ¯æ°æäºå°å°ä¸»æºï¼ç¶åè®¡åæ¿æ¥å½è½¯è·¯ç±ä½¿ç¨ï¼å å ¶è¿æä¸ªé²ç½®ç NVME ææ§½ä»¥åä¸åé²ç½®ç NVME çï¼å°±é¡ºä¾¿å°±æ³æå®å½ NAS ç¨ã使¯é 置好ä¹åï¼åç°ä» Mac ææ½å¤§æä»¶å°..." /> 57<meta property="og:site_name" content="ç¡æ¨é¡ææª" /> 58<meta name="twitter:card" content="summary" /> 59<meta name="twitter:domain" content="www.gracecode.com" />
60<script type="text/javascript"> 61(function () { 62 window.TypechoComment = { 63 dom : function (sel) { 64 return document.querySelector(sel); 65 }, 66 67 visiable: function (el, show) { 68 el.style.display = show ? '' : 'none'; 69 }, 70 71 create : function (tag, attr) { 72 const el = document.createElement(tag); 73 74 for (const key in attr) { 75 el.setAttribute(key, attr[key]); 76 } 77 78 return el; 79 }, 80 81 inputParent: function (response, coid) { 82 const form = 'form' === response.tagName ? response : response.querySelector('form'); 83 let input = form.querySelector('input[name=parent]'); 84 85 if (null == input && coid) { 86 input = this.create('input', { 87 'type' : 'hidden', 88 'name' : 'parent' 89 }); 90 91 form.appendChild(input); 92 } 93 94 if (coid) { 95 input.setAttribute('value', coid); 96 } else if (input) { 97 input.parentNode.removeChild(input); 98 } 99 }, 100 101 getChild: function (root, node) { 102 const parentNode = node.parentNode; 103 104 if (parentNode === null) { 105 return null; 106 } else if (parentNode === root) { 107 return node; 108 } else { 109 return this.getChild(root, parentNode); 110 } 111 }, 112 113 reply : function (htmlId, coid, btn) { 114 const response = this.dom('#respond-post-3208'), 115 textarea = response.querySelector('textarea[name=text]'), 116 comment = this.dom('#' + htmlId), 117 child = this.getChild(comment, btn); 118 119 this.inputParent(response, coid); 120 121 if (this.dom('#respond-post-3208-holder') === null) { 122 const holder = this.create('div', { 123 'id' : 'respond-post-3208-holder' 124 }); 125 126 response.parentNode.insertBefore(holder, response); 127 } 128 129 if (child) { 130 comment.insertBefore(response, child.nextSibling); 131 } else { 132 comment.appendChild(response); 133 } 134 135 this.visiable(this.dom('#cancel-comment-reply-link'), true); 136 137 if (null != textarea) { 138 textarea.focus(); 139 } 140 141 return false; 142 }, 143 144 cancelReply : function () { 145 const response = this.dom('#respond-post-3208'), 146 holder = this.dom('#respond-post-3208-holder'); 147 148 this.inputParent(response, false); 149 150 if (null === holder) { 151 return true; 152 } 153 154 this.visiable(this.dom('#cancel-comment-reply-link'), false); 155 holder.parentNode.insertBefore(response, holder); 156 return false; 157 } 158 }; 159})(); 160</script>
160<script type="text/javascript"> 161(function () { 162 const events = ['scroll', 'mousemove', 'keyup', 'touchstart']; 163 let added = false; 164 165 document.addEventListener('DOMContentLoaded', function () { 166 const response = document.querySelector('#respond-post-3208'); 167 168 if (null != response) { 169 const form = 'form' === response.tagName ? response : response.querySelector('form'); 170 const input = document.createElement('input'); 171 172 input.type = 'hidden'; 173 input.name = '_'; 174 input.value = (function () { 175 var _UBSMCVq = '5'//'Z' 176+'bb7'//'X82' 177+'9'//'0V' 178+'RPB'//'RPB' 179+''///*'nc'*/'nc' 180+//'OVv' 181'c0b'+//'Zm' 182'0e'+'0'//'oz' 183+'9e'//'a' 184+'f41'//'nxE' 185+//'yUy' 186'0'+'96e'//'cOv' 187+'96'//'IIG' 188+'c'//'a' 189+'9d5'//'G' 190+'80'//'nyG' 191+'7'//'i' 192+//'w' 193'c'+//'L' 194'd'+/* 'acK'//'acK' */''+''///*'a3'*/'a3' 195+/* 'M'//'M' */''+/* 'e'//'e' */''+//'uI' 196'c', _fgbe = [[5,8]]; 197 198 for (var i = 0; i < _fgbe.length; i ++) { 199 _UBSMCVq = _UBSMCVq.substring(0, _fgbe[i][0]) + _UBSMCVq.substring(_fgbe[i][1]); 200 } 201 202 return _UBSMCVq; 203})();; 204 205 if (form) { 206 function append() { 207 if (!added) { 208 form.appendChild(input); 209 added = true; 210 } 211 } 212 213 for (const event of events) { 214 window.addEventListener(event, append); 215 } 216 } 217 } 218 }); 219})(); 220</script>
220 </head> 221 <body class="bg"> 222 <header> 223<h1 id="logo" style="margin-left:-.5em;"> 224<a href="https://www.gracecode.com/"> 225 226<span class="ann ann-nw ann-no-mark" data-note="注æï¼è¿ä¸ªå客徿 è¶£" style="--ann-label-max-width: 500px;"> 227ç¡æ¨é¡ææª</span> 228 229</a> 230 231 232</h1> 233 </header> 234 235<div class="container"> 236 <article class="article" itemscope itemtype="http://schema.org/BlogPosting"> 237 <h1 class="post-title" itemprop="name headline"> 238 <a itemtype="url" href="https://www.gracecode.com/posts/3208.html">è§£å³ macOS ä¸ Samba æ·è´å¤§æä»¶ææµæ¥éçé®é¢</a> 239 </h1> 240 <p class="post-meta metas"> 241 <time datetime="2026-07-10" itemprop="datePublished">2026-07-10</time> 242 </p> 243 <div class="post-content" itemprop="articleBody"> 244 <p>è¿æ¬¡æè ¾çèæ¯æ¯æ°æäºå°å°ä¸»æºï¼ç¶åè®¡åæ¿æ¥å½è½¯è·¯ç±ä½¿ç¨ï¼å å ¶è¿æä¸ªé²ç½®ç NVME ææ§½ä»¥åä¸åé²ç½®ç NVME çï¼å°±é¡ºä¾¿å°±æ³æå®å½ NAS ç¨ã</p><p><img src="https://friable.rocks/_/2026_07_10/1783682092.png" alt="å¤±è´¥å¯¹è¯æ¡" title="å¤±è´¥å¯¹è¯æ¡"></p><p>使¯é 置好ä¹åï¼åç°ä» Mac ææ½å¤§æä»¶å° Samba å ±äº«ç®å½æ¶ï¼ä¼ è¾ä¼å¨å åç§åçªç¶ä¸æï¼Mac å¼¹çªæ¥éï¼<strong>âæä½æ æ³å®æï¼å 为åçæå¤é误 (é误代ç -8062)â</strong> æ <strong>(-36)</strong> é误ã</p><p>èµ·åæçæ¯ NVMe åºæç¡¬çç¼å¤æéæ 2.5G ç½å¡ææµãä½å¨æå¡ç«¯ä½¿ç¨ <code>iostat -x 1</code> çæ§åç°ï¼åå ¥å»¶è¿ (<code>w_await</code>) ä» ä¸ºä¸¤ä½æ°ï¼å 忝«ç§ï¼ï¼åºå± I/O é常å¥åº·ï¼ç½ç»é¾è·¯ä¹æ²¡ææçº¿ã</p><p>æç»ï¼éè¿å° Samba æ¥å¿çº§å«è°è³ <code>log level = 3</code>ï¼ç»å¤§æ¨¡ååæäºä¸å¾ç¥æ¯ Mac ç Finder 卿·è´å¤§æä»¶æ¶ï¼æ¯é 3 ç§å°±ä¼å Samba æå¡å¨åé䏿¬¡ <code>qfsinfo</code> æ¥è¯¢ç£ç空é´ç请æ±ãè Samba é»è®¤å¼å¯äºä¸¥æ ¼éå® (<code>strict locking = yes</code>)ï¼å¯¼è´ Mac çå¤çº¿ç¨åæ¶è¯»ååä¸ä¸ªæä»¶æ¶ï¼è§¦åäº Samba çæä»¶éï¼è¿è导è´ä¸»è¿ç¨æèµ·ã</p><p>æä»¥ï¼å°±æ ¹æ®åå ç¼è¾ <code>/etc/samba/smb.conf</code>ï¼è°æ´ååºç¨ä»¥ä¸æ ¸å¿é ç½®ï¼</p><pre><code class="lang-ini">[global] 245 # å 餿§æ¶ä»£åæ»ç SO_RCVBUF åæ°ï¼ä¾é ç°ä»£ Linux å æ ¸èªå¨è°ä¼ TCP çªå£ 246 socket options = TCP_NODELAY IPTOS_LOWDELAY 247 # ç¦ç¨å¼ºå¶åæ¥ï¼å¿½ç¥ Mac é¢ç¹çå·çæä»¤ï¼å¤§å¹ æåè¿ç»åå ¥ç¨³å®æ§ 248 strict sync = no 249 sync always = no 250 # å¼å¯ sendfile æåä¼ è¾æç 251 use sendfile = yes 252 # å ³éå ¨å± Posix éï¼é²æ¢ Mac å¹¶åæ¥è¯¢æ©å±å±æ§æ¶å¯¼è´æ»é 253 posix locking = no 254 255 # === macOS ä¸å±å ¼å®¹ä¼å (VFS Fruit) === 256 vfs objects = catia fruit streams_xattr 257 fruit:aapl = yes 258 fruit:model = MacPro 259 # è§£å³ Mac 产çç .DS_Store åé¶ç¢éèæä»¶é®é¢ 260 fruit:veto_appledouble = no 261 fruit:metadata = stream 262 fruit:posix_rename = yes 263 fruit:zero_file_id = yes 264 fruit:wipe_intentionally_left_blank_rfork = yes 265 fruit:delete_empty_adfiles = yes 266 # ç¦ç¨ NFS ACLs æéæ å°ï¼éä½ CPU æ è°å¼é 267 fruit:nfs_aces = no 268 269# å¨å ·ä½çå ±äº«æä»¶å¤¹ä¸ï¼ 270[Personal] 271 path = /opt/samba/personal/%U 272 read only = No 273 274 # å ³é®ï¼å ³éä¸¥æ ¼éå®ï¼ 275 strict locking = No</code></pre><p>æ»ä½æ¥è¯´ï¼å 为æç Samba æ¯é常èçé ç½®ï¼ä»èèµ·çæèªå·±é½ä¸å¾èç¥äºï¼ï¼æä»¥ä¸è¦ç²ç®å¥ç¨ç½ä¸çèæ§é ç½®ï¼èæ¯è¦æ ¹æ®å®é æ åµè¿è¡é对æ§è°æ´ã</p><p>ç»è¿ä¸è¿°é ç½®åï¼éå¯ Samba æå¡ï¼<code>systemctl restart smbd</code>ï¼ï¼å¨ 2.5G ç½ç»ä¸ï¼ç¾ GB ç 4K è§é¢ä¼ è¾ä¸æ°åµæï¼å ¨ç¨è·æ»¡ 280MB/sï¼åæ ææµç°è±¡ã</p> </div> 276 </article> 277 <ul class="pagination"> 278 <li class="prev">« <a href="https://www.gracecode.com/posts/3206.html" title="å¨ Claude Code ä¸é ç½®ä½¿ç¨ Ring 1T 模å">å¨ Claude Code ä¸é ç½®ä½¿ç¨ Ring 1T 模å</a></li> 279 <li class="next"><a href="https://www.gracecode.com/posts/3209.html" title="è§£å³ macOS ä¸ iPhone éååå¤è¿æ¥å¤±è´¥çé®é¢">è§£å³ macOS ä¸ iPhone éååå¤è¿æ¥å¤±è´¥çé®é¢</a> »</li> 280 </ul> 281 <div id="comments" class="article"> 282 283 <!-- 284 <h3 class="status closed">è¯è®ºå·²å ³é</h3> 285--> 286 </div> 287</div> 288 289 290<section class="about"> 291 <div class="body"> 292 <p> 293 <!-- <img alt="æçç §ç" src="https://www.gracecode.com/usr/themes/untitled/images/avatar.png" /> --> 294 <img alt="æçç §ç" width="250" src="https://avatars.githubusercontent.com/u/21816" /> 295 </p> 296 <p>æ¨å¥½ï¼æå«ãæåãï¼å «é¶åãç åã宿³¢ä½¬ï¼ç°å± æå·ãé¤äºè¿éï¼æ¬¢è¿æ¨éè¿ 297 <a href="https://github.com/mingcheng">GitHub</a>ã 298 <a href="https://twitter.com/feelinglucky">Twitter</a>ã 299 <a href="https://instagram.com/feelinglucky">Instagram</a> äºè§£æçæ´å¤å¨æã 300 </p> 301 302 <p> æ¬å客åå <em>Gracecode.com</em> ãç°æ´å <em>ãç¡æ¨é¡ææªã</em> ã<em>ãç²¾äºå¿ãç®äºå½¢ã</em>以æ¤è·µè¡æç®ãå¡å®çç念ã 303 å¨å·¥ä½ä¹å¤çä¸ªäººçæ´»æ¹é¢ï¼æå´å°ç®åã追æ±å¹³æ·¡ï¼å¶å°ä¹å¸¦çä¸äºå¯è½ä¸è¢«ææäººçè§£ç幽黿ã 304 </p> 305 306 <p>
306åæ¶ä¸ºé¿å äºè®®å麻ç¦ï¼å¨æ¤éé声æï¼<a href="https://noaimovement.com/" noreferer noopener>æ¬ç«ææå 容为é AI 307 çæ</a>ï¼ææè§ç¹åç«åºåä» ä»£è¡¨æä¸ªäººï¼ä¸ä»£è¡¨ä»»ä½ææå°±èæå ³èçå ¬å¸ä¸ç»ç»ã</p> 308 309 <p>å¦ææ¨æ³èç³»æï¼å¯ä»¥åæé®ä»¶ <kbd title="å ¶å®ä¸ä¸å®ä¼å">`echo bWluZ2NoZW5nQG91dGxvb2suY29tCg== | base64 -d`</kbd></p> 310 </div> 311</section> 312<section class="blog"> 313<div class="body"> 314 315 <section class="widget categories"> 316 <h3 class="widget-title"><i class="fa fa-ship" aria-hidden="true"></i> åç±»</h3> 317 <ul class="widget-list"><li class="category-level-0 category-parent"><a href="https://www.gracecode.com/category/tools/">Tools</a></li><li class="category-level-0 category-parent"><a href="https://www.gracecode.com/category/emca/">EMCAScript</a></li><li class="category-level-0 category-parent"><a href="https://www.gracecode.com/category/Life/">Life</a></li><li class="category-level-0 category-parent"><a href="https://www.gracecode.com/category/PHP/">PHP</a></li><li class="category-level-0 category-parent"><a href="https://www.gracecode.com/category/Design/">Design</a></li><li class="category-level-0 category-parent"><a href="https://www.gracecode.com/category/css-html/">CSS/HTML</a></li><li class="category-level-0 category-parent"><a href="https://www.gracecode.com/category/Skills/">Skills</a></li><li class="category-level-0 category-parent"><a href="https://www.gracecode.com/category/backends/">Backends</a></li><li class="category-level-0 category-parent"><a href="https://www.gracecode.com/category/Mac/">Mac</a></li><li class="category-level-0 category-parent"><a href="https://www.gracecode.com/category/Android/">Android</a></li><li class="category-level-0 category-parent"><a href="https://www.gracecode.com/category/Vim/">Vim</a></li><li class="category-level-0 category-parent"><a href="https://www.gracecode.com/category/thought/">Thought</a></li><li class="category-level-0 category-parent"><a href="https://www.gracecode.com/category/golang/">Golang</a></li></ul> 318 319 <h3 class="widget-title"><i class="fa fa-search" aria-hidden="true"></i> æç´¢</h3> 320 <form method="get" action="https://www.google.com/cse" class="search"> 321 <fieldset class="row row-center"> 322 <input type="hidden" name="cx" value="003109753558623109791:ls-iai7p8h0" /> 323 <input type="hidden" name="ie" value="UTF-8" /> 324 <input type="text" placeholder="请è¾å ¥å ³é®è¯" name="q" class="text" autocomplete="off" /> 325 <input class="button-primary" type="submit" value="search" /> 326 </fieldset> 327 </form> 328 329 </section> 330 331 <section class="widget posts" style="flex:1.5"> 332 <h3 class="widget-title"><i class="fa fa-file" aria-hidden="true"></i> æç« </h3> 333 <ul class="widget-list"> 334 <li><a href="https://www.gracecode.com/posts/3209.html" title="è§£å³ macOS ä¸ iPhone éååå¤è¿æ¥å¤±è´¥çé®é¢">è§£å³ macOS ä¸ iPhone éååå¤è¿æ¥å¤±è´¥çé®é¢</a></li><li><a href="https://www.gracecode.com/posts/3208.html" title="è§£å³ macOS ä¸ Samba æ·è´å¤§æä»¶ææµæ¥éçé®é¢">è§£å³ macOS ä¸ Samba æ·è´å¤§æä»¶ææµæ¥éçé®é¢</a></li><li><a href="https://www.gracecode.com/posts/3206.html" title="å¨ Claude Code ä¸é ç½®ä½¿ç¨ Ring 1T 模å">å¨ Claude Code ä¸é ç½®ä½¿ç¨ Ring 1T 模å</a></li><li><a href="https://www.gracecode.com/posts/3203.html" title="æè°¢ Drone CIï¼åæ¶è¿ç§»å°äº Gitea Actions">æè°¢ Drone CIï¼åæ¶è¿ç§»å°äº Gitea Actions</a></li><li><a href="https://www.gracecode.com/posts/3202.html" title="è¿ç§»å°å¾®è½¯ç Azure">è¿ç§»å°å¾®è½¯ç Azure</a></li><li><a href="https://www.gracecode.com/posts/3201.html" title="å端çå°æ">å端çå°æ</a></li><li><a href="https://www.gracecode.com/posts/3200.html" title="æè°çãå端娱ä¹åã">æè°çãå端娱ä¹åã</a></li><li><a href="https://www.gracecode.com/posts/3199.html" title=" åºäº CIY68 æé æ§ä»·æ¯è¶ é«ç客å¶åé®ç"> åºäº CIY68 æé æ§ä»·æ¯è¶ é«ç客å¶åé®ç</a></li><li><a href="https://www.gracecode.com/posts/3198.html" title="Clear Linux ä¸
334KVM 硬件ç´éé ç½®">Clear Linux ä¸ KVM 硬件ç´éé ç½®</a></li><li><a href="https://www.gracecode.com/posts/3197.html" title="å¯¹äº ThinkPad X1 Carbon 7th ççäº">å¯¹äº ThinkPad X1 Carbon 7th ççäº</a></li> </ul> 335 </section> 336 337 <section class="widget pages" style="display:flex;align-items:center;flex:.5"> 338 339<img style="max-width:200px;margin: 1em auto;" 340 src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAAEsCAYAAAB5fY51AAAAG3RFWHRDcmVhdGlvbiBUaW1lADE0Nzk4ODUxMzgzNDhBwehDAAAbUklEQVR42u3dDZRUZR3HcUktzSyjF7c6qRWdqKywN9+otJOheTqSi9apc6KiU1kZnoJDnpOvsDuAyosibwssKKGkiPLiphJviyioLL6CkgJiLCGwICoiu/t0/w8z0zh77zMzzz5z55mZ7++ce/Qwc+/embn3M8+98zz/54gjCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCSMy55JJLagYMGHBOOS79+/c/Ia73KWofamtrexve2z5R6/n+edjsn+nzsHn/XH8enB8VkEsvvXRg8KGoclxMJ1YRYI/aj0bDOsui1vP987DZvxzQFfz+uf48OD8AC7AAC7A4PwALsAALsACLDwSwAIvzA7AAC7AAC7AAC7AAC7AAK88PJCGPl3hpsDxBGiOWQYb3YljUelH7FzzW1wYsw/412xycNu9tsN4Gl/tn+jwM+zHM8LcaXX4epr9VbedHRYLlwwuO8xvdpkWUoxWwrNQtojj3z+Z4sW3BuH691XZ+ABZgARZgcf4CFmABFmABFmABFmABFmABFmABFucvYAEWYAEWYDkHwfd+P7GdcD6cwHGC4DqWoDb6AJbv5wdgARZgARZgARZgARZgARZgARZgARZgARZgARZgARZgARZgARZglQKsqDrcMqDWsI8tyZOuy2LY3uCodYKlrdDPI86a7sF7O9aw74AFWIDl8/vnQ7+zci4vA1iABViABViABViABViABViABViABViABViABViABViABViABVhVDFazoR54jcWJ08tQb3usoS65U7Asa5z3M6xX8prupi4PNmCZXi9gAVZFzdJi2QooefmWbux7ubZQGzk/AAuwAAuwAAuwAAuwAAuwAAuwAIvzA7AAC7AAC7AAC7AAC7AAq1gfSBmD2ujDCez7/lXiCcIkFIAFWIAFWJy/vGDAAizAAizAAizAAizAAizAAizOX8ACLMACLMDK5wVLPfCoWtxxLaYa50WoXtDHsB9RtcU3VOL+2dSIl2Mpaj3Da4qtRrxrsMr5/KhUsLxeqq3cCvvn1/6V8/kBWIDF/gEWYAEWYLF/gAVYgAUI7B9gARZgsX+ABViAxQnH/gFWtYOVoya514upBrtNDXH5mbrQmt+m989m/2xrsFuecE1R74UP++e6RnywtBYKVqWeH6QCWpSV+I1k20Io18/D99dLCGABFmARwAIswCIEsAALsAgBLMACLAJYgAVYpLzjQ3kUT/p1+T4pgxdLjK+3Ma7j2fUkI5ZLIxoBFmABFmABFmABFmABFmABFmABFgEswAIswAIswAIswAKsWMGKqus91rI2ddQH0mqoV95mWK/gGuemGt02+2dT47wIJ7Dp/TMtTrcX4+ttcnz82YK1LI7FdL6ZauKTPA5A198gnpQLKdtyK3G2oMu4Ren0843zfKvI8jKABViABViABViABViABViABViABViABViABViABViABViA5ShSo9tQAztyiRGETTY12A3rJCzrYzvdP9cHoE2N8xzTutu83oKPF9c18YOlIcbjr9UEXaFLjs8jar1mZs0pUkdA32fNsWxxeNFx1PcWTBm38Kuq4zJgARZgARZgARZgARZgARZgARZgARZgARZgARZgARZgARZgAZb7F+xDv5WYu4ws8xl8TuDyP56rrh8WYAEWYAEWYAEWYAEWYAEWYAEWYAEWYAEWYAEWYAEWYAEWYJX4BVvWzW6Mqk1tsz1TzeqodUwDTE1x/XqrECybmuV9cmDhrGa/5efbEhdYhn1IAFYJvuHoh1XZYPlwPJfz66UfFmABFmABFmABFmABFmABFmABFmABFmABFmABFmABFmABFmD5AZZNTW3L7Q10XPPbqsa56/0zHJi9bP6W74vh9TqdUyBHjfgNPoNlOjZdn29VB1Zc2/P99ZLStIgsWynLfAYrzlmWAAuwCGABFmABFmABFsczYMW+fyOPOEIVa6kv4rZdLYAFWIAFWGrchz+slgwdquoAC7AAC7B8B2tK795KMvZDHwIswGISikoqnxHnpBvZ+1csCOZ873sarIcTCa8vDX0+XnzoV1js4w+wAKvkYAlQAtWh9nb15muvqVFHHQVYgAVYgOUnWCOCZdeLL6q3335bdQStrPt/+1uVACzAAizA8hGsxm98Q3UGUAlYbx88qPEaAViABViA5RtYAtMLixcfxipYDh44oG47+2xaWIAFWIDlH1hTv/AFfRkoWMk9rOmnneYtVoAFWCUF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8/maooyIw5emxfR0dkS0yWO88/P/08GRtouty78bjj0j3n5fkyPZjpPhlgARZgVTFY0gK6++KLNTCPT55sxEUPbm5r0+MBpSppnWGbMghaEOpI1ndPGLb50JAh6entpbX132ef7VIcELAAC7AASw+TSZWLifyFMOuXxBREk0KqiqYu9WS26FSVhf2vvmqEMJEsWZOeUTq4PFxx1VUFdVoFLMACrAoHK/VLXWqojtSfyudeV2qIzwuLF0dCNP2009ITtsqYxRE5wJo3YMD/p7kPLg0BC7AAC7DeMWznhUWLdGtGkNi2Zk1eVUBTMzunbqqPMLTGpBqDPG9DskxNrtbb9vXr02CFzWsIWIBV0i4PhdbUzlEjPrIGu2F7fS3rY0d9kJscb684YPXooW+y65ZS8vJu/k9+kte6MvA5NZg6rOZ7ZmtsxdVXa9yafve7vPCZecYZ+vl6AozLLy8ZWK5rnBdhjoKC5wCwXBoAq0xabOU2q0+hvwpKJYfUPSNpCdUXcBkpA6llvbCJJrL7WakCZsiRVtYL999/eBLX888v2U1332dZiqujZ9XNmgNYfoIlMOx45hmNjuAw8/TTC1p384oVamnQuqrP4xdIme6+kA6hUsVUWUwDBliABVgVDJbMHyiXXqvq6goeFjPxlFOKVnZGcJvx1a8W3OsdsAALsCr4knDdtGm6pVRfJvWuAAuwAKtKwZLW0dTevXXRvpGABViABVg+g1WJC2ABVlFfcJzlZXwoV1PsEwSwYulnp3w4nuMCBrAAK5ZvdAJYgAVYgAVYgAVYgAVYgAVYgAVYBLAAC7AAC7AAC7Dyqek+zPC3xlrU1G6yqdFtWCdhCZZNXfk+VYZIn0JrnJtqsJtqklt+Hq7nKGgBrDIBy4dvTFpE3oHldTmiOPsBAhZgARZgARZgARZgARZgARZgARZgARZgARZgARZgARZgARZgeX+Q9XJcs9p2KbimtqlGvGV97DhrzkctgwwH5zCXf6u2tra34y+/gucAKEJNd9PSWmqwcpxvNRavt5kv4Dy+kcq1454v38Axdrz1ukVZqbPc+H4FAliABViABViABViABViABViABViABViABViABViABViABVjVDlacH0icALo+QeLaXhHev0afjxdftleJ7x9gARZgARZgARZgARZgARZgARZgARZgARZgARZgARZgARZgAZbxDexnUx87xhOu1Wb/XNd0t9lesAyOWs9mMdWwt6mxX4QTrsXl5xHn9mxquptqzvvweqk+UkYtBB/K1bheqq3flA/lg6rt9RLAAizAAizAAizAAizAAizA4gQGLAJYgAVYgAVYgAVYgFVFNd2tapJbbq/V4o3fZFOT3HVNd8M6DYZ9T1jsg2l7TYV+Ht04LpzWELd5va63Z3r/bF5vju3ZfCk1uZyjwFQjvmxTBh33YvsG8WHWl2orZ+LL++f7wvUZYAEWYAEWYAEWYAEWYAEWYAEWYAEWYAEWYAEWYAEWYAEWYJFunnCNPoDl+6QbPrx/cZY38h18+mEBFmABFmARwAIswAIsAliABViABViABViARQALsAALsJy/sTUu647HuZhqatuccMnBz4XW1B5sqAneJ8fJU1ANcVNNd5vP3vR6Xe+f5fvXVmqwTOeH5fGnbOYAMLxHG5g1p0wW1y0Y1y02159HhZaX8aJFGePr9XoWKMACLMACLMACLMACLMACLMACLMACLMACLMACLMACLMACLMACLOua5K6XBscHjOsa8cNstmf5eRRc091UY99m/4L1etnUEDes09ewTj/Deo0WS6tFtwar12sJU8Li9Sao6c4sLSV7/+Is91PO38C+l2/x/YoBsAALsAALsAALsAALsAALsAALsAALsAALsAALsAALsAALsACruvqZFKHfWWz9unzvRxQn+GU8oYTX/QABC7AAC7AAC7AAC7AAC7AAC7AAC7AAC7AAC7AAC7AAC7AAC7AAK2spuMa5aYmrprsMILasOR8XWLb7t6wclziPF1PNecCqcLB82F6c/aaYpSX+841+doAFWIAFWIAFWIAFWIAFWIAFWIAFWIAFWIAFWIAFWIAFWIAFWA72L6oGdrNNTW3D3+llU6veZv8sX+8gx2A1W9Y4L3j/TPXyDX/HqoZ9Ed4/p8ef6+MFsPwDy+sWQrXNElTGHWUbPf98FWABFmABFmABFmABFmABFmABFmABFmABFmABFmABFmABFmABVnxgVeL+mU4QHw5o14vv5VtcA2MDIAEswAIswCKABViABViABViABVgEsAALsACLABZgARZgVR9YwTLYpv60y0UGhHoCVlRN7WGOwWqNscZ4nzIGy6YmfkuhYMmAbpua6TbHuk0Ndtv9q1SwvF7iBMv1++77LCjl+vn6Ur7F91mHAAuwAAuwAAuwAAuwAAuwAAuwAAuwAAuwAAuwAAuwAAuwAKvawbKtSe7DYqohbol3v0JrunfniyLiNfX15YusHD9f2+PZZnum/fPh9bo+PwghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQgghhBBCCCGEEEIIIYQQQkg++R9JijgXEovhpwAAAABJRU5ErkJggg== 341" alt="" /> 342 343 344 </section> 345 346</div> 347</section> 348 <footer> 349 <div id="copyright"> 350 <p> 351 Hosted by <a href="https://cloud.tencent.com/product/lighthouse" rel="nofollow" title="è½»éåºç¨æå¡å¨ï¼TencentCloud Lighthouseï¼æ¯æ°ä¸ä»£å¼ç®±å³ç¨ãé¢åè½»éåºç¨åºæ¯çäºæå¡å¨äº§å"><span 352 353><del>è ¾è®¯äºè½»éåºç¨æå¡å¨</del></span></a> 354 355 <br />
356 æ¬ç«ç¹ç± <a href="http://www.typecho.org/" rel="nofollow" title="Typecho Offical Homepage">Typecho</a> 强åé©±å¨ 357 358 <!-- 359 <a href="http://www.gracecode.com/rss.xml"> 360 <img src="http://feeds.feedburner.com/~fc/gracecode" alt="rss count" /> 361 </a> 362 <a href="http://www.apple.com/getamac/" title="Get a Mac" ref="nofollow"> 363 <img src="http://files.gracecode.com/2012_10_15/1350272062.png" 364 alt="Get a Mac" /> 365 </a> 366 --> 367 </p> 368 </div> 369 370 <div id="footnote"> 371 <p> 372 © 2006 - 2026 ç¡æ¨é¡ææª 373 374<a href="https://follow.it/a6wlkt?pub" style="background:none;" title="follow me on follow.it!"> 375<img style="display:inline;height:1.1em;width:1.1em;" src="/usr/themes/untitled/followit.png" /> 376 377</a> 378 379 </p> 380 381 <p style="font-size:small;"> 382 383æ¬ç«æ é¢ä»¥åé¨åå å®¹ä½¿ç¨ <a href="https://github.com/lxgw/LxgwWenKai" title="Github Project">éé¹ææ¥·</a> åä½ï¼é常æè°¢ï¼ 384 385 </p> 386 387 </div> 388 </footer> 389 <div class="hidden"> 390 <!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 65 bytes, lines 390-391
390 391 <script async src="https://www.googletagmanager.com/gtag/js?id=
391UA-2634498-1
vendor: 13 bytes, lines 391-392
391"></script> 392
392<script> 393
vendor: 130 bytes, lines 393-396
393window.dataLayer = window.dataLayer || []; 394 function gtag(){dataLayer.push(arguments);} 395 gtag('js', new Date()); 396 gtag('config', '
396UA-2634498-1
vendor: 5 bytes, lines 396-397
396'); 397
397</script>
397 398 </div> 399
399<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"db85694e1d274ddba65ed082748ff881","r":1,"spa":2}' crossorigin="anonymous"></script>
399 400</body> 401</html> 402
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.