分类目录归档:Tips

ubuntu下统计openwrt编译时间

linux下面,time指令可以实现这个目的。

-p, –portability
Use the following format string, for conformance with POSIX standard 1003.2:
real %e
user %U
sys %S

比如说你想知道configure的时间,就是

# time -p ./configure
当./configure执行完毕的时候time命令结束,然后会返回一个时间,就是你执行./configure的时间
同样
# time -p make 也会知道make用的时间,如果说要整个的安装时间,可以用命令
# time -p ./configure && make && make install
返回的结果就是整个编译安装过程所用的时间
time命令除可以统计编译时间外,还可以统计程序运行的时间,比如

$ time ./test

比如我编译openwrt的时间统计。

time -p make -j4 V=99

export MAKEFLAGS= ;make -w -r checksum
make[2]: Entering directory ‘/mnt/origin-openwrt’
make[2]: Leaving directory ‘/mnt/origin-openwrt’
make[1]: Leaving directory ‘/mnt/origin-openwrt’
real 93.45
user 133.08
sys 61.79

ubuntu下面给merlin增加环境变量

/home/gcc/.bashrc文件增加下面几行

export LD_LIBRARY_PATH=/opt/toolchains/crosstools-arm-gcc-5.3-linux-4.1-glibc-2.22-binutils-2.25/usr/lib
export TOOLCHAIN_BASE=/opt/toolchains
export PATH=/opt/toolchains/crosstools-arm-gcc-5.3-linux-4.1-glibc-2.22-binutils-2.25/usr/bin:/opt/toolchains/crosstools-aarch64-gcc-5.3-linux-4.1-glibc-2.22-binutils-2.25/usr/bin:/projects/hnd/tools/linux/hndtools-armeabi-2011.09/bin:$PATH
export PATH=/opt/brcm/hndtools-mipsel-linux/bin:/opt/brcm/hndtools-mipsel-uclibc/bin:/opt/brcm-arm/bin:$PATH

I5-2520M在VMWARE下面和J2850在PVE下面的ubuntu虚拟机性能对比

 

J2850 CPU,ITX主板,宿主机安装PVE,然后虚拟UBUNTU系统。

========================================================================
BYTE UNIX Benchmarks (Version 5.1.2)

