POGO折腾备忘

作者: 张发荣 | 来源:发表于2017-04-12 19:56 被阅读0次
    狗狗

    1.引子

    今天给我的破狗4(pogo4)升级了下系统。

    由于有将近一年没有升级了,还是有许多东西需要下载的。加之服务器在国外,下载速度时有时无的,126个补丁,下载数据有160多MB,还是折腾了一些时间。

    7*24小时/每周不间断地跑了两年多了,我的狗狗还是很乖,没有丝毫倦怠,没有丝毫不满,也没有丝毫要罢工的迹象。

    在有钱买专业的NAS前,就只有靠它了,我的乖狗狗!

    看着进度一点点前进,看着代码一行行跳动,那份满足和安心是不能言表的。

    完事之后想起折腾破狗的事情,顺便想找之前的笔记看下。但是只找到一篇安装Archlinux的,其他的没有找到。索性就着把在破狗上其他一些折腾,一起记录一下。以后就算破狗故障了,出问题了,要重新折腾的话,根据手里的东西也可以恢复起来,也不用满世界再去找资料了,常言道,家里有粮心不慌是也。万一还能帮到有类似需求的小伙伴,那不更是锦上添花了么。

    2.让Archlinux支持rc.local开机脚本

    刚用pogo那会儿,Archlinux是支持rc.local的,但是后来某次更新之后就不支持了。对于pogo来说就很不方便,迅雷什么的就先不说了,最起码的开机自动挂载移动硬盘是必需的呀,不然pogo开机干嘛呢,对啊?

    当然在网上查了些资料,是这样说的:

    Archlinux 替换initscript 为systemd方式后,许多服务启动方式已经发生变化。原来的/etc/rc.local已经消失,并被建议使用tmpfiles.d方式替换。但是有些操作tmpfiles.d无法替代。

    需要手动写一个rc-local.service 文件。

    既然系统不支持了,就只有自己动手做一个了呗。开整!

        nano /usr/lib/systemd/system/rc-local.service
        # 我是菜鸟,只会使用nano,对vim还不熟悉
    

    内容如下:

        [Unit]
        Description="/etc/rc.local Compatibility"
    
    
        [Service]
        Type=forking
        ExecStart=/etc/rc.local start
        TimeoutSec=0
        StandardInput=tty
        RemainAfterExit=yes
        SysVStartPriority=99
    
        [Install]
        WantedBy=multi-user.target
    

    启用脚本服务

        systemctl enable rc-local.service
    

    创建启动文件rc.local,写入自己想要的功能:

        nano /etc/rc.d/rc.local
        # 也可以直接 nano /etc/rc.d/rc.local,这样后面就不用创建连接了
    

    我里面的内容如下:

        #!/bin/bash
            /root/mymount.sh
            # 按照我的要求来挂载移动硬盘
            su pogoplug -c "/home/pogoplug/runaria2+xunlei.sh"
            # 以pogoplug的身份来支持runaria2+xunlei.sh这个脚本,脚本本身是运行迅雷和aria2两个下载工具的。
            # 没有用root账户运行,为了防止下载软件(特别是迅雷)会做奇怪的事情,或者自己的误操作,
            # 会对硬盘数据造成毁灭性的打击
    

    创建连接到/etc,并给刚才创建的脚本执行权限

        ln -s /etc/rc.d/rc.local /etc
        chmod +x /etc/rc.d/rc.local
    

    好了,搞定!

    以后再也不怕小狗在跳电或者误拔插座的时候,不能愉快地看电视电影,也可以随时随地下载东西了。就算没在家里,要下什么东西,只需要用手机,通过迅雷远程就可以轻松愉快地搞定了。

    3.另外两个脚本

    为了方便起见,把另外两个脚本也一起贴在这里吧。回头再把装系统的也转过来,就齐活了。真正的一站式服务!就算完全从头开始折腾我的小pogo也是妥妥的。

    mymount.sh的内容:

    #!/bin/bash
    mount -o iocharset=cp936 -t ntfs-3g UUID=xxxxxxxxxxxxxxxx /xxxxx
    mount -o iocharset=cp936 -t ntfs-3g UUID=xxxxxxxxxxxxxxxx /xxxxx
    mount -o iocharset=cp936 -t ntfs-3g UUID=xxxxxxxxxxxxxxxx /xxxxx
    mount -o iocharset=cp936 -t ntfs-3g UUID=xxxxxxxxxxxxxxxx /xxxxx
    mount -o iocharset=cp936 -t ntfs-3g UUID=xxxxxxxxxxxxxxxx /xxxxx
    mount -o iocharset=cp936 -t ntfs-3g UUID=xxxxxxxxxxxxxxxx /xxxxx
    

    通过这个脚本,可以方便地实现指定位置的挂载。不会因为重启或者其它原因,造成文件夹的混乱。

    想想吧,下载进行到一半的时候,断电一次,系统重启后挂载位置和之前不一样了,那又得重头再来了不是?有了这个脚本,我的pogo再也不会出现这种事情了,哈哈!

    接下来是runaria2+xunlei.sh的内容:

        #!/bin/sh
            aria2c --conf-path=/home/pogoplug/aria2/aria2.conf -D
            /home/pogoplug/xunlei/portal
    

    4.提醒

    这个是专门提醒我自己的:

    1. 用aria2之前先关闭浏览器的ss插件;

    2. pogo重启的时候不要打开里面的文件或者文件夹,会影响硬盘的挂载。

    因为alpha上面的两个常用浏览器都默认开启了ss代理,会跳过局域网。粗心的我总以为是aria2或是开机脚本出问题了,所以专门把这两条放在这里,给自己提个醒,不要被自己的粗心折腾了。

    嗯,就这样。

    可爱的狗狗

    2019-12-17,更新后,samba的两个服务改名为nmb和smb,相应命令中注意更改。

    相关文章

      网友评论

        本文标题:POGO折腾备忘

        本文链接:https://www.haomeiwen.com/subject/yyxvattx.html