使用 curlftpfs 将 ftp 服务器挂载到文件夹

接上篇 使用 davfs2 将 WebDav 网盘挂载到文件夹

先安装curlftpfs

apt-get install curlftpfs
#yum install curlftpfs

然后新建挂载点文件夹

mkdir /myftp

挂载

curlftpfs ftp://user:password@example.com /myftp

同理,可用df -h查看挂载情况,用dd命令测试 IO 性能

dd if=/dev/zero of=/myftp/testfile bs=8k count=300

取消挂载也是用umount命令

umount /myftp

也可以用fuser查看占用情况

fuser -m -v -i -k /myftp

搭建自己的百度云网盘爬虫、网盘搜索

在 github 上看到了一个百度网盘爬虫,爱百应,自带搜索引擎前后端,于是决定自己搭一个。

首先,安装 LNMP 环境,这里使用的是 OneinStack 一键包。

cd ~
mkdir tools
cd tools
apt-get -y install wget screen curl python python-pip python3 python3-pip tmux
wget http://mirrors.linuxeye.com/oneinstack.tar.gz
tar xzf oneinstack.tar.gz
cd oneinstack
./install.sh

安装 xunsearch 搜索引擎,并将其添加到开机启动项中

cd ~/tools
wget http://www.xunsearch.com/download/xunsearch-full-latest.tar.bz2
tar -xjf xunsearch-full-latest.tar.bz2
cd xunsearch-full-1.4.1
sh setup.sh
/usr/local/xunsearch/bin/xs-ctl.sh start

下载爱百应

cd /usr/local
git clone https://github.com/k1995/BaiduyunSpider

进入 phpMyAdmin ,创建用户pan,同名数据库,并赋予同前缀数据库权限。

修改database.phpspider.pyindexer.php,并初始化

python spider.py --seed-user
python spider.py

建立索引

php indexer.php

搭建完成

同时,为了尽量避免被百度封 IP,我们应该加上代理,可以考虑自建代理池。

迁移至 ohhere.xyz & WordPress 域名迁移教程

趁着 Uniregistry 促销 .xyz 域名,0.5 刀入了 ohhere.xyz,今天决定迁移到新域名。

首先,使用 acme.sh 获取 SSL 证书,见 这里,在 nginx 的配置文件中替换域名

sed -i 's|ohhere\.cf|ohhere.xyz|g' *.conf

接着,替换 WordPress 数据库中的域名,和网页上的域名,值得注意的是,需要关注https,以及数据库前缀可能是wordpress而不是wp

UPDATE wordpress_options SET option_value = replace( option_value, 'http://ohhere.cf', 'http://ohhere.xyz' ) WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wordpress_posts SET post_content = replace( post_content, 'http://ohhere.cf', 'http://ohhere.xyz' ) ;
UPDATE wordpress_posts SET guid = replace( guid, 'http://ohhere.cf', 'http://ohhere.xyz' ) ;
UPDATE wordpress_options SET option_value = replace( option_value, 'https://ohhere.cf', 'https://ohhere.xyz' ) WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wordpress_posts SET post_content = replace( post_content, 'https://ohhere.cf', 'https://ohhere.xyz' ) ;
UPDATE wordpress_posts SET guid = replace( guid, 'https://ohhere.cf', 'https://ohhere.xyz' ) ;

然后,替换 zmirror 配置文件 zmirror/config.py 中的域名

sed -i 's|ohhere\.cf|ohhere.xyz|g' config.py

接着 301 重定向原域名至新域名,规则类似于:

if ($host = 'ohhere.cf'){
    rewrite ^/(.*)$ https://ohhere.xyz/$1 permanent;
}

但是因为子域名实在太多,于是有了这样的脚本:

#!/usr/bin/env python3
# -*- coding: UTF-8 -*-

domains = ("ohhere", "www.ohhere", "kod.ohhere")
for domain in domains:
	print("if ($host = '%s.cf'){\n    rewrite ^/(.*)$ https://%s.xyz/$1 permanent;\n}\n" % (domain, domain))

重启 nginx 和 zmirror 即可生效

然后,到 Google Search Console 和 Bing Search Console 添加新域名,添加 sitemap.xml,并将旧域名转移至新域名,迁移完成

使用 davfs2 将 WebDav 网盘挂载到文件夹

VPS 上的文件越来越多,而增加硬盘容量并不便宜,考虑到自己依然在吃土,我决定想办法将网盘直接挂载到 VPS 的文件夹上。

PS: Datto Drive 正在提供首年免费的 1TB OwnCloud 网盘空间,支持 WebDav。另外推荐一个国外的网盘,pCloud,可以与 OneDrive、DropBox 和 Instagram 同步,免费 20G,支持在线解压缩、文件搜索、直接下载文件夹和离线下载,速度还不错,链接带 aff。

fuse可用于创建虚拟文件系。davfs2借助fuse,可将WebDav虚拟成一个文件夹,便于直接访问。

首先安装davfs2

apt-get install davfs2 fuse-utils

创建挂载点文件夹并挂载到/mnt/pan/ Keep Reading

北邮选课系统的正确打开方式

前情提要:对不起,你选的可能是假课

学校的教务系统向来诡异,尤其是在选课的时候,一声不响地就崩了,崩了又崩。为了选到心仪的课程,我们不得不使出洪荒之力。幸好,教二有了 Wi-Fi ,我们终于可以扔掉不靠谱的 VPN 了,这大大增大了选到课的可能性。(然而 Wi-Fi 也崩了。。。

但是,选课总还是要靠抢的。与其按坏 F5,不如来点黑科技,也就是主角 Selenium WebDriver。我们可以利用 Python 和 JavaScript 编写自动选课程序。当然,前提是已经正确安装或者下载了 Google Chrome (55)、Python (3.5.1)、ChromeDriver (2.27)、selenium (3.0.2),括号内为最低版本。推荐使用文本编辑器 Sublime Text 3 编写代码。 Keep Reading