Nginx V2ray and WebSocket

安装v2ray/nginx v2ray安装可以参考Ubuntu中v2ray客户端配置实例. Nginx安装推荐使用OneinStack一键安装脚本 准备好使用的域名,这里以v.fuckgfw.cn为例。 v2ray/nginx服务端配置 v2ray安装好后,服务端配置/etc/v2ray/config.json如下: { "inbounds": [{ "port": 99999, //代理端口号 "listen": "127.0.0.1", "protocol": "vmess", "settings": { "clients": [{ "id": "5c1eed18-fse4-41fs-9as9-e85s45bds9ef", "level": 1, "alterId": 64 }] }, "streamSettings": { "network": "ws", "wsSettings": { "path": "/fcgfw" //代理目录 } } }], "outbounds": [{ "protocol": "freedom", "settings": {} }, { "protocol": "blackhole", "settings": {}, "tag": "blocked" }], "routing": { "rules": [{ "type": "field", "ip": ["geoip:private"], "outboundTag": "blocked" }] } } 使用OneinStack一键脚本新建一个站点,域名为v.fuckgfw.cn,采用SSL加密模式,完成后编辑/usr/local/nginx/conf/vhost/v.fuckgfw.cn.conf文件 参考以下修改:
全文 →

斐讯N1系统信息和UNIXBENCH跑分

系统信息 alair@aml:~ $ inxi -F System: Host: aml Kernel: 5.5.0-rc6-aml-s9xxx aarch64 bits: 32 Console: tty 0 Distro: Ubuntu 18.04.4 LTS Machine: No /sys/class/dmi; using dmidecode: dmidecode is not installed. CPU: Quad core ARMv8 rev 4 (v8l) (-MCP-) (ARM) clock speeds: max: 1512 MHz 1: 1512 MHz 2: 1512 MHz 3: 1512 MHz 4: 1512 MHz Graphics: Card: Failed to Detect Video Card! Display Server: N/A driver: N/A tty size: 254x72 Advanced Data: N/A out of X Audio: Card AMLGX driver: AMLGX Sound: ALSA v: k5.
全文 →

YandexDisk命令行客户端

Linux的Yandex.Disk控制台客户端使您可以在Yandex.Disk上管理文件,而无需使用窗口界面或支持WebDAV的程序。 与WebDAV连接相比,使用控制台客户端的优势: Low system resource requirements. Faster file reading and writing speeds. Faster syncing with the Yandex.Disk server. Manage files offline. 控制台客户端可以安装在以下操作系统上: Ubuntu Linux 8.04 及以上版本 Debian 5 及以上版本 Fedora 9 及以上版本 Red Hat Enterprise Linux 6 及以上版本 CentOS 6 及以上版本 安装客户端 要自动安装客户端,请使用命令进行快速软件包安装。 .deb软件包 安装示例 echo "deb http://repo.yandex.ru/yandex-disk/deb/ stable main" | sudo tee -a /etc/apt/sources.list.d/yandex-disk.list > /dev/null wget http://repo.yandex.ru/yandex-disk/YANDEX-DISK-KEY.GPG -O- | sudo apt-key add - sudo apt-get update sudo apt-get install -y yandex-disk 要手动安装客户端,请从下面的相应链接下载相应版本的软件包。
全文 →

CentOS安装Hugo

全文 →

Gnome美化简介

全文 →

在Linux中安装Windows字体

全文 →

Armbian更改软件源

全文 →

斐讯N1安装Armbian

最近入手斐讯N1一枚,买的是白色未拆封,到手版本为V2.19_0307_NS,刚好省了降级的麻烦,以下为斐讯N1安装armbian操作过程。 开启adb调试模式 将N1通过HDMI连接显示器,将鼠标插到N1的USB口上,开机后用鼠标点击系统版本:V2.19_0307_NS区域,多次点击后会出现提示"开启adb调试模式”,即可。 从此下载minimal_adb_fastboot,下载后安装。 准备刷机U盘 准备一个不小区8G的U盘,下载镜像写入工具balenaEtcher,下载后安装。 下载Armbian镜像,在此以Armbian_5.98_Aml-g12_Debian_buster_dev_5.4.0-rc4_20191025.img.xz为例,镜像为debian最新版,不带桌面系统。如果需要其他的可以从此处自行下载。 Armbian_5.98_Aml-g12_Debian_buster_dev_5.4.0-rc4_20191025.img.xz 将下载后的镜像文件用balenaEtcher写入U盘,写入完成后先别拔掉U盘,进入到BOOT分区,找到uEnv.ini文件,将dtb_name行改为如下内容: dtb_name=/dtb/amlogic/meson-gxl-s905d-phicomm-n1.dtb 然后退出U盘备用。 如果你的BOOT分区下/dtd/amlogic/目录中没有meson-gxl-s905d-phicomm-n1.dtb文件,那么可以点击meson-gxl-s905d-phicomm-n1.dtb下载放入相应目录即可。 从U盘引导Armbian 将制作好的系统U盘插到靠近HDMI一侧的U口,另外一个U口插入双公头的刷机线连接电脑,将N1通过HDMI连接显示器,并且插好网线然后开机。 开机后可以从显示器上看到盒子的IP地址,电脑上运行Minimal ADB and Fastboot,然后输入adb connect 192.168.1.54命令连接盒子,连接成功后会有如下提示: connected to 192.168.1.54:5555 然后输入adb shell reboot update开始从U盘引导Armbian系统,盒子重启后成功引导armbian,此时可以将usb刷机线拔掉,插入一个外接键盘,开始后面操作。 Armbian系统默认账号为root,密码为1234,按照提示输入账号信息进行登录,登录后会有更改默认密码提示,按照提示更改默认密码。 接下来会有新建账号提示: Creating a new user account. Press <Ctrl-C> to abort Please provide a username (eg. your forename): 可以按照该提示新建账号,或者按Ctrl+c终止,继续用root账号登录。 将Armbian安装到N1中 以上只是从U盘成功引导登录Armbian,接下来我们将Armbian安装到N1内置存储(eMMC),即可拔掉U盘了。 如果是通过root登录的话,那么直接运行root目录下install.sh即可安装,如下: root@aml:~# ./install. sh Start script create MBR and filesystem /dev/mmcblk1 Start backup u-boot default 4+0 records in 4+0 records out 4194304 bytes(4.
全文 →

Debian10中sudo配置

全文 →

CentOS7安装ffsend快速分享文件

全文 →

Ubuntu中v2ray客户端配置实例

推荐使用WebSocket传输模式,详细配置可参考Nginx V2ray and WebSocket. 首先使用bash <(curl -L -s https://install.direct/go.sh)来快捷安装v2ray,如下: root@vm:~# bash <(curl -L -s https://install.direct/go.sh) Installing V2Ray v4.18.0 on x86_64 Downloading V2Ray: https://github.com/v2ray/v2ray-core/releases/download/v4.18.0/v2ray-linux-64.zip % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 608 0 608 0 0 581 0 –:–:– 0:00:01 –:–:– 581 100 10.5M 100 10.5M 0 0 172k 0 0:01:02 0:01:02 –:–:– 194k Extracting V2Ray package to /tmp/v2ray. Archive: /tmp/v2ray/v2ray.
全文 →

VMware安装Alpine Linux实例

AlpineLinux介绍 Alpine 的意思是“高山的”,比如 Alpine plants高山植物,Alpine skiing高山滑雪、the alpine resort阿尔卑斯山胜地。 Alpine Linux 网站首页注明“Small!Simple!Secure!Alpine Linux is a security-oriented, lightweight Linux distribution based on musl libc and busybox.”概括了以下特点: 小巧:基于Musl libc和busybox,和busybox一样小巧,最小的Docker镜像只有5MB; 安全:面向安全的轻量发行版; 简单:提供APK包管理工具,软件的搜索、安装、删除、升级都非常方便。 适合容器使用:由于小巧、功能完备,非常适合作为容器的基础镜像。 准备工作 安装VMware虚拟机软件,新建虚拟机,配置如下: 下载AlpineLinux镜像文件alpine-standard-3.9.4-x86_64.iso,下载地址: https://www.alpinelinux.org/downloads/ 设置虚拟机光驱挂载镜像文件alpine-standard-3.9.4-x86_64.iso。 开始安装Alpine Linux 启动虚拟机,开始从光驱引导系统,进入系统后,输入root登录,然后输入setup-alpine开始启动安装程序。 下来设置键盘布局(us)、主机名(vm)以及网络配置: 接着设置时区(timezone) 然后是网络代理和网络时间同步(NTP)设置 接下里选择软件源镜像(mirrors),我选择了兰州大学的镜像: 然后选择SSH服务程序,设置安装磁盘以及使用方式,完成安装后会提示**Installation is complete. Please reboot.**至此安装完成。 安装Awesome桌面 添加普通用户 #adduser alair 启用Community Repository vi /etc/apk/repositories编辑软件源配置,去掉其中Community Repository前面的注释符(#) apk update&&apk upgrade更新软件。 安装awesome 使用以下命令安装awesome、lua、feh和lxterminal #apk add awesome lua feh lxterminal 其他桌面应用可以按需添加,比如firefox, gnumeric, xchat, gimp, pidgin, geany, vim等。
全文 →

NokiaN900刷机方法

刷机工具以及固件文件下再地址见文章末尾。 首先安装刷机工具maemo flasher,然后下载固件,固件分以下两个文件,下载地址https://blbl.dev/NokiaN900/index.html emmc(vanilla) firmware(combined) 切记,先刷emmc再刷firmware,并且两次刷机中间不可以开机。 将手机关机,然后按住键盘上的u键,再用数据线将手机链接电脑,这是手机会显示NOKIA字样界面,并且右上角显示有USB图标,即进入刷机模式。 首先写入EMMC文件,命令如下flasher-3.5 -F emmc.bin -f,以下为linux下操作实例,以供参考 alair@zb14:~/下载$ sudo flasher-3.5 -F RX-51_2009SE_10.2010.13-2.VANILLA_PR_EMMC_MR0_ARM.bin -f [sudo] alair 的密码: flasher v2.5.2 (Oct 21 2009) Image ‘mmc’, size 255947 kB Version RX-51_2009SE_10.2010.13-2.VANILLA USB device found found at bus 002, device address 012. Found device RX-51, hardware revision 2204 NOLO version 1.4.14 Version of ‘sw-release’: RX-51_2009SE_21.2011.38-1_PR_MR0 Booting device into flash mode. Suitable USB device not found, waiting. USB device found found at bus 002, device address 013.
全文 →

NokiaN900删除不必要的软件

NokiaN900自带的软件不少,还有一些游戏,以下为这些软件的删除方式。 首先,建议安装rootsh以获取ROOT权限,然后在xTermianl进行以下操作。 名称 说明 删除命令 Mahjong 游戏 apt-get remove -y osso-mahjong Chess 游戏 apt-get remove -y gnuchess Blocks 游戏 apt-get remove -y maemoblocks Marbles 游戏 apt-get remove -y osso-lmarbles AP News 软件 apt-get remove -y ap-installer Docs To Go 软件 apt-get remove -y dtg-installer Sketch 画图 apt-get remove -y osso-sketch Backup 备份 apt-get remove -y osso-backup PDF reader PDF阅读 apt-get remove -y osso-pdf-viewer RSS RSS订阅 apt-get remove -y osso-rss-feed-reader Notes 记事本 apt-get remove -y osso-notes Amazon Amazon安装快捷方式 rm /usr/share/maemo-installer-utils/amazon.
全文 →

N900安装最新版Nemo

全文 →

查出VPS流量消耗元凶

全文 →

GRUB引导ISO镜像

家里电脑安装了双系统(Xubuntu+Windows7),平时一直不关机,开着TeamViewer便于在办公室远程操作。 这次不知怎么回事儿,远程掉了,回家一看Windows意外关机,再开机直接蓝屏。 由于为了省资源,关闭了系统保护,没法进行还原,多次试着拯救都没能解决,无限蓝屏…… 手头刚好没有WinPE的U盘,没法ghost恢复或重装Windows,只有xubuntu可用,一筹莫展。 突然想到grub是否可以引导iso? 网上找了下,还真可以,于是下载了个WinPE镜像文件,打算通过grub来引导以修复Windows。 具体操作如下: 安装grub-imageboot alair@e6440:~$ apt search memdisk 正在排序… 完成 全文搜索… 完成 grub-imageboot/bionic,bionic 0.6 all boot iso, harddisk and floppy images with grub2 and syslinux memdisk alair@e6440:~$ sudo apt install grub-imageboot [sudo] alair 的密码: 正在读取软件包列表… 完成 正在分析软件包的依赖关系树 正在读取状态信息… 完成 将会同时安装下列软件: syslinux-common 下列【新】软件包将被安装: grub-imageboot syslinux-common 升级了 0 个软件包,新安装了 2 个软件包,要卸载 0 个软件包,有 4 个软件包未被升级。 需要下载 1,176 kB 的归档。 解压缩后会消耗 3,684 kB 的额外空间。 您希望继续执行吗? [Y/n] y 获取:1 http://mirrors.cqu.edu.cn/ubuntu bionic/main amd64 syslinux-common all 3:6.
全文 →

Ubuntu配置Livepatch服务

全文 →

Linux下修复分辨率显示异常

家里放了台老旧的台式机,显卡是GTX 660Ti,windows下必须安装特定的驱动版本才能显示最佳分辨率(1680x1050),如果更新到最新的Nvidia驱动,反而显示器无法正常显示(1024x768)。 没想到,这种情况在Linux下依然存在,不论是安装Debian还是Linux Mint或者Ubuntu,默认都是1024x768。 网上找到了修复分辨率异常的方法,整理如下。 检查当前显卡硬件情况 $ lspci |grep VGA 01:00.0 VGA compatible controller: NVIDIA Corporation GK104 [GeForce GTX 660 Ti] (rev a2) 可以看到,显卡硬件识别正常。 检查显卡分辨率情况 $ xrandr Screen 0: minimum 320 x 200, current 1024 x 768, maximum 8192 x 8192 VGA-1 disconnected (normal left inverted right x axis y axis) DVI-I-1 connected primary 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm 1024x768 60.00* 800x600 60.
全文 →

sitemap-generators使用实例

sitemap-generators是一款Sitemap生成工具,使用它可以生成符合sitemap.org规范的Sitemap文件,以便于提交给各个网站工具平台。 项目地址 && 下载地址 下载sitemap_gen_1.5.tar.gz解压,得到以下内容: root@bwgzl:~/sitemap_gen# ls -lh total 140K -r–r—– 1 502 502 22 Jun 17 2005 AUTHORS -r–r–r– 1 502 502 2.6K Jul 19 2007 ChangeLog -r–r—– 1 502 502 1.8K Jun 17 2005 COPYING -rw-r–r– 1 502 502 6.4K Jul 19 2007 example_config.xml -rw-r—– 1 502 502 1.6K Jun 26 2007 example_urllist.txt drwxr-xr-x 23 root root 4.0K Aug 3 14:25 getos.org -rw-r–r– 1 502 502 244 Jul 19 2007 PKG-INFO -r–r–r– 1 502 502 1.
全文 →

Dropbox脚本工具DropboxUploader

Dropbox Uploader是一款专为Dropbox开发的BASH脚本,可以实现上传、下载、删除、列出文件清单、在线分享、同步和备份等功能。 它使用BASH脚本语言写成,只需要cURL即可使用。 项目主页 GiHub project page. 为什么使用此脚本? 绿色轻便:使用BASH脚本语言写成,仅仅需要cURL一个软件(curl是一个数据传输工具,大部分linux发行版均会内置该软件)。 安全: 不需要提供帐号密码,该脚本使用官方API进行验证。 更多的扩展信息和使用技巧请参考官方wiki,该wiki同时提供Dropbox Uploader相关的使用实例和脚本。 特性 跨平台 支持官方Dropbox API v2 无需密码 简单的配置提示 分块文件上传 递归文档下载 递归文档上传 Shell通配符扩展 (仅上传) 删除/移动/重命名/拷贝/列出/分享文件 创建分享连接 监视变化 安装配置DropboxUploader 使用git拷贝官方仓库: git clone https://github.com/andreafabrizi/Dropbox-Uploader.git 或者直接下载脚本: curl "https://raw.githubusercontent.com/andreafabrizi/Dropbox-Uploader/master/dropbox_uploader.sh" -o dropbox_uploader.sh 给脚本添加执行权限并运行: $chmod +x dropbox_uploader.sh $./dropbox_uploader.sh 第一次运行dropbox_uploader时,会有鉴权提示,按照提示在https://www.dropbox.com/developers/apps新建api app,然后在app管理页找到Generated access token创建access token,将access token粘贴到DropboxUploader提示行按回车键,随后会提示成功接入Dropbox。配置文件保存在~/.dropbox_uploader。 使用DropboxUploader DropboxUploader语法非常简单: ./dropbox_uploader.sh [PARAMETERS] COMMAND… [%%]: 可选参数 <%%>: 必须参数 可使用命令: upload <LOCAL_FILE/DIR …> <REMOTE_FILE/DIR> 上传本地文件或目录到Dropbox。
全文 →

Linux下批量转换PNG和JPG

我们用到的软件名为imagemagick,一款强大的图片处理软件。 Debian系使用apt-get install imagemagick来安装,Fedora系通过yum install imagemagick来安装。 其他系统可以到官方下载页进行下载安装 https://www.imagemagick.org/script/download.php 安装完成后,可以通过convert tst.jpg tsg.png将JPG文件转换为PNG,反之亦可。 下来进行批量替换: root@bwgzl:/data/wwwroot/getos.org/images# ll total 188 drwxr-xr-x 2 www www 4096 Aug 4 15:48 ./ drwxr-xr-x 27 www www 4096 Aug 4 15:32 ../ -rw-r–r– 1 www www 18778 Aug 4 15:43 clip_image002.jpg -rw-r–r– 1 www www 17637 Aug 4 15:43 clip_image004.jpg -rw-r–r– 1 www www 28075 Aug 4 15:43 clip_image006.jpg -rw-r–r– 1 www www 30916 Aug 4 15:43 clip_image008.jpg -rw-r–r– 1 www www 13538 Aug 4 15:43 clip_image010.
全文 →

p7zip使用实例

以下是CentOS7中7za的使用实例,CentOS下安装p7zip可以参考此文 [root@localhost ~]# 7za 7-Zip (a) [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21 p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,1 CPU x64) Usage: 7za <command> [<switches>…] <archive_name> [<file_names>…] [<@listfiles…>] <Commands> a : Add files to archive b : Benchmark d : Delete files from archive e : Extract files from archive (without using directory names) h : Calculate hash values for files i : Show information about supported formats l : List contents of archive rn : Rename files in archive t : Test integrity of archive u : Update files to archive x : eXtract files with full paths <Switches> – : Stop switches parsing -ai[r[-|0]]{@listfile|!
全文 →

在Linux中运行Android软件

想要在PC上运行Android软件就需要模拟器,Windows版的Android模拟器软件很多,但是Linux平台的就不多了,今天推荐一款Linux下的Android模拟器软件Anbox Anbox官方介绍为Android in a Box,Run Android applications on any GNU/Linux operating system. Anbox现在还处于测试阶段,很多功能还不完善和稳定,请谨慎使用。 安装Anbox 首先得安装Snaps,官方地址为https://snapcraft.io/ LinuxMint中安装Snaps和必须包 sudo apt install snapd sudo apt install pulseaudio 接下来按照官方指南安装Anbox snap install –classic anbox-installer && anbox-installer 我试着通过snap来安装一直存在权限问题,一般权限不能运行snap install –classic anbox-installer,root运行完snap install –classic anbox-installer后,但运行anbox-installer又提示不能使用root权限,一般权限根本无法运行anbox-installer,搞了半天都没有成功,于是就有了下文。 通过常规方法安装Anbox wget https://raw.githubusercontent.com/anbox/anbox-installer/master/installer.sh -O anbox-installer chmod +x ./anbox-installer ./anbox-installer 安装完成后会有重启系统的提示 To ensure all changes made to your system you should now reboot your system. If you don’t do this no Android applications will show up in the system application launcher.
全文 →

CentOS7安装使用p7zip

在此只推荐从源码安装p7zip,下载地址 http://www.7-zip.org/download.html 源码在这里下载 https://sourceforge.net/projects/p7zip/files/p7zip/ wget https://sourceforge.net/projects/p7zip/files/p7zip/16.02/p7zip_16.02_src_all.tar.bz2 tar jxf p7zip_16.02_src_all.tar.bz2 cd p7zip_16.02 make make install 使用p7zip [root@localhost ~]# 7za 7-Zip (a) [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21 p7zip Version 16.02 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,64 bits,1 CPU x64) Usage: 7za <command> [<switches>…] <archive_name> [<file_names>…] [<@listfiles…>] <Commands> a : Add files to archive b : Benchmark d : Delete files from archive e : Extract files from archive (without using directory names) h : Calculate hash values for files i : Show information about supported formats l : List contents of archive rn : Rename files in archive t : Test integrity of archive u : Update files to archive x : eXtract files with full paths 压缩文件
全文 →

理解Linux中Shell初始化文件和用户Profiles文件

Linux是一个多用户、实时共享的操作系统,意味着不止一个用户可以登录同一个系统。系统管理员通过任务管理来分配不同用户的权限,比如安装、升级、卸载应用程序,运行编译程序,文件查看、编辑等等。 Linux允许通过两种主要方式来创建用户环境:系统级(全局)和用户级(个人)。一般情况下,Linux系统都会运行基本shell程序,当用户登录成功后shell会在初始化时根据某些文件开创建环境。 Linux中的Shell初始化 当Shell被调用时,会有一些初始化/启动文件被启用,它们的主要作用是为shell本身或用户设定运行环境,包含一些函数、 变量、别名等等。 Shell可以读取以下两种初始化文件: 系统级启动文件 – 包含一些应用于户所有用户的全局配置,一般存在于**/etc**目录中,如 **/etc/profiles** 、**/etc/bashrc** 或者 **/etc/bash.bashrc**。 用户级启动文件 – 包含一些应用于单用户的配置文件,一般存放在各个用户目录,这些配置可以覆盖系统级全局配置,如**.profiles**、 **.bash_profile**、 **.bashrc** 和 **.bash_login**. Shell存在三种调用模式:

  1. 交互式登录Shell 当用户成功登录系统后调用该Shell,使用**/bin/login**登录,随后读取**/etc/passwd**文件。 当启动交互式shell后,将读取**/etc/profile**文件以及特定的用户文件**~/.bash_profile** login as: pi pi@pi.raspi.in's password: The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law.
全文 →

python-pip安装实例

Python-pip 是一个现代的,通用的 Python包管理工具。提供了对 Python 包的查找、下载、安装、卸载的功能。 以下为多个操作系统平台下Python-pip安装方法 通用方法 通过get-pip.py文件来安装,建议Windows用户使用,前提是你必须首先安装Python。 版本要求Python 2 >=2.7.9 或Python 3 >=3.4,可从官网下载http://www.python.org/ 然后下载get-pip.py 下载地址 https://bootstrap.pypa.io/get-pip.py 通过python get-pip.py命令来进行安装。 Linux下通过软件管理工具来安装Python-pip Fedora21 Python2 sudo yum upgrade python-setuptools sudo yum install python-pip python-wheel Python3 sudo yum install python3 python3-wheel Fedora22 Python2 sudo dnf upgrade python-setuptools sudo dnf install python-pip python-wheel Python3 sudo dnf install python3 python3-wheel CentOS/RHEL 首先得启用EPEL repository,可参考此文 EPEL 6/EPEL 7
全文 →

树莓派动态IP更新器

这是一个python3的脚本,每隔10分钟监控一次IP地址,如果发生变化则会通过AutoRemote消息通知你。 关于AutoRemote的使用可参考这里 这里推荐使用ipgetter来获取外网IP,地址为https://github.com/phoemur/ipgetter 安装ipgetter sudo apt-get install python3 pip sudo pip3 install ipgetter 你可以从以下地址获取每个通知设备的AutoRemote所需google key ​ http://autoremotejoaomgcd.appspot.com/?key=[it’s the part that is here] 以下为python3脚本: import ipgetter import urllib.request import requests currentIP = ipgetter.myip() #AutoRemote function to send a notification YOUR_KEY goes here def sendAR(x): AR_key = 'YOUR_KEY' AR_url = 'http://autoremotejoaomgcd.appspot.com/sendmessage?key='+ AR_key +'&message=IP%20' message = AR_url + x response = urllib.request.urlopen(message).read() print(x) #check the internet and check if previous file is present try: requests.
全文 →

Linux开启TCP BBR算法

Linux Kernel 4.9+已经支持tcp_bbr拥塞控制算法,因此建议将内核升级为最新版。 将内核升级到最新版 Debian/Ubuntu升级最新内核 最新内核下载地址 http://kernel.ubuntu.com/~kernel-ppa/mainline 下载安装新内核 wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.10.10/linux-image-4.10.10-041010-generic_4.10.10-041010.201704120813_amd64.deb` dpkg -i linux-image-4.10.10-041010-generic_4.10.10-041010.201704120813_amd64.deb 更新GRUB并且重启 update-grub reboot Centos 7 升级最新内核 内核下载地址 http://elrepo.org/linux/kernel/el7/x86_64/RPMS/ 安装最新内核 rpm –import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm yum –enablerepo=elrepo-kernel install kernel-ml -y 检查内核是否安装完成 rpm -qa | grep kernel 更新GRUB并重启主机 egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d &#39; grub2-set-default 0 #default 0表示第一个内核设置为默认运行, 选择最新内核就对了 reboot http://elrepo.org/linux/kernel/下e15、e16分别对应Centos5、Centos6,可参考以上安装 开启BBR 重启后uname -r 检查内核版本是不是4.9+ 然后执行以下操作 echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf sysctl -p sysctl net.
全文 →

使用手机远程控制树莓派GPIO

全文 →

Linux下设置IP、网关、掩码、MAC和DNS

先用ifconfig来查看所有活动网络接口 eth0 Link encap:Ethernet HWaddr b8:27:eb:1b:63:a8 inet addr:192.168.1.6 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::6502:67ff:89b:b2fd/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:43239 errors:0 dropped:24 overruns:0 frame:0 TX packets:30644 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:25068614 (23.9 MiB) TX bytes:5993030 (5.7 MiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:1961 errors:0 dropped:0 overruns:0 frame:0 TX packets:1961 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1 RX bytes:160232 (156.
全文 →

Windows10开启Linux子系统

全文 →

Termux软件包管理

全文 →

修复树莓派PATH变量

使用lnmp一键工具安装完nmp后,重启进入系统就提示bash command not found 然后试了试service,who等命令也无法使用 只有最基本的系统命令ls,cat等可以用 看来安装lnmp后,我的PATH变量被动了 先临时修改下PATH,便于后面操作 export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:$PATH 然后检查~/.profile,/etc/profile是否存在,存在 检查其中的PATH赋值是否异常 经过排查,发现/etc/profile中的PATH赋值异常,修改之重启OK! 在此分享正确的原始~/.profile和/etc/profile文件 ~/.profile 内容

~/.profile: executed by the command interpreter for login shells. # This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login # exists. # see /usr/share/doc/bash/examples/startup-files for examples. # the files are located in the bash-doc package. # the default umask is set in /etc/profile; for setting the umask # for ssh logins, install and configure the libpam-umask package.

全文 →

Debian下安装Zbook14无线网卡驱动

全文 →

ubuntu修改grub引导菜单

先运行update-grub命令生成一次grub配置,顺便查看一下识别出来的引导菜单内容 root@alairpc:~# update-grub Generating grub configuration file … Found linux image: /boot/vmlinuz-4.4.0-21-generic Found initrd image: /boot/initrd.img-4.4.0-21-generic Found memtest86+ image: /boot/memtest86+.elf Found memtest86+ image: /boot/memtest86+.bin Found Windows 7 (loader) on /dev/sda1 done root@alairpc:~# 注意看,以上共有5个菜单项,最后一个是windows7 接下来我们来看看gurb配置文件/etc/default/grub root@alairpc:~# cat /etc/default/grub # If you change this file, run ‘update-grub’ afterwards to update # /boot/grub/grub.cfg. # For full documentation of the options in this file, see: # info -f grub -n ‘Simple configuration’ GRUB_DEFAULT=4 #GRUB_HIDDEN_TIMEOUT=0 GRUB_HIDDEN_TIMEOUT_QUIET=true GRUB_TIMEOUT=3 GRUB_DISTRIBUTOR=lsb_release -i -s 2&gt; /dev/null || echo Debian GRUB_CMDLINE_LINUX_DEFAULT="quiet splash" GRUB_CMDLINE_LINUX="locale=zh_CN" # Uncomment to enable BadRAM filtering, modify to suit your needs # This works with Linux (no patch required) and with any kernel that obtains # the memory map information from GRUB (GNU Mach, kernel of FreeBSD .
全文 →

使用Syncthing在多个设备之间同步文件

Syncthing是一款开源的多平台同步软件,使用他可以在多个设备间进行文件同步,并且带有版本控制功能。 Syncthing官网地址 **https://syncthing.net/**Github地址 https://github.com/syncthing/syncthing 安装Syncthing Syncthing官网提供多平台安装包,下载地址为 https://github.com/syncthing/syncthing/releases/ 并且针对Debian/Ubuntu平台,官方提供了apt-get安装方法

Add the release PGP keys: curl -s https://syncthing.net/release-key.txt | sudo apt-key add - # Add the "release" channel to your APT sources: echo "deb http://apt.syncthing.net/ syncthing release" | sudo tee /etc/apt/sources.list.d/syncthing.list # Update and install syncthing: sudo apt-get update sudo apt-get install syncthing 运行Syncthing Linux下直接使用syncthing命令运行

syncthing & Windows下直接打开下载的syncthing.exe文件,而后浏览器自动打开http://127.0.0.1:8384进行设置管理。 管理Syncthing 如果是在VPS上安装Syncthing ,运行syncthing后,只能通过http://127.0.0.1:8384进行管理,我们可以通过以下方法在本地管理。 ssl -L 9891:localhost:8384 root@ip 输入root密码登录成功后,即可本地浏览http://127.0.0.1:9891对VPS上的Synchting进行管理。 添加设备 每个设备均有一个设备标识,可以通过操作->显示设备标识来查看。

全文 →

使用OptiPNG优化压缩图片

因工作需要,得处理一张7872x5904体积为178MB的图片,格式为TIFF。 网上搜了半天,找到一个名为OptiPNG的软件,主要为PNG优化,但也支持TIFF格式。 下面是OptiPNG的官方介绍 OptiPNG is a PNG optimizer that recompresses image files to a smaller size, without losing any information. This program also converts external formats (BMP, GIF, PNM and TIFF) to optimized PNG, and performs PNG integrity checks and corrections. OptiPNG可以将PNG文件重新压缩,压缩后体积变得更小,并且不会丢失任何信息。同时optipng还支持其他格式的图片,如BMP、GIF、PNM和TIFF。 至于OptiPNG的威力如何,请看本次实例 root@raspi:~# ls -lh huxian.tif -rw-r–r– 1 root root 178M Apr 4 16:54 huxian.tif //原始文件178MB root@raspi:~# optipng huxian.tif ** Processing: huxian.tif Importing TIFF 7872x5904 pixels, 4x8 bits/pixel, RGB+alpha //分辨率7872x5904 Reducing image to 3x8 bits/pixel, RGB Input file size = 186000368 bytes Trying: zc = 9 zm = 8 zs = 0 f = 0 IDAT size = 4273133 Selecting parameters: zc = 9 zm = 8 zs = 0 f = 0 IDAT size = 4273133 Output file: huxian.
全文 →

LFTP使用实例

LFTP介绍 lftp是一个功能强大的ftp/http客户端,作者是 Alexander Lukyanov。 lftp支持多种传输协议,如ftp、http、https、sftp、exp等。 如同BASH一样,lftp支持任务管理。并且具备书签管理、内置镜像和多线程传送功能。 使用LFTP 登录服务器 lftp ftp://user:password@ip:port 以上是一个完整的lftp登录示例,其中包含协议(ftp)、用户名(user)、密码(password)、主机(ip)以及端口(port) 默认情况下lftp直接访问ftp服务,默认登录端口为22,因此我们可以使用以下方法来便捷登录主机 lftp user@ip 然后系统会提示输入password,完成后登录成功! lftp命令行参数 lftp :~> help !<shell-command> (commands) alias [<name> [<value>]] attach [PID] bookmark [SUBCMD] cache [SUBCMD] cat [-b] <files> cd <rdir> chmod [OPTS] mode file… close [-a] [re]cls [opts] [path/][pattern] debug [<level>|off] [-o <file>] du [options] <dirs> exit [<code>|bg] get [OPTS] <rfile> [-o <lfile>] glob [OPTS] <cmd> <args> help [<cmd>] history -w file|-r file|-c|-l [cnt] jobs [-v] [<job_no.
全文 →

Linux下查看修改PATH

什么是PATH? 要搞清什么是PATH,应该先搞清什么是环境变量? 在计算机中,如果需要运行一个软件,那么我们就要找到它所在的位置,但是每次运行程序时如果都要进入到相应目录,那么显然是很繁琐的。于是就有了环境变量,环境变量就是一个系统参数,里面记录了一些目录,运行软件的时候,相关的程序将会按照该目录寻找相关文件。 而在Linux中,系统会有一个默认的PATH环境变量,里面记录了系统级的相关命令目录,比如当我们输入ls、cd、pwd等命令时,我们不需要指定它们所在的目录,因为包含这些命令的系统目录已经写入PATH参数,因而方便我们调用。 查看PATH 在linux中,可以使用export命令来查看所有环境变量,如下: pi@raspi:~$ export declare -x HOME="/home/pi" declare -x LANG="en_GB.UTF-8" declare -x LOGNAME="pi" declare -x MAIL="/var/mail/pi" declare -x OLDPWD declare -x PATH="/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/home/pi/bin" declare -x PWD="/home/pi" declare -x SHELL="/bin/bash" declare -x SHLVL="1" declare -x SSH_CLIENT="101.135.216.146 28249 22" declare -x SSH_CONNECTION="101.135.216.146 28249 192.168.1.111 22" declare -x SSH_TTY="/dev/pts/1" declare -x TERM="xterm" declare -x USER="pi" 使用echo来查看单独的环境变量 pi@raspi:~$ echo $PATH /bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/home/pi/bin 我们可以看到,以上PATH值包含了一些系统命令的目录,而这些目录都用:隔开。 修改PATH 我们可以使用export命令来添加目录,如下: export PATH=/mydoc:$PATH 以上命令在原有的PATH前添加了/mydoc这个目录,设置完成后的PATH值如下: pi@raspi:~$ echo $PATH /mydoc:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/home/pi/bin 以上方法修改PATH值,在终端退出后就会失效,因此建议通过修改/etc/profile来设定PATH
全文 →

Ubunt下安装H2O

更新系统 apt-get update && apt-get upgrade -y && apt-get dist-upgrade -y && apt-get autoremove –purge -y && apt-get autoclean -y 安装必备软件 apt-get install locate git cmake build-essential checkinstall autoconf pkg-config libtool python-sphinx wget libcunit1-dev nettle-dev libyaml-dev libuv-dev -y 安装wslay git clone https://github.com/tatsuhiro-t/wslay.git cd wslay/ autoreconf -i automake autoconf ./configure make make install 安装完成后检查lib文件,如下所示: ls /usr/local/lib/ libuv.a libuv.so.1 libwslay.la libwslay.so.0.0.1 python3.4 libuv.la libuv.so.1.0.0 libwslay.so pkgconfig libuv.so libwslay.a libwslay.so.0 python2.
全文 →

使用net_speeder加速VPS

全文 →

查看cp、mv等命令的执行进度

全文 →

使用Google Authenticator两步验证加强SSH登录

Google Authenticator开源版主页 https://github.com/google/google-authenticator 安装Google Authenticator Ubuntu已经包含libpam-google-authenticator软件(Ubuntu 11.10以上版本),可以直接使用apt-get安装 apt-get install libpam-google-authenticator 其他系统可以通过源码编译安装 git clone https://github.com/google/google-authenticator-libpam.git cd google-authenticator-libpam/ ./bootstrap.sh ./configure make make install 注意:在Debian7中执行./configure时可能存在以下错误提示 configure: error: Unable to find the PAM library or the PAM header files 在此需要安装libpam0g-dev和libtool apt-get -y install libpam0g-dev libtool 设置Google Authenticator 在手机端搜索安装Google Authenticator google-authenticator Do you want authentication tokens to be time-based (y/n) y 然后出现二维码,使用手机端Google Authenticator扫码,接下来服务器端继续设置 如果没有出现二维码,可以将提示的以**https://www.google.com/chart?**开头的连接复制到浏览器中,就可以看到二维码了 Do you want me to update your "/root/.
全文 →

树莓派安装Dnsmasq加速DNS解析

全文 →

树莓派下安装配置Noip

注册noip 首先在http://noip.com注册账户 然后在主机管理(Manage Hosts)中添加主机(Add A Host),根据提示设置二级域名,IP可以随意填写。 安装Noip客户端 wget https://www.noip.com/client/linux/noip-duc-linux.tar.gz tar zxf noip-duc-linux.tar.gz cd noip-2.1.9-1 sudo make install 安装过程中,按照提示输入noip帐号信息,时间间隔建议设为5s,默认30s 设置开机启动 在/etc/init.d/中建立noip2脚本 sudo vi /etc/init.d/noip2 脚本内容如下 #! /bin/sh ### BEGIN INIT INFO # Provides: noip2 # Required-Start: $syslog # Required-Stop: $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: noip.com client service ### END INIT INFO # . /lib/lsb/init-functions case "$1" in start) echo "Starting noip2.
全文 →

树莓派使用ddclient和DDNS

域名解析 首先得有个域名,在域名管理中将域名DNS设为he.net的DNS地址,如下: ns1.he.net ns2.he.net ns3.he.net ns4.he.net ns5.he.net 然后在http://dns.he.net注册账号,添加域名(Add a new domain) 接下来添加A记录(New A),勾选允许动态域名解析(Enable entry for dynamic dns) 点击域名后DDNS列中的刷新按钮,新建一个DDNS密匙(Generate a DDNS key.) 安装设置ddclient 在树莓派上安装ddclient sudo apt-get install ddclient 编辑ddclient配置文件,路径为/etc/ddclient.conf protocol=dyndns2 use=web,web=myip.dnsomatic.com server=dyn.dns.he.net login=raspi.in password='ddnskey’ www.raspi.in,raspi.in 其中password为设置DDNS时的key 重启ddclient服务 service ddclient restart 验证IP查询结果 sudo ddclient -query use=if, if=eth0 address is 192.168.1.111 use=if, if=lo address is 127.0.0.1 use=web, web=dnspark address is 36.40.143.235 use=web, web=dyndns address is NOT FOUND use=web, web=loopia address is 36.
全文 →

SSL安全优化

全文 →

使用MD5校验文件

全文 →

使用SCP传输文件

全文 →

Linux下更改时区

全文 →

树莓派安装ffmpeg

全文 →

linux下将mp3转换为ogg

安装软件 apt-get install mpg321 vorbis-tools 使用如下命令转换 mpg321 tweet.mp3 -w raw && oggenc raw -o tweet.ogg && rm -rf raw 示例: root@hkvps:/home/res# mpg321 tweet.mp3 -w raw && oggenc raw -o tweet.ogg && rm -rf raw High Performance MPEG 1.0/2.0/2.5 Audio Player for Layer 1, 2, and 3. Version 0.3.2-1 (2012/03/25). Written and copyrights by Joe Drew, now maintained by Nanakos Chrysostomos and others. Uses code from various people. See ‘README’ for more!
全文 →

Gandi免费SSL证书使用方法

首先澄清此文中的免费不是真的免费,而是新注册或转移域名到Gandi,都可以获得标准版SSL证书一年的免费使用。 符合以上条件的话,可以进行下面操作了! 在Gandi上购买SSL证书,选择标准版,在结算的时候系统会自动判断是否免单,正常情况下会0元结单,完成后接着配置SSL证书。 首先提交CSR,这里需要自己生产CSR。 在此以3c.lc域名为例,在Ubuntu中操作。 openssl req -nodes -newkey rsa:2048 -sha1 -keyout 3clc.key -out 3clc.csr 然后根据提示填写以下内容: Country Name (2 letter code) [AU]: #国家代码,中国为CN State or Province Name (full name) [Some-State]: #省份 Locality Name (eg, city) []: #城市 Organization Name (eg, company) [Internet Widgits Pty Ltd]: #组织名 Organizational Unit Name (eg, section) []: #部门名 Common Name (e.g. server FQDN or YOUR name) []:3c.lc #注意,这里需要填写你的域名。 Email Address []:2b@3c.lc #邮箱 Please enter the following ‘extra’ attributes
全文 →

树莓派开启root登录

全文 →

Linux下使用grive管理Google Drive

全文 →

无法使用add-apt-repository命令

全文 →

树莓派安装配置minidlna

全文 →

树莓派使用DietPi

下载安装DietPi DietPi项目主页 http://dietpi.com/ DietPi下载地址 http://fuzon.co.uk/downloads/DietPi.7z 这个压缩包91MB,解压后的img文件522MB,比官方的小多了。 然后将镜像写入到SD卡中,linux下使用dd dd if=DietPi_v74.img of=/dev/sdc bs=2M Windows下使用Win32 Disk Imager,戳这里 写入完成后将SD卡插入树莓派,加电启动。 预设置Wifi链接 首次使用时,可以通过编辑dietpi.txt来进行wifi预设置。 将TF卡插入电脑读卡器,打开对应的磁盘,找到dietpi.txt文件,打开。 找到Wifi_Enabled=0,将其设置为1 然后找到Wifi_SSID和Wifi_KEY分别设置wifi节点名和密码,保存即可。 配置DietPi DietPi默认用户名密码为root dietpi,第一次启动DietPi提示检测升级,按提示操作。 不过由于天朝网路问题,可能升级比较缓慢,建议Ctrl+c终止升级,修改sources.list为朝内镜像。 DietPi默认没有vi,使用nano进行编辑,添加Aliyun源。 deb http://mirrors.aliyun.com/raspbian/raspbian/ wheezy main non-free contrib deb-src http://mirrors.aliyun.com/raspbian/raspbian/ wheezy main non-free contrib 更新软件 apt-get update&&apt-get upgrade -y 然后运行dietpi-config进行配置。 DietPi - Config ┌────┤ ———- DietPi-Config ———- ├─────┐ │ Hardware : Raspberry Pi 1 (512MB) │ │ │ │ 1 Display Options │ │ 2 Audio Options │ │ 3 Performance Options │ │ 4 Advanced Options │ │ 5 Language/Regional Options │ │ 6 Security Options │ │ 7 Networking Options │ │ 8 AutoBoot Options │ │ 9 Tools │ │ │ │ │ │ <Ok> <Exit> │ │ │ └────────────────────────────────────────────────┘ 推荐配置:
全文 →

安装Nginx和ngx_pagespeed

VPS配置: Ubuntu 14.04 x86 RAM 512M SWAP 64M DISK 5G 准备工作 sudo apt-get update&&apt-get upgrade -y sudo apt-get install build-essential zlib1g-dev libpcre3 libpcre3-dev unzip libssl-dev -y 下载ngx_pagespeed cd NPS_VERSION=1.9.32.4 wget https://github.com/pagespeed/ngx_pagespeed/archive/release-${NPS_VERSION}-beta.zip unzip release-${NPS_VERSION}-beta.zip cd ngx_pagespeed-release-${NPS_VERSION}-beta/ wget https://dl.google.com/dl/page-speed/psol/${NPS_VERSION}.tar.gz tar -xzvf ${NPS_VERSION}.tar.gz 安装Nginx cd groupadd www useradd -s /sbin/nologin -g www www NGINX_VERSION=1.8.0 wget http://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz tar -xvzf nginx-${NGINX_VERSION}.tar.gz cd nginx-${NGINX_VERSION}/ ./configure \ –user=www \ –group=www \ –prefix=/usr/local/nginx \ –with-http_stub_status_module \ –with-http_ssl_module \ –with-http_spdy_module \ –with-http_gzip_static_module \ –with-http_sub_module \ –add-module=$HOME/ngx_pagespeed-release-${NPS_VERSION}-beta \ sudo make sudo make install sudo ln -sf /usr/local/nginx/sbin/nginx /usr/bin/nginx 配置/etc/init.
全文 →

将Nginx更换为H2O

安装必须的软件 预备工具软件 #apt-get install autoconf automake m4 build-essential libssl-dev 必选 #apt-get install openssl libssl-dev 以下为可选包,可自行搜索安装 libuv libyaml wslay 安装H2O 下载安装最新版h2o https://github.com/h2o/h2o/releases #wget https://github.com/h2o/h2o/archive/v1.4.1.tar.gz #tar zxf v1.4.1.tar.gz #cd h2o-1.4.1 #cmake -DWITH_BUNDLED_SSL=on . #make #sudo make install 编辑H2O站点配置文件 以下是一个简单的http与https配置文件,可自行参考修改 hosts: "www.example.com": listen: port: 80 listen: port: 443 ssl: certificate-file: /path/to/server-certificate.crt key-file: /path/to/private-key.crt paths: "/": file.dir: /path/to/doc-root access-log: /path/to/the/access-log error-log: /path/to/the/error-log pid-file: /path/to/the/pid-file http2-reprioritize-blocking-assets: ON # performance tuning option 启动H2O
全文 →

Xively与树莓派监控温度与湿度

进入https://www.xively.com/注册登录 添加设备(Add Device) 在Development Devices页面点击Add Device添加设备 填写Device Name和Device Description,将Privacy设定为Public Device 设置API Key 进入Device详情页,在API Keys中点击Add Key添加一个Key,将Permissions中的Read,Create,Update,Delete全部勾选,Label随便填。 向Xively提交数据 在这里通过CURL向xively提交JSON格式的数据 JSON数据格式 { "datastreams": [ { "id": "load", "current_value": "9.00" }, { "id": "temp", "current_value": "89.15" } ] } 其中每个id为数据定义的idcurrent_value为提交的值 脚本文件send_xively.sh #!/bin/bash LOCATION=’/home/pi/xively_data’ #Path of Xively JSON DATA file API_KEY='orxUhgjqSYPDbv5243534tG65464345eArxSVY9pE8ITnE’ #API Key FEED_ID='1354438558’ #FEED_ID #################################################### COSM_URL=https://api.xively.com/v2/feeds/${FEED_ID}?timezone=+8 cpu_load=cat /proc/loadavg | awk '{print $2}' sen_t=sudo /home/pi/st sen_h=sudo /home/pi/sh for i in 1 2 3 4 5; do cpu_t=cat /sys/class/thermal/thermal_zone0/temp | awk '{print $1/1000}' if [[ "${cpu_t}" =~ ^- ]] then cpu_t='0.
全文 →

Ubuntu下安装Ghost博客系统

安装Nodejs sudo add-apt-repository ppa:chris-lea/node.js sudo apt-get update sudo apt-get install nodejs 检查是否安装成功 root@hkvps:~# node -v v0.10.37 root@hkvps:~# npm -v 1.4.28 安装Ghost Ghost下载地址https://ghost.org/download/ wget https://ghost.org/zip/ghost-0.6.4.zip unzip ghost-0.6.4.zip -d ghost cd ghost npm install –production 运行Ghost npm start 可以通过127.0.0.1:2368来访问 通过nmp start来运行Ghost,退出后就会停止,因此需要一个方法让Ghost一直运行 让Ghost一直运行 安装forever npm install forever -g 进入ghost目录,执行以下命令,让Ghost一直运行 NODE_ENV=production forever start index.js 停止ghost forever stop index.js 查看forever运行列表 forever list 结合Nginx配置域名 安装Nginx sudo apt-get install nginx 编辑配置文件
全文 →

Nginx配置SSL证书

申请Wosign免费SSL证书 申请地址: https://www.wosign.com/products/free_ssl.htm 申请成功后,收到类似于aquan.me_sha256_cn.zip的文件,解压后包含如下文件 for Apache.zip for IIS.zip for Nginx.zip for Other Server.zip for Tomcat.zip 其中for Nginx.zip中包含如下两个文件,将其上传到VPS自定义位置。 1_aquan.me_bundle.crt 2_aquan.me.key 配置Nginx 不多说了,直接贴代码:

Add Wosign SSL Start #### listen 443; ssl on; ssl_certificate /usr/local/nginx/ssl/ssl.crt; ssl_certificate_key /usr/local/nginx/ssl/ssl.key; ssl_session_timeout 5m; ssl_protocols SSLv2 SSLv3 TLSv1; ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP; ssl_prefer_server_ciphers on; #### Add Wosign SSL End #### 将以上代码插入listen 80;之后。

重启Nginx生效 /etc/init.d/nginx restart 以上设置完成,就可以通过https来浏览网站,同时http也可以浏览。 合并Wosign根证书 有的浏览器会提示不信任证书,可以通过合并Wosign根证书来解决 wget https://www.wosign.com/Root/Bundle_DV_St.crt cat Bundle_DV_St.crt >> /usr/local/nginx/ssl/ssl.crt 设置http跳转https 如果想将http跳转至https,可以进行如下设置:

全文 →

Linux下安装最新版golang

全文 →

使用speedtest-cli测试带宽

安装speedtest-cli 安装speedtest-cli方法如下: sudo apt-get install python-pip sudo pip install speedtest-cli 或 pip install git+https://github.com/sivel/speedtest-cli.git 或 git clone https://github.com/sivel/speedtest-cli.git python speedtest-cli/setup.py install 或 wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest_cli.py chmod +x speedtest-cli 或 curl -Lo speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest_cli.py chmod +x speedtest-cli 使用speedtest-cli root@MyUbuntuCloud:~# speedtest-cli -h usage: speedtest-cli [-h] [–bytes] [–share] [–simple] [–list] [–server SERVER] [–mini MINI] [–source SOURCE] [–timeout TIMEOUT] [–version] Command line interface for testing internet bandwidth using speedtest.
全文 →

fdisk分区实例

查看磁盘分区详情 直接使用fdisk -l 或者使用fdisk /dev/sda,再使用p命令来查看 Command (m for help): p Disk /dev/sda: 32.2 GB, 32212254720 bytes 255 heads, 63 sectors/track, 3916 cylinders, total 62914560 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000657c3 Device Boot Start End Blocks Id System /dev/sda1 * 2048 61868031 30932992 83 Linux /dev/sda2 61870078 62912511 521217 5 Extended /dev/sda5 61870080 62912511 521216 82 Linux swap / Solaris fdisk命令 fdisk有以下命令可用,其中常用的已简单说明
全文 →

使用youtube-dl下载YouTube视频

全文 →

Linux VPS中安装Shadowsocks

VPS系统版本: Ubuntu 12.04 32bit 最简单的办法 #apt-get install python-pip #pip install shadowsocks 启动Shadowsock #ssserver -p 4000 -k sss4k -d start -p后定义端口号,-k后面设定密码,-d start代表以daemon方式启动 下面是另外一种方法: 安装shadowsocks-libev 先用aptitude show查看libssl-dev版本 aptitude show libssl-dev 然后根据版本执行以下修改: libssl > 1.0.1 在/etc/apt/sources.list添加下行: deb http://shadowsocks.org/debian wheezy main libssl > 0.9.8 但 < 1.0.0 在/etc/apt/sources.list添加下行: deb http://shadowsocks.org/debian squeeze main 添加GPG wget http://shadowsocks.org/debian/1D27208A.gpg sudo apt-key add 1D27208A.gpg 添加完成后更新软件源,然后安装shadowsocks sudo apt-get update sudo apt-get install python-m2crypto sudo apt-get install shadowsocks-libev 配置/管理shadowsocks服务 配置
全文 →

CentOS中Crontab安装和使用

安装crontab: [root@CentOS ~]# yum install vixie-cron [root@CentOS ~]# yum install crontabs 说明: vixie-cron软件包是cron的主程序; crontabs软件包是用来安装、卸装、或列举用来驱动 cron 守护进程的表格的程序。 cron 是linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务: /sbin/service crond start //启动服务 /sbin/service crond stop //关闭服务 /sbin/service crond restart //重启服务 /sbin/service crond reload //重新载入配置 查看crontab服务状态:service crond status 手动启动crontab服务:service crond start 查看crontab服务是否已设置为开机启动,执行命令:ntsysv 加入开机自动启动:chkconfig –level 35 crond on rontab命令 功能说明: 设置计时器。 语法: crontab [-u <用户名称>][配置文件] 或 crontab [-u <用户名称>][-elr] 补充说明: cron是一个常驻服务,它提供计时器的功能,让用户在特定的时间得以执行预设的指令或程序。只要用户会编辑计时器的配置文件,就可以使用计时器的功能。其配置文件格式如下: Minute Hour Day Month DayOFWeek Command 参数:
全文 →

Linux下CLI模式使用Dropbox

全文 →

树莓派中使用TL-WN725N

全文 →

CentOS7安装指南

全文 →

创建固定大小的文件

全文 →

树莓派配置VNC

全文 →

树莓派与DNSPod动态域名解析

所需条件 Raspberry Pi TP-Link路由器 DNSPod帐户 域名 配置路由器 进入路由器的DHCP服务器->静态地址分配菜单,为Raspberry Pi分配静态IP地址,例如:192.168.1.200 进入路由器的安全功能->远端WEB管理菜单,设置WEB管理端口为一个非80值,例如82 进入路由器的转发规则->DMZ主机菜单,将DMZ主机IP地址设置为Raspberry Pi的ip地址,然后启用保存。 设置DNSPod动态域名解析 首先登录DNSPod网页管理域名,将二级域名www 的A记录解析到路由器外网IP(可通过路由器管理首页查询,或者通过浏览ip138.com来获得) 注:一级域名请解析**@**的A记录。 下载DNSPod官方客户端Lite https://support.dnspod.cn/Support/api 解压后双击打开登录,从右侧信息列表中也可以看到本机最新IP,点击相应域名后的动态解析按钮,在动态解析设置中右键点击相应的动态记录启用即可,关闭DNSPod官方客户端Lite。 设置Raspberry Pi 安装Web服务器软件(Nginx) #apt-get install nginx #/etc/init.d/nginx start 内网可以通过浏览`http://192.168.1.129"来检查Nginx是否正常运行。 浏览https://gist.githubusercontent.com/chuangbo/833369,下载动态域名解析脚本(pypod.py) 编辑pypod.py修改以下内容: login_email="email", # DSNPod帐户邮箱 login_password="password", # DSNPod帐户密码 domain_id=100, # 域名id record_id=100, # 记录id sub_domain="www", # 子域名 其中域名id与记录id可以通过以下命令获取: curl -k https://dnsapi.cn/Domain.List -d "login_email=xxx&login_password=xxx" curl -k https://dnsapi.cn/Record.List -d "login_email=xxx&login_password=xxx&domain_id=xxx" 提示:如果你使用了www子域名,则需要获取www的记录id,如果使用一级域名(@),则需要获取**@**的记录id。 编辑完pypod.py保存退出,使用以下命令运行: #python pypod.py 现在可以通过域名来浏览Raspberry Pi上的Web内容了。 pypod.py开机运行 添加/usr/bin/python /home/pi/pypod.
全文 →

开始使用树莓派

全文 →

Ubuntu下安装VPN

全文 →

VPS优化

pdksh替代bash $sudo apt-get install pdksh $sudo vi /etc/shells 添加/bin/pdksh到/etc/shells文件 $chsh -s /bin/pdksh 重新登录即可。 修改SSH端口 #vi /etc/ssh/sshd_config 将Port 22中的22改为自定义数字即可

/etc/init.d/ssh restart dropbear替代openssh $sudo apt-get install dropbear $sudo /etc/init.d/ssh stop $sudo vi /etc/default/dropbear 修改NO_START=0,修改DROPBEAR_PORT为自定义端口号

$sudo /etc/init.d/dropbear start $sudo apt-get remove openssh-server $sudo apt-get autoremove 关闭多余的TTY Ubuntu 12.04 server如下操作 #cd /etc/init/ #mv tty2.conf tty2.conf.bak #mv tty3.conf tty2.conf.bak #mv tty4.conf tty2.conf.bak #mv tty5.conf tty2.conf.bak #mv tty6.conf tty2.conf.bak #reboot Debian 7如下操作

全文 →

VPS下自动备份文件和数据库

全文 →

修复grub引导

笔记本原来安装的Linux/Windows XP双系统,今天重新安装了Windows7,但是开机的grub引导被搞掉了,找了下grub的man看了半天,摸索出来如何修复原来的grub引导。 首先,使用Linux live cd引导系统,然后按照以下操作: 检查分区信息 ubuntu@ubuntu:~$ sudo -s root@ubuntu:~# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 465.8G 0 disk ├─sda1 8:1 0 40G 0 part ├─sda2 8:2 0 1K 0 part ├─sda5 8:5 0 4G 0 part [SWAP] ├─sda6 8:6 0 20G 0 part ├─sda7 8:7 0 20G 0 part ├─sda8 8:8 0 100G 0 part ├─sda9 8:9 0 200G 0 part └─sda10 8:10 0 81.
全文 →

fstab自动挂载分区

全文 →

Debian下安装Jekyll

全文 →

卸载linux旧内核

全文 →

Linux下部署goAgent

准备工作 下载Google Appengine SDK For Pyahont与goAgent 1.Google App Engine SDK for Python https://developers.google.com/appengine/downloads?hl=zh-CN#Google_App_Engine_SDK_for_Python 2.goagent https://code.google.com/p/goagent/ 下载后解压,将goagent文件夹放到google_appengine目录下,目录结构如下: ~/google_appengine/goagent-goagent-d488f2 准备好Google Application_ID与两步验证密码,如何申请问Google 配置goagent 编辑~/google_appengine/goagent-goagent-d488f2/local/proxy.ini 填写正确的appid,在此建议将profile由默认的google_cn改为google_hk 参考以下步骤执行: aquan@edge ~/google_appengine $ python appcfg.py update goagent-goagent-d4488f2/server/python/ 07:03 PM Host: appengine.google.com 07:03 PM Application: wrchiublog; version: 1 07:03 PM Starting update of app: wrchiublog, version: 1 07:03 PM Getting current resource limits. Email: wrchiu@126.com //在此填写googleid Password for wrchiu@126.com: //此处填写两步验证密码,而不是帐号密码 07:04 PM Scanning files on local disk.
全文 →

Ubuntu Server中安装VNC Server

安装所有软件 #aptitude install openbox firefox ttf-wqy-microhei #aptitude install vnc4server 设置openbox启动 #update-alternatives –config x-session-manager 然后选择openbox-session 设置vncserver密码: #vncpasswd Password: ****** Verify:***** 运行vncserver

vncserver //运行 # vncserver -kill :1 //终止 编辑~/.vnc/xstartup文件

#vi ~/.vnc/xstartup #!/bin/sh # Uncomment the following two lines for normal desktop: # unset SESSION_MANAGER # exec /etc/X11/xinit/xinitrc [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources xsetroot -solid grey vncconfig -iconic & x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & x-window-manager & startx& //添加此行 链接VNC

全文 →

Debian使用apt-spy选择最佳源

全文 →

使用wget下载整站

全文 →

Archlinux下修改网卡名称

刚刚安装了Archlinux,用的archlinux-2013.03.01-dual.iso镜像,最新的systemd将网卡名更改了,不在是原来默认的eth0/wlan0 我的ifconfig -a输出如下: enp9s0: flags=4098 mtu 1500 ether 04:7d:7b:f8:25:9d txqueuelen 1000 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10 loop txqueuelen 0 (Local Loopback) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.
全文 →

Archlinux安装笔记

下载ArchLinux镜像 下载archlinux-2012.12.01-dual.iso,可以将其刻录到CD引导启动,或者使用dd命令将其写入到USB设备。 http://mirrors.163.com/archlinux/iso/2012.12.01/archlinux-2012.12.01-dual.iso.torrent 完成后重启电脑进入到Archlinux CD开始进行安装。 设置网络连接 整个安装过程,本机需要连接互联网以下载所需文件,在此推荐使用网线连接自动获取IP,如果是这样那么当你进入到archlinux时网络已经连接成功了,可以使用ping来查看是否成功 #ping -c 5 aotee.com 如果不是自动获取IP,可以参考以下相关命令设置网络连接: 开启|关闭网络设备

ip link set eth0 up # ip link set eth0 down 自动获取IP(DHCP)

dhcpcd eth0 查看状态

ip addr show dev eth0 如果是无线网卡,请参考这里进行设置。

设置键盘布局 #loadkeys us 准备硬盘分区 设置硬盘分区时可以使用自己熟悉的工具进行操作,以下是我的分区方案 /dev/sda9 /boot /dev/sda10 swap /dev/sda11 / /dev/sda12 /home 我使用LinuxMint LiveCD的磁盘工具进行分区,分区完成后可以使用lsblk /dev/sda来查看结果。 格式化分区 参考以下命令对已有的分区进行格式化 #mkfs -t ext2 /dev/sda9 #mkfs -t ext4 /dev/sda11 #mkfs -t ext4 /dev/sda12 #mkswap /dev/sda10 #swapon /dev/sda10 挂载分区

全文 →

Cinnarch安装全过程

Cinnarch是一个新的linux发行版,基于Archlinux以Cinnamon为默认桌面系统,对于想体验Archlinux但对于全新的安装方法无法把握的朋友,Cinnarch不失为一个良好的选择。 以下为安装Cinnarch的一次全过程,以供需要的朋友参考。 下载Cinnarch 首先从官网下载Cinnarch镜像,地址为 http://www.cinnarch.com/try-it/ ,按照需要下载32Bit或者64Bit的,下载方式有直接下载(iso)与通过BT种子(torrent)下载两种方式。 将下载后的镜像刻入CD,放入光驱后重启以进入LiveCD即可。 安装Cinnarch 进入到LiveCD后会弹出一个Welcome弹窗,可以点击其中的CLI Installer开始安装,或者先使用系统(Try it),需要安装时在系统菜单中找到Cinnarch Installer CLI点击打开,也可以开始安装。 打开安装程序前,请确认电脑已经可以联网使用,因为一切软件包都是实时从mirror下载的,并且安装好的系统和archlinux一样,可以滚动升级(Rolling upgrade)。 打开安装程序,首先提示更新软件list,更新完成后会出现一个welcome的对话框,确认后进入到安装主菜单,如下: 0 Set Language and Keyboard 1 Set Time and Date 2 Prepare Hard Drive 3 Select Source 4 Install System 5 Configure System 6 Exit Install 设置语言与键盘 (Set Language and Keyboard) 选择进入设置菜单,在此主要设置语言选项,键盘布局可以不设置,采用默认即可。 语言设置为zh_CN.UTF-8 设置键盘布局(Set Keymap)时可以直接选择返回主菜单(Return to Main Menu) 设置时间与日期(Set Time And Date) 此项用于设置时间与日期,此项下面有三个子菜单: 1 Select Region and Timezone 2 Set Time and Date 3 Return to Main Menu 第一项菜单用于设置区域与时区,此次区域(Region)设置为Asia,时区(Timezone)设置为Chongqing(或者Beijing/Shanghai)
全文 →

Linux Live USB制作工具

全文 →

Nokia N900系统优化脚本

全文 →

LNMP使用实例

安装LNMP 更新系统 #yum check-update #yum update 安装Screen #yum install screen 开始安装Lnmp #screen -S lnmp #wget -c http://soft.vpser.net/lnmp/lnmp0.8.tar.gz //最新版请查阅lnmp官网 #tar zxvf lnmp0.8.tar.gz #./lnmp0.8/centos.sh | tee lnmp.log //输出log文件,以备出错时查阅 接下来按照提示设定域名和MysQL密码,程序会自动下载相关程序,而后编译安装 安装PureFTP #./lnmp0.8/pureftp.sh 按提示输入MySQL和Ftp管理员密码,安装完成后可以通过http://vpsip/ftp/来登录管理ftp帐号 使用Lnmp 添加虚拟主机 #/root/vhost.sh 按照提示填入域名、目录、rewrite规则文件,如下所示: root@buyvm256:~#/root/vhost.sh ========================================================================= Add Virtual Host for LNMP V0.9 , Written by Licess ========================================================================= LNMP is a tool to auto-compile & install Nginx+MySQL+PHP on Linux This script is a tool to add virtual host for nginx For more information please visit http://www.
全文 →