分类
Linux 网络 虚拟机

虚拟机安装OpenWrt路由系统

OpenWrt是一个开源路由器固件,基于Linux。智能路由可以刷机OpenWrt,支持大量插件,功能丰富。OpenWrt也支持x86,可以做为软路由系统。由于我没有单独的机器做软路由,使用OpenWrt做旁路由,仅为科学上网和过滤广告,用虚拟机完全可以满足需求。

OpenWrt支持VitualBox,VMware,Hyper-V等虚拟机,也支持Docker运行。这里我使用的是VMware。

分类
Linux 软件

Ubuntu安装XRDP

在Linux下一直没有好的远程桌面工具。VNC太慢,即使在内网也不太流畅。NoMachine不错,但连接需要安装客户端。NoMachine的移动端做得很垃圾,而且几年没更新,不兼容流海屏。远程用得最爽的还是windows自带的rdp,在低网速下也有很好的表现。

一般的远程工具采用录屏的方式,传输图像。如VNC,NoMachine,用h264压缩。虽然支持GPU加速,但在低宽带或高分辨率下质量差,延迟高。RDP不一样,它传输的是指令,绘图是放在客户端的,所以速度快,即使提高分辨率,速度也不会明显降低。

分类
Nginx PHP 笔记

站点优化笔记

本站开通也有好几年了,除了更新几次主题,自定义几个样式和几处微调,没什么做大的改动。这次心血来潮把它优化一波,为后面使用打下基础。

次此优化主要是:

  1. 优化php配置
  2. 优化wordpress一些不适合国情的东西(你懂的)
  3. 优化链接便于搜索引擎收录
分类
Linux

Linux开机启动脚本

rc.load

/etc/rc.load 或 /etc/rc.d/rc.load

service

#!/bin/bash
#
### BEGIN INIT INFO
# Provides:          zz
# Required-Start:
# Required-Stop:
# Should-Start:      $network $time
# Should-Stop:       $network $time
# Default-Start:     3 4 5
# Default-Stop:
# Short-Description:
# Description:
### END INIT INFO
#

使用让系统开机命令加载脚本:
update-rc.d zz defaults 99

systemctl

systemctl脚本存放在:/usr/lib/systemd/,有系统(system)和用户(user)之分,像需要开机不登陆就能运行的程序,就将程序存在系统服务里,即:/usr/lib/systemd/system目录下

该目录下的服务有以service结尾的,也有target结尾的。

分类
Linux 日记

Ubuntu升级至20.04

前几天Ubuntu 20.04 TLS (Focal Fossa)正式发布,家里的台式机是Ubuntu 18.04 TLS,决定升级到最新TLS版。

首先把系统软件升级到最新:

apt update

apt upgrade

然后执行 do-release-upgrade 如下:

默认TLS版只能升级到TLS版,并且只有第一个补丁版发布才能检测到升级。就是说只有20.04.1发布后才能升级。可以手动指定参数:

do-release-upgrade -m desktop -d

经过漫长的等待,终于更新完了。重启系统。

分类
PHP 日记

站点迁移小记

因原有阿里云ECS服务器6月到期,所有在年前买了3年的腾讯CVM服务器。从阿里云换到腾讯云不是因为服务不好,而是这些云服务器厂商的优惠活动从来都是“老用户与狗不得参与”。

早在之前所有配置都弄好了,只剩下这个站点没迁移。在这阿里云上使用的Apache做WEB服务,新的换成了Nginx。安装好Nginx+PHP,用phpinfo()函数测试成功。

把原有数据库和站点迁动过来,配置域名后访问出现“File not found”。检查过后确定不是权限引起。

原Nginx的PHP配置:

location ~ \.php$ {
    fastcgi_pass php-handler;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME 
 $document_root$fastcgi_script_name;
    include fastcgi_params;
}

把 fastcgi_param SCRIPT_FILENAME $document_root$real_script_name; 改为 fastcgi_param SCRIPT_FILENAME /var/www/wordpress$fastcgi_script_name; 解决。

在迁移时本来想改Wordpress前缀的,后来发现无法进入管理后台。在百度上找到同样问题:

WordPress“您没有足够的权限访问该页面”

可能是因为版本不一样吧,仅仅更改上面的数据无效。决定还是使用之前的前缀,就算成功也担心会有遗漏,还是稳定更重要。

