Linux SSH保持连接(解决Broken pipe)

在使用SSH客户端进行连接管理的时候如果长时间不输入命令, 服务器会自动断开连接, 尤其是有的人使用SSH作为代理连接这样的情况更是突出, 因此我在网上搜集了可以让 SSH 保持连接的方法与大家分享

在服务器端,可以让服务器发送“心跳”信号测试提醒客户端进行保持连接

通过修改 sshd 的配置文件,能够让 SSH Server 发送“心跳”信号来维持持续连接,下面是设置的内容

打开服务器 /etc/ssh/sshd_config,我在最后增加一行

这 样,SSH Server 每 60 秒就会自动发送一个信号给 Client,而等待 Client 回应,(注意:是服务器发心跳信号,不是客户端,这个有别于一些 FTP Client 发送的 KeepAlives 信号哦~~~),如果客户端没有回应,会记录下来直到记录数超过 ClientAliveCountMax 的值时,才会断开连接。

如果你没有服务器端管理权限,在客户端进行设置也可以实现

只要在/etc/ssh/ssh_config文件里加两个参数就行了

前一个参数是说要保持连接,后一个参数表示每过5分钟发一个数据包到服务器表示“我还活着”

如果你没有root权限,修改或者创建~/.ssh/ssh_config也是可以的

在这种方法中, 如果你只想针对某一个ssh连接进行持续, 你可以将上述配置文件复制一下进行修改然后在连接的时候使用 -F参数进行配置文件的指定。 当然因为只需要修改两个参数, 你也可以直接在连接命令中进行设定即:

参考链接


修正ubuntu 18.04上执行"sudo apt upgrade"报告"libc6-dev-armhf-cross"升级出错

最近自己电脑上的ubuntu 18.04在更新软件的时候报告如下错误信息:

如果系统语言为英文,则错误信息如下:

解决方法为卸载后重新安装,而不使用升级安装:

参考链接


How do I fix an error with libc6-dev-armhf-cross in Ubuntu 18.04 when trying to apt upgrade?

ubuntu 16.04下安装RTL8192EU(天猫魔盘)

最近需要使用无线网卡,恰好手头有一枚RTL8192EU(天猫魔盘)的无线网卡,使用如下方式安装驱动:

如果下载代码存在困难,可以从本站下载一份代码拷贝 点击这里下载rtl8192eu-linux-driver

参考链接


ubuntu 16.04编译使用BinNavi

 

如果代码下载存在困难,可以本站下载一份拷贝。 点击此处下载 binnavi

参考链接


逆向分析神器BinNavi开源了

ubuntu 16.04安装PCB设计软件gEDA

安装完成后,使用gEDA Schematic Editor进行电路的绘制。

比较遗憾的是gEDA已经很长时间没有更新了,更推荐使用KiCAD来开发。

这个软件一直都在更新,参考 ubuntu 16.04安装PCB设计软件KiCAD EDA

参考链接


ubuntu 16.04(x64)编译并烧录NodeMCU固件

最近在捣鼓NodeMCU,中间各种折腾,下面记录一下编译固件的过程。

首先参考 ubuntu 16.04(x64)构建NodeMCU编译工具链 来构建工具链,然后把工具链加入到环境变量。

然后就是下载固件代码并进行编译了

如果存在下载问题,可以本站下载一份代码拷贝。点击此处下载

只要NodeMCU开发板通电或重置,就会执行init.lua脚本。因此,我们把自己的代码写在这个脚本里面即可。然后用luatool更新到NodeMCU设备里面即可。

注意上面的代码中,--port参数需要根据实际情况进行修改,--src参数也是一样需要根据我们实际的文件名来调整,最后的-b指定波特率,上面固件编译后默认的波特率是115200,淘宝上卖的设备,很多是默认9600的,这个要注意。

如果上面的代码下载存在问题,可以本站下载一份拷贝 点击这里下载luatool
继续阅读ubuntu 16.04(x64)编译并烧录NodeMCU固件

ubuntu 16.04(x64)构建NodeMCU编译工具链

最近在捣鼓NodeMCU,中间各种折腾,下面记录一下编译工具链的过程。

官方推荐的操作过程如下:

上面操作中最慢的依旧是下载依赖的工具链的源代码部分,可以从本站下载一份已经下载完全部依赖项目的编译环境。点击此处下载

本站下载的文件,直接执行make命令即可,不要执行make clean,make clean会删除ESP8266_NONOS_SDK文件夹,导致编译不通过。这种情况,可以还原Makefile,再次去服务器上拉取文件即可。

编译完成后,注意以下几个路径

  • esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/usr/include/为头文件的所在目录
  • esp-open-sdk/xtensa-lx106-elf/bin为工具链所在目录
  • esp-open-sdk/xtensa-lx106-elf/xtensa-lx106-elf/sysroot/lib为链接库目录

上面的几个路径在编译源代码的时候会用到。

以下的操作过程可以通过,但是已经过时,在实际编译新项目的时候,可能会出现异常,已经不推荐了。

对于上面的命令执行过程中,往往卡住在ct-ng build这个位置,观察目录下的build.log会发现总是卡住在文件下载的位置,大量的链接无法正确下载,都是国情导致的。

如果出现下载问题,一般建议从本站下载一份已经下载好的文件,当然,也可以手工从其他镜像站点逐个手工下载依赖的源代码压缩包。

参考操作如下:

然后重新执行ct-ng build命令即可。

如果上面的代码下载存在问题,可以从本站下载一份拷贝,点击下载crosstool-NG

已经编译好的工具链,可以从本站下载,点击这里下载 xtensa-lx106-elf

参考链接


esp8266/esp8266-wiki/Toolchain

ubuntu 16.04编译NodeMCU-pyFlasher

最近在捣鼓NodeMCU,中间各种折腾,下面记录一下编译固件烧录工具的过程。

首先安装依赖包:

安装wxpython的时候,如果遇到问题,参考 ubuntu 16.04在Python3上安装wxpython-4.0.3

下载代码

如果源代码下载存在问题,可以本站下载一份拷贝

点击这里下载

编译并运行

ubuntu 16.04在Python3上安装wxpython-4.0.3

需要在ubuntu 16.04上安装Python3需要使用的wxpython-4.0.3,中间过程如下:

如果提示如下错误信息:

则执行如下命令:

如果出现如下错误信息:

则执行如下命令:

如果出现如下错误信息:

则执行如下命令(显然是编译脚本忘记检查依赖项导致的):

参考链接


Windows 10,ubuntu 16.04双系统安装后修复grub引导的方法

原本电脑上已经有了Windows 10ubuntu 16.04双系统,一次磁盘克隆之后(更换硬盘),引导界面消失了,只能进入Windows 10系统,无法进入ubuntu 16.04

具体的修复办法如下:

继续阅读Windows 10,ubuntu 16.04双系统安装后修复grub引导的方法