月度归档: 2017 年 12 月
Ubuntu 16.04.3 Server使用SSH登陆中文显示为乱码
最近尝试迁移向腾讯云,然后通过SSH
登陆到服务器,发现编辑脚本的时候中文会显示为乱码。
服务器的版本是Ubuntu 16.04.3 Server
。
解决方法非常简单,执行如下命令即可:
参考链接
Ubuntu 16.10/17.10无法通过/etc/rc.local开机启动应用
最新的Ubuntu 16.10/17.10
上已经找不到/etc/rc.local
这个文件了。但是我们很多配置都是写在这个文件里面的,因此如果直接按照systemd
配置服务的话,需要修改很多。这里我们使用一个比较简单的兼容方案。
创建systemd
的服务脚本
里面的内容如下:
激活服务
手工创建或者拷贝已有的/etc/rc.local
,这里我们以手工创建为例子:
参考链接
树莓派系统升级Raspbian Wheezy到Raspbian Jessie(树莓派2B+)
树莓派官方已经放出了Raspbian 8 Jessie
。这是Raspbian Wheezy 2015.5.5
之后的一次比较大的版本更新。而老的Raspbian Wheezy
版本也可以通过简单的步骤升级到Raspbian 8 Jessie
且不用重新刷写镜像。下面将介绍如何升级,要知道,升级有可能会破坏现有系统,在此之前请一定注意备份好老的系统。如果你对之前的系统做的更改越小,升级将会越顺利。
1. 更新当前系统到最新
2. 更新软件下载源
3. 升级到Raspbian 8 Jessie
参考链接
Ubuntu 14.04及之后版本重启网卡不生效
Ubuntu 14.04
修改配置,重启网卡没有生效,出现如下问题:
从以上日志内容可以看出,传统的service
重启和停止网络已经不再支持了,需要通过使用ifdown
& ifup
来实现相应的操作。
如果在远程Shell
操作的情况,上面的命令可能会只执行了ifdown
,然后连接就断开,而无法执行后面的ifup
命令,导致无法继续操作。
解决方法是把上面的命令写入一个脚本文件执行:
参考连接
Ubuntu 17.10使用minicom通过USB串口线连接开发板(解决不能输入的问题)
Ubuntu 17.10
上比较好用的串口终端是minicom
,下面我们介绍一下使用方法。
OpenMediaVault-4.0.15执行更新(apt update)时报错“TypeError: 'NoneType' object is not callable”
OpenMediaVault-4.0.15
执行更新(apt update
)时报错,详细错误信息如下:
通过观察发现,只要从packages.openmediavault.org
中下载文件失败,就会报告这个错误。
发生错误之后,重新执行
即可解决这个问题,或者忽略这个错误信息即可。
Python中用Ctrl+C终止threading初始化的多线程脚本
在编写Python
脚本的时候,难免会遇到使用多线程操作的情况。
正常情况下,我们都习惯在Shell
中使用Ctrl+C
终止脚本的执行,但是在多线程环境中,我们发现Ctrl+C
并不能有效终止开启了多线程的脚本。
由于Python
提供的threading
模块并没有提供线程的退出接口,导致我们没有办法终止已经正常运行的线程,尤其是线程被阻塞在内核的情况下。
解决这个问题的办法就是在线程初始化之后设置为守护模式(setDaemon
),并且不要调用join
阻塞主线程。这样当主线程退出的时候,其他线程也随之退出了。
下面是我们解决这种问题的一个例子:
参考链接
ubuntu 14.04/ubuntu 17.10做主机双网卡共享上网(NAT)
需求是电脑通过无线上网,然后把有线共享给其他设备,其他设备通过电脑代理上网。
电脑上有两张网卡,一张有线网卡,名字为eth0
,一张无线网卡,名字为wlan0
。
电脑的有线网卡配置的静态IP
地址为:192.168.0.1
。
对于Ubuntu 16.10/17.10
系统,请参考 Ubuntu 16.10/17.10无法通过/etc/rc.local开机启动应用 激活系统对于/etc/rc.local
功能的支持。
电脑上执行如下命令:
此时,由于我们没有开启DHCP
功能,因此只能设置静态IP
地址。客户机设置如下:
eth0:192.168.0.10
掩码:255.255.255.0
网关:192.168.0.1