-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
32 lines (31 loc) · 137 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<!doctypehtml><html lang=zh-CN><meta charset=UTF-8><meta content=width=device-width name=viewport><meta content=#1b1f2e name=theme-color><meta content="Hexo 7.3.0" name=generator><link crossorigin href=https://fonts.googleapis.com rel=preconnect><link crossorigin href=https://cdnjs.cloudflare.com rel=preconnect><link href=/images/apple-touch-icon-next.png rel=apple-touch-icon sizes=180x180><link href=/images/favicon-32x32-next.png rel=icon sizes=32x32 type=image/png><link href=/images/favicon-16x16-next.png rel=icon sizes=16x16 type=image/png><link color=#1b1f2e href=/images/logo.svg rel=mask-icon><style>:root{--body-bg-color:#fff;--content-bg-color:#f5f5f5;--card-bg-color:#f5f5f5;--text-color:#555;--selection-bg:#262a30;--selection-color:#eee;--blockquote-color:#666;--link-color:#555;--link-hover-color:#222;--brand-color:#222;--brand-hover-color:#222;--table-row-odd-bg-color:#f9f9f9;--table-row-hover-bg-color:#f5f5f5;--menu-item-bg-color:#ddd;--theme-color:#1b1f2e;--btn-default-bg:transparent;--btn-default-color:var(--link-color);--btn-default-border-color:var(--link-color);--btn-default-hover-bg:transparent;--btn-default-hover-color:var(--link-hover-color);--btn-default-hover-border-color:var(--link-hover-color);--highlight-background:#f3f3f3;--highlight-foreground:#444;--highlight-gutter-background:#e1e1e1;--highlight-gutter-foreground:#555;color-scheme:light}html{line-height:1.15;-webkit-text-size-adjust:100%}details,main{display:block}pre{font-size:1em;overflow:auto;padding:10px}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:ButtonText dotted 1px}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}.table-container,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]{outline-offset:-2px;-webkit-appearance:textfield}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}summary{display:list-item}[hidden],template{display:none}::selection{background:var(--selection-bg);color:var(--selection-color)}body,html{height:100%}body{margin:0;background:var(--body-bg-color);box-sizing:border-box;color:var(--text-color);font-family:Lato,'PingFang SC','Microsoft YaHei',sans-serif;font-size:1em;line-height:2;min-height:100%;position:relative;transition:padding .2s ease-in-out}h1,h2,h3,h4,h5,h6{font-family:Lato,'PingFang SC','Microsoft YaHei',sans-serif;font-weight:700;line-height:1.5;margin:30px 0 15px}h1{font-size:1.5em}h2{font-size:1.375em}h3{font-size:1.25em}h4{font-size:1.125em}h5{font-size:1em}h6{font-size:.875em}p{margin:0 0 20px}a{background:0 0;border-bottom:1px solid #ccc;color:var(--link-color);cursor:pointer;outline:0;text-decoration:none;overflow-wrap:break-word}a:hover{border-bottom-color:var(--link-hover-color);color:var(--link-hover-color)}embed,iframe,img,video{display:block;margin-left:auto;margin-right:auto;max-width:100%}hr{box-sizing:content-box;overflow:visible;background-image:repeating-linear-gradient(-45deg,#ddd,#ddd 4px,transparent 4px,transparent 8px);border:0}blockquote{border-left:4px solid #ddd;color:var(--blockquote-color);margin:0;padding:0 15px}blockquote cite::before{content:'-';padding:0 5px}dt{font-weight:700}dd{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0;font-size:.875em;margin:0 0 20px;width:100%}tbody tr:nth-of-type(odd){background:var(--table-row-odd-bg-color)}tbody tr:hover{background:var(--table-row-hover-bg-color)}caption,td,th{padding:8px}td,th{border:1px solid #ddd;border-bottom:3px solid #ddd}th{font-weight:700;padding-bottom:10px}td{border-bottom-width:1px}.btn{background:var(--btn-default-bg);border:2px solid var(--btn-default-border-color);border-radius:0;color:var(--btn-default-color);display:inline-block;font-size:.875em;line-height:2;transition:background-color .2s ease-in-out}.btn:hover{background:var(--btn-default-hover-bg);border-color:var(--btn-default-hover-border-color);color:var(--btn-default-hover-color)}.btn+.btn{margin:0 0 8px 8px}.btn .fa-fw{text-align:left;width:1.285714285714286em}.toggle{line-height:0}.toggle .toggle-line{background:#fff;display:block;height:2px;left:0;position:relative;top:0;transition:left .4s,opacity .4s,top .4s,transform .4s,width .4s;width:100%}.toggle .toggle-line:first-child{margin-top:1px}.toggle .toggle-line:not(:first-child){margin-top:4px}.toggle.toggle-arrow :first-child{top:2px;transform:rotate(-45deg);width:50%}.toggle.toggle-arrow :last-child{top:-2px;transform:rotate(45deg);width:50%}.toggle.toggle-close :nth-child(2){opacity:0}.toggle.toggle-close :first-child{top:6px;transform:rotate(-45deg)}.toggle.toggle-close :last-child{top:-6px;transform:rotate(45deg)}/*!
Theme: Default
Description: Original highlight.js style
Author: (c) Ivan Sagalaev <[email protected]>
Maintainer: @highlightjs/core-team
Website: https://highlightjs.org/
License: see project LICENSE
Touched: 2021
*/pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{background:#f3f3f3;color:#444}.hljs-comment{color:#697070}.hljs-punctuation,.hljs-tag{color:#444a}.hljs-tag .hljs-attr,.hljs-tag .hljs-name{color:#444}.hljs-attribute,.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-name,.hljs-selector-tag{font-weight:700}.hljs-deletion,.hljs-number,.hljs-quote,.hljs-selector-class,.hljs-selector-id,.hljs-string,.hljs-template-tag,.hljs-type{color:#800}.hljs-section,.hljs-title{color:#800;font-weight:700}.hljs-link,.hljs-operator,.hljs-regexp,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-symbol,.hljs-template-variable,.hljs-variable{color:#ab5656}.hljs-literal{color:#695}.hljs-addition,.hljs-built_in,.hljs-bullet,.hljs-code{color:#397300}.hljs-meta{color:#1f7199}.hljs-meta .hljs-string{color:#38a}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}pre[class*=language-].line-numbers{position:relative;padding-left:3.8em;counter-reset:linenumber}pre[class*=language-].line-numbers>code{position:relative;white-space:inherit}.line-numbers .line-numbers-rows{position:absolute;pointer-events:none;top:0;font-size:100%;left:-3.8em;width:3em;letter-spacing:-1px;border-right:1px solid #999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.line-numbers-rows>span{display:block;counter-increment:linenumber}.line-numbers-rows>span:before{content:counter(linenumber);color:#999;display:block;padding-right:.8em;text-align:right}.code-container:hover .copy-btn,.highlight:hover .copy-btn{opacity:1}.code-container{position:relative}.copy-btn{color:#333;cursor:pointer;line-height:1.6;opacity:0;padding:2px 6px;position:absolute;transition:opacity .2s ease-in-out;background-color:#eee;background-image:linear-gradient(#fcfcfc,#eee);border:1px solid #d5d5d5;border-radius:3px;font-size:.8125em;right:4px;top:8px}.expand-btn{bottom:0;color:var(--highlight-foreground);cursor:pointer;display:none;left:0;right:0;position:absolute;text-align:center}.fold-cover{background-image:linear-gradient(to top,var(--highlight-background) 0,rgba(0,0,0,0) 100%);bottom:0;display:none;height:50px;left:0;right:0;position:absolute}.highlight-fold{max-height:500px;overflow-y:hidden!important}.highlight-fold .expand-btn,.highlight-fold .fold-cover{display:block}code,figure.highlight,kbd,pre{background:var(--highlight-background);color:var(--highlight-foreground)}figure.highlight,pre{line-height:1.6;margin:0 auto 20px}figure.highlight figcaption,pre .caption{background:var(--highlight-gutter-background);color:var(--highlight-foreground);display:flow-root;font-size:.875em;line-height:1.2;padding:.5em}figure.highlight figcaption a,pre .caption a{color:var(--highlight-foreground);float:right}figure.highlight figcaption a:hover,pre .caption a:hover{border-bottom-color:var(--highlight-foreground)}code,pre{font-family:consolas,Menlo,monospace,'PingFang SC','Microsoft YaHei'}code{border-radius:3px;font-size:.875em;padding:2px 4px;overflow-wrap:break-word;color:#ff1493;background-color:transparent}kbd{border:2px solid #ccc;border-radius:.2em;box-shadow:.1em .1em .2em rgba(0,0,0,.1);font-family:inherit;padding:.1em .3em;white-space:nowrap}figure.highlight{overflow:auto;position:relative}figure.highlight pre{border:0;margin:0;padding:10px 0}figure.highlight table{border:0;margin:0;width:auto}figure.highlight td{border:0;padding:0}figure.highlight .gutter{-webkit-user-select:none;user-select:none}figure.highlight .gutter pre{background:var(--highlight-gutter-background);color:var(--highlight-gutter-foreground);padding-left:10px;padding-right:10px;text-align:right}figure.highlight .code pre{padding-left:10px;width:100%}figure.highlight .marked{background:rgba(0,0,0,.3)}pre .caption{margin-bottom:10px}.gist table{width:auto}.gist table td{border:0}pre code{background:0 0;padding:0;text-shadow:none}.blockquote-center{border-left:0;margin:40px 0;padding:0;position:relative;text-align:center}.blockquote-center::after,.blockquote-center::before{left:0;line-height:1;opacity:.6;position:absolute;width:100%}.blockquote-center::before{border-top:1px solid #ccc;text-align:left;top:-20px;content:'\f10d';font-family:'Font Awesome 6 Free';font-weight:900}.blockquote-center::after{border-bottom:1px solid #ccc;bottom:-20px;text-align:right;content:'\f10e';font-family:'Font Awesome 6 Free';font-weight:900}.blockquote-center div,.blockquote-center p{text-align:center}.group-picture{margin-bottom:20px}.group-picture .group-picture-row{display:flex;gap:3px;margin-bottom:3px}.group-picture .group-picture-column{flex:1}.group-picture .group-picture-column img{height:100%;margin:0;object-fit:cover;width:100%}.post-body .label{color:#555;padding:0 2px}.post-body .label.default{background:#f0f0f0}.post-body .label.primary{background:#efe6f7}.post-body .label.info{background:#e5f2f8}.post-body .label.success{background:#e7f4e9}.post-body .label.warning{background:#fcf6e1}.post-body .label.danger{background:#fae8eb}.post-body .link-grid{display:grid;grid-gap:1.5rem;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-bottom:20px;padding:1rem}.post-body .link-grid .link-grid-container{border:solid #ddd;box-shadow:1rem 1rem .5rem rgba(0,0,0,.5);min-height:5rem;min-width:0;padding:.5rem;position:relative;transition:background .3s}.post-body .link-grid .link-grid-container:hover{animation:.5s next-shake;background:var(--card-bg-color)}.post-body .link-grid .link-grid-container:active{box-shadow:.5rem .5rem .25rem rgba(0,0,0,.5);transform:translate(.2rem,.2rem)}.post-body .link-grid .link-grid-container .link-grid-image{border:1px solid #ddd;border-radius:50%;box-sizing:border-box;height:5rem;padding:3px;position:absolute;width:5rem}.post-body .link-grid .link-grid-container p{margin:0 1rem 0 6rem}.post-body .link-grid .link-grid-container p:first-of-type{font-size:1.2em}.post-body .link-grid .link-grid-container p:last-of-type{font-size:.8em;line-height:1.3rem;opacity:.7}.post-body .link-grid .link-grid-container a{border:0;height:100%;left:0;position:absolute;top:0;width:100%}@keyframes next-shake{0%{transform:translate(1pt,1pt) rotate(0)}10%{transform:translate(-1pt,-2pt) rotate(-1deg)}20%{transform:translate(-3pt,0) rotate(1deg)}30%{transform:translate(3pt,2pt) rotate(0)}40%{transform:translate(1pt,-1pt) rotate(1deg)}50%{transform:translate(-1pt,2pt) rotate(-1deg)}60%{transform:translate(-3pt,1pt) rotate(0)}70%{transform:translate(3pt,1pt) rotate(-1deg)}80%{transform:translate(-1pt,-1pt) rotate(1deg)}90%{transform:translate(1pt,2pt) rotate(0)}100%{transform:translate(1pt,-2pt) rotate(-1deg)}}.mermaid{margin-bottom:20px;text-align:center}.post-body .note{border-radius:3px;margin-bottom:20px;padding:1em;position:relative;border:1px solid #eee;border-left-width:5px}.post-body .note summary{cursor:pointer;outline:0}.post-body .note summary p{display:inline}.post-body .note h2,.post-body .note h3,.post-body .note h4,.post-body .note h5,.post-body .note h6{border-bottom:initial;margin:0;padding-top:0}.post-body .note :first-child{margin-top:0}.post-body .note :last-child{margin-bottom:0}.post-body .note.default{border-left-color:#777}.post-body .note.default h2,.post-body .note.default h3,.post-body .note.default h4,.post-body .note.default h5,.post-body .note.default h6{color:#777}.post-body .note.primary{border-left-color:#6f42c1}.post-body .note.primary h2,.post-body .note.primary h3,.post-body .note.primary h4,.post-body .note.primary h5,.post-body .note.primary h6{color:#6f42c1}.post-body .note.info{border-left-color:#428bca}.post-body .note.info h2,.post-body .note.info h3,.post-body .note.info h4,.post-body .note.info h5,.post-body .note.info h6{color:#428bca}.post-body .note.success{border-left-color:#5cb85c}.post-body .note.success h2,.post-body .note.success h3,.post-body .note.success h4,.post-body .note.success h5,.post-body .note.success h6{color:#5cb85c}.post-body .note.warning{border-left-color:#f0ad4e}.post-body .note.warning h2,.post-body .note.warning h3,.post-body .note.warning h4,.post-body .note.warning h5,.post-body .note.warning h6{color:#f0ad4e}.post-body .note.danger{border-left-color:#d9534f}.post-body .note.danger h2,.post-body .note.danger h3,.post-body .note.danger h4,.post-body .note.danger h5,.post-body .note.danger h6{color:#d9534f}.post-body .tabs{margin-bottom:20px}.post-body .tabs,.tabs-comment{padding-top:10px}.post-body .tabs ul.nav-tabs,.tabs-comment ul.nav-tabs{background:var(--body-bg-color);display:flex;display:flex;flex-wrap:wrap;justify-content:center;margin:0;padding:0;position:sticky;top:0;z-index:5}.post-body .tabs ul.nav-tabs li.tab,.tabs-comment ul.nav-tabs li.tab{border-bottom:1px solid #ddd;border-left:1px solid transparent;border-right:1px solid transparent;border-radius:0;border-top:3px solid transparent;flex-grow:1;list-style-type:none}@media (max-width:413px){.post-body .tabs ul.nav-tabs,.tabs-comment ul.nav-tabs{display:block;margin-bottom:5px}.post-body .tabs ul.nav-tabs li.tab,.tabs-comment ul.nav-tabs li.tab{border-bottom:1px solid transparent;border-left:3px solid transparent;border-right:1px solid transparent;border-top:1px solid transparent;border-radius:0}}.post-body .tabs ul.nav-tabs li.tab a,.tabs-comment ul.nav-tabs li.tab a{border-bottom:initial;display:block;line-height:1.8;padding:.25em .75em;text-align:center;transition:.2s ease-out}.post-body .tabs ul.nav-tabs li.tab a i[class^=fa],.tabs-comment ul.nav-tabs li.tab a i[class^=fa]{width:1.285714285714286em}.post-body .tabs ul.nav-tabs li.tab.active,.tabs-comment ul.nav-tabs li.tab.active{border-color:#fc6423 #ddd transparent}@media (max-width:413px){.post-body .tabs ul.nav-tabs li.tab.active,.tabs-comment ul.nav-tabs li.tab.active{border-color:#ddd #ddd #ddd #fc6423}}.post-body .tabs ul.nav-tabs li.tab.active a,.tabs-comment ul.nav-tabs li.tab.active a{cursor:default}.post-body .tabs .tab-content,.tabs-comment .tab-content{border:1px solid #ddd;border-radius:0;border-top-color:transparent}@media (max-width:413px){.post-body .tabs .tab-content,.tabs-comment .tab-content{border-radius:0;border-top-color:#ddd}}.post-body .tabs .tab-content .tab-pane,.tabs-comment .tab-content .tab-pane{padding:20px 20px 0}.post-body .tabs .tab-content .tab-pane:not(.active),.tabs-comment .tab-content .tab-pane:not(.active){display:none}.pagination .next,.pagination .page-number,.pagination .prev,.pagination .space{display:inline-block;margin:-1px 10px 0;padding:0 10px}.pagination .page-number.current{background:#ccc;border-color:#ccc;color:var(--content-bg-color)}.pagination{border-top:1px solid #eee;margin:120px 0 0;text-align:left}.pagination .next,.pagination .page-number,.pagination .prev{border-bottom:0;border-top:1px solid #eee;transition:border-color .2s ease-in-out}.pagination .next:hover,.pagination .page-number:hover,.pagination .prev:hover{border-top-color:var(--link-hover-color)}@media (max-width:767px){.pagination .next,.pagination .page-number,.pagination .prev,.pagination .space{margin:0 5px}.pagination{border-top:0}.pagination .next,.pagination .page-number,.pagination .prev{border-bottom:1px solid #eee;border-top:0}.pagination .next:hover,.pagination .page-number:hover,.pagination .prev:hover{border-bottom-color:var(--link-hover-color)}.site-meta{text-align:center}}.pagination .space{margin:0;padding:0}.comments{margin-top:60px;overflow:hidden}.comment-button-group{display:flex;display:flex;flex-wrap:wrap;justify-content:center;justify-content:center;margin:1em 0}.comment-button-group .comment-button{margin:.1em .2em}.comment-button-group .comment-button.active{background:var(--btn-default-hover-bg);border-color:var(--btn-default-hover-border-color);color:var(--btn-default-hover-color)}.comment-position{display:none}.comment-position.active{display:block}.tabs-comment{margin-top:4em;padding-top:0}.tabs-comment .comments{margin-top:0;padding-top:0}.headband{background:var(--theme-color);height:3px}@media (max-width:991px){.headband{display:none}}.site-brand-container{display:flex;flex-shrink:0;padding:0 10px}.use-motion .column,.use-motion .site-brand-container .toggle{opacity:0}.site-meta{flex-grow:1;text-align:center}.custom-logo-image{margin-top:20px}@media (max-width:991px){.custom-logo-image{display:none}}.brand{border-bottom:0;color:var(--brand-color);display:inline-block;padding:2px 1px}.brand:hover{color:var(--brand-hover-color)}.site-title{font-family:Lato,'PingFang SC','Microsoft YaHei',sans-serif;font-size:1.375em;font-weight:400;line-height:1.5;margin:0}.site-subtitle{color:#999;font-size:.8125em;margin:10px 0}.use-motion .custom-logo-image,.use-motion .site-subtitle,.use-motion .site-title{opacity:0;position:relative;top:-10px}.site-nav-right,.site-nav-toggle{display:none}.site-nav-right .toggle,.site-nav-toggle .toggle{color:var(--text-color);padding:10px;width:22px}.site-nav-right .toggle .toggle-line,.site-nav-toggle .toggle .toggle-line{background:var(--text-color);border-radius:1px}@media (max-width:767px){.site-nav-right,.site-nav-toggle{display:flex;flex-direction:column;justify-content:center}.site-nav{--scroll-height:0;height:0;overflow:hidden;transition:height .2s ease-in-out,visibility .2s ease-in-out;visibility:hidden}body:not(.site-nav-on) .site-nav .animated{animation:none}body.site-nav-on .site-nav{height:var(--scroll-height);visibility:unset}}.menu{margin:0;text-align:center}.menu-item{display:inline-block;list-style:none;margin:0 10px}@media (max-width:767px){.menu-item{display:block;margin-top:10px}.menu-item.menu-item-search{display:none}}.menu-item a{border-bottom:0;display:block;font-size:.8125em;transition:border-color .2s ease-in-out}.menu-item a.menu-item-active,.menu-item a:hover{background:var(--menu-item-bg-color)}.menu-item i[class^=fa]{margin-right:8px}.menu-item .badge{background:#fff;border-radius:10px;color:#555;font-weight:700;line-height:1;margin-left:.35em;padding:1px 4px;text-shadow:1px 1px 0 rgba(0,0,0,.1)}.use-motion .menu-item{visibility:hidden}.sidebar{right:-320px;background:#222;bottom:0;box-shadow:inset 0 2px 6px #000;max-height:100vh;overflow-y:auto;position:fixed;top:0;transition:left .2s ease-out,right .2s ease-out;width:320px;z-index:20}.sidebar-active .sidebar{right:0}.sidebar a{border-bottom-color:#555;color:#999}.sidebar a:hover{border-bottom-color:#eee;color:#eee}.links-of-author:not(:first-child){margin-top:15px}.links-of-author a{border-bottom-color:#555;display:inline-block;margin-bottom:10px;margin-right:10px;vertical-align:middle;transition:.2s ease-in-out;font-size:.8125em}.links-of-author a::before{background:#ff26ff;display:inline-block;margin-right:3px;transform:translateY(-2px);border-radius:50%;content:' ';height:4px;width:4px}.links-of-blogroll-item{padding:0 5px}.popular-posts .popular-posts-item .popular-posts-link:hover{background:0 0}.sidebar-dimmer{background:#000;height:100%;left:0;opacity:0;position:fixed;top:0;transition:visibility .4s,opacity .4s;visibility:hidden;width:100%;z-index:10}.sidebar-active .sidebar-dimmer{opacity:.7;visibility:visible}.sidebar-inner{color:#999;padding:18px 10px;text-align:center;display:flex;flex-direction:column;justify-content:center}.sidebar-toggle{bottom:61px;height:16px;padding:5px;width:16px;background:#222;cursor:pointer;opacity:.8;position:fixed;z-index:30;right:30px}.sidebar-toggle:hover{opacity:1}@media (max-width:991px){.sidebar-toggle{right:20px;opacity:1}}.sidebar-toggle:hover .toggle-line{background:#87daff}@media (any-hover:hover){body:not(.sidebar-active) .sidebar-toggle:hover :first-child{top:2px;transform:rotate(-45deg);width:50%}body:not(.sidebar-active) .sidebar-toggle:hover :last-child{top:-2px;transform:rotate(45deg);width:50%}}.sidebar-active .sidebar-toggle :nth-child(2){opacity:0}.sidebar-active .sidebar-toggle :first-child{top:6px;transform:rotate(-45deg)}.sidebar-active .sidebar-toggle :last-child{top:-6px;transform:rotate(45deg)}.sidebar-nav{font-size:.875em;height:0;margin:0;overflow:hidden;padding-left:0;pointer-events:none;transition:height .2s ease-in-out,visibility .2s ease-in-out;visibility:hidden}.sidebar-nav-active .sidebar-nav{height:calc(2em + 1px);pointer-events:unset;visibility:unset}.sidebar-nav li{border-bottom:1px solid transparent;color:#666;cursor:pointer;display:inline-block;transition:border-bottom-color .2s ease-in-out,color .2s ease-in-out}.sidebar-nav li.sidebar-nav-overview{margin-left:10px}.sidebar-nav li:hover{color:#f5f5f5}.sidebar-overview-active .sidebar-nav-overview,.sidebar-toc-active .sidebar-nav-toc{border-bottom-color:#87daff;color:#87daff;transition-delay:0.2s}.sidebar-overview-active .sidebar-nav-overview:hover,.sidebar-toc-active .sidebar-nav-toc:hover{color:#87daff}.sidebar-panel-container{align-items:start;display:grid;flex:1;overflow-x:hidden;overflow-y:auto;padding-top:0;transition:padding-top .2s ease-in-out}.sidebar-nav-active .sidebar-panel-container{padding-top:20px}.sidebar-panel{animation:.2s ease-in-out deactivate-sidebar-panel;grid-area:1/1;height:0;opacity:0;overflow:hidden;pointer-events:none;transform:translateY(0);transition:.2s ease-in-out;transition-property:opacity,transform,visibility;visibility:hidden}.sidebar-nav-active .sidebar-panel,.sidebar-overview-active .sidebar-panel.post-toc-wrap{transform:translateY(-20px)}.sidebar-overview-active:not(.sidebar-nav-active) .sidebar-panel.post-toc-wrap{transition-delay:0s,0.2s,0s}.sidebar-overview-active .sidebar-panel.site-overview-wrap,.sidebar-toc-active .sidebar-panel.post-toc-wrap{animation-name:activate-sidebar-panel;height:auto;opacity:1;pointer-events:unset;transform:translateY(0);transition-delay:0.2s,0.2s,0s;visibility:unset}.sidebar-panel.site-overview-wrap{display:flex;flex-direction:column;justify-content:center;gap:10px;justify-content:flex-start}@keyframes deactivate-sidebar-panel{from{height:var(--inactive-panel-height,0)}to{height:var(--active-panel-height,0)}}@keyframes activate-sidebar-panel{from{height:var(--inactive-panel-height,auto)}to{height:var(--active-panel-height,auto)}}.post-toc{font-size:.875em}.post-toc ol{list-style:none;margin:0;padding:0 2px 0 10px;text-align:left}.post-toc ol>:last-child{margin-bottom:5px}.post-toc ol>ol{padding-left:0}.post-toc ol a{transition:.2s ease-in-out}.post-toc .nav-item{line-height:1.8;overflow:hidden;text-overflow:ellipsis}.post-toc .nav .nav-child{--height:0;height:0;opacity:0;overflow:hidden;transition:.2s ease-in-out;visibility:hidden}.post-toc .nav .active>.nav-child{height:var(--height,auto);opacity:1;visibility:unset}.post-toc .nav .active>a{border-bottom-color:#87daff;color:#87daff}.post-toc .nav .active-current>a,.post-toc .nav .active-current>a:hover{color:#87daff}.site-author-image{border:2px solid #333;max-width:96px;padding:2px}.site-author-name{color:#f5f5f5;font-weight:400;margin:5px 0 0}.site-description{color:#999;font-size:1em;margin-top:5px}.site-state{display:flex;flex-wrap:wrap;justify-content:center;line-height:1.4}.site-state-item{padding:0 15px}.site-state-item a{border-bottom:0;display:block}.site-state-item-count{display:block;font-size:1.25em;font-weight:600}.site-state-item-name{color:inherit;font-size:.875em}.sidebar .sidebar-button:not(:first-child){margin-top:15px}.sidebar .sidebar-button button{background:0 0;color:#fc6423;cursor:pointer;line-height:2;padding:0 15px;border:1px solid #fc6423;border-radius:4px}.sidebar .sidebar-button button:hover{background:#fc6423;color:#fff}.sidebar .sidebar-button button i[class^=fa]{margin-right:5px}.cc-license .cc-opacity{border-bottom:0;opacity:.7}.cc-license .cc-opacity:hover{opacity:.9}.cc-license img{display:inline-block}.links-of-blogroll{font-size:.8125em}.links-of-blogroll-title{font-size:.875em;font-weight:600}.links-of-blogroll-list{list-style:none;gap:5px;margin:5px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;flex-direction:column}.links-of-blogroll-item{max-width:calc(100% - 20px)}.links-of-blogroll-item a{box-sizing:border-box;display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.footer{color:#999;font-size:.875em;transition:left .2s ease-in-out,right .2s ease-in-out}.footer.footer-fixed{bottom:0;left:0;position:absolute;right:0}.footer-inner{box-sizing:border-box;text-align:left;display:flex;flex-direction:column;justify-content:center;margin:0 auto;width:65%}@media (max-width:767px){.footer-inner{width:auto}}@media (min-width:1600px){.footer-inner{width:65%}}.use-motion .footer{opacity:0}.languages{display:inline-block;font-size:1.125em;position:relative}.languages .lang-select-label span{margin:0 .5em}.languages .lang-select{height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.with-love{color:red;display:inline-block;margin:0 5px;animation:1.33s ease-in-out infinite icon-animate}.busuanzi-count #busuanzi_container_site_pv,.busuanzi-count #busuanzi_container_site_uv{display:none}@keyframes icon-animate{0%,100%{transform:scale(1)}10%,30%{transform:scale(.9)}20%,40%,50%,60%,70%,80%{transform:scale(1.1)}}.back-to-top{font-size:12px;align-items:center;bottom:-100px;color:#fff;display:flex;height:26px;transition:bottom .2s ease-in-out;background:#222;cursor:pointer;opacity:.8;position:fixed;z-index:30;right:30px}.back-to-top span{margin-right:8px}.back-to-top .fa{text-align:center;width:26px}.back-to-top:hover{opacity:1;color:#87daff}.back-to-top.back-to-top-on{bottom:30px}.rtl.post-body a,.rtl.post-body h1,.rtl.post-body h2,.rtl.post-body h3,.rtl.post-body h4,.rtl.post-body h5,.rtl.post-body h6,.rtl.post-body li,.rtl.post-body ol,.rtl.post-body p,.rtl.post-body ul{direction:rtl;font-family:UKIJ Ekran}.rtl.post-title{font-family:UKIJ Ekran}.post-button{text-align:left}.use-motion .collection-header,.use-motion .comments,.use-motion .pagination,.use-motion .post-block,.use-motion .post-body,.use-motion .post-header{visibility:hidden}.posts-collapse .post-content{margin-bottom:35px;margin-left:35px;position:relative}@media (max-width:767px){.posts-collapse .post-content{margin-left:0;margin-right:0}}.posts-collapse .post-content .collection-title{font-size:1.125em;position:relative}.posts-collapse .post-content .collection-title::before{background:#999;border:1px solid #fff;margin-left:-6px;margin-top:-4px;position:absolute;top:50%;border-radius:50%;content:' ';height:10px;width:10px}.posts-collapse .post-content .collection-year{font-size:1.5em;font-weight:700;margin:60px 0;position:relative}.posts-collapse .post-content .collection-year .collection-year-count{font-size:.75em;background:#fff;border-radius:10px;color:#555;font-weight:700;line-height:1;margin-left:.35em;padding:1px 4px;text-shadow:1px 1px 0 rgba(0,0,0,.1)}.posts-collapse .post-content .collection-year::before{background:#bbb;margin-left:-4px;margin-top:-4px;position:absolute;top:50%;border-radius:50%;content:' ';height:8px;width:8px}.posts-collapse .post-content .collection-header{display:block;margin-left:20px}.posts-collapse .post-content .collection-header small{color:#bbb;margin-left:5px}.posts-collapse .post-content .post-header{border-bottom:1px dashed #ccc;margin:30px 2px 0;padding-left:15px;position:relative;transition:border .2s ease-in-out}.posts-collapse .post-content .post-header::before{background:#bbb;border:1px solid #fff;left:-6px;position:absolute;top:.75em;transition:background .2s ease-in-out;border-radius:50%;content:' ';height:6px;width:6px}.posts-collapse .post-content .post-header:hover{border-bottom-color:#666}.posts-collapse .post-content .post-header:hover::before{background:#222}.posts-collapse .post-content .post-meta-container{display:inline;font-size:.75em;margin-right:10px}.posts-collapse .post-content .post-title{display:inline}.posts-collapse .post-content .post-title a{border-bottom:0;color:var(--link-color)}.posts-collapse .post-content .post-title .fa{font-size:.875em;margin-left:5px}.posts-collapse .post-content::before{background:#f5f5f5;content:' ';height:100%;margin-left:-2px;position:absolute;top:1.25em;width:4px}.post-body{font-family:Lato,'PingFang SC','Microsoft YaHei',sans-serif;overflow-wrap:break-word}@media (min-width:1200px){.footer-inner{width:65%}.post-body{font-size:1.125em}}@media (min-width:992px){.post-body{text-align:justify}}.post-body h1 .header-anchor,.post-body h1 .headerlink,.post-body h2 .header-anchor,.post-body h2 .headerlink,.post-body h3 .header-anchor,.post-body h3 .headerlink,.post-body h4 .header-anchor,.post-body h4 .headerlink,.post-body h5 .header-anchor,.post-body h5 .headerlink,.post-body h6 .header-anchor,.post-body h6 .headerlink{border-bottom-style:none;color:inherit;float:right;font-size:.875em;margin-left:10px;opacity:0}.post-body h1 .header-anchor::before,.post-body h1 .headerlink::before,.post-body h2 .header-anchor::before,.post-body h2 .headerlink::before,.post-body h3 .header-anchor::before,.post-body h3 .headerlink::before,.post-body h4 .header-anchor::before,.post-body h4 .headerlink::before,.post-body h5 .header-anchor::before,.post-body h5 .headerlink::before,.post-body h6 .header-anchor::before,.post-body h6 .headerlink::before{content:'\f0c1';font-family:'Font Awesome 6 Free';font-weight:900}.post-body h1:hover .header-anchor,.post-body h1:hover .headerlink,.post-body h2:hover .header-anchor,.post-body h2:hover .headerlink,.post-body h3:hover .header-anchor,.post-body h3:hover .headerlink,.post-body h4:hover .header-anchor,.post-body h4:hover .headerlink,.post-body h5:hover .header-anchor,.post-body h5:hover .headerlink,.post-body h6:hover .header-anchor,.post-body h6:hover .headerlink{opacity:.5}.post-body h1:hover .header-anchor:hover,.post-body h1:hover .headerlink:hover,.post-body h2:hover .header-anchor:hover,.post-body h2:hover .headerlink:hover,.post-body h3:hover .header-anchor:hover,.post-body h3:hover .headerlink:hover,.post-body h4:hover .header-anchor:hover,.post-body h4:hover .headerlink:hover,.post-body h5:hover .header-anchor:hover,.post-body h5:hover .headerlink:hover,.post-body h6:hover .header-anchor:hover,.post-body h6:hover .headerlink:hover{opacity:1}.post-body .exturl .fa{font-size:.875em;margin-left:4px}.post-body figure:not(.highlight) figcaption{color:#999;font-size:.875em;font-weight:700;line-height:1;margin:-15px auto 15px;text-align:center}.post-body embed,.post-body iframe,.post-body img,.post-body video{margin-bottom:20px}.post-body .video-container{height:0;margin-bottom:20px;overflow:hidden;padding-top:75%;position:relative;width:100%}.post-body .video-container embed,.post-body .video-container iframe,.post-body .video-container object{height:100%;left:0;margin:0;position:absolute;top:0;width:100%}.post-gallery{display:flex;min-height:200px}.post-gallery .post-gallery-image{flex:1}.post-gallery .post-gallery-image:not(:first-child){clip-path:polygon(40px 0,100% 0,100% 100%,0 100%);margin-left:-20px}.post-gallery .post-gallery-image:not(:last-child){margin-right:-20px}.post-gallery .post-gallery-image img{height:100%;object-fit:cover;opacity:1;width:100%}.posts-expand .post-gallery{margin-bottom:60px}.posts-collapse .post-gallery{margin:15px 0}.posts-expand .post-header{font-size:1.125em;text-align:center}.posts-expand .post-title{font-size:1.5em;font-weight:400;margin:initial;overflow-wrap:break-word}.posts-expand .post-title-link{border-bottom:0;color:var(--link-color);display:inline-block;position:relative}.posts-expand .post-title-link::before{background:var(--link-color);bottom:0;content:'';height:2px;left:0;position:absolute;transform:scaleX(0);transition:transform .2s ease-in-out;width:100%}.posts-expand .post-title-link:hover::before{transform:scaleX(1)}.posts-expand .post-title-link .fa{font-size:.875em;margin-left:5px}.post-sticky-flag{display:inline-block;margin-right:8px;transform:rotate(30deg)}.posts-expand .post-meta-container{color:#999;font-family:Lato,'PingFang SC','Microsoft YaHei',sans-serif;font-size:.75em;margin-top:3px}.posts-expand .post-meta-container .post-description{font-size:.875em;margin-top:2px}.posts-expand .post-meta-container time{border-bottom:1px dashed #999}.post-meta{display:flex;flex-wrap:wrap;justify-content:center}:not(.post-meta-break)+.post-meta-item::before{content:'|';margin:0 .5em}.post-meta-item-icon{margin-right:3px}@media (max-width:991px){.back-to-top{right:20px;opacity:1}.post-body{text-align:justify}.post-meta-item-text{display:none}}.post-meta-break{flex-basis:100%;height:0}#busuanzi_container_page_pv{display:none}.post-nav{border-top:1px solid #eee;display:flex;gap:30px;justify-content:space-between;margin-top:1em;padding:10px 5px 0}.post-nav-item{flex:1}.post-nav-item a{border-bottom:0;display:block;font-size:.875em;line-height:1.6}.post-nav-item a:active{top:2px}.post-nav-item .fa{font-size:.75em}.post-nav-item:first-child .fa{margin-right:5px}.post-nav-item:last-child{text-align:right}.post-nav-item:last-child .fa{margin-left:5px}.post-footer{display:flex;flex-direction:column;justify-content:center}.post-eof{background:#ccc;height:1px;margin:80px auto 60px;width:8%}.post-block:last-of-type .post-eof{display:none}.post-tags{margin-top:40px;text-align:left}.post-tags a{display:inline-block;font-size:.8125em}.post-tags a:not(:last-child){margin-right:10px}.social-like{border-top:1px solid #eee;font-size:.875em;margin-top:1em;padding-top:1em;display:flex;flex-wrap:wrap;justify-content:center}.social-like a{border-bottom:none}.reward-container{margin:1em 0 0;padding:1em 0;text-align:center}.reward-container button{background:0 0;color:#87daff;cursor:pointer;line-height:2;padding:0 15px;border:2px solid #87daff;border-radius:2px;outline:0;vertical-align:text-top}.reward-container button:hover{background:#87daff;color:#fff}.post-reward{display:none;padding-top:20px}.post-reward.active{display:block}.post-reward div{display:inline-block}.post-reward div span{display:block}.post-reward img{display:inline-block;margin:.8em 2em 0;max-width:100%;width:180px}@keyframes next-roll{from{transform:rotateZ(30deg)}to{transform:rotateZ(-30deg)}}.category-all-page .category-all-title{text-align:center}.category-all-page .category-all{margin-top:20px}.category-all-page .category-list{list-style:none;margin:0;padding:0}.category-all-page .category-list-item{margin:5px 10px}.category-all-page .category-list-count{font-size:.75em;background:#fff;border-radius:10px;color:#555;font-weight:700;line-height:1;margin-left:.35em;padding:1px 4px;text-shadow:1px 1px 0 rgba(0,0,0,.1)}.category-all-page .category-list-child{padding-left:10px}.event-list hr{background:#222;margin:20px 0 45px}.event-list hr::after{background:#222;color:#fff;content:'NOW';display:inline-block;font-weight:700;padding:0 5px}.event-list .event{--event-background:#222;--event-foreground:#bbb;--event-title:#fff;background:var(--event-background);padding:15px}.event-list .event .event-summary{border-bottom:0;color:var(--event-title);margin:0;padding:0 0 0 35px;position:relative}.event-list .event .event-summary::before{animation:1s ease-in-out infinite alternate dot-flash;background:var(--event-title);left:0;margin-top:-6px;position:absolute;top:50%;border-radius:50%;content:' ';height:12px;width:12px}.event-list .event:nth-of-type(odd) .event-summary::before{animation-delay:.5s}.event-list .event:not(:last-child){margin-bottom:20px}.event-list .event .event-relative-time{color:var(--event-foreground);display:inline-block;font-size:12px;font-weight:400;padding-left:12px}.event-list .event .event-details{color:var(--event-foreground);display:block;line-height:18px;padding:6px 0 6px 35px}.event-list .event .event-details::before{color:var(--event-foreground);display:inline-block;margin-right:9px;width:14px;font-family:'Font Awesome 6 Free';font-weight:900}.event-list .event .event-details.event-location::before{content:'\f041'}.event-list .event .event-details.event-duration::before{content:'\f017'}.event-list .event .event-details.event-description::before{content:'\f024'}.event-list .event-past{--event-background:#f5f5f5;--event-foreground:#999;--event-title:#222}@keyframes dot-flash{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.8)}}ul.breadcrumb{font-size:.75em;list-style:none;margin:1em 0;padding:0 2em;text-align:center}ul.breadcrumb li{display:inline}ul.breadcrumb li:not(:first-child)::before{content:'/\00a0';font-weight:400;padding:.5em}ul.breadcrumb li:last-child{font-weight:700}.tag-cloud{text-align:center}.tag-cloud a{display:inline-block;margin:10px}.tag-cloud-0{border-bottom-color:#aaa;color:#aaa}.tag-cloud-1{border-bottom-color:#9a9a9a;color:#9a9a9a}.tag-cloud-2{border-bottom-color:#8b8b8b;color:#8b8b8b}.tag-cloud-3{border-bottom-color:#7c7c7c;color:#7c7c7c}.tag-cloud-4{border-bottom-color:#6c6c6c;color:#6c6c6c}.tag-cloud-5{border-bottom-color:#5d5d5d;color:#5d5d5d}.tag-cloud-6{border-bottom-color:#4e4e4e;color:#4e4e4e}.tag-cloud-7{border-bottom-color:#3e3e3e;color:#3e3e3e}.tag-cloud-8{border-bottom-color:#2f2f2f;color:#2f2f2f}.tag-cloud-9{border-bottom-color:#202020;color:#202020}.tag-cloud-10{border-bottom-color:#111;color:#111}.search-active{overflow:hidden}.search-pop-overlay{background:rgba(0,0,0,0);display:flex;height:100%;left:0;position:fixed;top:0;transition:visibility .4s,background .4s;visibility:hidden;width:100%;z-index:40}.search-active .search-pop-overlay{background:rgba(0,0,0,.3);visibility:visible}.search-popup{background:var(--card-bg-color);border-radius:5px;height:80%;margin:auto;transform:scale(0);transition:transform .4s;width:700px}.search-active .search-popup{transform:scale(1)}@media (max-width:767px){.search-popup{border-radius:0;height:100%;width:100%}.pagination{margin:80px 0 0;text-align:center}}.search-popup .popup-btn-close,.search-popup .search-icon{color:#999;font-size:18px;padding:0 10px}.search-popup .popup-btn-close{cursor:pointer}.search-popup .popup-btn-close:hover .fa{color:#222}.search-popup .search-header{background:#eee;border-top-left-radius:5px;border-top-right-radius:5px;display:flex;padding:5px}.search-popup input.search-input{background:0 0;border:0;outline:0;width:100%}.search-popup input.search-input::-webkit-search-cancel-button{display:none}.search-popup .search-result-container{display:flex;flex-direction:column;height:calc(100% - 55px);overflow:auto;padding:5px 25px}.search-popup .search-result-container hr{flex-shrink:0;margin:5px 0 10px}.search-popup .search-result-container hr:first-child{display:none}.search-popup .search-result-list{margin:0 5px;padding:0}.search-popup a.search-result-title{font-weight:700}.search-popup p.search-result{border-bottom:1px dashed #ccc;padding:5px 0}.search-popup .search-input-container{flex-grow:1;padding:2px}.search-popup .search-result-icon{color:#ccc;margin:auto}mark.search-keyword{background:0 0;border-bottom:1px dashed #ff2a2a;color:#ff2a2a;font-weight:700}.use-motion .animated{animation-fill-mode:none;visibility:inherit}.use-motion .sidebar .animated{animation-fill-mode:both}hr{height:2px;margin:20px 0}.btn{padding:0 10px}.headband{display:none}.footer{background:var(--content-bg-color);color:var(--text-color);padding:10px 0}.column{background:var(--content-bg-color)}header.header{align-items:center;display:flex;padding:20px 0;margin:0 auto;width:65%}.site-meta{line-height:normal}.site-meta .site-title{font-weight:bolder}.logo-line{background:var(--brand-color);display:block;height:2px;margin:0 auto;width:75%}.use-motion .logo-line:first-of-type{transform:scaleX(0);transform-origin:left}.use-motion .logo-line:last-of-type{transform:scaleX(0);transform-origin:right}.site-subtitle{display:none}.site-nav{flex-grow:1}@media (max-width:767px){.footer-inner{text-align:center}header.header{display:block;padding:10px 0}.site-meta .brand{display:block}.logo-line{display:none}.site-nav{padding:0 10px}.main-menu{padding-top:10px}}.menu{padding:0}.menu .menu-item{margin:0}.menu .menu-item a{border-radius:2px;padding:0 10px;transition-property:background}.posts-expand.index .post-header{text-align:left}@media (max-width:767px){.menu .menu-item{margin-top:5px}.menu .menu-item a{text-align:left;display:flex;align-items:center}.menu .menu-item a .badge{margin-left:auto}.posts-expand.index .post-header{text-align:center}}.posts-expand.index .post-meta-container{margin-top:5px}.posts-expand.index .post-meta{justify-content:flex-start}.posts-expand .post-eof{display:none}.posts-expand .post-block:not(:first-of-type){margin-top:120px}.posts-expand .post-header{margin-bottom:20px}.posts-expand .post-tags a{background:var(--content-bg-color);border-bottom:0;padding:1px 5px}.posts-expand .post-tags a:hover{background:var(--menu-item-bg-color)}.posts-expand .post-nav{margin-top:40px}.post-button{margin-top:20px}.post-button .btn{background:0 0;border:0;border-bottom:2px solid var(--btn-default-border-color);padding:0;transition-property:border}.post-button .btn:hover{border-bottom-color:var(--btn-default-hover-border-color)}@media (max-width:767px){.posts-expand.index .post-meta{justify-content:center}header.header{width:auto}}.main-inner{margin:0 auto;width:65%;padding-bottom:80px}@media (max-width:767px){.main-inner{width:auto;padding-left:20px;padding-right:20px}}@media (min-width:1600px){.main-inner,header.header{width:65%}}.post-block:first-of-type{padding-top:80px}@media (max-width:767px){.post-block:first-of-type{padding-top:60px}}@media (min-width:1200px){.main-inner,header.header{width:65%}.sidebar-dimmer{display:none}.sidebar-active{padding-right:320px}.sidebar-active .footer-fixed{right:320px}}.sub-menu{margin:10px 0}.sub-menu .menu-item{display:inline-block}.giscus{max-width:unset;box-sizing:border-box}.post-head,.post-title,.post-title-link{font-family:'LXGW WenKai Screen','Noto Serif SC'}</style><link as=style href=https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,300;0,400;0,700;1,300;1,400;1,700&display=swap&subset=latin,latin-ext onload=this.rel='stylesheet' rel=preload><link crossorigin href=https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.7.2/css/all.min.css integrity=sha256-dABdfBfUoC8vJUBOwGVdm8L9qlMWaHTIfXt+7GnZCIo= rel=stylesheet><link crossorigin href=https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.1.1/animate.min.css integrity=sha256-PR7ttpcvz8qrF57fur/yAx1qXMFJeJFiA6pSzWi0OIE= rel=stylesheet><link crossorigin href=https://cdnjs.cloudflare.com/ajax/libs/fancyapps-ui/5.0.31/fancybox/fancybox.css integrity=sha256-gkQVf8UKZgQ0HyuxL/VnacadJ+D2Kox2TCEBuNQg5+w= rel=stylesheet><link href=https://cdnjs.cloudflare.com/ajax/libs/pace/1.2.4/themes/red/pace-theme-material.css rel=stylesheet><script crossorigin integrity=sha256-gqd7YTjg/BtfqWSwsJOvndl0Bxc8gFImLEkXQT8+qj0= src=https://cdnjs.cloudflare.com/ajax/libs/pace/1.2.4/pace.min.js></script><script class=next-config data-name=main type=application/json>{"hostname":"whitecodes.github.io","root":"/","images":"/images","scheme":"Mist","darkmode":false,"version":"8.22.0","exturl":false,"sidebar":{"position":"right","width_expanded":320,"width_dual_column":240,"display":"hide","padding":18,"offset":12},"hljswrap":true,"copycode":{"enable":"falses","style":null},"fold":{"enable":true,"height":500},"bookmark":{"enable":false,"color":"#222","save":"auto"},"mediumzoom":false,"lazyload":true,"pangu":false,"comments":{"style":"tabs","active":null,"storage":true,"lazyload":false,"nav":null},"stickytabs":false,"motion":{"enable":true,"async":true,"duration":200,"transition":{"menu_item":"fadeInDown","post_block":"fadeIn","post_header":"fadeInDown","post_body":"fadeInDown","coll_header":"fadeInLeft","sidebar":"fadeInUp"}},"prism":false,"i18n":{"placeholder":"搜索...","empty":"没有找到任何搜索结果:${query}","hits_time":"找到 ${hits} 个搜索结果(用时 ${time} 毫秒)","hits":"找到 ${hits} 个搜索结果"},"path":"/search.xml","localsearch":{"enable":true,"top_n_per_article":3,"unescape":false,"preload":true,"trigger":"auto"}}</script><script src=/js/config.js></script><meta content=website property=og:type><meta content="white blog" property=og:title><meta content=https://whitecodes.github.io/index.html property=og:url><meta content="white blog" property=og:site_name><meta content=zh_CN property=og:locale><meta content=white property=article:author><meta content=summary name=twitter:card><link href=https://whitecodes.github.io/ rel=canonical><script class=next-config data-name=page type=application/json>{"sidebar":"","isHome":true,"isPost":false,"lang":"zh-CN","comments":"","permalink":"","path":"index.html","title":""}</script><script class=next-config data-name=calendar type=application/json>""</script><title>white blog</title><script async src=https://www.googletagmanager.com/gtag/js?id=UA-80539342-1></script><script class=next-config data-name=google_analytics type=application/json>{"tracking_id":"UA-80539342-1","only_pageview":false,"measure_protocol_api_secret":null}</script><script src=/js/third-party/analytics/google-analytics.js></script><script src=https://fastly.jsdelivr.net/gh/nova1751/live2d-api@latest/jsdelivr/random/autoload.js></script><link href=https://fastly.jsdelivr.net/gh/nova1751/live2d-api@latest/css/left.css rel=stylesheet><link href=https://cdn.jsdelivr.net/npm/lxgw-wenkai-screen-web/style.css rel=stylesheet><noscript><link href=/css/noscript.css rel=stylesheet></noscript><link title="white blog" href=/atom.xml rel=alternate type=application/atom+xml><body class=use-motion itemscope itemtype=http://schema.org/WebPage><div class=headband></div><main class=main><div class=column><header class=header itemscope itemtype=http://schema.org/WPHeader><div class=site-brand-container><div class=site-nav-toggle><div aria-label=切换导航栏 class=toggle role=button><span class=toggle-line></span><span class=toggle-line></span><span class=toggle-line></span></div></div><div class=site-meta><a class=brand href=/ rel=start> <i class=logo-line></i> <h1 class=site-title>white blog</h1> <i class=logo-line></i> </a><p class=site-subtitle itemprop=description>Not perfect but enough</div><div class=site-nav-right><div class="toggle popup-trigger" aria-label=搜索 role=button><i class="fa fa-search fa-fw fa-lg"></i></div></div></div><nav class=site-nav><ul class="main-menu menu"><li class="menu-item menu-item-home"><a href=/ rel=section><i class="fa fa-home fa-fw"></i>首页</a><li class="menu-item menu-item-tags"><a href=/tags/ rel=section><i class="fa fa-tags fa-fw"></i>标签</a><li class="menu-item menu-item-archives"><a href=/archives/ rel=section><i class="fa fa-archive fa-fw"></i>归档</a><li class="menu-item menu-item-search"><a class=popup-trigger role=button><i class="fa fa-search fa-fw"></i>搜索 </a></ul></nav><div class=search-pop-overlay><div class="popup search-popup"><div class=search-header><span class=search-icon> <i class="fa fa-search"></i> </span><div class=search-input-container><input autocapitalize=off autocomplete=off class=search-input maxlength=80 placeholder=搜索... spellcheck=false type=search></div><span class=popup-btn-close role=button> <i class="fa fa-times-circle"></i> </span></div><div class=search-result-container><div class=search-result-icon><i class="fa fa-spinner fa-pulse fa-5x"></i></div></div></div></div></header><aside class=sidebar><div class="sidebar-inner sidebar-overview-active"><ul class=sidebar-nav><li class=sidebar-nav-toc>文章目录<li class=sidebar-nav-overview>站点概览</ul><div class=sidebar-panel-container><!--noindex--><div class="post-toc-wrap sidebar-panel"></div><!--/noindex--><div class="site-overview-wrap sidebar-panel"><div class="site-author animated" itemprop=author itemscope itemtype=http://schema.org/Person><p class=site-author-name itemprop=name>white<div class=site-description itemprop=description></div></div><div class="site-state-wrap animated"><nav class=site-state><div class="site-state-item site-state-posts"><a href=/archives/> <span class=site-state-item-count>98</span> <span class=site-state-item-name>日志</span> </a></div><div class="site-state-item site-state-tags"><a href=/tags/> <span class=site-state-item-count>16</span> <span class=site-state-item-name>标签</span></a></div></nav></div><div class="links-of-author animated"><span class=links-of-author-item> <a rel="noopener me" title="GitHub → https://github.com/whitecodes" href=https://github.com/whitecodes target=_blank><i class="fab fa-github fa-fw"></i></a> </span><span class=links-of-author-item> <a rel="noopener me" title="RSS → /atom.xml" href=/atom.xml><i class="fa fa-rss fa-fw"></i></a> </span></div></div></div></div></aside></div><div class="main-inner index posts-expand"><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2023/07/amazfit-t-rex-2/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2023/07/amazfit-t-rex-2/ itemprop=url>Amazfit T-REX 2</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2023-07-02 15:32:30" datetime=2023-07-02T15:32:30+08:00>2023-07-02</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>298</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>1 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>原本用的小米手环,但是某天晚上黑屏了,就动了换设备的念头。<!---more---><p>一开始用的是小米3,单色屏的;后来用的小米6,有彩屏了。外型基本没变,都不是圆形的。现在换新的就想要一个圆形的,就冲着外观为目的挑的。<br>另外现在在用的软件是<code>Notify for Mi Band</code>,新买的最好是这个软件适配的。<br>京东的商品列表中挑了下,外观不一样的就是<code>Amazfit T-REX</code>系列了。咸鱼上看了,买了<code>Amazfist T-REX 2</code>。<br>拿到手之后经过几次升级,新增了血压检测,这个算是以外惊喜。<p>实际大半年用下来,槽点不少。<ul><li>外观各种角落,表盘上的螺丝和外壳之间的缝隙很难清理<li>适配的<code>Zepp</code>应用不好用,特别是手机的通知不能同步。手机上新出现通知,手表上也弹出来,这个没问题。但是手机上通知被标记为已读,手表上弹出来的不会消掉,这个就很烦。另外手表上的通知也不会出现在手机上。</ul></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2023/02/Stars-above-the-sky-of-Sodom/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2023/02/Stars-above-the-sky-of-Sodom/ itemprop=url>索多玛天空的群星/Stars above the sky of Sodom</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2023-02-12 19:19:19" datetime=2023-02-12T19:19:19+08:00>2023-02-12</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>25k</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>1:32</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>微博上看到的一篇<code>流浪地球</code>的<a href=https://weibo.com/ttarticle/p/show?id=2309404865409169096992 rel=noopener target=_blank>同人</a>:<blockquote><p>关于为什么杜勒斯这个唯一的地上基站填进去四队人死了一半在阿美丽卡独特国情下很难不让人怀疑是不是打成了黑鹰坠落这件事*</blockquote><!--noindex--><div class=post-button><a class=btn href=/2023/02/Stars-above-the-sky-of-Sodom/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2022/08/flash-sony-phone/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2022/08/flash-sony-phone/ itemprop=url>Sony 手机使用</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2022-08-08 23:38:18" datetime=2022-08-08T23:38:18+08:00>2022-08-08</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>300</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>1 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>之前买了红米K40s,解锁后没有合适的ROM,<code>MIUI</code>系列的用不习惯,<code>Android 12 GSI</code>因为圆角不喜欢。所以后来就买了二手的<code>Sony Xperia 1 II</code>。本来想买<code>Sony Xperia 5 II</code>的,但是看到有价格不错的<code>1 II</code>就直接买了。用下来还行。<p>拿到手是<code>Android 12</code>,刷回了<code>Android 11</code>,解锁<code>root</code>,停用了自带的一堆应用,用起来还行。<!--noindex--><div class=post-button><a class=btn href=/2022/08/flash-sony-phone/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2022/07/build-xiaomitool/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2022/07/build-xiaomitool/ itemprop=url>编译小米工具</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2022-07-21 23:56:45" datetime=2022-07-21T23:56:45+08:00>2022-07-21</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>497</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>2 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>之前的<code>K30s</code>主板坏了,然后直接买了<code>K40s</code>。买的时候有<code>TWRP</code>已经适配了,但是在<code>xda</code>上还没有看到子论坛。然后直接下单了,想着到解锁的时候差不多就有了,但是……直到现在还是没有。<p>虽然没有基于<code>ASOP</code>的rom,但是<code>MIUI.EU</code>还是有的,也可以root。<p>但是在解锁的时候,发现之前解锁用的工具<code>xiaomitool-v2</code>不能进行解锁,有报错,这里就记录下怎么自己编译这个工具。<p><em>最后刷入了<code>GSI</code>,并且换了手机,现在没有使用这个手机</em><!--noindex--><div class=post-button><a class=btn href=/2022/07/build-xiaomitool/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2022/05/wot/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2022/05/wot/ itemprop=url>坦克世界</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2022-05-28 23:30:05" datetime=2022-05-28T23:30:05+08:00>2022-05-28</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>383</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>1 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>最近在玩坦克世界。这是个令人高血压的游戏。之前在空中网代理的时候在国服玩过,现在坦克世界上了<code>steam</code>,又可以在<code>Linux</code>环境中玩了。<p>这款游戏支持<code>mod</code>,这里记录下安装的<code>mod</code>。<!--noindex--><div class=post-button><a class=btn href=/2022/05/wot/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2022/02/hexo-with-github-action/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2022/02/hexo-with-github-action/ itemprop=url>使用Github Action部署Hexo</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2022-02-20 22:55:47" datetime=2022-02-20T22:55:47+08:00>2022-02-20</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>320</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>1 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>使用<code>Github Action</code>来部署<code>hexo</code>,这样电脑本地就不需要安装<code>npm</code>相关的东西了。另外利用<code>github.dev</code>也可以实现在页面上编辑了。<!--noindex--><div class=post-button><a class=btn href=/2022/02/hexo-with-github-action/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2022/02/netdata/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2022/02/netdata/ itemprop=url>配置Netdata</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2022-02-06 22:59:00" datetime=2022-02-06T22:59:00+08:00>2022-02-06</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>1.1k</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>4 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p><code>Netdata</code>是一个用来监控服务器的软件,我用来监控<code>VPS</code>和<code>OMV</code>的运行情况。<br>这个软件的配置项比较多,这里记录下配置。<br>另外默认的告警也有很多,这里顺便记录下碰到的告警的解决办法<!--noindex--><div class=post-button><a class=btn href=/2022/02/netdata/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2021/06/build-nas/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2021/06/build-nas/ itemprop=url>搭建NAS</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2021-06-06 21:51:43" datetime=2021-06-06T21:51:43+08:00>2021-06-06</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>1.9k</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>7 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>买了矿渣<code>我家云</code>作为<code>NAS</code>。<!---more---><h2 id=硬件设备><a class=headerlink href=#硬件设备 title=硬件设备></a>硬件设备</h2><p><code>我家云</code>是矿渣,买过来100+,最低价的时候50+<ul><li>CPU:rk3328 ARM Cortex-A53, 四核 1.5GHz<li>GPU:2核ARM Mail-450<li>内存:1G<li>Flash:8G<li>其他:内置usb to sata 3.5英寸硬盘位,1个千兆网口,1个USB 3.0口,1个USB 2.0口<li>电源:12V3A</ul><h2 id=系统><a class=headerlink href=#系统 title=系统></a>系统</h2><p>拿到手的时候,店家刷的应该是<code>Ride_Wind</code>的固件。带的导航页面太难看了,到手后还是刷了其他系统。<p>现在用的固件是从<a href=https://www.right.com.cn/forum/thread-1042032-1-1.html rel=noopener target=_blank>这里</a>来的。<ol><li>安装刷机工具</ol><figure class="highlight bash"><table><tr><td class=gutter><pre><span class=line>1</span><br></pre><td class=code><pre><span class=line>yay -S rkdeveloptool</span><br></pre></table></figure><ol start=2><li>设备进入Maskrom模式<ol><li>关机状态,我家云usb2.0口用双公头刷机线连接电脑<li>按住Reset键接通电源,不要放开reset,此时红灯先亮,<li>大约15秒后红灯熄灭,继续按住,直到AnroidTool发现Maskrom设备松开,刷机即可。<br>这个是网上的教程,参考下</ol></ol><p>如果机器之前没有刷过系统,那么进入的是<code>Loader</code>模式。这个时候往<code>EMMC</code>写入点东西,然后抹掉整个<code>EMMC</code>再重试上面就操作。<ol start=3><li>刷入系统</ol><p>参考这个<a href=https://roc-rk3328-cc.readthedocs.io/en/latest/flash_emmc.html rel=noopener target=_blank>教程</a>,结合其他教程的截图,依次执行下面的命令<figure class="highlight bash"><table><tr><td class=gutter><pre><span class=line>1</span><br><span class=line>2</span><br><span class=line>3</span><br></pre><td class=code><pre><span class=line>rkdeveloptool db rk3328_loader.bin</span><br><span class=line>rkdeveloptool wl 0x0 omv4-rk3328-0.7.9-armhf.img</span><br><span class=line>rkdeveloptool rd</span><br></pre></table></figure><p>等待机器重启完成后,拔掉电源,插入网线接入路由器。<p>登陆路由器后台,查看机器的ip,浏览器登陆就可以看到主页了。<p>机器默认是DHCP,应该可以在路由器<code>DHCP Client list</code>之类的地方可以看到新增的<code>omv</code>设备。<p>默认的主页很丑,有修改的方法<h2 id=配置><a class=headerlink href=#配置 title=配置></a>配置</h2><h3 id=修改密码和CPU配置><a class=headerlink href=#修改密码和CPU配置 title=修改密码和CPU配置></a>修改密码和CPU配置</h3><p>修改系统<code>root</code>密码<figure class="highlight bash"><table><tr><td class=gutter><pre><span class=line>1</span><br></pre><td class=code><pre><span class=line>passwd root</span><br></pre></table></figure><p>修改<code>CPU</code>模式<figure class="highlight bash"><table><tr><td class=gutter><pre><span class=line>1</span><br></pre><td class=code><pre><span class=line>armbian-config</span><br></pre></table></figure><p>System->CPU->408000->1512000->interactive<p>各个CPU模式的说明<ul><li>interactive:交互模式,直接上最高频率,然后看CPU负荷慢慢降低,比较耗电。<li>conservative:保守模式,类似于ondemand,但调整相对较缓,想省电就用他吧。Google官方内核,kang内核默认模式<li>userspace:用户自定义模式,系统将变频策略的决策权交给了用户态应用程序,并提供了相应的接口供用户态应用程序调节CPU 运行频率使用。也就是长期以来都在用的那个模式。可以通过手动编辑配置文件进行配置<li>powersave:省电模式,通常以最低频率运行。<li>ondemand:系统默认的超频模式,按需调节,内核提供的功能,不是很强大,但有效实现了动态频率调节,平时以低速方式运行,当系统负载提高时候自动提高频率。以这种模式运行不会因为降频造成性能降低,同时也能节约电能和降低温度。一般官方内核默认的方式都是ondemand<li>performance:性能模式!只有最高频率,从来不考虑消耗的电量,性能没得说,但是耗电量。</ul><p>修改<code>SSH</code>欢迎信息<br><code>/etc/update-motd.d/</code><br>里面提示修改<code>/etc/default/armbian-motd</code>,但是更具体的修改还是修改这里的文件更方便<h3 id=安装Fish><a class=headerlink href=#安装Fish title=安装Fish></a>安装Fish</h3><p>默认只有<code>Bash</code>,没有颜色提示,偷懒直接用<code>Fish</code>了<br>直接使用<code>apt</code>安装就可以了,如果出错就按提示修复依赖<h3 id=修改主页-停掉不需要的服务><a class=headerlink href=#修改主页-停掉不需要的服务 title=修改主页&停掉不需要的服务></a>修改主页&停掉不需要的服务</h3><h4 id=主页><a class=headerlink href=#主页 title=主页></a>主页</h4><p>主页是<code>nginx</code>+<code>php</code>的,直接修改端口,看不到就没事了。<br>文件路径:<code>/opt/etc/nginx/vhost/entware.conf</code><figure class="highlight plaintext"><table><tr><td class=gutter><pre><span class=line>1</span><br><span class=line>2</span><br><span class=line>3</span><br><span class=line>4</span><br><span class=line>5</span><br><span class=line>6</span><br><span class=line>7</span><br><span class=line>8</span><br></pre><td class=code><pre><span class=line>server {</span><br><span class=line> listen 82;</span><br><span class=line> server_name localhost;</span><br><span class=line> root /opt/wwwroot/entware/;</span><br><span class=line> index index.html index.htm index.php;</span><br><span class=line> include /opt/etc/nginx/conf/php-fpm.conf;</span><br><span class=line> #otherconf</span><br><span class=line>}</span><br></pre></table></figure><p>主页中自带了很多东西,用不到的都删除了。自带的东西在<code>/opt/wwwroot/entware</code>,这里记录下各个文件夹的内容<ul><li>cesu 测速<li>douyinapi 抖音随机看小姐姐<li>gl 爱特网站文件专家<li>kod 可道云<li>kuaishouapi 快手随机看小姐姐<li>pi Pi 仪表盘<li>pt nexusphp<li>upjpg 图床<li>uplz 蓝奏云上传<li>web Transmission 网页<li>veno Veno File Manager 3</ul><p>还有一些应用在其他目录,通过<code>/opt/entware_init.sh</code>来启动,不要的全部注释掉<h4 id=关闭Transmission><a class=headerlink href=#关闭Transmission title=关闭Transmission></a>关闭<code>Transmission</code></h4><p>因为我的用是<code>Aria2</code>。文件在<code>/opt/etc/init.d/S88transmission</code><figure class="highlight sh"><table><tr><td class=gutter><pre><span class=line>1</span><br><span class=line>2</span><br><span class=line>3</span><br><span class=line>4</span><br><span class=line>5</span><br><span class=line>6</span><br><span class=line>7</span><br><span class=line>8</span><br><span class=line>9</span><br><span class=line>10</span><br><span class=line>11</span><br><span class=line>12</span><br></pre><td class=code><pre><span class=line><span class=meta>#!/bin/sh</span></span><br><span class=line></span><br><span class=line>ENABLED=no</span><br><span class=line>PROCS=transmission-daemon</span><br><span class=line>ARGS=<span class=string>"-g /opt/etc/transmission"</span></span><br><span class=line>PREARGS=<span class=string>""</span></span><br><span class=line>DESC=<span class=variable>$PROCS</span></span><br><span class=line>PATH=/opt/sbin:/opt/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin</span><br><span class=line></span><br><span class=line>TRANSMISSION_WEB_HOME=<span class=string>"/opt/share/transmission/web"</span></span><br><span class=line></span><br><span class=line>. /opt/etc/init.d/rc.func</span><br></pre></table></figure><h4 id=关闭Jellyfin><a class=headerlink href=#关闭Jellyfin title=关闭Jellyfin></a>关闭Jellyfin</h4><p>刷完系统后自带了<code>Jellyfin</code>,我期望是用<code>Docker</code>来使用应用。<figure class="highlight plaintext"><table><tr><td class=gutter><pre><span class=line>1</span><br><span class=line>2</span><br></pre><td class=code><pre><span class=line>systemctl stop jellyfin</span><br><span class=line>systemctl disable jellyfin</span><br></pre></table></figure><h3 id=风扇启停><a class=headerlink href=#风扇启停 title=风扇启停></a>风扇启停</h3><p>固件中已经自带调速了,但是没有风扇启停,参考<a href=https://www.right.com.cn/forum/thread-2025656-1-5.html rel=noopener target=_blank>恩山上的方案</a>自己写了脚本。<figure class="highlight bash"><table><tr><td class=gutter><pre><span class=line>1</span><br><span class=line>2</span><br><span class=line>3</span><br><span class=line>4</span><br><span class=line>5</span><br><span class=line>6</span><br><span class=line>7</span><br><span class=line>8</span><br><span class=line>9</span><br><span class=line>10</span><br><span class=line>11</span><br><span class=line>12</span><br><span class=line>13</span><br><span class=line>14</span><br><span class=line>15</span><br><span class=line>16</span><br><span class=line>17</span><br><span class=line>18</span><br><span class=line>19</span><br><span class=line>20</span><br><span class=line>21</span><br><span class=line>22</span><br><span class=line>23</span><br><span class=line>24</span><br><span class=line>25</span><br><span class=line>26</span><br><span class=line>27</span><br><span class=line>28</span><br><span class=line>29</span><br><span class=line>30</span><br></pre><td class=code><pre><span class=line><span class=meta>#!/bin/sh</span></span><br><span class=line><span class=comment># gpio85为LED灯,gpio79为风扇,下文的max=70000和min=60000分别为风扇的起转温度和停转温度,70000=70摄氏度。监测刷新时间为20秒</span></span><br><span class=line><span class=keyword>if</span> [ -n <span class=string>"<span class=variable>$1</span>"</span> ]; <span class=keyword>then</span></span><br><span class=line> max=<span class=variable>$1</span></span><br><span class=line><span class=keyword>else</span></span><br><span class=line> max=65000</span><br><span class=line><span class=keyword>fi</span></span><br><span class=line><span class=keyword>if</span> [ -n <span class=string>"<span class=variable>$2</span>"</span> ]; <span class=keyword>then</span></span><br><span class=line> min=<span class=variable>$2</span></span><br><span class=line><span class=keyword>else</span></span><br><span class=line> min=55000</span><br><span class=line><span class=keyword>fi</span></span><br><span class=line><span class=built_in>echo</span> <span class=variable>$max</span>, <span class=variable>$min</span></span><br><span class=line></span><br><span class=line><span class=keyword>while</span> <span class=literal>true</span>; <span class=keyword>do</span></span><br><span class=line> t=$(/bin/cat /sys/class/thermal/thermal_zone0/temp)</span><br><span class=line> <span class=keyword>if</span> [ <span class=string>"<span class=variable>$t</span>"</span> -gt <span class=variable>$max</span> ]; <span class=keyword>then</span></span><br><span class=line> <span class=comment># chmod 777 /opt/fan</span></span><br><span class=line> /opt/fan</span><br><span class=line> <span class=comment># echo "CPU temp: $t > $max FAN POWER ON"</span></span><br><span class=line> <span class=keyword>fi</span></span><br><span class=line> <span class=keyword>if</span> [ <span class=string>"<span class=variable>$t</span>"</span> -lt <span class=variable>$min</span> ]; <span class=keyword>then</span></span><br><span class=line> killall fan > /dev/null 2>&1</span><br><span class=line> <span class=built_in>echo</span> 79 > /sys/class/gpio/export</span><br><span class=line> <span class=built_in>echo</span> <span class=string>"low"</span> > /sys/class/gpio/gpio79/direction</span><br><span class=line> <span class=built_in>echo</span> 79 > /sys/class/gpio/unexport</span><br><span class=line> <span class=comment># echo "CPU temp: $t < $min FAN POWER OFF"</span></span><br><span class=line> <span class=keyword>fi</span></span><br><span class=line> <span class=built_in>sleep</span> 10</span><br><span class=line><span class=keyword>done</span></span><br></pre></table></figure><p>脚本保存为<code>/opt/pwnfan.sh</code>。接下来是设置脚本开机启动,新建文件<code>/opt/etc/init.d/S82pwnfan</code><figure class="highlight sh"><table><tr><td class=gutter><pre><span class=line>1</span><br><span class=line>2</span><br><span class=line>3</span><br><span class=line>4</span><br><span class=line>5</span><br><span class=line>6</span><br><span class=line>7</span><br><span class=line>8</span><br><span class=line>9</span><br><span class=line>10</span><br></pre><td class=code><pre><span class=line><span class=meta>#!/bin/sh</span></span><br><span class=line></span><br><span class=line>ENABLED=<span class=built_in>yes</span></span><br><span class=line>PROCS=/opt/pwnfan.sh</span><br><span class=line>ARGS=</span><br><span class=line>PREARGS=<span class=string>""</span></span><br><span class=line>DESC=<span class=variable>$PROCS</span></span><br><span class=line>PATH=/opt/sbin:/opt/bin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin</span><br><span class=line></span><br><span class=line>. /opt/etc/init.d/rc.func</span><br></pre></table></figure><h3 id=SWAP设置><a class=headerlink href=#SWAP设置 title=SWAP设置></a>SWAP设置</h3><p>因为要用到图片的自动标签功能,需要使用机器学习,所以所有的1G内存就不够用了。系统自带了<code>zram</code>。但是最终还是要用内存,所以还是不够用,还是要手动在硬盘上设置<code>swap</code>。<figure class="highlight bash"><table><tr><td class=gutter><pre><span class=line>1</span><br><span class=line>2</span><br><span class=line>3</span><br><span class=line>4</span><br><span class=line>5</span><br><span class=line>6</span><br><span class=line>7</span><br></pre><td class=code><pre><span class=line><span class=comment># 创建SWAP文件并格式化</span></span><br><span class=line><span class=built_in>dd</span> <span class=keyword>if</span>=/dev/zero of=./swapfile bs=1M count=1536 status=progress</span><br><span class=line><span class=built_in>chmod</span> 600 ./swapfile</span><br><span class=line>mkswap ./swapfile</span><br><span class=line></span><br><span class=line><span class=comment># 启用SWAP</span></span><br><span class=line>swapon ./swapfile</span><br></pre></table></figure><h2 id=文件分享><a class=headerlink href=#文件分享 title=文件分享></a>文件分享</h2><p>文件分享和备份主要用在局域网里面,直接用<code>NFS</code>了<br>通过<code>OMV</code>的页面可以直接操作,只是要注意下权限的问题<p>自动挂载没有成功过,现在手动挂载<p><code>OMV</code>中自带了一个硬盘,通过页面删除不了,但是可以通过修改配置文件来删除,路径是<code>/etc/openmediavault/config.xml</code>。删除里面的硬盘和共享文件夹。<h2 id=下载><a class=headerlink href=#下载 title=下载></a>下载</h2><p>下载使用的是<code>Aria2</code>,系统中自带了,这里记录下配置文件。之后如果<code>Aria2</code>如果有大版本更新,新增了功能应该会使用<code>Docker</code>版本。<figure class="highlight ini"><table><tr><td class=gutter><pre><span class=line>1</span><br><span class=line>2</span><br><span class=line>3</span><br><span class=line>4</span><br><span class=line>5</span><br><span class=line>6</span><br><span class=line>7</span><br><span class=line>8</span><br><span class=line>9</span><br><span class=line>10</span><br><span class=line>11</span><br><span class=line>12</span><br><span class=line>13</span><br><span class=line>14</span><br><span class=line>15</span><br><span class=line>16</span><br><span class=line>17</span><br><span class=line>18</span><br><span class=line>19</span><br><span class=line>20</span><br><span class=line>21</span><br><span class=line>22</span><br><span class=line>23</span><br><span class=line>24</span><br><span class=line>25</span><br><span class=line>26</span><br><span class=line>27</span><br><span class=line>28</span><br><span class=line>29</span><br><span class=line>30</span><br><span class=line>31</span><br><span class=line>32</span><br><span class=line>33</span><br><span class=line>34</span><br><span class=line>35</span><br><span class=line>36</span><br><span class=line>37</span><br><span class=line>38</span><br><span class=line>39</span><br><span class=line>40</span><br><span class=line>41</span><br><span class=line>42</span><br><span class=line>43</span><br><span class=line>44</span><br><span class=line>45</span><br><span class=line>46</span><br><span class=line>47</span><br><span class=line>48</span><br><span class=line>49</span><br><span class=line>50</span><br><span class=line>51</span><br><span class=line>52</span><br><span class=line>53</span><br><span class=line>54</span><br><span class=line>55</span><br><span class=line>56</span><br><span class=line>57</span><br><span class=line>58</span><br><span class=line>59</span><br><span class=line>60</span><br><span class=line>61</span><br><span class=line>62</span><br><span class=line>63</span><br><span class=line>64</span><br><span class=line>65</span><br><span class=line>66</span><br><span class=line>67</span><br><span class=line>68</span><br><span class=line>69</span><br><span class=line>70</span><br><span class=line>71</span><br></pre><td class=code><pre><span class=line><span class=comment>#允许rpc</span></span><br><span class=line><span class=attr>enable-rpc</span>=<span class=literal>true</span></span><br><span class=line><span class=comment>#允许所有来源, web界面跨域权限需要</span></span><br><span class=line><span class=attr>rpc-allow-origin-all</span>=<span class=literal>true</span></span><br><span class=line><span class=comment>#允许非外部访问</span></span><br><span class=line><span class=attr>rpc-listen-all</span>=<span class=literal>true</span></span><br><span class=line><span class=comment>#RPC端口, 仅当默认端口被占用时修改</span></span><br><span class=line><span class=comment>#rpc-listen-port=6800</span></span><br><span class=line></span><br><span class=line><span class=comment># token验证</span></span><br><span class=line><span class=attr>rpc-secret</span>=密码</span><br><span class=line></span><br><span class=line></span><br><span class=line><span class=comment>#最大同时下载数(任务数), 路由建议值: 3</span></span><br><span class=line><span class=attr>max-concurrent-downloads</span>=<span class=number>5</span></span><br><span class=line><span class=comment>#断点续传</span></span><br><span class=line><span class=attr>continue</span>=<span class=literal>true</span></span><br><span class=line><span class=comment>#同服务器连接数</span></span><br><span class=line><span class=attr>max-connection-per-server</span>=<span class=number>2</span></span><br><span class=line><span class=comment>#最小文件分片大小, 下载线程数上限取决于能分出多少片, 对于小文件重要</span></span><br><span class=line><span class=attr>min-split-size</span>=<span class=number>10</span>M</span><br><span class=line><span class=comment>#单文件最大线程数, 路由建议值: 5</span></span><br><span class=line><span class=attr>split</span>=<span class=number>10</span></span><br><span class=line><span class=comment>#下载速度限制</span></span><br><span class=line><span class=attr>max-overall-download-limit</span>=<span class=number>0</span></span><br><span class=line><span class=comment>#单文件速度限制</span></span><br><span class=line><span class=attr>max-download-limit</span>=<span class=number>0</span></span><br><span class=line><span class=comment>#上传速度限制</span></span><br><span class=line><span class=attr>max-overall-upload-limit</span>=<span class=number>75</span>K</span><br><span class=line><span class=comment>#单文件速度限制</span></span><br><span class=line><span class=attr>max-upload-limit</span>=<span class=number>0</span></span><br><span class=line><span class=comment>#断开速度过慢的连接</span></span><br><span class=line><span class=comment>#lowest-speed-limit=0</span></span><br><span class=line></span><br><span class=line></span><br><span class=line><span class=comment>###进度保存相关</span></span><br><span class=line><span class=attr>input-file</span>=/opt/var/aria2/session.dat</span><br><span class=line><span class=attr>save-session</span>=/opt/var/aria2/session.dat</span><br><span class=line><span class=comment>#定时保存会话,需要1.16.1之后的release版</span></span><br><span class=line><span class=attr>save-session-interval</span>=<span class=number>1800</span></span><br><span class=line></span><br><span class=line><span class=attr>log</span>=/opt/var/aria2/log/aria2.log</span><br><span class=line><span class=attr>log-level</span>=error</span><br><span class=line></span><br><span class=line><span class=comment>#文件保存路径, 默认为当前启动位置</span></span><br><span class=line><span class=attr>dir</span>=/sharedfolders/exos/Download</span><br><span class=line><span class=comment>#文件缓存, 使用内置的文件缓存, 如果你不相信Linux内核文件缓存和磁盘内置缓存时使用, 需要1.16及以上版本</span></span><br><span class=line><span class=comment>#disk-cache=0</span></span><br><span class=line><span class=comment>#另一种Linux文件缓存方式, 使用前确保您使用的内核支持此选项, 需要1.15及以上版本(?)</span></span><br><span class=line><span class=comment>#enable-mmap=true</span></span><br><span class=line><span class=comment>#文件预分配, 能有效降低文件碎片, 提高磁盘性能. 缺点是预分配时间较长</span></span><br><span class=line><span class=comment>#所需时间 none < falloc ? trunc << prealloc, falloc和trunc需要文件系统和内核支持</span></span><br><span class=line><span class=attr>file-allocation</span>=falloc</span><br><span class=line></span><br><span class=line><span class=comment>###BT相关</span></span><br><span class=line><span class=comment>#启用本地节点查找</span></span><br><span class=line><span class=attr>bt-enable-lpd</span>=<span class=literal>true</span></span><br><span class=line><span class=attr>enable-dht</span>=<span class=literal>true</span></span><br><span class=line><span class=attr>enable-peer-exchange</span>=<span class=literal>true</span></span><br><span class=line><span class=comment>#添加额外的tracker</span></span><br><span class=line>bt-tracker=</span><br><span class=line><span class=comment>#种子最大连接数</span></span><br><span class=line><span class=comment>#bt-max-peers=55</span></span><br><span class=line><span class=comment>#强制加密, 防迅雷必备</span></span><br><span class=line><span class=comment>#bt-require-crypto=true</span></span><br><span class=line><span class=comment>#当下载的文件是一个种子(以.torrent结尾)时, 自动下载BT</span></span><br><span class=line><span class=attr>follow-torrent</span>=<span class=literal>true</span></span><br><span class=line><span class=comment>#BT监听端口, 当端口屏蔽时使用</span></span><br><span class=line><span class=comment>#listen-port=6881-6999</span></span><br><span class=line><span class=attr>seed-time</span>=<span class=number>60</span></span><br><span class=line><span class=attr>seed-ratio</span>=<span class=number>1</span></span><br></pre></table></figure><p>bt-tracker从<a href=https://www.yaozuopan.top/index.php/archives/1014/ rel=noopener target=_blank>中国可用的 BT Tracker 服务器列表</a>获取,逗号分隔<h2 id=照片><a class=headerlink href=#照片 title=照片></a>照片</h2><p>照片的处理就比较麻烦,期望本地版<code>Google Photo</code>带着改良的<code>UI</code>,但是现在也没有找到特别满意的。这里提供两个可用的:<a href=https://photoprism.app/features rel=noopener target=_blank>PhotoPrism</a>和<a href=https://bpatrik.github.io/pigallery2/ rel=noopener target=_blank>PiGallery2</a>。两个都可以<code>Docker</code>部署,配置都在连接里有。<ul><li><code>PiGallery2</code>可以显示人脸,但是所有的信息都需要手动写入<code>Exif</code>。<li><code>PhotoPrism</code>带一点点<code>AI</code>识别(需要大量内存),但是人脸部分还没有实现。新增照片后还需要建立索引。<code>Docker</code>需要用<code>photoprism-arm64</code>镜像。</ul><h2 id=Jellyfin><a class=headerlink href=#Jellyfin title=Jellyfin></a>Jellyfin</h2><p>没钱,所以用的还是<code>Jellyfin</code>。<code>Docker</code>部署没什么好说的,重点说一下需要装的插件。<p><del>- <code>Douban</code>用于抓取电影电视剧的豆瓣信息。其中电视剧需要按照季分开。但是这个插件已经很久不更新了,社区有个<a href=https://github.com/Libitum/jellyfin-plugin-douban/issues/45 rel=noopener target=_blank>替代方案</a>。到不能用的时候再替换吧</del><p><del>- <code>AVDC</code>用来抓取日本电影的信息。<a href=https://github.com/xjasonlyu/jellyfin-plugin-avdc rel=noopener target=_blank>插件本体</a>需要搭配<a href=https://github.com/xjasonlyu/avdc-api/wiki/Docker%E5%AE%89%E8%A3%85%EF%BC%88%E6%8E%A8%E8%8D%90%EF%BC%89 rel=noopener target=_blank>远程工具</a>部署在<code>VPS</code>上使用。</del><ul><li><code>opendouban</code>用于抓取电影电视剧的豆瓣信息。其中电视剧需要按照季分开。<a href=https://github.com/caryyu/jellyfin-plugin-opendouban rel=noopener target=_blank>插件本体</a>需要搭配<a href=https://github.com/caryyu/douban-openapi-server rel=noopener target=_blank>远程工具</a>部署在<code>VPS</code>上使用。<li><a href=https://javtube.github.io/README_ZH.html rel=noopener target=_blank>javtube</a>用来抓取日本电影的信息。<a href=https://github.com/javtube/jellyfin-plugin-javtube rel=noopener target=_blank>插件本体</a>需要搭配<a href=https://github.com/javtube/javtube-server-releases rel=noopener target=_blank>远程工具</a>部署在<code>VPS</code>上使用,虽然官方推荐是部署在<a href=https://github.com/javtube/javtube-server-heroku rel=noopener target=_blank>Heroku</a>上</ul><p>因为性能拉垮,<code>WEB</code>播放视频会比较吃力,上PC上有客户端内置了<code>MPV</code>,手机上使用<code>Jellyfin</code>客户端可以调用<code>MPV</code>播放。<p>听音乐的话,手机上另外有<a href=https://github.com/dkanada/gelli rel=noopener target=_blank>Gelli</a><p><a href=https://jellyfin.org/docs/general/clients/index.html rel=noopener target=_blank>其他平台</a>的话基本上也有对应的客户端<p>但是现在局域网内还是挂载之后本地看,在外面的话就需要内网穿透<h2 id=FRP><a class=headerlink href=#FRP title=FRP></a>FRP</h2><p>内网穿透用的是<code>frp</code>的方案,主要是需要<code>VPS</code>部署<code>Server</code>端,本地运行<code>Client</code>端,都可以使用<code>Docker</code>部署<ul><li>Server frps.ini</ul><figure class="highlight ini"><table><tr><td class=gutter><pre><span class=line>1</span><br><span class=line>2</span><br><span class=line>3</span><br><span class=line>4</span><br><span class=line>5</span><br><span class=line>6</span><br></pre><td class=code><pre><span class=line><span class=section>[common]</span></span><br><span class=line><span class=attr>bind_port</span> = <span class=number>7000</span></span><br><span class=line><span class=attr>dashboard_port</span> = <span class=number>7500</span></span><br><span class=line><span class=attr>dashboard_user</span> = admin</span><br><span class=line><span class=attr>dashboard_pwd</span> = pwd</span><br><span class=line><span class=attr>auto_token</span> = auth</span><br></pre></table></figure><p>其中<code>dashboard_pwd</code>用于<code>dashboard</code>登陆,<code>auto_token</code>用于<code>Server</code>和<code>Client</code>之间通信<ul><li>Client fprc.ini</ul><figure class="highlight ini"><table><tr><td class=gutter><pre><span class=line>1</span><br><span class=line>2</span><br><span class=line>3</span><br><span class=line>4</span><br><span class=line>5</span><br><span class=line>6</span><br><span class=line>7</span><br><span class=line>8</span><br><span class=line>9</span><br><span class=line>10</span><br></pre><td class=code><pre><span class=line><span class=section>[common]</span></span><br><span class=line><span class=attr>server_addr</span> = </span><br><span class=line><span class=attr>server_port</span> = <span class=number>7000</span></span><br><span class=line><span class=attr>auto_token</span> = auth</span><br><span class=line></span><br><span class=line><span class=section>[aria]</span></span><br><span class=line><span class=attr>type</span> = tcp</span><br><span class=line><span class=attr>local_ip</span> = <span class=number>127.0</span>.<span class=number>0.1</span></span><br><span class=line><span class=attr>local_port</span> = <span class=number>8081</span></span><br><span class=line><span class=attr>remote_port</span> = <span class=number>8081</span></span><br></pre></table></figure><p>因为是用来对外提供web服务,<code>type</code>只需要<code>tcp</code>。</div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2021/01/phone-root/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2021/01/phone-root/ itemprop=url>使用小米</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2021-01-01 21:36:49" datetime=2021-01-01T21:36:49+08:00>2021-01-01</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>1k</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>4 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>买了新手机<code>Redmi K30 Pro Zoom Edition</code>,带的系统是<code>MIUI 12.0.9</code>,这里写下刷机使用的记录<!--noindex--><div class=post-button><a class=btn href=/2021/01/phone-root/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2021/01/miui-without-root/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2021/01/miui-without-root/ itemprop=url>在没有ROOT权限的限制下使用小米</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2021-01-01 21:36:39" datetime=2021-01-01T21:36:39+08:00>2021-01-01</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>948</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>3 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>在等待解锁<code>Bootloader</code>的时候,尝试在没有获得<code>ROOT</code>权限的情况下使用手机。这里记录下尝试过程。<!--noindex--><div class=post-button><a class=btn href=/2021/01/miui-without-root/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2020/12/winter/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2020/12/winter/ itemprop=url>入冬</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2020-12-20 16:43:37" datetime=2020-12-20T16:43:37+08:00>2020-12-20</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>1.1k</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>4 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>天气冷了,杭州进入冬天了。经历了搬家之后,稳定下来,开始准备冬眠的窝。<!--noindex--><div class=post-button><a class=btn href=/2020/12/winter/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2020/09/bad-year-bad-summer/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2020/09/bad-year-bad-summer/ itemprop=url>坏年份坏夏天</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2020-09-06 16:27:59" datetime=2020-09-06T16:27:59+08:00>2020-09-06</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>625</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>2 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>疫情的影响蔓延到了夏天,感觉越来越不开心了<!--noindex--><div class=post-button><a class=btn href=/2020/09/bad-year-bad-summer/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2020/06/reinstall-arch-linux/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2020/06/reinstall-arch-linux/ itemprop=url>重新安装 Arch Linux</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2020-06-21 22:29:38" datetime=2020-06-21T22:29:38+08:00>2020-06-21</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>3.5k</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>13 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>折腾<code>Display manager</code>把系统搞坏掉了,重新安装。这里重新记录安装教程。之前的记录有一些已经变化不适用了。之后如果有变更也会继续更新这里。<!--noindex--><div class=post-button><a class=btn href=/2020/06/reinstall-arch-linux/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2020/03/install-chromium/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2020/03/install-chromium/ itemprop=url>安装 chromium</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2020-03-08 15:12:35" datetime=2020-03-08T15:12:35+08:00>2020-03-08</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>875</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>3 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>周四那天晚上<code>github</code>和<code>steam</code>登不上了,记录下处理过程。<br>最后使用了<code>archlinuxcn</code>的<code>repo</code>中的<code>chromium-vaapi</code><p><strong>没有具体的编译记录</strong><!--noindex--><div class=post-button><a class=btn href=/2020/03/install-chromium/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2020/02/mobile-game/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2020/02/mobile-game/ itemprop=url>在电脑上玩手机游戏</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2020-02-29 20:56:28" datetime=2020-02-29T20:56:28+08:00>2020-02-29</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>609</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>2 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>折腾了下在电脑上玩手机游戏<!--noindex--><div class=post-button><a class=btn href=/2020/02/mobile-game/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2020/02/drama/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2020/02/drama/ itemprop=url>在追的剧</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2020-02-04 22:00:58" datetime=2020-02-04T22:00:58+08:00>2020-02-04</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>374</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>1 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>记录下春节追的剧<!--noindex--><div class=post-button><a class=btn href=/2020/02/drama/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2020/02/new-year-keep-write/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2020/02/new-year-keep-write/ itemprop=url>新年继续写</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2020-02-04 21:52:18" datetime=2020-02-04T21:52:18+08:00>2020-02-04</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>268</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>1 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>新的一年,有的没的继续写下去吧。至少可以留下点什么<!--noindex--><div class=post-button><a class=btn href=/2020/02/new-year-keep-write/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2019/12/enter-winter/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2019/12/enter-winter/ itemprop=url>进入冬天</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2019-12-01 13:45:15" datetime=2019-12-01T13:45:15+08:00>2019-12-01</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>616</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>2 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>又到了一个冬天了<!--noindex--><div class=post-button><a class=btn href=/2019/12/enter-winter/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2019/11/busy-Autumn/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2019/11/busy-Autumn/ itemprop=url>忙碌的秋天</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2019-11-03 19:54:27" datetime=2019-11-03T19:54:27+08:00>2019-11-03</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>862</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>3 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>距上次写文已经过了两个月了,中间还有一个国庆假期。<!--noindex--><div class=post-button><a class=btn href=/2019/11/busy-Autumn/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2019/09/August-drama/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2019/09/August-drama/ itemprop=url>八月电视剧</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2019-09-09 00:17:47" datetime=2019-09-09T00:17:47+08:00>2019-09-09</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>618</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>2 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>八月过了,过得并不容易。月底的时候骑车摔了。九月开始就没有骑过自行车。<br>八月追的两部电视剧完结了,记一下感受。<!--noindex--><div class=post-button><a class=btn href=/2019/09/August-drama/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2019/08/rebuild-hexo/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2019/08/rebuild-hexo/ itemprop=url>rebuild hexo</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2019-08-25 15:56:25" datetime=2019-08-25T15:56:25+08:00>2019-08-25</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>1k</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>4 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>博客很久没有更新了,趁机尝试换了主题,然后重新新建了一遍<!--noindex--><div class=post-button><a class=btn href=/2019/08/rebuild-hexo/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2019/08/work-weekend/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2019/08/work-weekend/ itemprop=url>加班的周末</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2019-08-19 00:17:47" datetime=2019-08-19T00:17:47+08:00>2019-08-19</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>600</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>2 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>周末加班了,两天都加班,感觉应该要记下来。<!--noindex--><div class=post-button><a class=btn href=/2019/08/work-weekend/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><div class=post-block><article class=post-content itemscope itemtype=http://schema.org/Article><link href=https://whitecodes.github.io/2019/08/anata-no-ban-desu/ itemprop=mainEntityOfPage><span hidden itemprop=author itemscope itemtype=http://schema.org/Person> <meta content=/images/avatar.gif itemprop=image> <meta content=white itemprop=name> </span><span hidden itemprop=publisher itemscope itemtype=http://schema.org/Organization> <meta content="white blog" itemprop=name> <meta itemprop=description> </span><span hidden itemprop=post itemscope itemtype=http://schema.org/CreativeWork> <meta content="undefined | white blog" itemprop=name> <meta itemprop=description> </span><header class=post-header><h2 itemprop="name headline" class=post-title><a class=post-title-link href=/2019/08/anata-no-ban-desu/ itemprop=url>あなたの番です</a></h2><div class=post-meta-container><div class=post-meta><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar"></i> </span> <span class=post-meta-item-text>发表于</span> <time itemprop="dateCreated datePublished" title="创建时间:2019-08-11 22:53:12" datetime=2019-08-11T22:53:12+08:00>2019-08-11</time> </span><span class=post-meta-item> <span class=post-meta-item-icon> <i class="far fa-calendar-check"></i> </span> <span class=post-meta-item-text>更新于</span> <time title="修改时间:2025-01-07 09:54:48" datetime=2025-01-07T09:54:48+08:00 itemprop=dateModified>2025-01-07</time> </span><span class=post-meta-break></span><span class=post-meta-item title=本文字数> <span class=post-meta-item-icon> <i class="far fa-file-word"></i> </span> <span class=post-meta-item-text>本文字数:</span> <span>571</span> </span><span class=post-meta-item title=阅读时长> <span class=post-meta-item-icon> <i class="far fa-clock"></i> </span> <span class=post-meta-item-text>阅读时长 ≈</span> <span>2 分钟</span> </span></div></div></header><div class=post-body itemprop=articleBody><p>周六台风,在家看剧。花了一个下午+晚上差不多看到最新的。<!--noindex--><div class=post-button><a class=btn href=/2019/08/anata-no-ban-desu/#more rel=contents> 阅读全文 » </a></div><!--/noindex--></div><footer class=post-footer><div class=post-eof></div></footer></article></div><nav class=pagination><span class="page-number current">1</span><a class=page-number href=/page/2/>2</a><span class=space>…</span><a class=page-number href=/page/5/>5</a><a class="extend next" aria-label=下一页 href=/page/2/ rel=next title=下一页><i class="fa fa-angle-right"></i></a></nav></div></main><footer class=footer><div class=footer-inner><div class=copyright>© <span itemprop=copyrightYear>2025</span><span class=with-love> <i class="fa fa-heart"></i> </span><span class=author itemprop=copyrightHolder>white</span></div><div class=wordcount><span class=post-meta-item> <span class=post-meta-item-icon> <i class="fa fa-chart-line"></i> </span> <span>站点总字数:</span> <span title=站点总字数>76k</span> </span></div><div class=busuanzi-count><span class=post-meta-item id=busuanzi_container_site_uv> <span class=post-meta-item-icon> <i class="fa fa-user"></i> </span> <span class=site-uv title=总访客量> <span id=busuanzi_value_site_uv></span> </span> </span><span class=post-meta-item id=busuanzi_container_site_pv> <span class=post-meta-item-icon> <i class="fa fa-eye"></i> </span> <span class=site-pv title=总访问量> <span id=busuanzi_value_site_pv></span> </span> </span></div><div class=powered-by>由 <a href=https://hexo.io/ rel=noopener target=_blank>Hexo</a> & <a href=https://theme-next.js.org/mist/ rel=noopener target=_blank>NexT.Mist</a> 强力驱动</div></div></footer><div class="toggle sidebar-toggle" role=button><span class=toggle-line></span><span class=toggle-line></span><span class=toggle-line></span></div><div class=sidebar-dimmer></div><div aria-label=返回顶部 class=back-to-top role=button><i class="fa fa-arrow-up fa-lg"></i><span>0%</span></div><noscript><div class=noscript-warning>Theme NexT works best with JavaScript enabled</div></noscript><script crossorigin integrity=sha256-XL2inqUJaslATFnHdJOi9GfQ60on8Wx1C2H8DYiN1xY= src=https://cdnjs.cloudflare.com/ajax/libs/animejs/3.2.1/anime.min.js></script><script crossorigin integrity=sha256-vxLn1tSKWD4dqbMRyv940UYw4sXgMtYcK6reefzZrao= src=https://cdnjs.cloudflare.com/ajax/libs/next-theme-pjax/0.6.0/pjax.min.js></script><script crossorigin integrity=sha256-a+H7FYzJv6oU2hfsfDGM2Ohw/cR9v+hPfxHCLdmCrE8= src=https://cdnjs.cloudflare.com/ajax/libs/fancyapps-ui/5.0.31/fancybox/fancybox.umd.js></script><script crossorigin integrity=sha256-mOFREFhqmHeQbXpK2lp4nA3qooVgACfh88fpJftLBbc= src=https://cdnjs.cloudflare.com/ajax/libs/lozad.js/1.16.0/lozad.min.js></script><script src=/js/comments.js></script><script src=/js/utils.js></script><script src=/js/motion.js></script><script src=/js/sidebar.js></script><script src=/js/next-boot.js></script><script src=/js/pjax.js></script><script crossorigin integrity=sha256-1kfA5uHPf65M5cphT2dvymhkuyHPQp5A53EGZOnOLmc= src=https://cdnjs.cloudflare.com/ajax/libs/hexo-generator-searchdb/1.4.1/search.js></script><script src=/js/third-party/search/local-search.js></script><script class=next-config data-name=mermaid type=application/json>{"enable":true,"theme":{"light":"neutral","dark":"dark"},"js":{"url":"https://cdnjs.cloudflare.com/ajax/libs/mermaid/11.4.0/mermaid.min.js","integrity":"sha256-G8ouPAnw4zzMbnAenHnVz6h9XpKbNdOkrqTh7AadyHs="}}</script><script src=/js/third-party/tags/mermaid.js></script><script src=/js/third-party/fancybox.js></script><script src=/js/third-party/pace.js></script><script async data-pjax src=https://busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js></script><script class=next-config data-name=giscus type=application/json>{"enable":true,"repo":"whitecodes/whitecodes.github.io","repo_id":"MDEwOlJlcG9zaXRvcnk2MjkzNjYxNA==","category":"Announcements","category_id":"DIC_kwDOA8BWJs4CeB91","mapping":"pathname","strict":0,"reactions_enabled":1,"emit_metadata":0,"theme":"light","lang":"zh-CN","crossorigin":"anonymous","input_position":"top","loading":"lazy"}</script><script>document.addEventListener('page:loaded', () => {
if (!CONFIG.page.comments) return;
NexT.utils.loadComments('.giscus-container')
.then(() => NexT.utils.getScript('https://giscus.app/client.js', {
attributes: {
async : true,
crossOrigin : 'anonymous',
'data-repo' : CONFIG.giscus.repo,
'data-repo-id' : CONFIG.giscus.repo_id,
'data-category' : CONFIG.giscus.category,
'data-category-id' : CONFIG.giscus.category_id,
'data-mapping' : CONFIG.giscus.mapping,
'data-strict' : CONFIG.giscus.strict,
'data-reactions-enabled': CONFIG.giscus.reactions_enabled,
'data-emit-metadata' : CONFIG.giscus.emit_metadata,
'data-theme' : CONFIG.giscus.theme,
'data-lang' : CONFIG.giscus.lang,
'data-input-position' : CONFIG.giscus.input_position,
'data-loading' : CONFIG.giscus.loading
},
parentNode: document.querySelector('.giscus-container')
}));
});</script>