linux tool
tiantao2012
这个作者很懒,什么都没留下…
展开
-
使用rasm2 将机器码转成汇编
[root@localhost ~]# yum install radare2-4.5.0-1.el8.aarch64Last metadata expiration check: 0:00:54 ago on Thu 06 May 2021 05:29:17 AM EDT.Dependencies resolved.============================================================================================.原创 2021-05-06 19:03:24 · 582 阅读 · 0 评论 -
centos 上安装phoronix-test-suite
1009 yum install php-cli php-xml -y 1010 wget https://github.com/phoronix-test-suite/phoronix-test-suite/archive/v9.8.0.tar.gz -O phoronix-test-suite-9.8.0.tar.gz 1011 tar -zxvf phoronix-test-suite-9.8.0.tar.gz 1012 cd phoronix-test-suite-9.8.0 10.原创 2020-12-07 15:49:43 · 1458 阅读 · 1 评论 -
perf stat 中event和rxx的对应关系
perf event 的实现在linux/arch/arm64/kernel/perf_event.c中例如static const unsigned armv8_pmuv3_perf_map[PERF_COUNT_HW_MAX] = { PERF_MAP_ALL_UNSUPPORTED, [PERF_COUNT_HW_CPU_CYCLES] = ARMV8_PMUV3_PERFCTR...原创 2020-05-06 18:32:48 · 1066 阅读 · 0 评论 -
sshfs的使用
可以用下列命令在ubuntu上将远端的文件夹同步到本地sudo sshfs -o allow_other,IdentityFile=~/.ssh/id_rsa tao@192.168.1.101:/home/tao/open-user/kernel /home/tao/linux如果提示下面的错误fuse: mountpoint is not emptyfuse: if you a原创 2017-02-25 10:07:56 · 3174 阅读 · 0 评论 -
iostat
一般使用iostat来找出系统的瓶颈在cpu还是io。通过使用man iostat 可以看到iostat的帮助文件一般主要关注iowait和idle,如果iowait 过高说明瓶颈在io,如果idle过高,则说明系统很闲原创 2017-03-08 16:49:09 · 530 阅读 · 0 评论 -
ldd
要查看一个程序依赖的so文件可以用ldd命令,ldd 命令后面必须根这个程序的绝对路径,一般先用which 找到这个程序的绝对路径然后再用ldd命令查看。ldd的结果分三列第一列:程序依赖库的名字第二列:系统提供库的名字第三列:库加载的开始地址。原创 2017-03-09 10:55:22 · 2012 阅读 · 0 评论 -
size
通过size 可以查看一个可执行bin的text/data/bss 段的大小,如果size 后面跟的不是可执行bin,则会报错。当然也可以通过man size查询size详细的使用方法查看一个可执行bin:其中的dec=1902(text)+552(data)+8(bss)查询非可执行bin:其中text 一般是只读,代表代码段。data 表示依据能够被初始化的静态原创 2017-03-09 15:33:13 · 768 阅读 · 0 评论 -
readelf
readelf 可以用于分析文件格式,可以分析的文件包括.o/bin/.so可以通过man readelf 得到详细的使用信息.可以通过readelf -h 得到elf header信息,就可以知道这个文件运行的平台,主要关注machine字段.可以通过-S查询这个文件是否包含debug的段原创 2017-03-09 17:19:09 · 909 阅读 · 0 评论 -
nm
nm命令用于显示指定文件中的符号信息。可以通过man nm 看到详细的信息原创 2017-03-10 15:08:27 · 471 阅读 · 0 评论 -
parted/fdisk/blkid(如何把整个盘分成一个区)
1:首先用fdisk -l 看找到你要mount的盘的size,这里以/dev/sdb为例。Size == 3.7TB2:如果盘的size 超过2T请用parted 分区,小于2T 可以使用fdisk,这里以parted为例.格式化盘.3:使用parted 分区:parted /dev/sdb4:输入mkpart命令,start输入1,end输入387973原创 2017-03-23 11:23:33 · 3551 阅读 · 0 评论 -
如何把一个盘剩余的空间分成一个区
1:首先用fdisk -l 看找到你要分盘的总size,这里以/dev/sdf为例。Size == 3.7TB2:输入parted 命令看看当前这个盘已经分好的区的start和end3:输入mkpart命令,start输入100G(这个是上一个区的结束的地址),end输入3879731M(3.7T/1024/10244:退出parted后,再次输入fdisk原创 2017-03-23 14:14:56 · 3850 阅读 · 1 评论 -
iso 只能被mount成只读?
使用 sudo mount -o loop Estuary.iso ./iso/ 可以将iso mount到当前目录iso使用 umount ./iso 可以unmout掉原创 2017-04-10 09:21:06 · 2846 阅读 · 0 评论 -
stat
stat 用于显示文件或者文件系统的状态例如用stat grubaa64.efi 就可以看到文件的大小等信息原创 2017-04-10 11:48:27 · 730 阅读 · 0 评论 -
hotplug cpu后用lscpu检查是否cpu真的被hotplug了
通过lscpu 可见看到系统cpu的信息,包括online和offline的cpu。通过echo 0 >> /sys/devices/system/cpu/cpu10/online 可以offline cpu。可以用echo 1 >> /sys/devices/system/cpu/cpu10/online 来online cpu原创 2017-04-06 10:28:32 · 954 阅读 · 0 评论 -
测试某个tty设备是否可用
通过echo 命令直接往/dev/ttyN 设备写字符,可以显示的话,就说明这个tty设备可用。例如下图中就可以看到/dev/ttyAMA0这个设备可用,而/dev/tty0 这个设备不可用原创 2017-05-03 10:35:18 · 2076 阅读 · 0 评论 -
hostname
通过hostname 可以知道当前用的发行办的名字,通过hostname -i 可以知道当前机器的ip地址原创 2017-05-12 10:31:18 · 960 阅读 · 0 评论 -
ifconfig
ifconfig 用于显示有ip地址的网络端口,而ifconfig -a 用于显示所有的网络端口,-a是all的意思原创 2017-05-12 10:43:04 · 720 阅读 · 0 评论 -
df -h
df -h 可以查看当前磁盘使用的情况,如果没有mount则看不到原创 2017-05-12 16:47:23 · 952 阅读 · 0 评论 -
findmnt
findmnt 命令拥有查找挂载的文件系统。如果系统有多个硬盘的话,可以很方便发现系统是从哪个硬盘起来的,例如这里就是从/dev/sdb2起来的.原创 2017-05-12 16:57:31 · 636 阅读 · 0 评论 -
whoami and id -ru
通过whoami 和id -ru 可以判断当前用户是否是root用户1:root 用户执行的情况2:非root 用户原创 2017-05-12 17:11:03 · 569 阅读 · 0 评论 -
wget
建议使用wget 的时候加上-c这个参数,如果下载由于某些原因中断了,再执行一边命令,就会在上次已经下载的基础上继续下载,例如上次下载到8%,当再次开始的时候还是从8%开始,而不会从0重新开始下载.例如下例中,第一次下载1%后,按cttl+c 停止后,重新执行wget命令会从1% 继续下载.原创 2017-05-04 16:52:06 · 758 阅读 · 0 评论 -
du and df
du 是disk usage的简写,用du -h可以查看某个目录的size ,-m 表示以兆为单位表示原创 2017-05-24 10:47:27 · 698 阅读 · 0 评论 -
who and w
通过who命令可以查看有谁登录这台机器,例如下面这个就说明有两个root 用户登录,一个是从串口终端ttyS0登录,一个是通过伪串口pts/0 登录的,具体是通过ssh 在192.168.1.107上登录的.原创 2017-05-16 14:54:16 · 665 阅读 · 0 评论 -
tty命令查看当前用的是哪个console在显示
使用tty命令查看当前用的是哪个console在显示原创 2017-05-05 10:33:29 · 9990 阅读 · 0 评论 -
tar
tar 命令可以解压和压缩。一般压缩用tar -zcvf file.tar DirName.而解压用 tar -zxvf file.tar需要注意的是解压的时候,解压后的目录名就是压缩的目录名,和file.tar 这个压缩后的名字没啥关系。如下例子所示:原创 2017-05-24 16:40:48 · 845 阅读 · 0 评论 -
fg/bg/jobs
如果执行dd if=/dev/zero of=/dev/null bs=10M count=100000 这个命令的话,cpu就会100%的被站住,当然你可以通过添加&,也就是dd if=/dev/zero of=/dev/null bs=10M count=100000 & 让这个命令后台执行。如果没有家&的话,这个命令就会占满当前cpu,只是可以通过ctrl+z 暂停这个命令,这个时候通过原创 2017-05-15 17:05:28 · 560 阅读 · 0 评论 -
watch命令重复执行某一个命令
通过watch -n 1 可以每一秒都执行后面的echo hello.执行效果如下:实际测试watch 后面的命令可以用双引号,也可以不用原创 2017-05-16 10:16:40 · 2761 阅读 · 0 评论 -
wc
wc 用于统计文件中的lines/words/bytes 等,在shell中经常用grep processor /proc/cpuinfo | wc -l 来统计有多少个cpu原创 2017-05-17 16:06:19 · 568 阅读 · 0 评论 -
md5sum
通过md5sum 可以计算文件的md5值,这样可以比较文件是否被篡改.原创 2017-05-17 16:13:12 · 792 阅读 · 0 评论 -
lscpu
lscpu 用于查询cpu相关信息原创 2017-05-09 16:27:36 · 1402 阅读 · 0 评论 -
lsusb
lsubs 命令用于列出当前系统的usb 设备,包括host的详细信息原创 2017-05-09 16:25:29 · 1148 阅读 · 0 评论 -
blkid
blkid 用于显示系统硬盘分区的情况原创 2017-05-09 17:34:44 · 3787 阅读 · 0 评论 -
lspci
lspci 用于列出系统中所有的pcie设备,lspci -tv 用于列出pcie的层级关系原创 2017-05-10 09:35:20 · 1962 阅读 · 0 评论 -
fdisk -l
fdisk -l 用于列出系统硬盘分区的情况,已经总的size等等的详细情况原创 2017-05-10 09:37:33 · 951 阅读 · 0 评论 -
lsblk
lsblk 用于显示硬盘个个分区的详细信息。原创 2017-05-10 11:46:02 · 1318 阅读 · 0 评论 -
rpm
可以通过rom -ivh ×××.rpm 来安装rpm build的命令有很多,我一般用下面的命令build这样会差生两个包这两个rpm包中包含的内容可以从kernel.spec 中看到.一般情况下kernel-header 源文件,,一般用kernel这个rpm包原创 2017-05-20 17:34:56 · 795 阅读 · 0 评论 -
zypper 添加本地源
原创 2017-06-01 10:38:50 · 4222 阅读 · 0 评论 -
通过dmesg | tail 看insmod ko时输出的log
平时通过insmod ko的时候,不输出log,所以没办法看ko中输出的log,但是通过dmesg | tail 可以看到.原创 2017-06-01 16:43:28 · 2837 阅读 · 0 评论 -
通过rpm -qf 可以查看某个文件输入哪个rpm包
通过rpm -qf 可以查看某个文件输入哪个rpm包。举例如下:原创 2017-05-22 10:56:07 · 1983 阅读 · 0 评论 -
解压rpm包
通过rpm2cpio 将rpm包转成cpio后在通过cpio -div 解压。参考如下:原创 2017-05-22 15:52:26 · 855 阅读 · 0 评论