自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(115)
  • 资源 (2)
  • 收藏
  • 关注

原创 bpftrace对icmp进行监控,查看icmp包是哪个进程发出的

apt install bpftrace#!/usr/bin/bpftrace#include <linux/skbuff.h>#include <linux/ip.h>#include <linux/udp.h>#include <linux/socket.h>kprobe:__dev_queue_xmit{ //获取调用次数 @dev_queue_xmit[tid]=count(); @skb[tid]=(struct sk_buff

2022-05-13 15:09:48 570

原创 kdump核心崩溃信息存储到SSH服务器

1、配置测试机和SSH服务器之间的免密钥登录:测试机生成密钥#ssh-keygen -t rsa将/root/.ssh/id_rsa.pub中的内容拷贝到SSH服务器的/root/.ssh/authorized_keys文件中,并修改文件权限为600;2.、编辑测试机的/etc/kdump.conf,注释其他内容,并在文件末尾添加:ssh [email protected] sshkey /root/.ssh/id_rsa path /sshkdump core_collect

2022-04-14 09:21:59 750

原创 linux鼠标键盘监控整理

linux鼠标键盘监控整理一、监控鼠标键盘设备#include <sys/types.h>#include <fcntl.h>#include <stdlib.h>#include <time.h>#include <stdio.h>#include <unistd.h>#include <linux/input.h>#include <pthread.h>#include <time.

2021-11-26 15:08:23 2545 6

原创 chronyd与ntpd冲突问题分析

一、文档说明系统为麒麟v10sp1-arm-0711(源自openEuler,centos7好像也有相同的现象)。chronyd和ntp同时开机自启的情况下只有chronyd生效,本文主要说明chronyd比ntp优先级高的原理机制。二、问题分析2.1 查看服务状态左边使用systemctl status ntpd,查看ntpd状态;右边使用 systemctl status chronyd,查看chronyd状态。2.2 查看服务配置使用systemctl status ntpd查看,ntp

2021-10-20 09:29:03 3417 2

原创 xfs文件系统修复问题

xfs文件系统修复问题问题背景系统版本为kylin-sp1-20200711。现场断电后无法挂载逻辑卷。此逻辑卷为用户数据盘、挂载提示文件系统超级块;无法修复文件系统,文件系统修复时报错。问题修复使用命令xfsrepair -L /dev/磁盘名 进行修复,发生如下报错。错误提示:bad hash table for directory inode 4297253387 points to non-existent inode 38655360025.xfs_repair: phase6

2021-09-18 13:58:53 2219

原创 audit日志重复保存

一、当前环境Kylin Linux Advanced Serverrelease V10 (SP1) /(Tercel)-aarch64-Build04/20200711Kylin Linux Advanced Serverrelease V10 (SP1) /(Tercel)-aarch64-Build20/20210518二、问题描述Centos: audit 服务启动状态下,只会 /var/log/audit/audit.log 会记录 audit的信息Kylinos: 在 audit

2021-09-10 10:35:14 1310 2

原创 fanotify监控文件使用案例及输出操作的进程名和PID

#define _GNU_SOURCE#include <errno.h>#include <fcntl.h>#include <limits.h>#include <stdio.h>#include <stdlib.h>#include <sys/types.h>#include <sys/fanotify.h>#include <sys/stat.h>#include <unistd.

2021-08-19 16:47:14 1143 1

原创 使用Docker的NFS-Ganesha镜像搭建nfs服务器

