分类目录归档:bash

把Hurricane Electric BGP Toolkit搜索结果转换成RouterOS防火墙IP列表

用着没人权的移动宽带,最近晚上玩DOTA 2的时候总是莫名其妙掉线(超售太多了,浙江省出口的BGP都掉了吧),于是想着搞个阿里云做策略路由好了,因此需要一个中国电信的IP列表。想了想,Hurricane Electric BGP Toolkit可以提供这个信息,但是不允许自动抓取。于是写了个脚本来做转换。

首先我们来搜索一下CHINANET:

bgp.he.net search result page

等页面加载完(要很久,数量巨大),然后在页面后半部分可以看到几万条IP段。接下来要做的事情就是把它们读出来导入RouterOS。于是写一个简单的Bash脚本:

先把搜索结果页面Ctrl/Cmd+S保存一下,然后运行 ./convert.sh saved_webpage.html CHINANET 获得一个 CHINANET.scr 文件,上传到RouterOS,然后在RouterOS终端运行

大功告成。

使用GNU stow统一管理用户目录下那些隐藏的配置文件

命令行工具们有一个约定俗成的习惯:把配置文件写到用户的Home目录下面的隐藏文件里。系统用的时间一长,这样的文件就有一堆,有些你编辑过了,有些没有,并且你都不知道里面有些什么。先来看一下你有多少个这样的文件吧:

也许你已经想到了一千种方法来折腾它们。在用户目录下面 git init 一下?这可不是什么好主意。把它们手工复制到某个地方然后手工 ln -s 回来?这也太麻烦了。然而我们现在有个叫stow的工具可以自动化处理这一切。

继续阅读

自动重启 OS X 10.10.3 上问题多多的 discoveryd

众所周知,OS X 10.10.3 问题多多,其中用来取代 mDNSResponderdiscoveryd 常常出现 CPU 占用过高,无法正常工作的情况。

下面有一段简单的 Shell 脚本用以循环检查 discoveryd 是否出现问题,并自动重启它。需要管理员权限启动,可选的第一个参数是限制的最高 CPU 使用率(默认 80)。
继续阅读

在 Ubuntu Desktop 14.10 上安装 WhatPulse

更新软件包

安装依赖项

下载 & 解压

继续阅读

在Ubuntu上配置shadowsocks-libev

看了一大堆网上的教程,感觉很多方法都有些缺陷,比如用 nohup 来运行 ss-server 之类。因此在这里提供一种操作简便且配置完成后基本一劳永逸的方案。

本方法在 Ubuntu Server 16.04 上测试通过。

2017-02-09 Update: Update to match shadowsocks-libev 3.0+ and systemd.
2015-08-28 Update: Due to a recent change, install from apt source.

继续阅读