作者: 42
被『黑幫三部曲番外篇』刷屏。
把本地項目傳到 Gitea
首先在 Gitea 新建項目,輸入項目名 YOUR_PROJECT_NAME,其他都不用動。
然後根據 Gitea 的提示,在本地執行下列命令:
#創建說明文檔 touch README.md #創建忽略文檔,下面有個示例 touch .gitignore #初始化 git 並推送至服務器 git init git checkout -b main (或 github 的 git branch -M main) git add * git commit -m "first commit" git remote add origin https://git.disroot.org/user/YOUR_PROJECT_NAME.git git push -u origin main
.gitignore 示例
# Django # *.log *.pot *.pyc __pycache__ db.sqlite3 /app1/migrations /app1/profile_dir/* *.lock #mysite/settings.py *.env *.env_1 media /static # Backup files # *.bak *.log *.log.* # Eclipse # .project .pydevproject
在服務器部署和更新 Git 代碼倉庫中的代碼
#Clone 項目到服務器 git clone https://git.disroot.org/user/YOUR_PROJECT_NAME.git cd YOUR_PROJECT_NAME #拉取代碼倉庫的更新 git fetch git checkout origin main [code] <h3>?</h3> <p>在服務器上初始化項目</p> [code language="bash"] cd /temp git clone --bare /home/fred/Documents/workspace/amazon/.git amazon.git scp -P 2009 -r amazon.git [email protected]:/data/42/git
在本地添加遠程項目
git remote add origin ssh://[email protected]:2009/data/42/git/amazon.git git remote -v #推送 git push origin master #下載更新 git clone ssh://[email protected]:2009/data/42/git/unlock.git
本文更新於 2023/11/25。
早上看到樓道里的廣告,外面狂風暴雨,用戶享受外賣員冒風雨送來的食物非常開心。我和Emanon從不點外賣,如果是外面那麼大風雨,自己不願意淋雨就付錢讓別人淋,我們心裡過不去;如果是好天氣為什麼不自己出去吃呢,還能活動一下。另一個方面是外面的食物不可能比去店裡吃好吃,想象一下任何菜,直接出鍋裝盤上桌吃,和出鍋進外賣盒密封10分鐘吃口味色澤肯定是不同的。但現在似乎很多人完全不在乎口味,吃飯只是補充能量而以,並無樂趣可言。對於又懶又沒有味覺的人,我們表示遺憾;對於讓人變得更懶更麻木的公司,我們表示抵制。
DNSCrypt是一種認證DNS客戶端和DNS解析器之間通信的協議。 它可以防止DNS欺騙。下面記錄下在Fedora25上使用DNSCrypt的步驟。
dnscrypt-proxy 2 是一個更棒的升級,如果你用的是v1,非常建議升級。官方的安裝文檔已經寫的很詳盡,這裡再簡單記錄一下。
#用超級用戶操作 su -s #下載dnscrypt-proxy-linux_x86_64-2.0.25.tar.gz並解壓至/opt/dnscrypt-proxy/ #其實解壓到哪裡都無所謂啦 cd /opt/dnscrypt-proxy/ cp example-dnscrypt-proxy.toml dnscrypt-proxy.toml #選擇性修改fallback dns如 fallback_resolver = '114.114.114.114:53' #開啟分流文件 #曾經在不分流的情況下用了一年左右,奈何網絡持續惡化,現在不分流體驗會很差 #中國域名來自https://github.com/felixonmars/dnsmasq-china-list/blob/master/accelerated-domains.china.conf #需要替換成dnscrypt-proxy的格式 forwarding_rules = '/home/fred/Programs/dnscrypt-proxy/forwarding-rules.txt' ./dnscrypt-proxy #出現dnscrypt-proxy is ready即為成功,可以先Ctrl+C關閉 #执行下面命令使普通用戶也能運行dnscrypt-proxy setcap cap_net_bind_service=+pe dnscrypt-proxy #下面設置本機dns解析方法一: cp /etc/resolv.conf /etc/resolv.conf.backup nano /etc/resolv.conf #文件內容如下 nameserver 127.0.0.1 options edns0 single-request-reopen #下面設置本機dns解析方法二: #右擊網絡連接圖標,選擇“編輯網絡連接”,選擇網絡,點齒輪圖標。 #在“IPv4設定”選項卡,Method選“只用自動(DHCP)位址” #DNS servers填入127.0.0.1, 8.8.4.4,按“儲存”。 #右擊網絡連接圖標,反選啟用網絡,再勾選啟用網絡。 #設置完成,測試解析 ./dnscrypt-proxy -resolve ft.shaman.eu.org #如果返回了IP就說明OK #自動啟動我都是用的xfce的啟動程序,位於 #應用程式選單/設定值/工作階段與初始啟動/應用程式自動啟動/加入 #指令框輸入/opt/dnscrypt-proxy/dnscrypt-proxy #NetworkManager會在開機時生成重寫/etc/resolv.conf #所以需要在NetworkManager的IPV4設定中指定127.0.0.1為dns服務器 #或者 #給resolv.conf上把鎖 chattr +i /etc/resolv.conf #解鎖 chattr -i /etc/resolv.conf
如果想分享dnscrypt-proxy服務給局域網用戶,可以修改dnscrypt-proxy.toml中的監聽地址為['0.0.0.0:53']。然後開啟防火牆的53端口。
#查看已開啟的防火牆端口 sudo firewall-cmd --list-all #開啟 DNS 端口自動(方法一) sudo firewall-cmd --permanent --add-service=dns #開啟 DNS 端口手動(方法二) sudo firewall-cmd --permanent --add-port=53/udp sudo firewall-cmd --permanent --add-port=53/tcp #重啟防火牆 sudo firewall-cmd --reload
部分配置示例
#程序日誌 log_file = '/home/ft/Programs/dnscrypt-proxy/log.log' #解析日誌 [query_log] file = '/home/ft/Programs/dnscrypt-proxy/query.log' ignored_qtypes = ['AAAA', 'DNSKEY', 'NS'] #域名黑名單 [blocked_names] blocked_names_file = '/home/ft/Programs/dnscrypt-proxy/mybase_blocked-names.txt' #此處使用的黑名單來自 https://download.dnscrypt.info/blacklists/domains/ #NextDNS 解析 [static] [static.'NextDNS-12abcd'] stamp = 'sdns://AgEAAAAAAAAAAAAOZG5zLm5leHRkbnMuaW8HLzc3WiXnZO' #使用 NextDNS 時還要設置 server_names server_names = ['NextDNS-12abcd']
值得提醒的是,如果你使用 BT 下載,那麼很多黑名單是禁止 trackers 相關域名的,記得禁用這一條#tracker.*
。自定義的 DNS 服務器可以使用 Online DNS Stamp calculator 來生成簽章。
不再實用的配置
安裝dnscrypt-proxy並新建一個執行用戶
sudo dnf install dnscrypt-proxy sudo adduser -m -N -r -s /bin/false dnscrypt
安裝完成後可以從/usr/share/dnscrypt-proxy/dnscrypt-resolvers.csv的第一列挑選一個服務商,我嘗試用香港的發現連接不上,於是選擇法國cs-fr。嘗試運行dnscrypt-proxy:
sudo dnscrypt-proxy -u dnscrypt -R cs-fr
我的桌面是Xfce,所以設置DNS很方便。找到程序/設定值/網路連線,選中需要編輯的網路點編輯。在IPv4設定面板中,如果你之前方法是“自動(DHCP)”,則變更方法為“只用自動(DHCP)位址”,並在DNS伺服器一欄填入127.0.0.1。如果之前就有固定IP,則只需要把DNS伺服器一欄改為127.0.0.1即可。多個DNS伺服器可以用半角逗號隔開。
如果沒有桌面環境,要設置DNS的話可以參考The adventurous can edit the appropriate script in /etc/sysconfig/network-scripts/. If you don't have NetworkManager installed, editing /etc/resolv.conf would work too.
重啟網絡服務已使剛剛新設置的DNS生效。可以使用dig驗證當前dns,出現SERVER: 127.0.0.1#53即說明成功。
sudo systemctl restart network.service dig ft.wupo.info
設置自動重啟也很簡單,新建文件/etc/systemd/system/dnscrypt.service,內容如下:
[Unit] Description=dnscrypt - Encrypted DNS service provided by OpenDNS After=NetworkManager.service [Service] ExecStart=/usr/sbin/dnscrypt-proxy -u dnscrypt -R cs-fr ExecReload=/bin/kill -HUP $MAINPID [Install] WantedBy=basic.target
重啟系統守護
sudo systemctl daemon-reload
添加dnscrypt到開啟啟動
sudo systemctl enable dnscrypt.service
當然你也可以手動通過systemctl命令來啟動和停止dnscrypt-proxy,像這樣:
sudo systemctl start dnscrypt.service
本文更新於 2025/07/24。
端午節的第一天,Emanon在家用Flash畫了一天動畫線稿。晚上去吃了樓下新開的小火鍋店,口味一般。吃完飯感覺外面空氣不錯,還去深大湖邊遛了一圈。
回家後發現flash卡的不幸,幾乎無法動彈。Emanon有隨時保存文件的習慣,所以打算關掉Flash但是關閉也沒反應。等了一會兒,有反應了,彈出提示詢問是否保存,在本能的點擊“保存”按鈕後Flash又回到了假死狀態,期間又有過彈窗詢問是否關閉程序,選了關閉。
使用Win10的這兩個月,給我倆帶了無盡的痛苦,比如開機後時間總是不對,比如無線網卡總是總是莫名其妙斷線,比如顯示器完全隨機的出現黑屏……這些問題在另一塊硬盤的Ubuntu上都沒有出現,我只能懷疑win10。至於上面導致電腦卡的動不了,甚至文件管理器和關機都卡到爆的原因,也是windows在執行一個Antimalware Service Executable的進程,占滿了CPU。由於最後一次保存失敗,所以之前的fla文件只寫入了七百KB就斷掉了,fla文件便損壞了。
在網上找到一些搶救fla文件的方法都失敗了,因為我這種是損壞的太嚴重了。搶救方法有:讓朋友用高版本Flash打開,如果能打開則可另存檔案後發回來。或者複製一個fla文件,變更fla文件後綴名為zip,然後解壓開後嘗試找到並修正其中xml文件的錯誤。除了上面的方法還搜索到有種軟件號稱可以把swf轉換成fla,病急亂投醫,不僅沒有把fla轉會來反而中了使Win10感染了病毒。這裡要嚴重吐槽下Win10自帶的病毒防護軟件Windows Defender,我即使進行了全盤掃描,也未能根除感染的病毒。雖然雙系統重裝Windows比較麻煩,但這已經無法阻擋我返回Win7的決心了。
最後把線稿的輸出放上來緬懷下(手機應該是看不了swf):
未備案域名的80端口被停止解析,業務被中段。緊急將域名指向香港服務器,並在香港服務器nginx做如下轉發即可:
server { server_name manage.wupo.info; location / { proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://1.2.3.4:8888; } access_log logs/manage.wupo.info_access.log; }
如果目標地址仍是80,需要注釋掉proxy_set_header Host $host;這句,否則還是訪問不了。