NFS-Ganesha3镜像的说明及使用文章目录NFS-Ganesha3镜像的说明及使用一、NFS-Ganesha的简介二、NFS-Ganesha的配置三、NFS-Ganesha容器的使用3.1 NFS-Ganesha的服务端搭建3.2 NFS-Ganesha的客户端使用四、参考资料一、NFS-Ganesha的简介​ NFS-Ganesha是一个用户态的支持NFS协议(NFSv3/NFSv4,NFSv4.1)的文件服务器,它为Unix和类Unix的操作系统提供了FUSE(Filesystem in

2021-08-17 15:32:40 1202

原创 pxe使用nfs安装的时候提示 NFS over TCP not available from ip done.Unable to find a live file system on

pxe装机 提示NFS over TCP not available from 10.11.97.5done.Unable to find a live file system on the network 需要修改 tftp中的grub.cfg文件set default=0set timeout=3set color_normal=white/blackset color_highlight=black/light-graymenuentry "Install Kylin-D.

2021-07-13 11:19:47 1462

原创 bpftrace对udp及内核函数dev_queue_xmit及sk_buff的解析

bpftrace对udp及内核函数dev_queue_xmit及sk_buff的解析#!/usr/bin/bpftrace#include <linux/skbuff.h>#include <linux/ip.h>#include <linux/udp.h>#include <linux/socket.h>kprobe:ip_finish_output2{ // 获取ip_finish_output2函数的调用次数 @ip_finish_

2021-06-17 17:27:26 568 2

原创 r8168网卡在同方超翔z8307机器V10版本无法上网问题

r8168网卡在同方超翔z8307机器V10版本无法上网问题一、基础环境硬件环境软件环境第三方软件超翔z8307麒麟V10无龙芯网卡为RTL8168二、问题描述清华同方超翔z8307机器,龙芯mips芯片,网卡为RTL8168,之前安装的中标v7系统没有此问题后续升级到kylin V10系统出现如下问题联网之后ping www.baidu.com 提示如下,360浏览器访问百度一直转圈。使用手机usb共享网络测试没有问题,猜测是不是板载网卡或者

2021-06-10 14:05:56 959

原创 Linux的Python文件的开头/usr/bin/env python与/usr/bin/python

Linux的Python文件的开头/usr/bin/env python与/usr/bin/python还是有点区别的开头为#!/usr/bin/env python例如 dstat命令,当/usr/bin/dstat的开头为#!/usr/bin/env python时使用 ps -eo stat,pid,comm | grep dstat查找是找不到的,因为comm是Python。开头为#/usr/bin/python例如 dstat命令,当/usr/bin/dstat的开头为#!/usr/bi

2021-03-29 14:15:08 720

原创 C语言检测连接网卡状态

C语言检测连接网卡状态​ 有些客户程序里面的代码需要自己检测网卡状态,检查是否连接网线。需要提供函数给他们调用,检测网卡连接状态。//在<linux/ethtool.h>头文件中存在结构体`ethtool_value`,用于存放网卡连接状态。/* for passing single values */struct ethtool_value { __u32 cmd; __u32 data; // 表示网卡连接状态。};// 在<li

2021-02-05 08:58:14 3085

转载 gcc与glibc关系

gcc与glibc关系glibc是什么,以及与gcc的关系?glibc是gnu发布的libc库,也即c运行库。glibc是linux 系统中最底层的api(应用程序开发接口),几乎其它任何的运行库都会倚赖于glibc。glibc除了封装linux操作系统所提供的系统服务外,它本 身也提供了许多其它一些必要功能服务的实现,主要的如下:(1)string,字符串处理(2)signal,信号处理(3)dlfcn,管理共享库的动态加载(4)direct,文件目录操作(5)elf,共享库的动态加载器,

2021-01-28 10:44:10 4458

原创 c++ 开发Libreoffice,libreoffice在linux下sdk环境配置

切换到root用户下1.aptinstalllibreoffice-dev2.cd/usr/lib/libreoffice/sdk3.设置环境变量./setsdkenv_unix4.根据rdb数据文件反射生成C++头文件,由于sdk附带的C++头文件太少,按需生成头文件。基于UNO组件的反射机制,使用uno工具来生成这些头文件。执行:cppumaker-Gc-O"/usr/lib/libreoffice/sdk/include""/usr/lib/libreo...

2020-12-22 17:16:28 2219 5

原创 linux qt程序root用户执行,无法输入中文

添加环境变量 setenv("XMODIFIERS", "@im=fcitx", 1); setenv("QT4_IM_MODULE", "xim", 1); setenv("QT_IM_MODULE", "xim", 1); setenv("GTK_IM_MODULE", "xim", 1);例如#include "mainwindow.h"#include <QApplication>#include <stdio.h>#include

2020-12-14 18:41:22 1394 2

原创 非阻塞connect卡select问题分析

非阻塞connect卡select问题分析目录非阻塞connect卡select问题分析一、connect原理1.1阻塞与非阻塞connect的区别1.2 connect函数超时时间二、select原理三、问题原因4.1 select的第四个参数建议加上。4.2 select的第五个参数timeout的大小建议。4.3 fd的多线程操作一、connect原理1.1阻塞与非阻塞connect的区别为解决阻塞connect等待耗时过长,最长等待127秒问题,企

2020-11-23 09:37:05 1298

原创 systemV信号量的使用案例

systemV信号量处理的函数有:semget();semctl();semop();函数semget函数#include<sys/sem.h>int semget(key_t _key ,int _nsems,int _semflg);说明解释功能创建一个新的信号量或获取一个已经存在的信号量的键值。返回值成功返回信号量的标识码ID;失败返回-1。参数解释_key为整型值,用户可以自己设定。有两种情况:1、 键值是IPC

2020-11-13 14:43:55 390

原创 linux qt4的qcombobox下拉框,在窗口管理器,开启复合效果后,会跑偏问题

1. 下载qt4的源码这里使用的是qt4.8.6网址,http://download.qt.io/archive/qt/4.8/4.8.6/,下载qt-everywhere-opensource-src-4.8.6.tar.gz。2. 编译qta.解压将qt-everywhere-opensource-src-4.8.6.tar.gz放入/opt目录下tar -zxvf qt-everywhere-opensource-src-4.8.6.tar.gzb.生成Makefilecd qt-ev

2020-10-27 09:14:14 449

原创 linux系统没有声音,插耳机也没有声音

设置默认声卡双声卡问题原因英伟达声卡驱动不对。硬件选择为英伟达声卡设置默认使用声卡设备vim /etc/asound. conf加入下列defaults. ctl. card 0defaults. pcm. card 0defaults. timers. card 0#0为设备号,可在/proc/asound下查看到reboot重启输入命令alsamiter ,调大调小声音...

2020-10-26 16:50:54 1964

原创 RAC故障处理,Agent 或者mdnsd.bin, gpnpd.bin, gipcd.bin 未运行

现象分析使用命令查看init服务情况# crsctl stat res -init -t可见,mdnsd.bin,gpnpd.bin,gipcd.bin等所有服务都是OFFLINE,未运行。查看日志,mdnsd.log,对比正常的日志,for the home后面未显示路径。根据现象,查询资料,可得问题:Agent或者mdnsd.bin,gpnpd.bin,gipcd.bin未运行症状:1.orarootagent未运行....

2020-10-26 13:46:12 642

原创 窗口管理器及复合效果设置

以设置marco为例第一步:查看窗口管理器gsettings get org.mate.session.required-components windowmanager 第二步:设置窗口管理器gsettings set org.mate.session.required-components windowmanager "marco" 第三步:重启reboot第四步:查看窗口管理器gsettings get org.mate.session.required-components.

2020-10-26 11:26:18 1279

原创 编译驱动及iso镜像替换megaraid_sas驱动

iso镜像替换megaraid_sas驱动一、问题分析服务器ThtinkSystem SR650,RAID适配器为ThinkSystem RAID930-16i 4G。安装Kylin-4.0.2-server-sp2-18011911.J1-x86_64.iso系统失败,显示未探测到磁盘驱动器。Kylin-4.0.2-server-sp2-18011911.J1-x86_64.iso的内核版本为4.4.58-20171113.kylin.5.all-generic安装centos7.6或者使用具有l

2020-09-29 17:28:21 4838

原创 创建进程到极限,资源不足

#include <stdio.h>#include <unistd.h> int main(int argc, char *argv[]){ int i=0; int pid; while(1) { pid = fork(); if(pid == 0) { break; } else if(pid == -1) {

2020-09-28 14:34:23 232

原创 FT2000+ 64K内存页系统chromium无法渲染问题

FT2000+ 64K内存页系统chromium无法渲染问题64KB内存页为65536Byte,以2为底取对数为16。修改PageAllocator.h,将kPageAllocationGranularityShift改为16,kSystemPageSize改为65536。修改PartitionAlloc.h,将kPartitionPageShift改为18。以2为底取对数为16 + 2。修改Heap.h,将blinkPageSizeLog2改为21。以2为底取对数为16 + 5。手动修改修改P

2020-09-25 15:23:17 796 6

原创 实时核多线程性能低问题分析

实时核多线程性能低问题分析一、核介绍核核名标准核3.10.0-862.1.ky4.x86_64实时核3.10.0-1127.rt56.1093.ky4.x86_64二、性能测试使用./Run -c 4进行测试指标名标准核分数实时核分数System Benchmarks Index Values13375.712690.9Double-Precision Whetstone2474.22499.2Execl Throughp

2020-09-11 09:21:11 712 1

原创 linux查找僵尸进程

ps -A -ostat,ppid,pid,cmd | grep -e '^[Zz]'

2020-08-26 16:24:03 409

原创 linux的system和popen函数执行系统命令

linux的systme和popen函数执行系统命令,system和popen都是阻塞的,子命令进程运行结束才会返回。

2020-08-26 11:37:59 364

原创 系统启动卡在 `fb:conflicting fb hw usage nouveaufd vs VESA VGA-removing generic driver`无法进入系统

系统启动卡在fb:conflicting fb hw usage nouveaufd vs VESA VGA-removing generic driver无法进入系统grub 引导时加入nomodeset或加入 nouveau.modeset=0 nouveaufb.modeset=0

2020-08-25 15:33:41 1360 1

原创 根分区变成只读

根分区或boot分区变为只读 mount -o rw,remount / mount -o rw,remount /boot

2020-08-25 11:11:45 866

原创 生成run文件,进行安装

tar -zcvf 需安装文件夹.tar.gz 需安装文件夹以Multiple为例,vim install.sh#!/bin/bashlines=17tail -n +$lines $0 > /tmp/Multiple.tar.gztar zxvf /tmp/Multiple.tar.gz -C /opt/cp /opt/Multiple/lib/* /usr/lib/ln -s /usr/lib/libmul.so.1 /usr/lib/libmul.sochmod a+x /

2020-08-25 11:04:41 643

原创 linux关闭和开启swap分区

linux关闭和开启swap分区查看已开启的swap分区lmz@X280-1:~$ swapon NAME TYPE SIZE USED PRIO/dev/dm-1 partition 976M 253M -2关闭swap分区lmz@X280-1:~$ free -h 总计 已用 空闲 共享 缓冲/缓存 可用内存: 7.7Gi 5.6Gi 158Mi

2020-08-21 15:35:23 13172

原创 Linux进入救援模式

在grub界面,按e,加console=tty0 systemd.unit=rescue.target查看更多开机信息,把rhgb splash quiet去掉。

2020-08-12 14:44:27 437

原创 Linux设置开机默认进入命令行或者图形界面

开机默认进入命令行模式:sudo systemctl set-default multi-user.target开机默认进入图形用户界面:sudo systemctl set-default graphical.target

2020-08-12 14:04:59 4862

原创 初步认识并行计算openmp

openmpopenmp是一种内存共享的并行计算解决方案,用于单台多核计算机,采用fork-join多线程进行并行计算。为用户提供了编译指导语句和运行时库函数。MPI 则是非内存共享的并行计算解决方案,用于计算机群,多台计算机并行计算。案例1openmp.c文件内容如下,使用 gcc -fopenmp openmp.c -o openmp进行编译。#include<stdio.h>#include"omp.h"int main(int argc, char * argv[]

2020-08-11 15:50:02 380

原创 linux制作U盘win10启动盘

使用开源软件WoeUSB制作win10启动盘。1. 获取WoeUSB源码git clone https://github.com/slacka/WoeUSB.git2. 配置依赖$./setup-development-environment.bash$ sudo apt-get install devscripts equivs gdebi-core$ cd <WoeUSB source tree directory, the folder that contains the `src

2020-08-07 16:33:36 1646

原创 linux查看CPU使用情况的命令

mpstat命令使用 mpstat -P ALL 1@X280:~/test$ mpstat -P ALL 1 1Linux 5.4.0-37-generic (X280) 2020年06月22日 _x86_64_ (8 CPU)14时43分16秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle14时43分17秒 all 3.44 0.00 2.67

2020-06-22 15:39:19 646

原创 Linux配置某个IP做网关

服务端开启IP转发sudo vim /etc/sysctl.conf# Uncomment the next line to enable packet forwarding for IPv4# 去掉#号net.ipv4.ip_forward=1立即生效sysctl -p 设置iptables规则iptables -t nat -A POSTROUTING -j MASQUERADE若出现can't initialize iptables table nat': Tab

2020-06-19 16:34:54 584

原创 Linux中udp的丢包分析

wireshark分析tcp的丢包比较简单,因为可以分析重发次数,和响应;分析udp的丢包,需要分析带序号的报文,RTP报文,可以分析丢包情况;若是分析iperf的udp包,没法分析出丢包来。网上说可以使用watch netstat -su查看丢包统计。主要看RcvbufErrors和SndbufErrors,packet receive errors。丢包原因:发送端:1. 发送的包太大,2.发包速度太快,3.udp包流量太大,发送缓冲区又太小。接收端:接收缓冲区太小使用 sysctl -a

2020-06-18 17:17:43 1487

原创 Ubuntu永久修改主机名

修改/etc/hostname,/etc/hostssudo vim /etc/hostname写入新的主机名 machine1sudo vim /etc/hosts添加或修改两行127.0.0.1 localhost127.0.1.1 machine1

2020-06-11 11:19:31 312

testDictionary.tar.gz

c语言的dictionary库,用于键值对保存与查找,使用字符串为key,指针为value;方便在c语言中通过字符串查找指针。

2020-04-28

cJsonTest.tar.gz

C语言使用cjson库解析json的案例,自己在cjson的基础上封装了几个接口,放在common.c中,以供调用

2020-04-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除