linux
文章平均质量分 52
V__KING__
这个作者很懒,什么都没留下…
展开
-
linux coredump调试信息
ulimit -c 2097152echo 1 > /proc/sys/kernel/core_uses_pidecho "/usr/local/coredump/core-%e-%p-%t" > /proc/sys/kernel/core_patterngdb /usr/local/coredump/core-11-11-11 main.exe原创 2021-12-14 13:51:20 · 927 阅读 · 0 评论 -
TCP keepalive保活心跳机制,python和linuc c
TCP keepalive保活心跳,必须在server端和client端都设置keepalive机制。因为有发送心跳包,就必须有接收心跳包。两边都需要设置。python之linux和windows区别原创 2021-10-27 16:42:51 · 1626 阅读 · 0 评论 -
QEMU用户模式ARM仿真 - qemu-arm-static
https://blog.csdn.net/yanceylu/article/details/108570423嵌入式开发有时会在ARM设备上使用ubuntu文件系统。开发者常常会面临这样一个问题,想预先交叉编译并安装一些应用程序,但是交叉编译的环境配置以及依赖包的安装十分繁琐,并且容易出错。想直接在目标板上进行编译和安装,但是ARM的资源和处理能力有限,会非常耗费时间。在这里给大家推荐一个ubuntu下好用的工具qemu-arm-static,这是QEMU用户模式下的ARM仿真器。通过qemu-arm原创 2021-10-15 13:53:22 · 1064 阅读 · 0 评论 -
Linux软连接和硬链接
Linux软连接和硬链接,一个经常傻傻分不清楚的概念,现在我们仔细理一理。1.Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。【硬连接】硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一原创 2021-09-07 10:25:15 · 763 阅读 · 0 评论 -
一键安装和配置git
1 编写脚本install_git.sh在脚本中修改你的git_email和git_namegit_email=vk.gmail.comgit_name=vksudo apt-get install git << EOFy1EOFsudo apt-get install meldsudo touch ~/.git-credentialssudo echo "" > ~/.gitconfigsudo cat << EOF >>~/.gitco原创 2021-05-16 21:47:46 · 372 阅读 · 0 评论 -
ubuntu nfs服务一键安装和配置-嵌入式开发
1. 添加脚本install_nfs.sh根据需要修改脚本的nfs_share_dir目录nfs_share_dir=/home/vk/nfs_sharesudo apt install nfs-kernel-serversudo cp /etc/exports.bak /etc/exportssudo cp /etc/exports /etc/exports.baksudo cat << EOF >> /etc/exports${nfs_share_dir} *(原创 2021-05-16 16:00:15 · 171 阅读 · 0 评论 -
ubuntu脚本一键安装和配置samba共享服务
根据实际情况修改脚本里的samba_username, samba_password, samba_share_dir。原创 2021-05-16 15:02:56 · 1065 阅读 · 0 评论 -
udev的秘密
http://www.reactivated.net/writing_udev_rules.htmlhttp://www.cnitblog.com/luofuchong/archive/2007/12/18/37831.htmludevudev是会根据sysfs来在/dev目录下创建设备节点。sysfs:是什么呢?sysfs是在/sys目录下的东西,比如 /sys/class/block/sda,比如/sys/class/rtc/rtc0/device/rtc/rtc0udev是一种新的原创 2021-04-08 08:43:22 · 146 阅读 · 0 评论 -
udev详解-选择默认的rtc
http://www.reactivated.net/writing_udev_rules.htmlhttp://www.cnitblog.com/luofuchong/archive/2007/12/18/37831.htmludevudev是会根据sysfs来再/dev目录下创建设备节点。sysfs:是什么呢?sysfs是在/sys目录下的东西,比如 /sys/class/block/sda,比如/sys/class/rtc/rtc0/device/rtc/rtc0udev是一种新的原创 2021-01-07 19:32:39 · 589 阅读 · 0 评论 -
内核调试方法
内核调试,需要两个linux 的系统:一个用来调试,一个用来被调试。在没有硬件设备情况下,这里给出两种方案:双机调试ubuntu + Qemu调试双机调试可以使用两个虚拟机,其中一台虚拟机作为被调试的对象。双机调试比较通用,但是相对来说比较复杂。https://bbs.pediy.com/thread-249192.htmQEMU+GDB内核调试https://zhuanlan.zhihu.com/p/105069730...原创 2021-01-05 13:24:23 · 270 阅读 · 0 评论 -
rttys反向代理
go介绍go安装下载源码解压后有一个go目录将go目录mv到/usr/local将/usr/local/go/bin加入到环境变量,vi /etc/profile环境变量GOROOT: 设置成/usr/local/go即可GOPATH: 设置一个go项目的的工作目录。go install/go get和 go的工具等会用到GOPATH环境变量.GOPATH是作为编译后二进制的存放目的地和import包时的搜索路径 (其实也是你的工作目录, 你可以在src下创建原创 2020-10-25 21:41:25 · 1121 阅读 · 1 评论 -
嵌入式wifi - wpa_cli命令
创建ap创建一个wifi热点名为vk_point,密码为:88888888的。命令需要将invengo所有的命令,shell脚本,库都集中到一起。库invengo的库都放在/usr/local/lib_invengo目录下vi /etc/ld.so.conf.d/invengo.conf执行的shell和bin/usr/local/invengo/binwifi stasion 模式注意:要想让 /etc/wpa_supplicant.conf 文件重启后生效,必须保原创 2020-09-28 16:05:42 · 1569 阅读 · 0 评论 -
connman网络管理
Connman是管理嵌入式设备联网的守护进程,集成了大量的通信功能. Connman是一个完全模块化的系统,可以通过插件化进行扩展,以支持各种有线或无线技术.安装后,发现这个connman和systemd-networkd一样也分配了ip,使用connmanctl命令disable后会失去网络连接。原创 2020-09-28 16:01:29 · 955 阅读 · 0 评论 -
shell脚本linux修改mac地址
修改mac地址编辑/etc/init.d.rcS在/sbin/ifconfig lo 127.0.0.1 up 前面加上下面三行:/sbin/ifconfig eth0 down/sbin/ifconfig eth0 hw ether 00:1D:78:12:34:58/sbin/ifconfig eth0 up修改mac地址修改下面3个命令:将mac地址’11:11:11’替换成需要你需要的mac地址:sed -i “/127.0.0.1 up/i/sbin/ifconfig eth原创 2020-09-10 21:17:24 · 1204 阅读 · 0 评论 -
linux NTP时间同步
参考:https://linux.cn/article-8091-1.html注意下面几个命令和文件:timedatectlvi /etc/systemd/timesyncd.conf在最新的 Ubuntu 版本中,timesyncd 替代了 ntpd 的客户端的部分。默认情况下 timesyncd 会定期检测并同步时间。它还会在本地存储更新的时间,以便在系统重启时做时间单步调整。通过 timedatectl 和 timesyncd 设置的当前时间状态和时间配置,可以使用 timedatectl原创 2020-08-11 10:23:26 · 6268 阅读 · 0 评论 -
ubuntu配置DHCP和静态ip
参考:http://www.jinbuguo.com/systemd/systemd.network.html注意,网络设备的Network文件必须以 .network 作为后缀名,否则将被忽略。 一旦与Network文件匹配的网卡出现,对应的Network文件就会立即生效。Network文件分别位于: 系统网络目录(/usr/lib/systemd/network)、 运行时网络目录(/run/systemd/network)、 本机网络目录(/etc/systemd/network)。 所有的Net原创 2020-08-11 10:14:50 · 468 阅读 · 0 评论 -
cmake - 如何生成grpc的*.pb.cc和*.pb.h文件
cmake_minimum_required(VERSION 2.6)set(EXE proto_depend)project(${EXE})set(GNU_FLAGS "-std=c++11")set(CMAKE_CXX_FLAGS "${GNU_FLAGS} ")set(CMAKE_C_FLAGS "${GNU_FLAGS} ")# Proto fileget_filename_component(hw_proto "./protos/helloworld.proto" ABSOLU原创 2020-07-13 23:45:43 · 1623 阅读 · 0 评论 -
avahi-autoipd实验
avahi-autoipd的link-local实验参考:https://developer.apple.com/library/archive/qa/qa1357/_index.html前提:windows上安装Bonjour服务 和Bonjour软件linux设备上有avahi的服务windows下面命令二选一:route add 169.254.0.0 mask 255.2...原创 2020-04-29 14:08:28 · 2070 阅读 · 0 评论 -
linux将MAC地址设置到hostname
linux将MAC地址设置到hostname/etc/hostname/etc/hostname是可以让主机名永久生效的,当然有一个默认值:localhost.localdomain。(默认值时,主机名不生效的,如你的hostname为ubuntu,但是/etc/hostname为localhost.localdomain)hostname命令临时生效,重启之后,主机名为/etc/host...原创 2020-04-28 20:43:58 · 494 阅读 · 0 评论 -
avahi服务的使用
avahi服务的使用avahi服务,是符合zoreconf的标准的,zoreconf是苹果公司搞出来的一个零配置协议。自动生成可用IP地址的网络技术,不需要额外的手动配置和专属的配置服务器。背景: 配置ip是个技术活,对于不懂it的人来讲,配置ip太难了。特点:动态分配ip可以使用域名访问域名只能再局域网内使用需要安装:苹果公司的Bonjour服务,安装前往苹果官网。对没错...原创 2020-04-28 20:36:11 · 8037 阅读 · 0 评论 -
linux 设置代理
Ubuntu 16.04设置全局代理export http_proxy='http://192.168.7.134:8088'export https_proxy='https://192.168.7.134:8088'export ftp_proxy='hhttp://192.168.7.134:8088'export no_proxy='localhost,127.0.0.1'ub...原创 2020-04-27 15:53:42 · 291 阅读 · 0 评论 -
shell 命令
对Untracked的文件进行删除# grep -A 4表示显示匹配行After后4行git st|grep Untracked -A 4|egrep -A 2 "^#$"|xargs rm -rf原创 2019-10-16 13:12:38 · 427 阅读 · 0 评论 -
convert enum to string-in-c
https://stackoverflow.com/questions/9907160/how-to-convert-enum-names-to-string-in-cOne way, making the preprocessor do the work. It also ensures your enums and strings are in sync.#define FOREACH_F...原创 2019-10-16 10:36:58 · 304 阅读 · 0 评论 -
nginx php mysql 安装
nginx php mysql 安装安装1.安装nginx获取nginx,在http://nginx.org/en/download.html上可以获取当前最新的版本。解压缩nginx-xx.tar.gz包。 进入解压缩目录,执行./configure make & make install安装php5: sudo apt-get install原创 2015-11-23 10:57:48 · 565 阅读 · 0 评论 -
samba服务错误:Starting SMB/CIFS File and Active Directory Server. [FAIL]
出现错误:Starting SMB/CIFS File and Active Directory Server. [FAIL]现象:samba服务两次启动,其中有一次没有起来显示fail方案一:sudo rm /etc/init/samba-ad-dc.conf方案二:echo manual |sudo tee /etc/init/samba-ad-dc.override...原创 2018-09-27 12:21:51 · 2140 阅读 · 0 评论 -
使用互斥锁mutex实现信号量sem
/* ======================== SYNCHRONISATION ========================= *//* Init semaphore to 1 or 0 */ void bsem_init(bsem *bsem_p, int value) { if (value &lt; 0 || value &gt; 1) { er...原创 2018-09-03 16:48:40 · 781 阅读 · 0 评论 -
技术类网站
http://www.wowotech.net/x_project/libusb_on_windows.html原创 2018-07-27 14:18:54 · 701 阅读 · 0 评论 -
一个客户端快速频繁的连接服务器:Cannot assign requested address
背景机制: 1. 一个tcp服务器,端口1234;服务器限定只能维持一个tcp连接。该tcp服务器是原先已有的。 2. 一个web服务器,使用tcp客户端连接tcp server的1234端口。一个post请求对应一次[tcp client连接tcp server:1234],完成post请求后,断开该tcp连接。 问题现象: 当其中一个web页面中有多个ajax的post请求时,t...原创 2018-06-29 18:36:19 · 1784 阅读 · 0 评论 -
线程的同步与互斥(死锁的产生和避免)
参考:http://blog.51cto.com/2627lounuo/1765473加锁在公共的函数中加入了互斥锁死锁上面谈论到加锁和解锁,试想,如果一个线程连续两次申请锁,当其第一次申请的时候获得了这把锁,而第二次申请的时候因为锁被占用着会挂起等待,而占用这把锁的正是自身,那么该线程将永远不会释放锁而会一直处于挂起等待的状态。如果线程A获得了一把锁,线程B获得了另一原创 2018-01-08 13:34:19 · 443 阅读 · 0 评论 -
linux 关于GMT, CST, UTC的编程和设置
了解UTC,GMT,时间戳1、UTC/GMT: GMT=UTCUniversal Time Coordinated 协调世界时,又称世界标准时间多数的两地时间表都以GMT来表示,但也有些两地时间表上看不到GMT字样,出现的反而是UTC这3个英文字母,究竟何谓UTC?事实上,UTC指的是Coordinated Universal Time- 世界协调时间(又称世界标准时间、世界统一时原创 2018-01-12 18:11:14 · 1722 阅读 · 0 评论 -
问题:内存对齐、sizeof计算的字节数不对
1. 脑补内存对齐:百度https://baike.baidu.com/item/%E5%86%85%E5%AD%98%E5%AF%B9%E9%BD%90/9537460?fr=aladdin2. 实验一下:编译如下的c文件:使用命令gcc main.c#include <sys/types.h>#pragma pack(1)typedef struct _CmdRfidReset { /原创 2017-12-26 20:01:53 · 750 阅读 · 0 评论 -
Vmware Unity模式
Vmware Unity模式安装VMware Toolsudo add-apt-repository ppa:gnome3-team/gnome3sudo apt-get install gnome-shell虚拟机重启在用户登陆界面选择Gnome Classic - No Effects桌面原创 2017-01-22 17:09:15 · 2628 阅读 · 1 评论 -
appweb-esp原理
安装:按照 https://www.embedthis.com/esp/doc/start/quick.html 进行安装makeme,类似于makefile的编译管理Pak ,包管理软件,类似于apt-getExpansive ,静态layout的,类似于go语言中的一些静态打包程序。编译并且运行esphttps://www.embedthis.com/esp/doc/start...原创 2018-11-08 00:25:01 · 1522 阅读 · 0 评论 -
函数指针数组-奇思妙用
笔者在开发某软件过程中遇到这样一个问题,前级模块传给我二进制数据,输入参数为 char* buffer和 int length,buffer是数据的首地址,length表示这批数据的长度。数据的特点是:长度不定,类型不定,由第一个字节(buffer[0])标识该数据的类型,共有256(28 )种可能性。我的任务是必须对每一种可能出现的数据类型都要作处理,并且我的模块包含若干个函数,在每个函数里面都...转载 2018-12-28 13:28:17 · 211 阅读 · 0 评论 -
如何在可执行文件中加上版本信息
1. 有一种方式是通过objcopyversion.o:version objcopy -I binary -O elf32-i386 -B i386 version version.o# $(CROSS_COMPILE)objcopy -I binary -O elf32-littlearm -B arm version version.o最简单的方式//注意一定要加上一个sta...原创 2019-02-19 18:41:17 · 1426 阅读 · 0 评论 -
linux ssh自动部署脚本expect
shell scp 批量执行命令expectexpect用于自动化地执行linux环境下的命令行交互任务,例如scp、ssh之类需要用户手动输入密码然后确认的任务。有了这个工具,定义在scp过程中可能遇到的情况,然后编写相应的处理语句,就可以自动地完成scp操作了单个服务器scp任务文件名: expect_scp#!/usr/bin/expect ...原创 2019-10-09 00:16:20 · 257 阅读 · 0 评论 -
C/C++之 快速编写单元测试或测试程序
在编写嵌入式linux应用的时候,我们一个系统中单单只是想要测试或者验证一个函数时, 往往有很多的依赖,如以来的*.c、.cpp、.h文件。如果不把这些头文件包括进来,或者确少其他的C/C++模块,编译器会报错。接下来介绍一种很方便,可以很快速的进行一个单元测试,或者很快的进行一个测试程序的编写的方法。其实方法很简单,定义一个宏就可以。快速单元测试方法单元测试(unit testing)...原创 2019-09-02 20:04:23 · 1932 阅读 · 0 评论 -
NFS和tftp服务器安装
为petalinux安装NFS和tftp服务器NFS启动tftp配置安装tftp-serversudo apt-get install tftpd-hpasudo apt-get install tftp-hpa(如果不需要客户端可以不安装)tftp-hpa是客户端tftpd-hpa是服务器端配置TFTP服务器sudo vim /etc/default/tftpd-hpa...原创 2019-07-15 18:43:30 · 368 阅读 · 0 评论 -
petalinux快速开始
petalinux快速开始搭建环境查看文档:ug1144-petalinux-tools-reference-guide201901.pdf下载有关PetaLinux源码和工具:https://www.xilinx.com/support/download/index.html/content/xilinx/en/downloadNav/embedded-design-tools.html...原创 2019-07-15 18:37:36 · 512 阅读 · 0 评论 -
Petalinux从QSPI Flash booting
背景:使用对象:linux开发人员。如果只是开发linux端的应用或者内核,其实是可不用xilinx SDK软件的。1. xilinx SDK 软件的有些功能不能用,在创建Application的时候出错。2. 没有JTAG调试器从QSPI Flash booting参考:ug1165-zynq-embedded-design-tutorial.pdf查找:Booting Linux ...原创 2019-07-12 19:20:56 · 822 阅读 · 2 评论