阿里云从ubuntu16.04.5升级到ubuntu 18.04.3后调整PHP 7.0到PHP 7.2

目前使用的阿里云服务器是通过参考 阿里云ECS ubuntu 14.04.5 LTS升级到ubuntu 16.04.2 LTS 升级上来的。

升级之后,默认情况下,依旧使用的是 ubuntu 16.04.5 自带的 PHP 7.0 ,然而 ubuntu 18.04.3 系统自带的是 PHP 7.2 。我们希望在升级之后的系统上,能启用比较新版本的 PHP 7.2

其实更关键的是,在 ubuntu 18.04.3 系统上, PHP 7.0 相关的部分附加组件,比如 PHP7.0-CURL 已经没办法通过源安装了 ,安全补丁相关的更新估计也不能及时提供。另外就是较新版本的 PHP 7.2 在性能上有不错的提升。

执行如下切换命令(PHP-FPM模式):

网站响应速度有明显的提升,以前的卡顿表现明显改善。

参考链接


ubuntu 18.04下安装CUDA 10.1以及cuDNN的安装

安装最新版本的 CUDA 10.1

安装对应版本的cuDNN:

检测是否成功安装:

执行输出如下结果代表成功安装:

继续阅读ubuntu 18.04下安装CUDA 10.1以及cuDNN的安装

ubuntu 18.04安装Vulkan依赖的工具链SPIR-V Toolchain(glslangValidator)

开发 Vulkan 的时候,需要使用 glslangValidator 编译 Vulkan 代码。

如果是 ubuntu 19.10 版本,可以直接执行:

如果低于这个版本,则只能从源代码编译安装了,如下:

ubuntu 18.04上使用Openconnect代替Cisco Anyconnect

OpenConnect 是一个 Cisco Anyconnect 的替代品,具有开源、易获取、可靠等优点。而官方版本的 Cisco Anyconnect 配置较为繁琐,需要在管理界面同时部署多平台客户端才能支持多平台。相比之下 OpenConnect 在这点就具有优势,可以在官方版本无法跨平台时替代使用。

命令行模式:

安装完成之后,在网络管理界面上的 VPN 设置界面上可以配置 Cisco Anyconnect 相关的项目。

如果刚刚安装之后, VPN 设置界面上没有出现这个选项,则可能需要重启系统才行。

参考链接


ubuntu 18.04 Android Studio运行模拟器时提示“/dev/kvm device: permission denied”

升级 ubuntu 系统, 从 16.04.5 升级到 18.04.1 ,接着又开始配置各种软件环境。

当配置好 Android 开发环境,准备创建一个模拟器并运行程序环境看是否OK时,问题出现了。

创建和运行时都提示:/dev/kvm device: permission denied 或者 /dev/kvm device: open failed,而且模拟器跑不起来。

执行命令查看:

需要安装 qemu-kvm 并把当前用户加入到 kvm 用户组即可:

然后运行模拟器。

如果依旧报错,则需要修改 /dev/kvm 的所有者为当前用户,如下:

参考链接


ubuntu 18.04 "nvidia-340 导致 /usr/lib/x86_64-linux-gnu/libGL.so.1 转移到 /usr/lib/x86_64-linux-gnu/libGL.so.1.distrib"

解决方案如下:

参考链接


发现了 nvidia-340 导致 /usr/lib/i386-linux-gnu/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so.1.distrib...

ubuntu 18.04 systemd-udevd进程CPU占用特别高,CUDA Toolkit 10.1 Update 2安装之后出现

最近在T440笔记本的ubuntu 18.04系统上安装最新的CUDA Toolkit 10.1 Update 2之后,发现 systemd-udevd 进程CPU占用特别高,执行 sudo /lib/systemd/systemd-udevd -D ,会发现持续输出如下信息:

解决方法如下:

参考链接


Ubuntu通过apt-get安装指定版本和查询指定软件有多少个版本

一、通过apt-get安装指定版本

二、查询指定软件有多少个版本

说明:在Linux用这个查询并不能完全的把所有版本都列举出来,因为每个版本都与系统版本和CPU架构有关,比如一个软件支持Ubuntu系统的16.04的CPU架构为amd64的版本只有1.0和1.2,其余都不支持,所以列举时就只有两款。

列举版本列表:

0、通过网站搜索:

https://packages.ubuntu.com/

1、

将列出所有来源的版本。如下输出所示:

madison 是一个 apt-cache 子命令,可以通过 man apt-cache 查询更多用法。

2、

将列出所有来源的版本。信息会比上面详细一点,如下输出所示:

policy 是一个 apt-cache 子命令,可以通过 man apt-cache查询更多用法。

3、

4、

说明:这个命令只是模拟安装时会安装哪些软件列表,但不会例举出每个软件有多少个版本

5、

参考:https://manpages.debian.org/unstable/aptitude/aptitude.8.en.html

6、

说明:列举出所有版本,且能查看是否已经安装。还可以通过apt-show-versions -u <<package name>>来查询是否有升级版本。

参考:http://manpages.ubuntu.com/manpages/trusty/man1/apt-show-versions.1p.html

7、

8、

单个详情:

1、

说明:查询指定包的详情,不管是否已经安装。

2、

说明:效果和上面基本一致,但是结果是列表详情展示,会提示是否已经删除了之后还有依赖包没有删除等。

3、

说明:必须是安装的包才能显示详情。

4、

说明:同上,效果一致。

使用技巧:

1、可以在查询后面带上一些参数来实现筛选

参考链接


Ubuntu通过apt-get安装指定版本和查询指定软件有多少个版本

Ubuntu 16.04.5系统上的/var/log/btmp日志

刚发现 /var/log/btmp 这个文件有好几个 G 的大小,搜了下关于 btmp 文件的信息:

/var/log/btmp这个文件记录错误的登录尝试,执行lastb命令就可以查看到最近不成功的登录尝试.

如果文件太大可删除了再重新生成一个新的空文件。

参考链接