Ubuntu 17.10上使用crosstool-ng-1.23.0建立WD MyCloud修复工具编译环境(uClibc)

参考更优雅的(不拆硬盘)拯救死翘翘了的WD MyCloud(Ubuntu 17.10)编译出来的 Busybox是只有 3MB大小的样子,这样编译出来的东西非常基础,功能有限。如果想要增加其他软件的时候,最少改动的情况下,一般都依赖 GLIBC,而 GLIBC完整编译出来的库接近 50MB,而我们修复系统,是一个纯内存文件系统。直接采用 GLIBC会非常浪费不多的内存空间。

因此在低内存的系统上采用 uClibc,变成一个不错的选择。下面我们讲一下如何通过 crosstool-ng-1.23.0构建一个我们需要的编译系统出来。

首先编译 crosstool-ng-1.23.0源代码

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

最终的 .config文件,可以参考下面的配置信息,或者简单的拷贝这个文件到编译目录即可

最终在如下目录生成我们需要的编译程序

编译过程中的源代码下载可能会非常缓慢,可以从本站下载一份代码的拷贝。点击这里下载。下载完成后,解压缩到当前用户根目录,编译的时候,会自动使用已经下载的文件。可以使用下面的命令进行下载解压缩操作:

如果懒得编译,也可点击这里下载一份已经编译好的编译工具

参考链接


ubuntu 17.10 gnome 3桌面隐藏顶栏

1.安装 gnome-tweak-tool

2.安装 hidetopbar扩展

3.重启电脑

4.启动 gnome-tweak-tool

可以看到 扩展--> Hide top bar扩展,开启即可隐藏顶栏。按键盘上的 Windows图标键就会显示出来。如果还是没有隐藏,请点击设置按钮,在里面关闭 智能隐藏

继续阅读ubuntu 17.10 gnome 3桌面隐藏顶栏

ubuntu 16.04/ubuntu 17.10下解决wireshark权限问题

ubuntu 16.04/ubuntu 17.10下使用 wireshark可能会遇到如下权限问题:

也有可能列表中找不到我们抓包的网卡。

可以使用如下方法解决:

1.添加 wireshark用户组

2.将 dumpcap更改为 wireshark用户组

3.让 wireshark用户组有 root权限使用 dumpcap

4.将需要使用的用户名(一般都是当前登陆用户)加入 wireshark用户组

参考链接


ubuntu下解决wireshark权限问题

NVIDIA TX2 (Ubuntu 16.04)上安装CUDA 8.0

使用如下方式安装:

至于如何获取最新的 NVIDIA TX2上使用的 CUDA 8.0版本的下载地址,请访问Jetson Download Center,下载目前最新的JetPack 3.1。执行之后在存储目录下的 repository.json中找到最新的下载链接即可。当然也可以让JetPack 3.1自动下载完成最新的 CUDA 8.0版本到指定目录。

NVIDIA TX2 (Ubuntu 16.04)上安装ROS

首先编辑安装源

找到如下内容

开启 universe源,修改为:

然后更新源

然后执行如下安装脚本:

参考链接


Ubuntu 16.04上使用crosstool-ng编译Nvidia TX2上使用的boost库

目前在 Nvidia TX2上尝试安装 ROS Kinetic的时候发现依赖 libboost-all-dev,但是自带的源http://ports.ubuntu.com下面没有合适的源,尽管在 universe源下面包含 libboost-all-dev ,但是实际安装的时候发现安装不上。

因此尝试手工编译最新的 boost安装包,建立自己的源。

首先,编译安装最新的 crosstool-ng,如下:

生成的工具链在 ~/x-tools/aarch64-rpi3-linux-gnueabi目录下,编译的时候,指定编译工具即可。

安装编译依赖

接着,下载并编译最新的代码

注意,对于 boost-1.58来说,当时的代码是没有检测 ARM64的功能的,当年也没有 ARM64的芯片。因此需要修改 {boost_root}/libs/config/checks/architecture/arm.cpp里面的代码,增加 ARM64的判断

调整为

参考链接


Ubuntu 16.04.3在使用GeForce GTX 970显卡的电脑上无法安装以及启动的解决方法

最近在一台安装了 GeForce GTX 970显卡的机器上,一直无法安装 Ubuntu 16.04.3系统的时候,一直卡住在如下界面:

继续阅读Ubuntu 16.04.3在使用GeForce GTX 970显卡的电脑上无法安装以及启动的解决方法

Linux下编辑ISO文件的方法

我们知道 Windows下有类似 UltraISO的这样的软件可以用来编辑 ISO文件,可引导 ISO也没有问题。近来在 Linux下玩的比较多,正好要改个 ISO,于是就开始找 Linux下有没有类似的软件。

Ubuntu软件中心里有一款叫 ISOMaster的软件,可以创建和修改 ISO文件。

继续阅读Linux下编辑ISO文件的方法

OpenCV使用cv::imshow在子线程中更新图片不刷新

Ubuntu 16.04上测试 OpenCV 3.2,遇到一个在子线程中更新图像,而界面不刷新的问题。

编译执行如下代码:

可以看到,上面的代码执行之后,界面并没有出现,即使出现也没有刷新。

这个问题是由于界面更新必须在主线程中执行,需要手工通知主线程。

修改后的代码如下:

也就是每次更新图片后手工调用代码

这个等候时间,只要大于 即可,比如:

参考链接


c++ opencv image not display inside the boost thread

文件'/var/lib/update-notifier/package-data-downloads/partial/adobe-flashplugin_20170912.1.orig.tar.gz'无法被用户'_apt'访问,无法降低权限以进行下载。 - pkgAcquire::Run (13: 权限不够)

最近在更新 Ubuntu 16.04系统的时候,发现总是在安装 Adobe Flash更新的时候失败,提示如下信息:

如果系统语言是英文的,可能看到下面的信息:

解决方法如下:

这样,就可以正常安装更新了。

参考链接


Can't drop privileges for downloading as file '/var/lib/update-notifier/package-data-downloads/partial/andale32.exe' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)