admin管理员组文章数量:1026989
一、安装 Xcode 命令行工具
xcode-select --install
xcode-select -p
# 查询安装路径:/Library/Developer/CommandLineTools
open /Library/Developer/CommandLineTools
# 用访达打开指定目录
二、安装 HomeBrew 包管理工具
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent/Homebrew/install/HEAD/install.sh)"
# 官网:https://brew.sh/index_zh-cn
/bin/bash -c "$(curl -fsSL https://gitee/ineo6/homebrew-install/raw/master/install.sh)"
# 国内安装命令,同时替换为中科大的源
# 官网:https://brew.idayer/
三、安装 Python
-
Xcode 命令行工具已包含了 Python 和 pip,可直接使用,无需额外安装,但不是最新版本;
-
可另外用 HomeBrew 安装最新版本。
brew install python # Python 官网:https://www.python/downloads/ brew install NAME # 安装命令行类型的工具 # 个人常用:aria2,更多选择前往官网查看:https://formulae.brew.sh/ brew install --cask NAME # 安装 GUI 类型的工具 # 个人常用:google-chrome、microsoft-edge、parallels、clash-for-windows、medis brew list # 查询用 brew 安装的工具
-
Python 相关常用命令
python3 # 启动 python3 python3 文件.py # 执行 Python 脚本文件 which python3 # /usr/bin/python3 python3 --version # Python 3.9.6 which pip3 # /usr/bin/pip3 pip3 --version # pip 21.2.4 from /Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/site-packages/pip (python 3.9) pip3 install NAME # 安装包名
-
临时用 Python 代替 Python3
vim ~/.zsh_profile # alias python='python3' # alias pip='pip3' source ~/.zsh_profile
四、安装 aria2
brew install aria2
# 官网:https://aria2.github.io/
# 开源地址:https://github/aria2/aria2
which aria2c
# 查询安装路径:/opt/homebrew/bin/aria2c
touch ~/.aria2/aria2.conf
# 创建配置文件
打开刚才创建的文件 ~/.aria2/aria2.conf
并添加以下内容:
# 设置 RPC 的监听地址和端口
rpc-listen-all=true # 表示允许任意 IP 地址访问 RPC 接口
rpc-allow-origin-all=true # 表示允许任意来源的请求访问 RPC 接口
rpc-listen-port=6800 # 表示设置 RPC 监听的端口号为 6800
# 设置默认下载路径
dir=/Users/你的用户名/Downloads
# 设置最大同时下载任务数
max-concurrent-downloads=5
# 下载路径和最大同时下载任务数可以根据自己的需要进行修改。
aria2c --conf-path=/Users/hugo/.aria2/aria2.conf
# 启动 aria2
# 某些情况下,可能会说找不到 aria2c 命令,需要指定具体的位置:
# /opt/homebrew/bin/aria2c --conf-path=/Users/hugo/.aria2/aria2.conf
zsh aria2.sh
# 可以套一层壳便于启动,创建文件 aria2.sh,并把启动命令放进去
# 由于已经在家目录下,所以打开终端后,直接输入命令即可
chmod +x aria2.sh
# 可能要给脚本添加执行权限
Control + C
# 在运行窗口,关闭 aria2c
pkill aria2c
# 在任意窗口,关闭 aria2c
aria2c rpc://localhost:6800/sessionInfo
# 查看运行状态的命令
搭配浏览器插件,使用会更加方便:
Edge 插件地址 | Chrome 插件地址
插件自带了 AiraNG (一款美观的 WebUI 管理工具,官网:AriaNg (mayswind))
也可以单独下载 AiraNG 使用:
网页版开源地址 | 安装版开源地址
参考资料:链接 1 | 链接 2 | 链接 3
用 Aria2 或者 qBittorrent 等进行 BT 下载时,必定需要 Tracker。
这里推荐 trackerslist:官网网址 | 开源地址
修改 aria2 配置文件时,可能要用到的一些 macOS 操作
Shift + Command + 。
# 在访达中显示隐藏文件
Option + Command + C
# 在访达中复制文件路径
open 文件路径
# 在 zsh 中,调用访达打开指定目录
Shift + Command + G
# 在访达中,调出浮窗,打开指定目录
echo $PATH
# 查看环境变量配置情况
export PATH="/Applications/Xcode.app/Contents/Developer/usr/bin:$PATH"
# 暂时添加自定义路径到环境变量
# 永久添加到环境变量,可添加到 ~/.zshrc 文件内,重启终端生效
以下是供参考的一些详细杂项:
以下是 Aria2 配置文件中支持的所有设置项及中文功能解释 (ChatGPT):
# 下载方式相关
allow-overwrite=true # 允许覆盖已有文件
auto-file-renaming=true # 自动重命名下载的文件
conditional-get=false # 启用条件 GET 请求
continue=true # 断点续传
dir=/path/to/dir # 下载目录
file-allocation=none # 文件预分配方式,none 表示不预先分配存储空间,可以加快创建大文件的速度
force-sequential=false # 强制按顺序下载多个链接的分片
input-file=/path/to/file # 从指定文件中读取下载任务信息
max-concurrent-downloads=5 # 最大同时下载数
max-connection-per-server=1 # 每个服务器的最大连接数
min-split-size=10M # 最小分片大小
no-netrc=false # 禁用 rc 认证
no-proxy=false # 禁用代理
out=/path/to/file # 输出文件名
proxy-method=none # 代理方式,none 表示不使用代理
remote-time=true # 使用远程文件的时间戳
split=16 # 分片数量
uri-selector=inorder # URI 选择器,inorder 表示按照链接在任务中的出现顺序排序
# 连接相关
connect-timeout=60 # 连接超时时间(秒)
ftp-passwd=password # FTP 密码
ftp-user=username # FTP 用户名
header=Accept-Language: en-US # 请求头,可以添加多个
http-auth-challenge=true # 启用 HTTP 认证
http-passwd=password # HTTP 密码
http-proxy=http://user:passwd@proxy:port/ # HTTP 代理设置,格式为 http://username:password@hostname:port/
http-user=username # HTTP 用户名
max-tries=50 # 最大重试次数
retry-wait=30 # 每次重试等待时间(秒)
server-stat-of=/path/to/file # 保存服务器状态信息到指定文件
# 限速相关
max-overall-download-limit=0 # 总下载速度限制,单位为字节/秒,0 表示不限制
max-overall-upload-limit=0 # 总上传速度限制,单位为字节/秒,0 表示不限制
max-download-limit=0 # 单个任务下载速度限制,单位为字节/秒,0 表示不限制
max-upload-limit=0 # 单个任务上传速度限制,单位为字节/秒,0 表示不限制
# 日志相关
console-log-level=warn # 控制台日志级别
log=/path/to/file # 输出日志到指定文件
log-level=notice # 日志级别
summary-interval=60 # 日志汇总间隔时间(秒)
# DHT 相关
dht-file-path=~/.aria2/dht.dat # DHT 状态文件路径
enable-dht=true # 启用 DHT 网络
enable-dht6=true # 启用 IPv6 DHT 网络
# RPC 相关
enable-rpc=true # 启用 RPC 服务
rpc-listen-all=false # 允许任意 IP 访问 RPC 服务
rpc-allow-origin-all=false # 允许任意来源的请求访问 RPC 服务
rpc-listen-port=6800 # RPC 监听端口号
rpc-max-request-size=2M # 最大请求大小(字节)
rpc-secret=your_secret # RPC 密钥,用于远程访问时的身份验证
# BT 相关
bt-enable-lpd=true # 启用本地对等下载(LPD)
bt-hash-check-seed=true # 下载完成后自动校验种子
bt-max-peers=55 # BitTorrent 协议最大同时连接数
bt-metadata-only=false # 只下载种子文件中的元数据信息
bt-min-crypto-level=plain # BT 下载的加密方式,plain 表示明文传输 (不加密)
bt-prioritize-piece=0 # 优先下载指定序号的分片
bt-remove-unselected-file=false # 在种子未选择的文件将不会被下载
bt-request-peer-speed-limit=50K # BT 协议每个对等方的请求速度限制
bt-save-metadata=true # 在下载完成后保存种子文件
bt-require-crypto=true # 强制使用加密协议进行通信
bt-seed-unverified=true # 接受未校验的种子
listen-port=6881 # 监听端口号,用于接收传入连接和初始连接
seed-ratio=0.0 # 完成任务后停止上传的分享比率
seed-time=60 # 设置为 0 表示永久做种,单位为分钟
bt-stop-timeout=0 # BT 下载超时时间(秒),0 表示不设超时
# Metalink 相关
metalink-base-uri=http:// # Metalink 文件中的基本 URI
metalink-enable-unique-protocol=false # 启用唯一协议,可防止同时使用多个协议下载同一个文件
metalink-location=/path/to/file # Metalink 文件位置
metalink-preferred-protocol=http # 首选协议
# RPC 远程调用相关
rpc-secret=your_secret # RPC 密钥,用于远程访问时的身份验证
rpc-secure=false # RPC 使用加密连接
rpc-certificate=/path/to/cert.pem # 证书文件路径
rpc-private-key=/path/to/key.pem # 私钥文件路径
# 其他设置
async-dns=false # 异步 DNS 解析
save-cookies=/path/to/file # 保存 Cookies 到指定文件
load-cookies=/path/to/file # 从指定文件中读取 Cookies
user-agent=aria2/$VERSION # 自定义 User-Agent 字符串
在 Aria2 配置文件中,必须列明以下几个配置项 (ChatGPT):
1. dir:指定下载文件的保存路径。
2. rpc-listen-port:设置 RPC 服务监听的端口号,用于远程控制 Aria2 下载任务。
3. rpc-secret:设置访问 RPC 服务时的密钥,用于身份验证。
4. input-file:指定所有未完成的下载任务的元数据文件(.aria2)的位置。
5. save-session:指定在 Aria2 关闭时保存当前所有下载任务状态的文件路径。
6. log:设置日志文件的保存路径及名称。
# 以上这些配置项是 Aria2 的基本配置信息,需要在配置文件中明确指定才能正常运行 Aria2 下载任务。
实际配置中的文件,路径:/Users/hugo/.aria2
aria2.conf
deleteAria2.sh
dht.dat
# aria2.conf 配置文件模版
### 常规设置 ###
## 一般只需要设置一下配置 ##
#文件保存路径, 默认为当前启动位置
dir=/Users/hugo/Downloads
# 下载停止后执行的命令
# 从 正在下载 到 删除、错误、完成 时触发。暂停被标记为未开始下载,故与此项无关。
on-download-stop=/Users/hugo/.aria2/deleteAria2.sh
# 下载完成后执行的命令
# 此项未定义则执行 下载停止后执行的命令 (on-download-stop)
on-download-complete=/Users/hugo/.aria2/deleteAria2.sh
# IPv4 DHT 文件路径,默认:$HOME/.aria2/dht.dat
dht-file-path=/Users/hugo/.aria2/dht.dat
# IPv6 DHT 文件路径,默认:$HOME/.aria2/dht6.dat
dht-file-path6=/Users/hugo/.aria2/dht.dat
# Aria2密码
rpc-secret=自定义密码 (配置 GUI 管理工具的时候,记得输入)
### 个性化设置(其他Aria2参数) ###
## 文件保存设置 ##
# 文件预分配方式, 可选:none, prealloc, trunc, falloc, 默认:prealloc
# 预分配对于机械硬盘可有效降低磁盘碎片、提升磁盘读写性能、延长磁盘寿命。
# 机械硬盘使用 ext4(具有扩展支持),btrfs,xfs 或 NTFS(仅 MinGW 编译版本)等文件系统建议设置为 falloc
# 若无法下载,提示 fallocate failed.cause:Operation not supported 则说明不支持,请设置为 none
# prealloc 分配速度慢, trunc 无实际作用,不推荐使用。
# 固态硬盘不需要预分配,只建议设置为 none ,否则可能会导致双倍文件大小的数据写入,从而影响寿命。
file-allocation=none
#断点续传
continue=true
# 始终尝试断点续传,无法断点续传则终止下载,默认:true
always-resume=false
# 强制保存,即使任务已完成也保存信息到会话文件, 默认:false
# 开启后会在任务完成后保留 .aria2 文件,文件被移除且任务存在的情况下重启后会重新下载。
# 关闭后已完成的任务列表会在重启后清空。
force-save=false
## 下载连接设置 ##
# 文件未找到重试次数,默认:0 (禁用)
# 重试时同时会记录重试次数,所以也需要设置 max-tries 这个选项
max-file-not-found=10
# 最大尝试次数,0 表示无限,默认:5
max-tries=0
# 重试等待时间(秒), 默认:0 (禁用)
retry-wait=10
# 连接超时时间(秒)。默认:60
connect-timeout=10
# 超时时间(秒)。默认:60
timeout=10
# 最大同时下载任务数, 运行时可修改, 默认:5
max-concurrent-downloads=5
# 单服务器最大连接线程数, 任务添加时可指定, 默认:1
# 最大值为 16 (增强版无限制), 且受限于单任务最大连接线程数(split)所设定的值。
max-connection-per-server=16
# 单任务最大连接线程数, 任务添加时可指定, 默认:5
split=64
# 文件最小分段大小, 添加时可指定, 取值范围 1M-1024M (增强版最小值为 1K), 默认:20M
# 比如此项值为 10M, 当文件为 20MB 会分成两段并使用两个来源下载, 文件为 15MB 则只使用一个来源下载。
# 理论上值越小使用下载分段就越多,所能获得的实际线程数就越大,下载速度就越快,但受限于所下载文件服务器的策略。
min-split-size=4M
# HTTP/FTP 下载分片大小,所有分割都必须是此项值的倍数,最小值为 1M (增强版为 1K),默认:1M
piece-length=1M
# 允许分片大小变化。默认:false
# false:当分片大小与控制文件中的不同时将会中止下载
# true:丢失部分下载进度继续下载
allow-piece-length-change=true
# 最低下载速度限制。当下载速度低于或等于此选项的值时关闭连接(增强版本为重连),此选项与 BT 下载无关。单位 K 或 M ,默认:0 (无限制)
lowest-speed-limit=0
# 全局最大下载速度限制, 运行时可修改, 默认:0 (无限制)
max-overall-download-limit=0
# 单任务下载速度限制, 默认:0 (无限制)
max-download-limit=0
# 禁用 IPv6, 默认:false
disable-ipv6=false
# GZip 支持,默认:false
http-accept-gzip=true
# URI 复用,默认: true
reuse-uri=false
# 禁用 netrc 支持,默认:false
no-netrc=true
# 允许覆盖,当相关控制文件(.aria2)不存在时从头开始重新下载。默认:false
allow-overwrite=false
# 使用 UTF-8 处理 Content-Disposition ,默认:false
content-disposition-default-utf8=true
# 最低 TLS 版本,可选:TLSv1.1、TLSv1.2、TLSv1.3 默认:TLSv1.2
#min-tls-version=TLSv1.2
## BT/PT 下载设置 ##
# 启用 IPv4 DHT 功能, PT 下载(私有种子)会自动禁用, 默认:true
enable-dht=true
# 启用 IPv6 DHT 功能, PT 下载(私有种子)会自动禁用,默认:false
# 在没有 IPv6 支持的环境开启可能会导致 DHT 功能异常
enable-dht6=true
# 指定 BT 和 DHT 网络中的 IP 地址
# 使用场景:在家庭宽带没有公网 IP 的情况下可以把 BT 和 DHT 监听端口转发至具有公网 IP 的服务器,在此填写服务器的 IP ,可以提升 BT 下载速率。
#bt-external-ip=
# 本地节点发现, PT 下载(私有种子)会自动禁用 默认:false
bt-enable-lpd=true
# 指定用于本地节点发现的接口,可能的值:接口,IP地址
# 如果未指定此选项,则选择默认接口。
#bt-lpd-interface=
# 启用节点交换, PT 下载(私有种子)会自动禁用, 默认:true
enable-peer-exchange=true
# BT 下载最大连接数(单任务),运行时可修改。0 为不限制,默认:55
# 理想情况下连接数越多下载越快,但在实际情况是只有少部分连接到的做种者上传速度快,其余的上传慢或者不上传。
# 如果不限制,当下载非常热门的种子或任务数非常多时可能会因连接数过多导致进程崩溃或网络阻塞。
# 进程崩溃:如果设备 CPU 性能一般,连接数过多导致 CPU 占用过高,因资源不足 Aria2 进程会强制被终结。
# 网络阻塞:在内网环境下,即使下载没有占满带宽也会导致其它设备无法正常上网。因远古低性能路由器的转发性能瓶颈导致。
bt-max-peers=128
# BT 下载期望速度值(单任务),运行时可修改。单位 K 或 M 。默认:50K
# BT 下载速度低于此选项值时会临时提高连接数来获得更快的下载速度,不过前提是有更多的做种者可供连接。
# 实测临时提高连接数没有上限,但不会像不做限制一样无限增加,会根据算法进行合理的动态调节。
bt-request-peer-speed-limit=10M
# 全局最大上传速度限制, 运行时可修改, 默认:0 (无限制)
# 设置过低可能影响 BT 下载速度
max-overall-upload-limit=2M
# 单任务上传速度限制, 默认:0 (无限制)
max-upload-limit=0
# 最小分享率。当种子的分享率达到此选项设置的值时停止做种, 0 为一直做种, 默认:1.0
# 强烈建议您将此选项设置为大于等于 1.0
seed-ratio=1.0
# 最小做种时间(分钟)。设置为 0 时将在 BT 任务下载完成后停止做种。
seed-time=0
# 做种前检查文件哈希, 默认:true
bt-hash-check-seed=true
# 继续之前的BT任务时, 无需再次校验, 默认:false
bt-seed-unverified=false
# BT tracker 服务器连接超时时间(秒)。默认:60
# 建立连接后,此选项无效,将使用 bt-tracker-timeout 选项的值
bt-tracker-connect-timeout=10
# BT tracker 服务器超时时间(秒)。默认:60
bt-tracker-timeout=10
# BT 服务器连接间隔时间(秒)。默认:0 (自动)
#bt-tracker-interval=0
# BT 下载优先下载文件开头或结尾
bt-prioritize-piece=head=32M,tail=32M
# 保存通过 WebUI(RPC) 上传的种子文件(.torrent),默认:true
# 所有涉及种子文件保存的选项都建议开启,不保存种子文件有任务丢失的风险。
# 通过 RPC 自定义临时下载目录可能不会保存种子文件。
rpc-save-upload-metadata=true
# 下载种子文件(.torrent)自动开始下载, 默认:true,可选:false|mem
# true:保存种子文件
# false:仅下载种子文件
# mem:将种子保存在内存中
follow-torrent=true
# 种子文件下载完后暂停任务,默认:false
# 在开启 follow-torrent 选项后下载种子文件或磁力会自动开始下载任务进行下载,而同时开启当此选项后会建立相关任务并暂停。
pause-metadata=false
# 保存磁力链接元数据为种子文件(.torrent), 默认:false
bt-save-metadata=true
# 加载已保存的元数据文件(.torrent),默认:false
bt-load-saved-metadata=true
# 删除 BT 下载任务中未选择文件,默认:false
bt-remove-unselected-file=true
# BT强制加密, 默认: false
# 启用后将拒绝旧的 BT 握手协议并仅使用混淆握手及加密。可以解决部分运营商对 BT 下载的封锁,且有一定的防版权投诉与迅雷吸血效果。
# 此选项相当于后面两个选项(bt-require-crypto=true, bt-min-crypto-level=arc4)的快捷开启方式,但不会修改这两个选项的值。
bt-force-encryption=true
# BT加密需求,默认:false
# 启用后拒绝与旧的 BitTorrent 握手协议(\19BitTorrent protocol)建立连接,始终使用混淆处理握手。
#bt-require-crypto=true
# BT最低加密等级,可选:plain(明文),arc4(加密),默认:plain
#bt-min-crypto-level=arc4
# 分离仅做种任务,默认:false
# 从正在下载的任务中排除已经下载完成且正在做种的任务,并开始等待列表中的下一个任务。
bt-detach-seed-only=true
## 客户端伪装 ##
# 自定义 User Agent
user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.57
# BT 客户端伪装
# PT 下载需要保持 user-agent 和 peer-agent 两个参数一致
# 部分 PT 站对 Aria2 有特殊封禁机制,客户端伪装不一定有效,且有封禁账号的风险。
#user-agent=Transmission 2.94
peer-agent=Transmission 2.94
peer-id-prefix=-TR2940-
## RPC 设置 ##
# 启用 JSON-RPC/XML-RPC 服务器, 默认:false
enable-rpc=true
# 接受所有远程请求, 默认:false
rpc-allow-origin-all=true
# 允许外部访问, 默认:false
rpc-listen-all=true
# RPC 监听端口, 默认:6800
rpc-listen-port=6800
# RPC 最大请求大小
rpc-max-request-size=10M
# RPC 服务 SSL/TLS 加密, 默认:false
# 启用加密后必须使用 https 或者 wss 协议连接
# 不推荐开启,建议使用 web server 反向代理,比如 Nginx、Caddy ,灵活性更强。
#rpc-secure=false
# 事件轮询方式, 可选:epoll, kqueue, port, poll, select, 不同系统默认值不同
#event-poll=select
## 高级选项 ##
# 启用异步 DNS 功能。默认:true
#async-dns=true
# 指定异步 DNS 服务器列表,未指定则从 /etc/resolv.conf 中读取。
#async-dns-server=119.29.29.29,223.5.5.5,8.8.8.8,1.1.1.1
# 指定单个网络接口,可能的值:接口,IP地址,主机名
# 如果接口具有多个 IP 地址,则建议指定 IP 地址。
# 已知指定网络接口会影响依赖本地 RPC 的连接的功能场景,即通过 localhost 和 127.0.0.1 无法与 Aria2 服务端进行讯通。
#interface=
# 指定多个网络接口,多个值之间使用逗号(,)分隔。
# 使用 interface 选项时会忽略此项。
#multiple-interface=
## 执行额外命令 ##
# 下载错误后执行的命令
# 此项未定义则执行 下载停止后执行的命令 (on-download-stop)
#on-download-error=
# 下载暂停后执行的命令
#on-download-pause=
# 下载开始后执行的命令
#on-download-start=
## BitTorrent trackers ##
bt-tracker=http://1337.abcvg.info:80/announce,
# deleteAria2.sh 配置文件模版
#!/bin/sh
rm -f "$3.aria2"
echo -------------------------
echo $3 下载已完成,删除'.aria2'文件
echo -------------------------
dht.dat
是 Aria2 中的一个文件,用于保存分布式哈希表(DHT)节点信息。DHT 是一种去中心化的网络协议,可以帮助用户在没有服务器的情况下进行 P2P 文件共享和下载。
在使用 Aria2 下载 BitTorrent 等协议时,它会自动连接到 DHT 网络并获取节点信息。为了避免每次都重新获取节点信息,Aria2 会将获取到的节点信息保存到
dht.dat
文件中,以便下次使用时快速加载。
在 Aria2 的配置文件中,
dht-file-path
字段用于设置dht.dat
文件的路径。如果该字段未设置,则默认值为~/.aria2/dht.dat
,即用户目录下的.aria2
子目录中的dht.dat
文件。
dht.dat
文件是一个二进制文件,如果你想要直接查看它的内容,可以使用以下工具:
Hex 编辑器:Hex 编辑器可以显示二进制文件的十六进制编码,并且可以将编码转换为 ASCII 码。在 macOS 上,可以使用自带的 Vim 或者专业的 Hex Fiend 等工具。
命令行工具:可以使用命令行工具来查看
dht.dat
文件的部分内容。在终端中执行以下命令可以查看文件的前 16 个字节:head -c 16 ~/.aria2/dht.dat | hexdump -C
,这个命令会将文件的前 16 个字节以十六进制和 ASCII 码的形式输出。Aria2 RPC 接口:如果你想要查看
dht.dat
文件中保存的节点信息,可以使用 Aria2 的 RPC 接口来获取。
首先,你需要启动 Aria2 并开启enable-dht=true
和enable-dht6=true
选项。
然后,在浏览器中访问http://localhost:6800/
,即可进入 Aria2 的 Web 界面。在这里可以查看 DHT 的状态、节点信息等。
如果在浏览器中访问 http://localhost:6800/
,但是页面是空白的,可能有以下几种原因:
-
Aria2 没有启用 Web 界面
默认情况下,Aria2 并没有开启 Web 界面。如果你想要使用 Web 界面管理 Aria2,需要在配置文件中设置以下选项:
enable-rpc=true rpc-listen-all=true rpc-allow-origin-all=true rpc-listen-port=6800
这些选项会开启 RPC 服务,并允许任意来源的请求访问 RPC 接口,端口号为 6800。
如果这些选项已经设置了,还是无法打开 Web 界面,可以尝试在配置文件中添加以下选项来开启 Web 界面:
rpc-http-enabled=true rpc-secure=false rpc-http-listen-all=true rpc-http-port=6800
然后再次启动 Aria2。
-
防火墙阻止了连接
如果你启用了防火墙软件,可能会阻止浏览器访问本地的 Aria2 服务器。在这种情况下,你需要在防火墙软件中添加一个允许访问 6800 端口的规则。
-
浏览器缓存问题
有时候,浏览器会缓存空白页面,导致无法正确显示。可以尝试在浏览器中按下 Ctrl + F5 快捷键,强制刷新页面。
以下是入门 Anaconda 必备的基本操作方式和技巧:
- 创建和激活虚拟环境
# 在终端中使用以下命令创建一个名为 myenv 的新的虚拟环境:
conda create --name myenv
# 然后,使用以下命令来激活虚拟环境:
conda activate myenv
- 安装和管理包
# 使用以下命令来安装新的包:
conda install package_name
# 使用以下命令来更新已有的包:
conda update package_name
- 查看已安装的包
# 使用以下命令来查看已经安装的包:
conda list
- 导出和共享环境
# 使用以下命令来导出当前的虚拟环境:
conda env export > environment.yml
# 这个命令会将当前的虚拟环境及其所有依赖项导出到一个 YAML 文件中。你可以通过这个文件来共享你的环境。
- 从 YAML 文件中创建环境
# 使用以下命令来从 YAML 文件中创建一个新的虚拟环境:
conda env create -f environment.yml
# 这个命令会从 YAML 文件中读取虚拟环境及其所有依赖项,并创建一个新的虚拟环境。
- 卸载虚拟环境
# 使用以下命令来卸载一个名为 myenv 的虚拟环境:
conda remove --name myenv --all
# 这个命令会删除整个虚拟环境及其所有依赖项。
这些是入门 Anaconda 必备的基本操作方式和技巧,掌握了这些基础的操作,你就能够开始使用 Anaconda 来进行 Python 开发和科学计算了。
一、安装 Xcode 命令行工具
xcode-select --install
xcode-select -p
# 查询安装路径:/Library/Developer/CommandLineTools
open /Library/Developer/CommandLineTools
# 用访达打开指定目录
二、安装 HomeBrew 包管理工具
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent/Homebrew/install/HEAD/install.sh)"
# 官网:https://brew.sh/index_zh-cn
/bin/bash -c "$(curl -fsSL https://gitee/ineo6/homebrew-install/raw/master/install.sh)"
# 国内安装命令,同时替换为中科大的源
# 官网:https://brew.idayer/
三、安装 Python
-
Xcode 命令行工具已包含了 Python 和 pip,可直接使用,无需额外安装,但不是最新版本;
-
可另外用 HomeBrew 安装最新版本。
brew install python # Python 官网:https://www.python/downloads/ brew install NAME # 安装命令行类型的工具 # 个人常用:aria2,更多选择前往官网查看:https://formulae.brew.sh/ brew install --cask NAME # 安装 GUI 类型的工具 # 个人常用:google-chrome、microsoft-edge、parallels、clash-for-windows、medis brew list # 查询用 brew 安装的工具
-
Python 相关常用命令
python3 # 启动 python3 python3 文件.py # 执行 Python 脚本文件 which python3 # /usr/bin/python3 python3 --version # Python 3.9.6 which pip3 # /usr/bin/pip3 pip3 --version # pip 21.2.4 from /Library/Developer/CommandLineTools/Library/Frameworks/Python3.framework/Versions/3.9/lib/python3.9/site-packages/pip (python 3.9) pip3 install NAME # 安装包名
-
临时用 Python 代替 Python3
vim ~/.zsh_profile # alias python='python3' # alias pip='pip3' source ~/.zsh_profile
四、安装 aria2
brew install aria2
# 官网:https://aria2.github.io/
# 开源地址:https://github/aria2/aria2
which aria2c
# 查询安装路径:/opt/homebrew/bin/aria2c
touch ~/.aria2/aria2.conf
# 创建配置文件
打开刚才创建的文件 ~/.aria2/aria2.conf
并添加以下内容:
# 设置 RPC 的监听地址和端口
rpc-listen-all=true # 表示允许任意 IP 地址访问 RPC 接口
rpc-allow-origin-all=true # 表示允许任意来源的请求访问 RPC 接口
rpc-listen-port=6800 # 表示设置 RPC 监听的端口号为 6800
# 设置默认下载路径
dir=/Users/你的用户名/Downloads
# 设置最大同时下载任务数
max-concurrent-downloads=5
# 下载路径和最大同时下载任务数可以根据自己的需要进行修改。
aria2c --conf-path=/Users/hugo/.aria2/aria2.conf
# 启动 aria2
# 某些情况下,可能会说找不到 aria2c 命令,需要指定具体的位置:
# /opt/homebrew/bin/aria2c --conf-path=/Users/hugo/.aria2/aria2.conf
zsh aria2.sh
# 可以套一层壳便于启动,创建文件 aria2.sh,并把启动命令放进去
# 由于已经在家目录下,所以打开终端后,直接输入命令即可
chmod +x aria2.sh
# 可能要给脚本添加执行权限
Control + C
# 在运行窗口,关闭 aria2c
pkill aria2c
# 在任意窗口,关闭 aria2c
aria2c rpc://localhost:6800/sessionInfo
# 查看运行状态的命令
搭配浏览器插件,使用会更加方便:
Edge 插件地址 | Chrome 插件地址
插件自带了 AiraNG (一款美观的 WebUI 管理工具,官网:AriaNg (mayswind))
也可以单独下载 AiraNG 使用:
网页版开源地址 | 安装版开源地址
参考资料:链接 1 | 链接 2 | 链接 3
用 Aria2 或者 qBittorrent 等进行 BT 下载时,必定需要 Tracker。
这里推荐 trackerslist:官网网址 | 开源地址
修改 aria2 配置文件时,可能要用到的一些 macOS 操作
Shift + Command + 。
# 在访达中显示隐藏文件
Option + Command + C
# 在访达中复制文件路径
open 文件路径
# 在 zsh 中,调用访达打开指定目录
Shift + Command + G
# 在访达中,调出浮窗,打开指定目录
echo $PATH
# 查看环境变量配置情况
export PATH="/Applications/Xcode.app/Contents/Developer/usr/bin:$PATH"
# 暂时添加自定义路径到环境变量
# 永久添加到环境变量,可添加到 ~/.zshrc 文件内,重启终端生效
以下是供参考的一些详细杂项:
以下是 Aria2 配置文件中支持的所有设置项及中文功能解释 (ChatGPT):
# 下载方式相关
allow-overwrite=true # 允许覆盖已有文件
auto-file-renaming=true # 自动重命名下载的文件
conditional-get=false # 启用条件 GET 请求
continue=true # 断点续传
dir=/path/to/dir # 下载目录
file-allocation=none # 文件预分配方式,none 表示不预先分配存储空间,可以加快创建大文件的速度
force-sequential=false # 强制按顺序下载多个链接的分片
input-file=/path/to/file # 从指定文件中读取下载任务信息
max-concurrent-downloads=5 # 最大同时下载数
max-connection-per-server=1 # 每个服务器的最大连接数
min-split-size=10M # 最小分片大小
no-netrc=false # 禁用 rc 认证
no-proxy=false # 禁用代理
out=/path/to/file # 输出文件名
proxy-method=none # 代理方式,none 表示不使用代理
remote-time=true # 使用远程文件的时间戳
split=16 # 分片数量
uri-selector=inorder # URI 选择器,inorder 表示按照链接在任务中的出现顺序排序
# 连接相关
connect-timeout=60 # 连接超时时间(秒)
ftp-passwd=password # FTP 密码
ftp-user=username # FTP 用户名
header=Accept-Language: en-US # 请求头,可以添加多个
http-auth-challenge=true # 启用 HTTP 认证
http-passwd=password # HTTP 密码
http-proxy=http://user:passwd@proxy:port/ # HTTP 代理设置,格式为 http://username:password@hostname:port/
http-user=username # HTTP 用户名
max-tries=50 # 最大重试次数
retry-wait=30 # 每次重试等待时间(秒)
server-stat-of=/path/to/file # 保存服务器状态信息到指定文件
# 限速相关
max-overall-download-limit=0 # 总下载速度限制,单位为字节/秒,0 表示不限制
max-overall-upload-limit=0 # 总上传速度限制,单位为字节/秒,0 表示不限制
max-download-limit=0 # 单个任务下载速度限制,单位为字节/秒,0 表示不限制
max-upload-limit=0 # 单个任务上传速度限制,单位为字节/秒,0 表示不限制
# 日志相关
console-log-level=warn # 控制台日志级别
log=/path/to/file # 输出日志到指定文件
log-level=notice # 日志级别
summary-interval=60 # 日志汇总间隔时间(秒)
# DHT 相关
dht-file-path=~/.aria2/dht.dat # DHT 状态文件路径
enable-dht=true # 启用 DHT 网络
enable-dht6=true # 启用 IPv6 DHT 网络
# RPC 相关
enable-rpc=true # 启用 RPC 服务
rpc-listen-all=false # 允许任意 IP 访问 RPC 服务
rpc-allow-origin-all=false # 允许任意来源的请求访问 RPC 服务
rpc-listen-port=6800 # RPC 监听端口号
rpc-max-request-size=2M # 最大请求大小(字节)
rpc-secret=your_secret # RPC 密钥,用于远程访问时的身份验证
# BT 相关
bt-enable-lpd=true # 启用本地对等下载(LPD)
bt-hash-check-seed=true # 下载完成后自动校验种子
bt-max-peers=55 # BitTorrent 协议最大同时连接数
bt-metadata-only=false # 只下载种子文件中的元数据信息
bt-min-crypto-level=plain # BT 下载的加密方式,plain 表示明文传输 (不加密)
bt-prioritize-piece=0 # 优先下载指定序号的分片
bt-remove-unselected-file=false # 在种子未选择的文件将不会被下载
bt-request-peer-speed-limit=50K # BT 协议每个对等方的请求速度限制
bt-save-metadata=true # 在下载完成后保存种子文件
bt-require-crypto=true # 强制使用加密协议进行通信
bt-seed-unverified=true # 接受未校验的种子
listen-port=6881 # 监听端口号,用于接收传入连接和初始连接
seed-ratio=0.0 # 完成任务后停止上传的分享比率
seed-time=60 # 设置为 0 表示永久做种,单位为分钟
bt-stop-timeout=0 # BT 下载超时时间(秒),0 表示不设超时
# Metalink 相关
metalink-base-uri=http:// # Metalink 文件中的基本 URI
metalink-enable-unique-protocol=false # 启用唯一协议,可防止同时使用多个协议下载同一个文件
metalink-location=/path/to/file # Metalink 文件位置
metalink-preferred-protocol=http # 首选协议
# RPC 远程调用相关
rpc-secret=your_secret # RPC 密钥,用于远程访问时的身份验证
rpc-secure=false # RPC 使用加密连接
rpc-certificate=/path/to/cert.pem # 证书文件路径
rpc-private-key=/path/to/key.pem # 私钥文件路径
# 其他设置
async-dns=false # 异步 DNS 解析
save-cookies=/path/to/file # 保存 Cookies 到指定文件
load-cookies=/path/to/file # 从指定文件中读取 Cookies
user-agent=aria2/$VERSION # 自定义 User-Agent 字符串
在 Aria2 配置文件中,必须列明以下几个配置项 (ChatGPT):
1. dir:指定下载文件的保存路径。
2. rpc-listen-port:设置 RPC 服务监听的端口号,用于远程控制 Aria2 下载任务。
3. rpc-secret:设置访问 RPC 服务时的密钥,用于身份验证。
4. input-file:指定所有未完成的下载任务的元数据文件(.aria2)的位置。
5. save-session:指定在 Aria2 关闭时保存当前所有下载任务状态的文件路径。
6. log:设置日志文件的保存路径及名称。
# 以上这些配置项是 Aria2 的基本配置信息,需要在配置文件中明确指定才能正常运行 Aria2 下载任务。
实际配置中的文件,路径:/Users/hugo/.aria2
aria2.conf
deleteAria2.sh
dht.dat
# aria2.conf 配置文件模版
### 常规设置 ###
## 一般只需要设置一下配置 ##
#文件保存路径, 默认为当前启动位置
dir=/Users/hugo/Downloads
# 下载停止后执行的命令
# 从 正在下载 到 删除、错误、完成 时触发。暂停被标记为未开始下载,故与此项无关。
on-download-stop=/Users/hugo/.aria2/deleteAria2.sh
# 下载完成后执行的命令
# 此项未定义则执行 下载停止后执行的命令 (on-download-stop)
on-download-complete=/Users/hugo/.aria2/deleteAria2.sh
# IPv4 DHT 文件路径,默认:$HOME/.aria2/dht.dat
dht-file-path=/Users/hugo/.aria2/dht.dat
# IPv6 DHT 文件路径,默认:$HOME/.aria2/dht6.dat
dht-file-path6=/Users/hugo/.aria2/dht.dat
# Aria2密码
rpc-secret=自定义密码 (配置 GUI 管理工具的时候,记得输入)
### 个性化设置(其他Aria2参数) ###
## 文件保存设置 ##
# 文件预分配方式, 可选:none, prealloc, trunc, falloc, 默认:prealloc
# 预分配对于机械硬盘可有效降低磁盘碎片、提升磁盘读写性能、延长磁盘寿命。
# 机械硬盘使用 ext4(具有扩展支持),btrfs,xfs 或 NTFS(仅 MinGW 编译版本)等文件系统建议设置为 falloc
# 若无法下载,提示 fallocate failed.cause:Operation not supported 则说明不支持,请设置为 none
# prealloc 分配速度慢, trunc 无实际作用,不推荐使用。
# 固态硬盘不需要预分配,只建议设置为 none ,否则可能会导致双倍文件大小的数据写入,从而影响寿命。
file-allocation=none
#断点续传
continue=true
# 始终尝试断点续传,无法断点续传则终止下载,默认:true
always-resume=false
# 强制保存,即使任务已完成也保存信息到会话文件, 默认:false
# 开启后会在任务完成后保留 .aria2 文件,文件被移除且任务存在的情况下重启后会重新下载。
# 关闭后已完成的任务列表会在重启后清空。
force-save=false
## 下载连接设置 ##
# 文件未找到重试次数,默认:0 (禁用)
# 重试时同时会记录重试次数,所以也需要设置 max-tries 这个选项
max-file-not-found=10
# 最大尝试次数,0 表示无限,默认:5
max-tries=0
# 重试等待时间(秒), 默认:0 (禁用)
retry-wait=10
# 连接超时时间(秒)。默认:60
connect-timeout=10
# 超时时间(秒)。默认:60
timeout=10
# 最大同时下载任务数, 运行时可修改, 默认:5
max-concurrent-downloads=5
# 单服务器最大连接线程数, 任务添加时可指定, 默认:1
# 最大值为 16 (增强版无限制), 且受限于单任务最大连接线程数(split)所设定的值。
max-connection-per-server=16
# 单任务最大连接线程数, 任务添加时可指定, 默认:5
split=64
# 文件最小分段大小, 添加时可指定, 取值范围 1M-1024M (增强版最小值为 1K), 默认:20M
# 比如此项值为 10M, 当文件为 20MB 会分成两段并使用两个来源下载, 文件为 15MB 则只使用一个来源下载。
# 理论上值越小使用下载分段就越多,所能获得的实际线程数就越大,下载速度就越快,但受限于所下载文件服务器的策略。
min-split-size=4M
# HTTP/FTP 下载分片大小,所有分割都必须是此项值的倍数,最小值为 1M (增强版为 1K),默认:1M
piece-length=1M
# 允许分片大小变化。默认:false
# false:当分片大小与控制文件中的不同时将会中止下载
# true:丢失部分下载进度继续下载
allow-piece-length-change=true
# 最低下载速度限制。当下载速度低于或等于此选项的值时关闭连接(增强版本为重连),此选项与 BT 下载无关。单位 K 或 M ,默认:0 (无限制)
lowest-speed-limit=0
# 全局最大下载速度限制, 运行时可修改, 默认:0 (无限制)
max-overall-download-limit=0
# 单任务下载速度限制, 默认:0 (无限制)
max-download-limit=0
# 禁用 IPv6, 默认:false
disable-ipv6=false
# GZip 支持,默认:false
http-accept-gzip=true
# URI 复用,默认: true
reuse-uri=false
# 禁用 netrc 支持,默认:false
no-netrc=true
# 允许覆盖,当相关控制文件(.aria2)不存在时从头开始重新下载。默认:false
allow-overwrite=false
# 使用 UTF-8 处理 Content-Disposition ,默认:false
content-disposition-default-utf8=true
# 最低 TLS 版本,可选:TLSv1.1、TLSv1.2、TLSv1.3 默认:TLSv1.2
#min-tls-version=TLSv1.2
## BT/PT 下载设置 ##
# 启用 IPv4 DHT 功能, PT 下载(私有种子)会自动禁用, 默认:true
enable-dht=true
# 启用 IPv6 DHT 功能, PT 下载(私有种子)会自动禁用,默认:false
# 在没有 IPv6 支持的环境开启可能会导致 DHT 功能异常
enable-dht6=true
# 指定 BT 和 DHT 网络中的 IP 地址
# 使用场景:在家庭宽带没有公网 IP 的情况下可以把 BT 和 DHT 监听端口转发至具有公网 IP 的服务器,在此填写服务器的 IP ,可以提升 BT 下载速率。
#bt-external-ip=
# 本地节点发现, PT 下载(私有种子)会自动禁用 默认:false
bt-enable-lpd=true
# 指定用于本地节点发现的接口,可能的值:接口,IP地址
# 如果未指定此选项,则选择默认接口。
#bt-lpd-interface=
# 启用节点交换, PT 下载(私有种子)会自动禁用, 默认:true
enable-peer-exchange=true
# BT 下载最大连接数(单任务),运行时可修改。0 为不限制,默认:55
# 理想情况下连接数越多下载越快,但在实际情况是只有少部分连接到的做种者上传速度快,其余的上传慢或者不上传。
# 如果不限制,当下载非常热门的种子或任务数非常多时可能会因连接数过多导致进程崩溃或网络阻塞。
# 进程崩溃:如果设备 CPU 性能一般,连接数过多导致 CPU 占用过高,因资源不足 Aria2 进程会强制被终结。
# 网络阻塞:在内网环境下,即使下载没有占满带宽也会导致其它设备无法正常上网。因远古低性能路由器的转发性能瓶颈导致。
bt-max-peers=128
# BT 下载期望速度值(单任务),运行时可修改。单位 K 或 M 。默认:50K
# BT 下载速度低于此选项值时会临时提高连接数来获得更快的下载速度,不过前提是有更多的做种者可供连接。
# 实测临时提高连接数没有上限,但不会像不做限制一样无限增加,会根据算法进行合理的动态调节。
bt-request-peer-speed-limit=10M
# 全局最大上传速度限制, 运行时可修改, 默认:0 (无限制)
# 设置过低可能影响 BT 下载速度
max-overall-upload-limit=2M
# 单任务上传速度限制, 默认:0 (无限制)
max-upload-limit=0
# 最小分享率。当种子的分享率达到此选项设置的值时停止做种, 0 为一直做种, 默认:1.0
# 强烈建议您将此选项设置为大于等于 1.0
seed-ratio=1.0
# 最小做种时间(分钟)。设置为 0 时将在 BT 任务下载完成后停止做种。
seed-time=0
# 做种前检查文件哈希, 默认:true
bt-hash-check-seed=true
# 继续之前的BT任务时, 无需再次校验, 默认:false
bt-seed-unverified=false
# BT tracker 服务器连接超时时间(秒)。默认:60
# 建立连接后,此选项无效,将使用 bt-tracker-timeout 选项的值
bt-tracker-connect-timeout=10
# BT tracker 服务器超时时间(秒)。默认:60
bt-tracker-timeout=10
# BT 服务器连接间隔时间(秒)。默认:0 (自动)
#bt-tracker-interval=0
# BT 下载优先下载文件开头或结尾
bt-prioritize-piece=head=32M,tail=32M
# 保存通过 WebUI(RPC) 上传的种子文件(.torrent),默认:true
# 所有涉及种子文件保存的选项都建议开启,不保存种子文件有任务丢失的风险。
# 通过 RPC 自定义临时下载目录可能不会保存种子文件。
rpc-save-upload-metadata=true
# 下载种子文件(.torrent)自动开始下载, 默认:true,可选:false|mem
# true:保存种子文件
# false:仅下载种子文件
# mem:将种子保存在内存中
follow-torrent=true
# 种子文件下载完后暂停任务,默认:false
# 在开启 follow-torrent 选项后下载种子文件或磁力会自动开始下载任务进行下载,而同时开启当此选项后会建立相关任务并暂停。
pause-metadata=false
# 保存磁力链接元数据为种子文件(.torrent), 默认:false
bt-save-metadata=true
# 加载已保存的元数据文件(.torrent),默认:false
bt-load-saved-metadata=true
# 删除 BT 下载任务中未选择文件,默认:false
bt-remove-unselected-file=true
# BT强制加密, 默认: false
# 启用后将拒绝旧的 BT 握手协议并仅使用混淆握手及加密。可以解决部分运营商对 BT 下载的封锁,且有一定的防版权投诉与迅雷吸血效果。
# 此选项相当于后面两个选项(bt-require-crypto=true, bt-min-crypto-level=arc4)的快捷开启方式,但不会修改这两个选项的值。
bt-force-encryption=true
# BT加密需求,默认:false
# 启用后拒绝与旧的 BitTorrent 握手协议(\19BitTorrent protocol)建立连接,始终使用混淆处理握手。
#bt-require-crypto=true
# BT最低加密等级,可选:plain(明文),arc4(加密),默认:plain
#bt-min-crypto-level=arc4
# 分离仅做种任务,默认:false
# 从正在下载的任务中排除已经下载完成且正在做种的任务,并开始等待列表中的下一个任务。
bt-detach-seed-only=true
## 客户端伪装 ##
# 自定义 User Agent
user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36 Edg/87.0.664.57
# BT 客户端伪装
# PT 下载需要保持 user-agent 和 peer-agent 两个参数一致
# 部分 PT 站对 Aria2 有特殊封禁机制,客户端伪装不一定有效,且有封禁账号的风险。
#user-agent=Transmission 2.94
peer-agent=Transmission 2.94
peer-id-prefix=-TR2940-
## RPC 设置 ##
# 启用 JSON-RPC/XML-RPC 服务器, 默认:false
enable-rpc=true
# 接受所有远程请求, 默认:false
rpc-allow-origin-all=true
# 允许外部访问, 默认:false
rpc-listen-all=true
# RPC 监听端口, 默认:6800
rpc-listen-port=6800
# RPC 最大请求大小
rpc-max-request-size=10M
# RPC 服务 SSL/TLS 加密, 默认:false
# 启用加密后必须使用 https 或者 wss 协议连接
# 不推荐开启,建议使用 web server 反向代理,比如 Nginx、Caddy ,灵活性更强。
#rpc-secure=false
# 事件轮询方式, 可选:epoll, kqueue, port, poll, select, 不同系统默认值不同
#event-poll=select
## 高级选项 ##
# 启用异步 DNS 功能。默认:true
#async-dns=true
# 指定异步 DNS 服务器列表,未指定则从 /etc/resolv.conf 中读取。
#async-dns-server=119.29.29.29,223.5.5.5,8.8.8.8,1.1.1.1
# 指定单个网络接口,可能的值:接口,IP地址,主机名
# 如果接口具有多个 IP 地址,则建议指定 IP 地址。
# 已知指定网络接口会影响依赖本地 RPC 的连接的功能场景,即通过 localhost 和 127.0.0.1 无法与 Aria2 服务端进行讯通。
#interface=
# 指定多个网络接口,多个值之间使用逗号(,)分隔。
# 使用 interface 选项时会忽略此项。
#multiple-interface=
## 执行额外命令 ##
# 下载错误后执行的命令
# 此项未定义则执行 下载停止后执行的命令 (on-download-stop)
#on-download-error=
# 下载暂停后执行的命令
#on-download-pause=
# 下载开始后执行的命令
#on-download-start=
## BitTorrent trackers ##
bt-tracker=http://1337.abcvg.info:80/announce,
# deleteAria2.sh 配置文件模版
#!/bin/sh
rm -f "$3.aria2"
echo -------------------------
echo $3 下载已完成,删除'.aria2'文件
echo -------------------------
dht.dat
是 Aria2 中的一个文件,用于保存分布式哈希表(DHT)节点信息。DHT 是一种去中心化的网络协议,可以帮助用户在没有服务器的情况下进行 P2P 文件共享和下载。
在使用 Aria2 下载 BitTorrent 等协议时,它会自动连接到 DHT 网络并获取节点信息。为了避免每次都重新获取节点信息,Aria2 会将获取到的节点信息保存到
dht.dat
文件中,以便下次使用时快速加载。
在 Aria2 的配置文件中,
dht-file-path
字段用于设置dht.dat
文件的路径。如果该字段未设置,则默认值为~/.aria2/dht.dat
,即用户目录下的.aria2
子目录中的dht.dat
文件。
dht.dat
文件是一个二进制文件,如果你想要直接查看它的内容,可以使用以下工具:
Hex 编辑器:Hex 编辑器可以显示二进制文件的十六进制编码,并且可以将编码转换为 ASCII 码。在 macOS 上,可以使用自带的 Vim 或者专业的 Hex Fiend 等工具。
命令行工具:可以使用命令行工具来查看
dht.dat
文件的部分内容。在终端中执行以下命令可以查看文件的前 16 个字节:head -c 16 ~/.aria2/dht.dat | hexdump -C
,这个命令会将文件的前 16 个字节以十六进制和 ASCII 码的形式输出。Aria2 RPC 接口:如果你想要查看
dht.dat
文件中保存的节点信息,可以使用 Aria2 的 RPC 接口来获取。
首先,你需要启动 Aria2 并开启enable-dht=true
和enable-dht6=true
选项。
然后,在浏览器中访问http://localhost:6800/
,即可进入 Aria2 的 Web 界面。在这里可以查看 DHT 的状态、节点信息等。
如果在浏览器中访问 http://localhost:6800/
,但是页面是空白的,可能有以下几种原因:
-
Aria2 没有启用 Web 界面
默认情况下,Aria2 并没有开启 Web 界面。如果你想要使用 Web 界面管理 Aria2,需要在配置文件中设置以下选项:
enable-rpc=true rpc-listen-all=true rpc-allow-origin-all=true rpc-listen-port=6800
这些选项会开启 RPC 服务,并允许任意来源的请求访问 RPC 接口,端口号为 6800。
如果这些选项已经设置了,还是无法打开 Web 界面,可以尝试在配置文件中添加以下选项来开启 Web 界面:
rpc-http-enabled=true rpc-secure=false rpc-http-listen-all=true rpc-http-port=6800
然后再次启动 Aria2。
-
防火墙阻止了连接
如果你启用了防火墙软件,可能会阻止浏览器访问本地的 Aria2 服务器。在这种情况下,你需要在防火墙软件中添加一个允许访问 6800 端口的规则。
-
浏览器缓存问题
有时候,浏览器会缓存空白页面,导致无法正确显示。可以尝试在浏览器中按下 Ctrl + F5 快捷键,强制刷新页面。
以下是入门 Anaconda 必备的基本操作方式和技巧:
- 创建和激活虚拟环境
# 在终端中使用以下命令创建一个名为 myenv 的新的虚拟环境:
conda create --name myenv
# 然后,使用以下命令来激活虚拟环境:
conda activate myenv
- 安装和管理包
# 使用以下命令来安装新的包:
conda install package_name
# 使用以下命令来更新已有的包:
conda update package_name
- 查看已安装的包
# 使用以下命令来查看已经安装的包:
conda list
- 导出和共享环境
# 使用以下命令来导出当前的虚拟环境:
conda env export > environment.yml
# 这个命令会将当前的虚拟环境及其所有依赖项导出到一个 YAML 文件中。你可以通过这个文件来共享你的环境。
- 从 YAML 文件中创建环境
# 使用以下命令来从 YAML 文件中创建一个新的虚拟环境:
conda env create -f environment.yml
# 这个命令会从 YAML 文件中读取虚拟环境及其所有依赖项,并创建一个新的虚拟环境。
- 卸载虚拟环境
# 使用以下命令来卸载一个名为 myenv 的虚拟环境:
conda remove --name myenv --all
# 这个命令会删除整个虚拟环境及其所有依赖项。
这些是入门 Anaconda 必备的基本操作方式和技巧,掌握了这些基础的操作,你就能够开始使用 Anaconda 来进行 Python 开发和科学计算了。
版权声明:本文标题:个人开发环境配置 (macOS 篇) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://it.en369.cn/jiaocheng/1737955993a1526087.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论