Nas静音

威联通Nas买来之后每天3点都会自动开始一些计划任务, 关闭后晚上安静不少

  • 关于计划任务的说明和操作在这里

    Add items to crontab

    # ┌───────────── minute (0 - 59)
    # │ ┌───────────── hour (0 - 23)
    # │ │ ┌───────────── day of the month (1 - 31)
    # │ │ │ ┌───────────── month (1 - 12)
    # │ │ │ │ ┌───────────── day of the week (0 - 6) (Sunday to Saturday;
    # │ │ │ │ │                                   7 is also Sunday on some systems)
    # │ │ │ │ │
    # │ │ │ │ │
    # * * * * * <command to execute>
    
  • 问题是执行sudo crontab /etc/config/crontab && sudo /etc/init.d/crond.sh restart 命令之后, 一些任务又会自动重置

    0 3 * * * /sbin/vs_refresh
    4 3 * * 3 /etc/init.d/backup_conf.sh
    
  • 解决方法:

    • 问题出在/etc/init.d/crond.sh 上, 修改之

      #############
      # 46行
      echo "0 3 * * * /sbin/vs_refresh" >> /etc/config/crontab
      # 或者新版 46行
      local time=$(/sbin/getcfg vs_refresh schedule -d '13:0')
      ############
      # 88-97行
      1)      #once a day
      echo "4 13 * * * /etc/init.d/backup_conf.sh" >> /etc/config/crontab
      ;;
      30)     #once a month
      echo "4 13 3 * * /etc/init.d/backup_conf.sh" >> /etc/config/crontab
      ;;
      7)      #once a week
      echo "4 13 * * 3 /etc/init.d/backup_conf.sh" >> /etc/config/crontab
      ;;
      *)      #for testing
      echo "*/3 * * * * /etc/init.d/backup_conf.sh" >> /etc/config/crontab
      ;;
      
    • 重启nas可能会重置设置 需注意.

分别压缩每个文件夹到单个压缩包(linux方面)

到存放需要分别压缩的文件夹的根目录下

find * -type d -maxdepth 1 | xargs -i zip -r -m {}.zip {} 
  • find参数
    • 需要使用*来避免匹配到当前目录./
    • -type: 匹配的类型. d: 文件夹; f: 文件
    • -maxdepth: 最大的寻找文件夹深度
  • xargs
    • -i: 匹配linux
  • zip
    • -r: 遍历文件夹下的文件
    • -m: 压缩后删除源文件

威联通一些系统设置

  • 开机自动启动

    All HAL-based Intel and AMD NAS use ...
    
    mount $(/sbin/hal_app --get_boot_pd port_id=0)6 /tmp/config
    touch /tmp/config/autorun.sh
    chmod +x /tmp/config/autorun.sh
    $EDITOR /tmp/config/autorun.sh
    umount /tmp/config
    
    • autorun.sh启动脚本样例

      /share/CACHEDEV1_DATA/homes/xxx/frp/frpc -c /share/CACHEDEV1_DATA/xxx/frp/frpc.ini >> /share/CACHEDEV1_DATA/homes/xxx/frp/frp.log &  # & 表示后台运行这个程序
      ln -s /share/CACHEDEV1_DATA/homes /share/homes  # ssh登陆时, 用户能找到默认路径. /share/CACHEDEV1_DATA为系统安装盘挂载的位置.
      
  • iptbales防火墙

    • 防火墙的最后一行需要drop掉所有端口服务, 在上面插入需要放行的端口
    
    iptables -L  # 查看防火墙配置
    iptables -L -n --line-number  # 查看规则行数
    sudo iptables -D [INPUT/QUFIREWALL/FORWARD/OUTPUT] [规则行数] # 删除特定规则
    sudo iptables -I [INPUT/QUFIREWALL/FORWARD/OUTPUT] -m multiport -p tcp --dports [要放行的端口] -j ACCEPT  # -I 插入第一行. -A 插入最后一行
    

威联通单盘休眠设置

不推荐, 每次访问硬盘的时候, 磁盘电机启动声很大.