分类
Windows

使用WinWS创建服务

使用Windows中,有些工具或软件需要开机前启动,比如Frp,开机启动VMWare虚拟机系统。之前一直用Window的计划任务,即使在系统用户未登录的情况下也能实现启动,直到发现了WinWS,现在已把要启动的EXE或脚本做成服务,实现启动与管理。

WinWS是开源的,使用简单,先在GitHub下载:

https://github.com/kohsuke/winsw/releases

Win10选择WinSW.NET461,低版本系统如Win7选择NET4,XP选择NET2。如果本机没有.NET框架的可以下载带.NET的版本。再下载sample-minimal.xml配置文件。

我下载的是WinSW.NET461.exe。把下载的WinSW.NET461.exe和sample-minimal.xml重命名,保持名字一致,如改成winsw.exe和winsw.xml。

用记事本编辑winsw.xml配置:

配置项说明

id:指定在Windows系统内部使用的识别服务的ID。在系统中安装的所有服务中必须是唯一,它应该完全由字母数字字符组成。

name:服务的简短名称,它可以包含空格和其他字符。

description:该服务可读描述。当选中该服务时,它将显示在Windows服务管理器中。

executable:该元素指定要启动的可执行文件。它可以是绝对路径,也可以指定可执行文件的名称,然后从环境变量“PATH”中搜索(需要注意的是,服务经常在不同的用户账户中运行,因此它可能需要有不同于你设置在环境变量Path中的路径)。

arguments:启动参数,可选。

分类
日记

远程办公方法分享

新冠状病毒肺炎使得春节假期不断充值,很多公司开始实行远程办公。远程办公一般有三种方式:

一是用自己电脑处理文件事务,这种方式最简单。

二是用自己的电脑连接公司VPN,有这种需求的一般是要访问公司内部的系统,比如财务系统,开发环境等。使用VPN对开发人员来说,开发环境需要在本机重新搭建,不能立即使用,还是有些麻烦的。而且很多中小企业可能很多公司压根就没有VPN可以使用。

三是远程连接到公司的电脑进行操作,这种方式可以最快地开展工作,弊端是必须有一名勇士到公司打开电闸并开机。

这次我主要想写的是第三种方式。早在2017年买下iPad Pro后就一直在捣鼓远程办公方式。当时买iPad Pro是希望有个轻便的工具随身携带,随时开始办公。笔记本对我来说还是太麻烦,而且性能有限。iPad Pro很多专业软件没办法使用。所以只有准备一台24小时不断电的工作站,然后远程连接办公。客户端可以是手机,平板,或者网吧的电脑,所有数据和环境都在云上。

远程连接工具有很多,我之所以写这篇是想说说我的心得,也方便有需要的人参考。

分类
笔记

Nextcloud开启外部存储

Nextcloud默认是没有开启外部存储功能的,需在手动启用插件。

然后在设置里可以看到。设置Nextcloud所有用户都能使用外部存储。

如果Nextcloud是使用Docker部署,可能会遇到没有安装samba客户端问题:“smbclient” 未安装。无法挂载 “SMB / CIFS”, “SMB / CIFS 使用 OC 登录信息”。请联系管理员安装。

分类
日记

二〇二〇,再出发!

前些天老婆问到,以前见你常常写些骚文,怎么现在不写了。确实,我从高中就喜欢写点东西,那时是在QQ空间,后面又转战博客,再后来选择wordpress,已有六七个年头了吧。现在大多是记一些用得着或感兴趣的文章,虽然像大部分在收藏夹的文章一样,平时不会看,但真要再找个什么东西,搜索起来还是挺方便的。然后复制-粘贴,搞定问题。不过话说回来,确实很久没有写个人日记了。2020年都过了大半个月了,还没好好总结过去的一年。

2019年的自己即熟悉又陌生,在这一年里我做的最多的一件事就是撒狗粮。可能是我的爱情它来得太晚了,同龄的伙伴早就在晒娃,甚至还有二胎的。情绪压抑太久,当有一个机会释放时就会疯狂爆发。从心理学上来说,这种报复行为可能属于心理扭曲。庆幸的是现在逐渐恢复理智,激情过后平淡下来才是真的生活。