跳至主要内容

博文

终端折腾记

最新更新时间 2019-06-20 Oh-My-Zsh 安装 前提是需要安装 zsh git curl : sudo apt install zsh curl git sh -c " $(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh) " 比较推荐的插件如下,需要修改 ~/.zshrc 配置文件: plugins=( git z extract zsh-autosuggestions # 需要自己安装 zsh-syntax-highlighting # 需要自己安装 ) 为 oh-my-zsh 安装 zsh-autosuggestions: git clone https://github.com/zsh-users/zsh-autosuggestions $ZSH_CUSTOM /plugins/zsh-autosuggestions 为 oh-my-zsh 安装 zsh-syntax-highlighting: git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom} /plugins/zsh-syntax-highlighting Oh-My-Zsh 的主题 我更偏爱 powerlevel9k 主题,可以定制的地方很多 https://github.com/bhilburn/powerlevel9k 但是, powerlevel9k 主题对字体的配置比较麻烦,如果使用这个主题,一定要配置好下面提到的 必需的字体 。 主题安装 https://github.com/bhilburn/powerlevel9k/wiki/Install-Instructions#step-1-install-powerlevel9k 为 Oh-My-ZSH 安装主题: git clone https://github.com/bhilburn/powerlevel9k.git ~...

Win/Linux 命令行、终端和 Git 代理设置

本文整理了 Windows 命令行 和 Linux 终端以及 Git 中设置代理的命令。以本地 HTTP/HTTPS 代理 127.0.0.1:8118 和 SOCKS5 代理 127.0.0.1:1080 为例。 Windows 命令行代理设置 HTTP 代理设置: set http_proxy=http://127.0.0.1:8118 set https_proxy=http://127.0.0.1:8118 SOCKS5 代理设置: set http_proxy=socks5://127.0.0.1:1080 set https_proxy=socks5://127.0.0.1:1080 可以通过 echo %http_proxy% 命令查看是否设置成功。 取消代理设置: set http_proxy= set https_proxy= Linux 终端代理设置 临时代理设置 Linux 终端设置 HTTP 代理(只对当前终端有效): $ export http_proxy=http://127.0.0.1:8118 $ export https_proxy=http://127.0.0.1:8118 Linux 中设置 SOCKS5 代理(只对当前终端有效): $ export http_proxy=socks5://127.0.0.1:1080 $ export https_proxy=socks5://127.0.0.1:1080 设置终端中的 wget、curl 等都走 SOCKS5 代理(只对当前终端有效): $ export ALL_PROXY=socks5://127.0.0.1:1080 Linux 终端中取消代理设置: $ unset http_proxy $ unset https_proxy $ unset ALL_RPOXY 永久代理设置 将代理命令写入配置文件 ~/.profile 或 ~/.bashrc 或 ~/.zshrc 中: # HTTP 代理设置 export http_proxy=http://127.0.0.1:8118 export https_proxy=http://127.0.0.1:8118 或 # SOCKS5 代理设...

Android 电视折腾记

要从 BBC 放出的几段《 Planet Earth II 》说起,突发奇想地打算在小米电视上看 YouTube 视频,电视的系统基于 Android 5.1,最终通过 Kodi + Youtube 插件成功实现目的。 0x00 介绍 Kodi 原名 XBMC,是一个开源跨平台的多媒体播放平台,支持视频、音乐、图片、直播、本地和在线媒体、网络服务等等。Kodi 最让人称奇的是它众多的插件,通过对应的插件,网络上的各种资源就可以完美地在 Kodi 中播放。 不过,在国内,要想观看 YouTube,还要考虑的一个问题是让电视自动翻墙。 这里以小米电视为例,当然也可以是其他 Android 电视,也可以是各种盒子。 0x01 让电视科学上网 有以下选择(前提是你有一台海外 VPS,搭建了 Shadowsocks 服务端,或者是配置了 VPN): 家用路由器翻墙。目前用的是小米路由器,需要刷开发版 ROM 获取 root 权限,才能安装 Shadowsocks 客户端实现自动翻墙,比较麻烦;现在小米 WiFi App 可以设置 智能 VPN ,支持 选择地址限流 和 选择设备限流 ,如果选择电视限流的话,电视相当于是全局 VPN 了。 不想折腾路由器的,可以用一台局域网电脑作为家庭代理,安装上 Shadowsocks 和 Privoxy(支持局域网的 SOCKS/http/https 代理)。按照这种思路最好弄个树莓派做家庭代理。 电视上安装翻墙 App,可选 Shadowsocks 和 Postern。 这里选择在电视安装 Postern App 。最主要原因是 Postern 的自动翻墙配置利用了 GEOIP 库可以精准地实现「国内流量直连,国外流量走代理」。Shadowsocks 设置里因为用 8.8.8.8 DNS(或其他) 去解析域名,国内的某些提供了海外加速的服务就会被解析到国外 IP 上,反而更慢了。另外,Postern 还能在配置里过滤广告。 具体的过程: 下载 Postern App https://github.com/postern-overwal/postern-stuff 下载自动翻墙配置文件 https://github.com/postern-overwal/postern-stuff/b...

优雅地备份微信图片和视频

介绍 本文针对 Android 平台的微信应用。 一般来说,手机闪存的路径为 storage/emulated/0/ ,微信文件夹位于闪存的 Tencent/MicroMsg/ 目录下。 在 Tencent/MicroMsg/ 目录下,有一个由字母和数字组成的长度为 32 字节的文件夹,消息里的图片和视频都会保存到这个文件夹中; 当你在微信聊天中长按图片或视频点击「保存」时,这些图片或视频又会被保存到 Tencent/MicroMsg/ 目录下的 WeiXin 文件夹中。 Tencent ├─MicroMsg │ ├─由32个字母和数字组成的目录 │ │ ├─image2 <-- 消息中的图片保存位置 │ │ │ ... │ │ │ │ │ ├─video <-- 消息中的视频保存位置,包括自己录制的小视频 │ │ │ 191538241116e34a53c87982.jpg <-- 对应小视频的缩略图 │ │ │ 191538241116e34a53c87982.mp4 │ │ │ 202131031216e34a53c197510.jpg <-- 对应小视频的缩略图 │ │ │ 202131031216e34a53c197510.mp4 │ │ │ ... │ │ └─... │ ├─WeiXin │ │ │ 1482227010527.mp4 <-- 手动保存的小视频 │ │ │ mmexport1482227010527.jpg <-- 手动保存的图片 │ │ │ ... │ │ │ │ │ └─... │ └─... └─... 对于想备份的视频和图片,文件名看似杂乱无章,也不好区分个时间。如果像 Dropbox 备份的规则一样,把文件名改为 2016-12-21 12:30:55.jpg 这样多好啊! 接下来,重命名 其实 WeiXin 和 video 两个文件夹下的文件命名是有规则的...

CryptDB的安装与使用

一、CryptDB介绍 CryptDB是来自MIT的一个开源项目,它不是某种数据库,而是加密数据库查询技术的一种,可以在加密的数据库(目前支持MySQL)上进行简单的操作。正常说来,一个应用是直接连接数据库的,配置了CryptDB后,CryptDB作为应用和数据库的中间代理,以明文的方式与应用交互,以密文的方式与数据库交互。其原理示意图如下: CryptDB首次解决了实用性的问题,它将数据嵌套进多个加密层,每层使用不同的密钥,这些加密密钥与用户的密码有关,即便是数据库管理员也不能访问这些加密的数据,这也防止了因数据库泄露导致用户信息泄露的问题。虽然目前支持的SQL语句有限,还没有到真正投入使用的程度,但其性却非常出众。Google也根据CryptDB的设计开发了 Encrypted BigQuery client 。 CryptDB官网的介绍如下: Online applications are vulnerable to theft of sensitive information because adversaries can exploit software bugs to gain access to private data, and because curious or malicious administrators may capture and leak data. CryptDB is a system that provides practical and provable confidentiality in the face of these attacks for applications backed by SQL databases. It works by executing SQL queries over encrypted data using a collection of efficient SQL-aware encryption schemes. CryptDB can also chain encryption keys to user passwords, so that a data item can be decrypted only by using the passwor...