System: pve-gcc: GNU/Linux
OS: GNU/Linux — 4.15.0-135-generic — #139-Ubuntu SMP Mon Jan 18 17:38:24 UTC 2021
Machine: x86_64 (x86_64)
Language: en_US.utf8 (charmap=”UTF-8″, collate=”UTF-8″)
CPU 0: Intel(R) Pentium(R) CPU J2850 @ 2.41GHz (4640.0 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
CPU 1: Intel(R) Pentium(R) CPU J2850 @ 2.41GHz (4640.0 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
CPU 2: Intel(R) Pentium(R) CPU J2850 @ 2.41GHz (4640.0 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
CPU 3: Intel(R) Pentium(R) CPU J2850 @ 2.41GHz (4640.0 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET
04:08:48 up 1:53, 2 users, load average: 0.08, 0.10, 0.37; runlevel 5


继续阅读

关于插件中显示“当前状态 正在收集数据”的解决办法

实际上是由于自己修改了插件的类别导致luci.dispatcher.build_url无法从原路径返回正确的状态数据导致的。

解决办法,修改services为目前实际类别control即可。

原因估计是我之前看这个菜单位于服务类别里面,感觉很不爽,于是将菜单改到控制类别里,结果忘记全局修改所有的路径导致问题。

在PVE里面安装可以直接升级固件的openwrt系统

众所周知,PVE里面没有办法直接安装openwrt,需要把img文件通过指令转换为pve虚拟机的磁盘,然后添加该磁盘才能使用,这样带来的问题是,如果有了新版本的固件,是没有办法直接升级的,升级完毕后还是原来的固件。

解决办法就是,直接给PVE的磁盘写入img文件而不是通过指令转换img文件为磁盘。

使用OPENWRT的ISO文件,引导系统启动,然后将squashfs-combined.img文件传入tmp目录中,使用dd if=/tmp/op.img of=/dev/sda指令写入磁盘。

然后重启,删除光驱即可。

这样以后升级固件就可以直接在openwrt升级界面刷写了。

PVE里面使用GPT初始化磁盘选项为灰色的解决办法

一台J1900小主机,安装了PVE虚拟化系统玩,很爽,但是随之问题来了。

由于MSATA空间不够,使用一个USB3.0的硬盘盒插了个SSD来扩展存储空间。但是发现USB不方便,不如直接把SSD接在板载的SATA接口上更好,然后关机,在PVE界面删除了之前建立的pve分区。

但是当把SSD接在SATA接口开机后,发现PVE里面无法初始化这个硬盘,GPT初始化磁盘选项为灰色无法选择。这就很抓狂了。

研究了一番,成功解决这个问题,下面记录下步骤,以免后续再用时忘记了。

首先把硬盘放在WIN下面,删除分区并初始化为NTFS格式。插上去后问题依旧,看来不是磁盘格式的问题。

使用vgdispaly指令发现之前建立的group名称usb还在,于是vgremove usb删除这个组,发现问题依旧没有得到解决,但是这一步骤起码是有用的,将废弃的组名删除掉不是坏事。

在shell里面使用fdisk /dev/sdb,先删除之前的分区,然后使用g指令使用gpt格式初始化磁盘。

Create a new label
g create a new empty GPT partition table
G create a new empty SGI (IRIX) partition table
o create a new empty DOS partition table
s create a new empty Sun partition table

然后按w退出,PVE页面的按钮终于可以使用了!

Command (m for help): g
Created a new GPT disklabel (GUID: 1D966722-6637-BB47-AD90-DD3F86941F0D).
The old LVM2_member signature will be removed by a write command.

Command (m for help): p

Disk /dev/sdb: 111.8 GiB, 120034123776 bytes, 234441648 sectors
Disk model: SanDisk SDSSDA12
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 1D966722-6637-BB47-AD90-DD3F86941F0D

搞定收工。

20210209 update

如果格式化为gpt后在web界面该磁盘显示device mapper等字样,重启PVE后应该就可以了。

关于nanopi R2S的一些记录

这个机器看似网上资料很多,实际上要找的东西还是很难找到。这里记录一下。方便自己,方便他人。

首先,ubuntu的固件,root密码是fa,普通用户的用户名是pi,密码也是pi

另外这个机器的下载资源在这里。https://dl.friendlyarm.com/nanopir2s

rk3328-sd-friendlycore-bionic-5.4-arm64-20200707.img这个文件名就是ubuntu 18.04系统

下载后解压,烧写到TF卡里面,插上R2S,启动。路由器网口插在R2S的WAN即可,等待几分钟,去路由器里面看NanoPi-R2S分配的IP就是它,通过ssh登录。

这个机器自带的源有问题,下载不了,我已经更换为中科大的源。

deb http://mirrors.ustc.edu.cn/ubuntu-ports/ bionic main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse

 

 

error: RPC failed; curl 56 GnuTLS recv error (-9): A TLS packet with unexpected length was received.

今天在复制一个代码库的时候报错。

error: RPC failed; curl 56 GnuTLS recv error (-9): A TLS packet with unexpected length was received.
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed

系统使用的是 Ubuntu 18.04.3 LTS (GNU/Linux 4.15.0-111-generic x86_64)

解决办法。

$ sudo apt-get purge git
$ sudo apt-get install git

问题解决。

更新,以上似乎不能根治,下次还会出现。

实际上,由于git默认缓存大小不足导致的。
解决方法是:使用下面的命令增加缓存大小。

git config –global http.postBuffer 2000000000

乐歌升降桌显示AST或者RST,无法升起的问题解决

乐歌升降桌,一次拔电后再插电,控制面板显示AST或者RST字样,无法上升也无法下降。

其实个人认为是RST,因为显示屏使用的是数码管,只能以数字的形式显示字符,所以R和A分不清。

解决方案
RST其实是提醒你升降桌需要还原。
而还原操作其实就是简单的把桌子一直摁着下降按钮,降到最低就可以了。
降到最低之后,你会发现桌子已经恢复了正常。