1. 查看被系统设置为raid1的磁盘

  • 辨认各个分区对应的物理磁盘

    sudo parted /dev/sda print
    sudo parted /dev/sdb print
    
  • 查看系统raid1所挂载的分区

    sudo mdadm -D /dev/md9
    
    Number   Major   Minor   RaidDevice State
           0       8       33        0      active sync   /dev/sdc1
           1       8       49        1      active sync   /dev/sdd1
           2       8       65        2      active sync   /dev/sde1
           3       8       17        3      active sync   /dev/sdb1
         128       8        1        4      active sync   /dev/sda1
    
    sudo mdadm -D /dev/m13
    
    Number   Major   Minor   RaidDevice State
           0       8       36        0      active sync   /dev/sdc4
           1       8       52        1      active sync   /dev/sdd4
           2       8       68        2      active sync   /dev/sde4
           3       8       20        3      active sync   /dev/sdb4
         128       8        4        4      active sync   /dev/sda4
    

2. 建立脚本

  • 文件存放地址: /share/CACHEDEV1_DATA/homes/sun/internal_raid_setting

  • 建立三个脚本

    # 将机械硬盘断开系统raid1
    vim disconnect_internal_raid.sh* 
    
    #!/bin/sh
    mdadm /dev/md9 --fail /dev/sda1
    mdadm /dev/md9 --fail /dev/sdc1
    mdadm /dev/md9 --fail /dev/sdd1
    mdadm /dev/md9 --fail /dev/sde1
    mdadm /dev/md13 --fail /dev/sda4
    mdadm /dev/md13 --fail /dev/sdc4
    mdadm /dev/md13 --fail /dev/sdd4
    mdadm /dev/md13 --fail /dev/sde4
    
    # 将机械硬盘连接系统raid1
    vim rebuild_internal_raid.sh*
    
    #!/bin/sh
    mdadm /dev/md9 --re-add /dev/sda1
    mdadm /dev/md9 --re-add /dev/sdc1
    mdadm /dev/md9 --re-add /dev/sdd1
    mdadm /dev/md9 --re-add /dev/sde1
    mdadm /dev/md13 --re-add /dev/sda4
    mdadm /dev/md13 --re-add /dev/sdc4
    mdadm /dev/md13 --re-add /dev/sdd4
    mdadm /dev/md13 --re-add /dev/sde4
    
    # 设置磁盘状态监视脚本
    vim raid1_monitor.sh*
    
    #!/bin/sh
    echo `date` `hdparm -C /dev/sda | grep state` >> /share/CACHEDEV1_DATA/homes/sun/internal_raid_setting/raid1_monitor.log 2>&1
    echo `date` `hdparm -C /dev/sdb | grep state` >> /share/CACHEDEV1_DATA/homes/sun/internal_raid_setting/raid1_monitor.log 2>&1
    echo `date` `hdparm -C /dev/sdc | grep state` >> /share/CACHEDEV1_DATA/homes/sun/internal_raid_setting/raid1_monitor.log 2>&1
    echo `date` `hdparm -C /dev/sdd | grep state` >> /share/CACHEDEV1_DATA/homes/sun/internal_raid_setting/raid1_monitor.log 2>&1
    echo `date` `hdparm -C /dev/sde | grep state` >> /share/CACHEDEV1_DATA/homes/sun/internal_raid_setting/raid1_monitor.log 2>&1
    
  • 设置系统任务计划

    # 每天 0 点恢复系统 RAID1
    $ echo "0 0 * * * /bin/bash /share/CACHEDEV1_DATA/my_cron/readd_raid1.sh" >> /etc/config/crontab
    # 每天 0 点 15 分恢复系统 RAID1
    $ echo "15 0 * * * /bin/bash /share/CACHEDEV1_DATA/my_cron/fail_raid1.sh" >> /etc/config/crontab
    # 每 10 分钟检测 HDD 是否休眠,结果保存在 raid1_monitor.log 中
    $ echo "*/10 * * * * /bin/bash /share/CACHEDEV1_DATA/my_cron/raid1_monitor.sh" >> /etc/config/crontab
    # 重启 crontab
    $ sudo crontab /etc/config/crontab && sudo /etc/init.d/crond.sh restart
    

Reference

https://github.com/Bpazy/blog/issues/150

安装python3

  • 在App center安装python3

  • 命令行启用python3

    source /etc/profile.d/python3.bash