時效性
本篇撰寫時間為2021.12.13,由於計算機技術日新月異,博客中所有內容都有時效和版本限制,具體做法不一定總行得通,鏈接可能改動失效,各種軟件的用法可能有修改。但是其中透露的思想往往是值得學習的。
本篇前置:
- ExpRe[6] 雲服務器[0] 基礎使用,ssh連接
https://www.cnblogs.com/minor-second/p/15553737.html - IncRe[0] Linux與Shell 第7章 理解Linux文件權限
https://www.cnblogs.com/minor-second/p/15684735.html
雲硬盤基礎
瞻仰雲硬盤
無論你是在配置雲服務器的時候購買了,還是單獨購買,都請到雲服務器提供商的控制台查看
教程https://docs.ksyun.com/documents/1052
確保雲硬盤在使用中,即對應了需要的主機
創建文件系統
如果我們不需要邏輯分區,則可以裸盤創建文件系統
參考https://docs.ksyun.com/documents/39962
fdisk -l
看到我們的雲硬盤,2TB
其設備文件為/dev/vdb
接下來依據教程創建文件系統和掛載即可
硬盤相關常見命令
du
看占用,-h
使得輸出更加human-readable(如使用K, M, G等單位),-s
使得不遞歸。很常見的一個組合就是du -sh
查看當前目錄所占空間。以及du -h <目錄>
或du -sh <目錄>
df
看文件系統。-h
使得輸出更加human-readable,-T
使得輸出中能看到Type(文件系統的類型)。
所以df -hT
可以看到這個就說明掛載成功
bt下載和復用數據
嘗試cd
到掛載點,進行下載
比如下圖中,直接wget
是200多K的網速,無法接受(已經在使用位於境外的雲服務器了……)
所以我們對於大數據集,嘗試使用torrent種子下載
可以去https://academictorrents.com
看看有沒有
transmission
安裝和配置方法
- 參考https://help.ubuntu.com/community/TransmissionHowTo
安裝transmission
add-apt-repository ppa:transmissionbt/ppa
apt update
apt install transmission-gtk transmission-cli transmission-common transmission-daemon
- 停下
transmission
,並作配置,再重啟transmission
sudo service transmission-daemon stop
sudo vim /var/lib/transmission-daemon/info/settings.json
可以按照https://help.ubuntu.com/community/TransmissionHowTo
教程鏈接,做一些想做的配置。sudo service transmission-daemon start
嘗試使用
在下載大數據集前,我們下載一個小的東西驗證一下可用性
- 去https://ubuntu.com/download/alternative-downloads
右鍵某個種子的鏈接,復制其地址 - 在雲服務器某個目錄
wget <鏈接>
torrent很小,下載它很快(直接用wget
就行) transmission-remote -n 'transmission:transmission' -a <種子文件> # 添加種子
此時應該已經開始下載了- 常見命令
transmission-remote -h # 幫助
transmission-remote -n 'transmission:transmission' -l # 種子列表
transmission-remote -n 'transmission:transmission' -st
transmission-remote -n 'transmission:transmission' -si # 對全體輸出信息
transmission-remote -n 'transmission:transmission' -t 1 -f
transmission-remote -n 'transmission:transmission' -t 1 -i # 對列表中1號輸出信息
transmission-remote -n 'transmission:transmission' -t 1 -s # 開始
transmission-remote -n 'transmission:transmission' -t 1 -S # 結束
transmission-remote -n 'transmission:transmission' -t 1 -r # 清除
配置下載目的地
- 回憶之前的配置方法,對
transmission
進行配置。- 具體需要的配置:在
/var/lib/transmission-daemon/info/settings.json
文件中搜索dir
(回憶vim
中用/
進行搜索)
找到download-dir
和incomplete-dir
,把值指定成某個雲硬盤下的目錄。
例如掛載點/mnt/data_disk01
(具體名稱是之前設置好的)
- 具體需要的配置:在
- 然后參考IncRe第0期,給掛載點
/mnt/data_disk01
設置權限。 - 重新按照之前方法啟動下載,就可以下載到雲硬盤了
可以看到,速度比之前快多了
總結和問答練習
- Q: 回憶
/dev/null
往往用來丟棄輸出。所以說dev
是develop的意思嗎?
A: 不是。是device. 該目錄下有許多特殊的文件,稱為“設備文件”。它們往往對應各種物理或虛擬的設備,比如/dev/null
空設備(在第11期用到過),/dev/shm
共享內存(在第19期用到過) - Q: 寫一行小腳本,每隔一小段時間記錄一下統計信息在某個日志文件中,方便看bt下載是否穩定。
A:
(供參考)
while true; do echo $(transmission-remote -n 'transmission:transmission' -l) >> log.txt; sleep 5; done;
隔一段時間看看日志,可以發現有意思的是,p2p高峰期速度飛快。正文中7 days,但在p2p高峰期測算就只有1-3 day(s)
注:數據集總共1T左右