arch下aria2c守护进程等配置小结
arch下aria2c守护进程等配置小结
前言
aria2c是个好东西,可以把他简单理解为是下载管理器的后端,配合一些前端程序,比如ariaNG,可以管理其下载的各类东西,再配合百度云导出真实下载地址的插件BaiduExporter,爽到不要不要的。所以决定简单总结一下。
配置
BaiduExporter
首先是BaiduExporter,安装很简单,具体的去github上拿吧(链接在上面),安装插件之后可以看到多了一个导出下载按钮
设置的时候配置好aria2c服务开启的端口号即可,默认的端口是6800,token后面是本地aira2c服务的配置文件里的秘钥,具体内容会在后面讲。
aria2c服务
arch linux
arch(我用的manjaro-kde)系的就很舒服,毕竟坐拥最大的用户仓库aur,前几天在aur上一搜,发现还真有现成的aria2c-daemon,还是帮你配置好systemd守护进程的,热度还算不错。二话不说,先来一发:
yay -Sy aria2c-daemon
安好之后会发现给你新加了个用户,叫aria2c,这个服务就是由aira2c这个系统账户完成的了。我们简单瞅一眼他service咋写的
[Unit]
Description=aria2c Service
Requires=network.target
After=dhcpcd.service[Service]
Type=forking
User=aria2c
Group=aria2c
WorkingDirectory=/var/share/aria2c
EnvironmentFile=/etc/conf.d/aria2c-env.conf
ExecStart=/usr/bin/aria2c -D --conf-path=${ARIA2C_CONF} --save-session-interval=180 --save-session=${ARIA2C_SESSION}
ExecReload=/usr/bin/kill -HUP $MAINPID
RestartSec=1min
Restart=on-failure[Install]
WantedBy=multi-user.target
可以看到系统帮我们生成了一个aria2c这样的系统账户来执行aria2c服务,现在就只用
sudo systemctl enable aria2cd.service #设服务为开启启动
sudo systemctl start aria2cd.service #启动服务
即可开机自动启动服务了。
这个时候系统会提示你配置文件在/etc/conf.d/aria2.conf
里,然后/var/share/aria2c
是当前的下载路径。aria2的log和session都存在这里。
哦还有在配置文件/etc/conf.d/aria2.conf
里记得写一下rpc-secret字段,可以自定义,当然也可以生成。这就是前面设置里的那个token。
还可以配置监听的端口号,默认值是6800
其他发行版
其他的发行版像ubuntu,apt install aria2c
是会安好的,然后参考一下(大量)网页,把aria2c配置好,之前配置过ubuntu的,反正挺累的就是。
参考链接
想要了解aria2一些配置等的参考链接如下:
aria2配置示例
aria2使用说明
aria2官网
aria-NG
这是第三件套,毕竟aria2c装好了之后,总不能每次下载都用命令行操作,麻烦而且不能方便的并行控制,aria2c提供了rpc接口,这也是为什么前面要把aria2当做一个守护进程来使用。
ariaNG就是这样一个前端,可以方便的完成查看下载速度、下载管理等各种操作,一个简单的截图了解一下:
可以看到这里可以配置各种aria2的设置,作者翻译简直就是良苦用心。作为本地下载器,可以直接在上面给的github链接里下载release里的all-in-one版本,直接打开本地html网页即可查看。
下好all-in-one版本后,打开之前要记得把前面写的–rpc-secret填一下,不然前端会连不上后台下载进程。
问题
Q:为什么登录处出现了新的用户aria2c?
A:这主要是因为aria2c-daemon的作者在新添加用户的时候没有把aria2c作为系统用户添加。(简单地说就是作者背锅,一会儿给他提交各pr去)
aria2c-daemon这是作者在aur上公布的upstream仓库,git clone下来看代码
post_install() {echo -n "Adding aria2c user and group ..."# --no-create-homeuseradd aria2c -d /var/share/aria2c/ -U -s /bin/nologin && echo " done."passwd -l aria2c &>/dev/nullinstall -d /var/share/aria2c/touch /var/share/aria2c/aria2c.logtouch /var/share/aria2c/aria2c.sessionchmod 600 /etc/conf.d/aria2c.confchown aria2c:aria2c /etc/conf.d/aria2c.confchown aria2c:aria2c /etc/conf.d/aria2c-env.confchown -R aria2c:aria2c /var/share/aria2c/echo "Now the aria2cd is installed, you may want to ..."echo " 1. check the config file for aria2cd at /etc/conf.d/aria2c.conf"echo " 2. get the downloaded files at /var/share/aria2c/"
}post_remove() {echo -n -e "\nRemoving aria2c user/group..."userdel aria2c && echo " done."echo "Now the aria2cd was removed from your system,"echo "you may need to check the directory /var/share/aria2c/ by manual."
}
注意看第四行作者添加的是普通身份用户,不太对,修改成
useradd aria2c -r -d /var/share/aria2c/ -s /bin/nologin && echo " done."
即可,-r在这里是指添加系统账户(不会出现在登录界面),改好之后把之前安的卸掉(会帮你把aria2c用户删掉)。然后重新打包并安装即可。
makepkg -As
pacman -U aria2c-daemon-0.1-1-any.pkg.tar.xz
Q:我把下载路径改成了自己的用户目录,然后下什么东西都下不来,怎么办?
因为你的守护进程是由aria2c账户执行的,他本身无权限访问你的工作目录,所以会出问题。比较好的解决方案使用一个aria2c有权限的目录,然后软链到自己的Downloads下:
- 在home下建一个aria2c用户目录,修改所有者为aria2c:aria2c
- 在这aria2c下面建立一个Downloads目录作为aria2c的下载路径,同样修改所有者为aria2c:aria2c;
- 把自己加入到aria2c用户组里,修改Downloads权限为775(方便自己访问)。
ln -s /home/aria2c/Downloads ~/Downloads/aria2c
把这个下载目录软链过去。
arch下aria2c守护进程等配置小结相关推荐
- 【Docker学习总结】12.Docker守护进程的配置和操作
上一篇总结了Docker的CS模式的具体概念,本篇来学习Docker守护进程的配置和操作. 在上一篇的演示中,我们使用了Linux的ps命令查看了Docker守护进程的运行状态.那么,除了ps命令,我 ...
- windows下创建守护进程A和B 互相监视 挂掉拉起
在windows下创建守护进程A和B ,在其中一个挂掉以后,另一个会把挂掉的拉起来. 下面展示一些 内联代码片. 这里只列出了A的代码,B和A类似. #include<iostream> ...
- Linux Supervisor 守护进程基本配置
supervisor:C/S架构的进程控制系统,可使用户在类UNIX系统中监控.管理进程.常用于管理与某个用户或项目相关的进程. 组成部分 supervisord:服务守护进程 supervisorc ...
- 嵌入式linux系统下简单守护进程(daemon)的编写
最近公司项目需要,需要在我们的嵌入式linux设备中创建一个守护进程,用于保护系统中的主进程,防止某些不可预期的意外导致主进程异常结束后,系统完全宕机没有任何反应,破坏用户体验感.但是,查阅诸多资料之 ...
- linux下daemon守护进程的实现(以nginx代码为例)
ngx_int_t ngx_daemon(ngx_log_t *log) {int fd;// 让init进程成为新产生进程的父进程:// 调用fork函数创建子进程后,使父进程立即退出.这样,产生的 ...
- 浅显理解*nix下的守护进程机制及fork函数
最近空闲时间重新仔细看了一下memcached的使用说明文档,硬着头皮看了一点源码,有时候看到一些晦涩的c函数感觉实在恍惚只能跳过.不过也不算是全无收获,终于LZ还敢再看c语言,终于LZ又看起了c语言 ...
- windows下的守护进程C++
1 守护进程 1.1 需求分析 我有三个程序需要不断运行,有可能出现某些未知的原因而宕掉,需要本守护程序来进行守护,发现它运行不管,死掉就重启它,并且服务器开机就启动. 1.2 使用方法 将该程序与需 ...
- rsync增量复制命令用法和守护进程的配置
实验系统 rhel6.5 从本地到本地 <========> cp rsync -avz src dst rsync -avz src/ dst 从远程到本地 r ...
- Linux06-服务、守护进程和systemd
目录 一.简介systemd 二.使用systemd 2.1.systemctl命令与systemd单元 2.2.控制系统服务 一.简介systemd RHEL6及以前,系统启动和服务器进程是由第一个 ...
最新文章
- vue element 导出blob后台文件流xlsx文件自动下载(且规避乱码)
- Hugo快速搭建Blog
- 从构建分布式秒杀系统聊聊验证码
- 11kw星三角启动延时几秒_电机星三角降压启动原理图
- 实战|Python轻松实现动态网页爬虫(附详细源码)
- sqlserver 2008 多表更新
- 基于FlashPaper的文档播放器
- Mac开发环境搭建_zsh替换bash_2
- 分类问题的评估指标一览
- 啦啦外卖43.5学习研究开发
- 两万字的CAPL语法基础,一篇文章带你入门
- 实现不同电脑共享一套鼠标键盘------ShareMouse
- MachineLearning_LogisticRegression使用matlab编程遇到问题
- 善于学习——总结经验
- 【云速建站】如何实现多用户权限管理
- Android外挂开发探索
- 微型计算机最早应用于,计算机文化基础题库(含答案)
- 会员管理小程序实战开发教程(六)-会员查询功能
- 英语常用的62个英语句型,学英语须掌握
- 第二天 05-安装win7系统与远程桌面开启
热门文章
- 模仿10086电话的代码
- 国家发展改革委、财政部关于加快推进国家电子政务外网建设工作的通知
- 学习要尽可能把心静下来
- 转载:机器视觉中使用深度学习所面临的对抗攻击——Survey(下)
- 软件测试报告应该注意哪些事项
- 计算机辅助设计与制造专业课程,工程学院本科课程《计算机辅助设计与制造》教学大纲.PDF...
- 绿坝遭遇“剽窃门,美国加州一软件公司指控其剽窃他们的技术,并准备诉诸法律
- 高等代数_第4章:矩阵的运算
- .NET政务OA自动化办公系统【源码分享】
- 神州数码易拓TIPTOP EPR维护作业模板-上单身下单头维护作业