Linux C
BruvinLu
这个作者很懒,什么都没留下…
展开
-
关于ubuntu16.04 ssh免密登录遇到的问题
1、安装ssh serversudo apt install openssh-server2、修改/etc/ssh/sshd_config文件AuthorizedKeysFile 将#去掉3、在~.ssh下新增authorized_keys4、将电脑(或者其他机器)的id_rsa.pub内容拷贝到authorized_keys5、重启sshdsudo service sshd restart6、连接ssh root@ip这里你会发现还是需要输入密码!!!7、...原创 2020-12-02 19:36:37 · 590 阅读 · 2 评论 -
linux数据结构-队列操作
数据结构队列操作在保证数据稳定、有序的传输方面是很有用的,通过有序的出队和入队操作来完成数据先后的过程。记录一下。。。。。。。。。链式队列实现例子:#include <stdio.h>#include <stdlib.h>#include <stdbool.h>#include <string.h>#include <e...原创 2019-01-06 14:26:49 · 543 阅读 · 1 评论 -
数据结构-FIFO
本次写的例程是关于FIFO管道的非阻塞读写操作。不多说上代码。。。。fifo_write.c#include <stdio.h>#include <stdlib.h>#include <unistd.h>#include <string.h>#include <fcntl.h>#include <errno....原创 2019-01-06 20:18:20 · 659 阅读 · 1 评论 -
经典c面试题-解答
1、数组a[N],1-N-1这N-1个数存放在a[n]中,其中某个数重复一次,找出重复数字,时间复杂度必须是O(n)int do_dup(int a[],int n){ int i,count=0,tmp=a[0]; int result = -1; for (i=1;i<n;i++) { ...原创 2019-03-18 21:19:06 · 9266 阅读 · 2 评论 -
MD5withRSA实现签名与验签
MD5以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组级联后将生成一个128位散列值。该方法加密是不可逆的过程,就是说只能加密不能解密(除了被破解的情况)。RSA加密是非对称加密,其使用加解密的秘钥是分开的。加密后得到的是一串二进制字符串,通常需要将其进行base64编码再传输。以下是代码:RS...原创 2019-04-23 15:02:35 · 4545 阅读 · 1 评论 -
AES加密
AES是对称加密算法,使用同一个秘钥进行加解密。以下直接上代码:AES.H#ifndef __AES_H#define __AES_H#include <stdio.h>#include <stdlib.h>#include <string.h>#include <unistd.h>#include <openssl/...原创 2019-04-23 15:16:56 · 212 阅读 · 0 评论 -
优酷路由器刷openwrt固件一
1、下载openwrt源码https://git.openwrt.org/?p=openwrt/openwrt.git;a=shortlog;h=refs/tags/v18.06.22、解压tar xvfopenwrt-a02809f.tar进入根目录root@bruvin-lu:~/openwrt-18.06.2# lsbin config ...原创 2019-06-07 18:59:49 · 9979 阅读 · 0 评论 -
优酷路由器-openwrt学习二
在openwrt源码中开发自己的应用程序1、这里通过创建一个mqtt client作为测试程序,目录结构如下root@bruvin-lu:~/openwrt-18.06.2/package/utils/MQTT-Client# lsCMakeLists.txt files include Makefile src2、files目录存放的是程序自启动脚本文件mqtt....原创 2019-06-09 23:03:08 · 850 阅读 · 0 评论 -
json-c移植到arm开发板的问题总结
1、下载json-c源码git clone https://github.com/json-c/json-c.git2、解压进入根目录3、./autogen.sh ./configure CC=arm-linux-gcc --host=arm-linux --prefix=/usr/local4、将json-c的库文件copy到arm开发板上5、错误1: 运行...原创 2019-07-08 10:52:27 · 1465 阅读 · 0 评论 -
ubuntu下搭建samba服务
1、安装samba依赖库apt-get install libtalloc22、安装sambaapt-get install samba3、更改配置备份:cp /etc/samba/smb.conf /etc/samba/smb.conf.bak修改:/etc/samba/smb.conf[global]force user = rootforce g...原创 2019-08-07 19:24:23 · 195 阅读 · 0 评论 -
linux c数据结构-内核链表
注意:来自Linux内核链表头文件!头文件代码list.h(代码就不分析了,网上很多。)#ifndef _LIST_H#define _LIST_H#include <string.h>/* * * This is a simple doubly linked list implementation that matches the * * way the L...转载 2019-01-06 12:22:33 · 362 阅读 · 1 评论 -
git命令相关总结
github仓库的创建请看:https://www.linuxidc.com/Linux/2017-11/148628.htm仓库的创建做一下记录:点击右上角settings -> SSH and GPG keys -> new sshkeys在ubuntu下运行: ssh-keygen -t rsa -C "youremail@example.com"cd /...原创 2018-11-21 19:08:20 · 275 阅读 · 0 评论 -
opencv画图
#include <opencv2/opencv.hpp>#include <iostream>#define WINDOW_NAME1 "绘制图1"#define WINDOW_NAME2 "绘制图2"#define WINDOW_WIDTH 600using namespace std;using namespace cv;//在一张图像上绘制椭圆vo...转载 2018-03-01 08:48:18 · 167 阅读 · 0 评论 -
Linux踩坑记
1、创建带有版本号的动态库生成example.o文件gcc -c -fPIC example.c 生成libexample.so.1.1.1动态库文件gcc -shared -o libexample.so.1.1.1 example.o 创建软连接ln -s libexample.so.1.1.1 libexample.so.1ln -s libexample.so.1 ...原创 2018-07-03 19:13:24 · 239 阅读 · 0 评论 -
linux下使用libcurl库开发http请求客户端
一、运用开源库libcurl开发http请求客户端,实现文件上传和字符串发送的功能/********************************************************* Copyright(C)*** author Lu GuoFu*** date 2018-07-25*******************************************...原创 2018-07-25 15:38:04 · 4881 阅读 · 0 评论 -
Linux C单链表
#include <stdio.h>#include <stdlib.h>#include <stdbool.h>#include <unistd.h>#include <string.h>typedef struct node{ char *deviceID; char *meteID; int value; s...原创 2018-08-09 23:35:37 · 542 阅读 · 0 评论 -
openwrt学习一
使用git下载openwrt:git clone git://github.com/openwrt/openwrt.gitopenwrt常用库:https://github.com/openwrt/packages更新安装配置:cd openwrt./scripts/feeds update -a./scripts/feeds install -aopenwrt配置...原创 2018-10-11 18:40:59 · 786 阅读 · 0 评论 -
ubus安装+开机自启动ubusd
安装教程来自以下:安装ubus:https://segmentfault.com/a/1190000012061795安装json-c,libubox:https://segmentfault.com/a/1190000012017022安装ubus之前需要先安装json-c,再安装libubox,最后安装ubusubus下载:git clone git://nbd.name...转载 2018-09-30 16:02:00 · 2365 阅读 · 0 评论 -
Openwrt系统中luci学习
1.Luci采用的是MCV框架,即是model,controller,view.在烧录了编译了luci的openwrt系统中,可以找到lua/luci陌路下的MCV三个目录.其中model是抽象层,可以通过cbi开发基于框架下的界面;controller是控制层;而view则是界面层用来存放htm文件,自己设计的界面.2.在开发中有几种模式,一是修改原有的系统界面,这个我没有修改,因为原有的已...原创 2018-10-22 11:04:00 · 2245 阅读 · 0 评论 -
ubus例程server+client交互通信
server.c#include <stdio.h>#include <signal.h>#include <unistd.h>#include "ubus_server.h"#include "event.h"struct event ev;struct event_base *main_base;void myfunc(const i...原创 2018-11-13 16:44:43 · 1444 阅读 · 0 评论 -
在ARM开发板上搭建sshd环境(呕血历程)
安装按照这个博客:https://blog.csdn.net/u013711616/article/details/53044918zlib-1.2.8.tar.gz openssl-0.9.8d.tar.gz openssh-5.6p1.tar.gz 资料已打包,见下:https://download.csdn.net/download/gg101001/10778115资料的编...原创 2018-11-11 19:05:40 · 1985 阅读 · 0 评论 -
Linux C基本知识点总结
Linux C基本知识点总结1、calloc(num,size)和 malloc(size)的区别次要区别是:calloc带有两个参数,可以分配num块size大小的内存而malloc则是分配一个size大小的内存,没有做到那么细致主要区别:calloc函数分配内存空间会初始化内存但是malloc不会。2、是使用const和define定义常量区别(1)、define...原创 2018-01-07 15:37:02 · 1720 阅读 · 0 评论