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下:

  1. 在home下建一个aria2c用户目录,修改所有者为aria2c:aria2c
  2. 在这aria2c下面建立一个Downloads目录作为aria2c的下载路径,同样修改所有者为aria2c:aria2c;
  3. 把自己加入到aria2c用户组里,修改Downloads权限为775(方便自己访问)。
  4. ln -s /home/aria2c/Downloads ~/Downloads/aria2c把这个下载目录软链过去。

arch下aria2c守护进程等配置小结相关推荐

  1. 【Docker学习总结】12.Docker守护进程的配置和操作

    上一篇总结了Docker的CS模式的具体概念,本篇来学习Docker守护进程的配置和操作. 在上一篇的演示中,我们使用了Linux的ps命令查看了Docker守护进程的运行状态.那么,除了ps命令,我 ...

  2. windows下创建守护进程A和B 互相监视 挂掉拉起

    在windows下创建守护进程A和B ,在其中一个挂掉以后,另一个会把挂掉的拉起来. 下面展示一些 内联代码片. 这里只列出了A的代码,B和A类似. #include<iostream> ...

  3. Linux Supervisor 守护进程基本配置

    supervisor:C/S架构的进程控制系统,可使用户在类UNIX系统中监控.管理进程.常用于管理与某个用户或项目相关的进程. 组成部分 supervisord:服务守护进程 supervisorc ...

  4. 嵌入式linux系统下简单守护进程(daemon)的编写

    最近公司项目需要,需要在我们的嵌入式linux设备中创建一个守护进程,用于保护系统中的主进程,防止某些不可预期的意外导致主进程异常结束后,系统完全宕机没有任何反应,破坏用户体验感.但是,查阅诸多资料之 ...

  5. linux下daemon守护进程的实现(以nginx代码为例)

    ngx_int_t ngx_daemon(ngx_log_t *log) {int fd;// 让init进程成为新产生进程的父进程:// 调用fork函数创建子进程后,使父进程立即退出.这样,产生的 ...

  6. 浅显理解*nix下的守护进程机制及fork函数

    最近空闲时间重新仔细看了一下memcached的使用说明文档,硬着头皮看了一点源码,有时候看到一些晦涩的c函数感觉实在恍惚只能跳过.不过也不算是全无收获,终于LZ还敢再看c语言,终于LZ又看起了c语言 ...

  7. windows下的守护进程C++

    1 守护进程 1.1 需求分析 我有三个程序需要不断运行,有可能出现某些未知的原因而宕掉,需要本守护程序来进行守护,发现它运行不管,死掉就重启它,并且服务器开机就启动. 1.2 使用方法 将该程序与需 ...

  8. rsync增量复制命令用法和守护进程的配置

    实验系统 rhel6.5 从本地到本地           <========>  cp rsync -avz  src  dst rsync -avz src/ dst 从远程到本地 r ...

  9. Linux06-服务、守护进程和systemd

    目录 一.简介systemd 二.使用systemd 2.1.systemctl命令与systemd单元 2.2.控制系统服务 一.简介systemd RHEL6及以前,系统启动和服务器进程是由第一个 ...

最新文章

  1. vue element 导出blob后台文件流xlsx文件自动下载(且规避乱码)
  2. Hugo快速搭建Blog
  3. 从构建分布式秒杀系统聊聊验证码
  4. 11kw星三角启动延时几秒_电机星三角降压启动原理图
  5. 实战|Python轻松实现动态网页爬虫(附详细源码)
  6. sqlserver 2008 多表更新
  7. 基于FlashPaper的文档播放器
  8. Mac开发环境搭建_zsh替换bash_2
  9. 分类问题的评估指标一览
  10. 啦啦外卖43.5学习研究开发
  11. 两万字的CAPL语法基础,一篇文章带你入门
  12. 实现不同电脑共享一套鼠标键盘------ShareMouse
  13. MachineLearning_LogisticRegression使用matlab编程遇到问题
  14. 善于学习——总结经验
  15. 【云速建站】如何实现多用户权限管理
  16. Android外挂开发探索
  17. 微型计算机最早应用于,计算机文化基础题库(含答案)
  18. 会员管理小程序实战开发教程(六)-会员查询功能
  19. 英语常用的62个英语句型,学英语须掌握
  20. 第二天 05-安装win7系统与远程桌面开启

热门文章

  1. 模仿10086电话的代码
  2. 国家发展改革委、财政部关于加快推进国家电子政务外网建设工作的通知
  3. 学习要尽可能把心静下来
  4. 转载:机器视觉中使用深度学习所面临的对抗攻击——Survey(下)
  5. 软件测试报告应该注意哪些事项
  6. 计算机辅助设计与制造专业课程,工程学院本科课程《计算机辅助设计与制造》教学大纲.PDF...
  7. 绿坝遭遇“剽窃门,美国加州一软件公司指控其剽窃他们的技术,并准备诉诸法律
  8. 高等代数_第4章:矩阵的运算
  9. .NET政务OA自动化办公系统【源码分享】
  10. 神州数码易拓TIPTOP EPR维护作业模板-上单身下单头维护作业