杂项
文章平均质量分 74
wiggens
这个作者很懒,什么都没留下…
展开
-
vscode 远程linux环境结合makefile 进行gdb调试
之前在linux环境下调试基本使用的都是gdb调试,gdb调试确实挺强大的,但相交windows环境下vs等IDE而言确实不是很方便,之前了解了一个vscode的工具,这个工具是一个轻量级的IDE,可以远程调试linux环境下的程序,可视性以及可用性大大提高了,不需要记gdb命令也可用调试了。现在很多程序都使用makefile进行程序编译,本文根据实际需求,结合nxlog源码来进行vscode linux环境的gdb远程调试环境搭建。本文需要准备vscode远程调试环境,windows 本地安装vsco原创 2021-08-05 15:25:34 · 1928 阅读 · 0 评论 -
Brew 使用初探
第一次使用mac os很多地方都不太适应,记录一下brew初次使用。正文#官网#https://brew.sh/index_zh-cn安装Brew#(具体安装可参考另一篇博文https://mp.csdn.net/console/editor/html/106008876)在终端执行/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"原创 2020-05-08 23:20:00 · 298 阅读 · 0 评论 -
Mac OS brew安装
brew是Mac的一个包管理工具,其功能相当于CentOS的Yum工具,能够方便的安装、卸载、更新软件包brew安装homebrew 执行下面命令,需要有ruby,Mac自带ruby/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"如果出现出现curl 报错拒绝连接,是由于网站网络原因导致,需要切换为国内的脚步地址 /bin/zsh -原创 2020-05-08 23:09:22 · 2549 阅读 · 1 评论 -
Mac 下配置.bash_profile重启后不生效问题解决
Mac 每次都要执行source ~/.bash_profile 配置的环境变量才生效自己在 ~/.bash_profile 中配置环境变量, 可是每次重启终端后配置的不生效.需要重新执行 : $source ~/.bash_profile发现zsh加载的是 ~/.zshrc文件,而 ‘.zshrc’ 文件中并没有定义任务环境变量。解决办法:在~/.zshrc文件最后,增加一行:s...原创 2020-05-07 22:50:00 · 2419 阅读 · 0 评论 -
Mac 终端设置
对于做开发的朋友来说,终端是经常会用到的工具,但是终端的颜色非常单调,看久了眼睛也容易生涩,以下就分享一个修改终端字体颜色的方法。一、修改偏好设置修改完得退出终端(command + q),重新打开才能生效偏好设置里设置的字体颜色是指所有的字体的颜色,如果希望不同文件用不同颜色显示,需执行以下操作二、设置ls颜色说下具体设置过程1 、进入~目录。$ cd ~2、编辑.ba...原创 2020-05-06 00:43:47 · 788 阅读 · 0 评论 -
CentOS 7 firewalld 配置详解 (转)
1.在CentOS 7里有几种防火墙共存:firewalld、iptables、ebtables。默认是使用firewalld来管理netfilter子系统,不过底层调用的命令仍然是iptables等。firewalld跟iptables比起来,不好的地方是每个服务都需要去设置才能放行,因为默认是拒绝。而iptables里默认是每个服务是允许,需要拒绝的才去限制。f...转载 2020-04-26 17:33:33 · 596 阅读 · 0 评论 -
centos7网卡启动异常
问题描述:centos7网络在修改主机名后出现网卡down的情况,ifconfig查看网卡信息发现未正常显示IP地址。重启ntework后网络正常,但过一会网络又发生异常。ifup启动网卡后同样过一会儿又会发生异常。解决:CentOS网络服务有冲突,就是和NetworkManager这个服务冲突了,解决办法如下:关闭NetworkManager服务systemctl sto...原创 2019-10-31 13:47:44 · 834 阅读 · 0 评论 -
CentOS7 上搭建 CDH(6.3.0)
转自:https://www.cnblogs.com/jhxxb/p/11515734.html这里以四台节点搭建IP HostName OS 192.168.8.5 h5(主) CentOS 7.5 192.168.8.6 h6(从) CentOS 7.5 192.168.8.7 h7(从) CentOS 7.5 192.1...转载 2019-10-31 13:39:11 · 399 阅读 · 0 评论 -
e2fsck 错误小记
环境搭配:centos7.5e2fsck version: 1.4.29resize2fs version:1.4.29rc.local 运行脚本中有需扩充LVM空间脚本,其中有两个语句为:/sbin/e2fsck -f /dev/vg/data/sbin/resize2fs /dev/vg/data开机启动运行过程中通过打印信息得知错误原因为e2fsck 执行过程中报...原创 2019-10-17 17:55:48 · 2998 阅读 · 0 评论 -
/proc/sys/vm参数
1.admin_reserve_kbytes 给有cap_sys_admin权限的用户保留的内存数量,默认值是min(free pages * 3%, 8MB)。这些内存是为了给管理员登录和杀死进程恢复系统提供足够的内存。2.block_dump 如果设置的是非零值,则会启用块I/O调试。更多的关于块I/O调试的信息可以参见Documentation/laptops/lapt...转载 2019-06-19 14:05:11 · 422 阅读 · 0 评论 -
tar解压造成目录权限发生变更解决
我用的root用户解压的包,包的拥有者和所属组都是root,但是我tar zxvf xxxxx.tar.gz -C /home之后,出来的包的拥有者和所属组怎么成了拥有者10132,所属组user因为压的时候文件的所有者是user如果要换拥有者,解压的时候给:--no-same-owner如果想解压到其他用户,例如用户xyz:--owner=xyz不给选择等于--same-owner也就...转载 2019-06-19 11:09:15 · 4744 阅读 · 0 评论 -
记一次ssl问题测试
项目中通过ulxmlrpc实现https通信,两个线程分别运行https server端以及https client端。调试过程中发现报错:6240:error:140A90F1:SSL routines:SSL_CTX_new:unable to load ssl2 md5 routines:.\ssl\ssl_lib.c:1804:经排查问题为未进行库导入,需以下代码: SS...原创 2019-06-13 16:55:50 · 950 阅读 · 0 评论 -
linux下如何定位CPU占用高的进程的问题点
一、Top+pstack+gdb的组合拳闲言少述,先直接上操作实例,再做原理讲解。1.1 用top命令找到最占CPU的进程>top PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 22688 root 20 0 1842m 136m 13m S 110.0...转载 2019-06-06 10:41:30 · 574 阅读 · 0 评论 -
GCC 中的编译器堆栈保护技术
GCC 中的编译器堆栈保护技术何 文垒2009 年 5 月 31 日发布WeiboGoogle+用电子邮件发送本页面以堆栈溢出为代表的缓冲区溢出已成为最为普遍的安全漏洞。由此引发的安全问题比比皆是。早在 1988 年,美国康奈尔大学的计算机科学系研究生莫里斯 (Morris) 利用 UNIX fingered 程序的溢出漏洞,写了一段恶意程序并传播到其他机器上,结果造成 6000...转载 2019-05-31 15:28:00 · 785 阅读 · 0 评论 -
如何将GDB中需要的调试信息输出到文件
# (gdb) set logging file <文件名># (gdb) set logging on# (gdb) thread apply all bt# (gdb) set logging off# (gdb) quit详细说明:1、# (gdb) set logging file <文件名>设置输出的文件名称2、# (gdb) set...转载 2019-05-22 18:13:05 · 1776 阅读 · 0 评论 -
记录windows环境下遇到的fatal error C1083:
vs版本2010,代码目录结构如下:其中ulxmlrpc目录下有两个cpp文件xmltok_impl.cpp,xmltok.cpp,两个文件中都包含有#include "stdafx.h"语句,stdafx.h文件位于源文件目录下,单独预处理xmltok_impl.cpp时并不会报错,但是在xmltok.cpp文件中存在#include "xmltok_impl.cpp"语句。在预编译...原创 2019-05-07 16:52:09 · 479 阅读 · 0 评论 -
使用automake工具包建立一个交叉编译的共享库的Makefile
要使用automake工具包建立一个交叉编译的共享库的Makefile这里用的autoconf是2.67版本,在debian下实现:如果版本低,可以用apt-get install automake来装最新的版本,还需要libtool,也需要用apt-get install来安装。这里建立一个简单的函数库来介绍:建立目录rx,及源码目录src:$mkdirrx$mkdir...转载 2019-04-25 15:04:09 · 374 阅读 · 0 评论 -
automake初学
生成Makefile流程图目录结构(所有文件均在同一目录)1、执行autoscan生成configure.scan,执行mvconfigure.scanconfigure.ac编辑configure.ac# Process this file with autoconf to produce a configure script.AC_PREREQ([2.63]...原创 2019-04-25 15:00:31 · 520 阅读 · 0 评论 -
大型项目使用Automake/Autoconf完成编译配置
大型项目使用Automake/Autoconf完成编译配置使用过开源C/C++项目的同学们都知道,标准的编译过程已经变成了简单的三部曲:configure/make/makeinstall,使用起来很方便,不像平时自己写代码,要手写一堆复杂的Makefile,而且换个编译环境,Makefile还需要修改(Eclipse也是这样)。这么好的东东当然要拿来用了,但GNU的Autoto...转载 2019-04-25 14:24:15 · 224 阅读 · 0 评论 -
automake生成静态库和动态库
使用Automake 创建和使用静态库1. 目录结构如下:example|——src 目录(存放源代码文件)|——hello.c|——lib 目录(存放用来生成库的文件)|——test.c 用来生成静态库libhello.a|——include 目录(存放程序中使用的头文件)|——hello.h2. 编写的各个目录下的源文件he...转载 2019-04-25 14:02:38 · 1272 阅读 · 0 评论 -
sysctl 命令
sysctl命令被用于在内核运行时动态地修改内核的运行参数,可用的内核参数在目录/proc/sys中。它包含一些TCP/ip堆栈和虚拟内存系统的高级选项,这可以让有经验的管理员提高引人注目的系统性能。用sysctl可以读取设置超过五百个系统变量。语法:sysctl(选项)(参数)选项 :-n:打印值时不打印关键字;-e:忽略未知关键字错误;-N:仅打印名称;-...转载 2019-06-19 14:14:39 · 2087 阅读 · 0 评论 -
UML类图与类的关系详解
虚线箭头指向依赖;实线箭头指向关联;虚线三角指向接口;实线三角指向父类;空心菱形能分离而独立存在,是聚合;实心菱形精密关联不可分,是组合;上面是UML的语法。在画类图的时候,理清类和类之间的关系是重点。类的关系有泛化(Generalization)、实现(Realization)、依赖(Dependency)和关联(Association)。其中关联又分为一般...转载 2019-06-04 10:55:27 · 161 阅读 · 0 评论 -
处理大并发 使用libevent利器bufferevent
首先来翻译一段文章你可能注意到随着我们代码变得越来越高效,程序也变得更加复杂。当我们产生一个进程的时候,我们没有必要为每一个链接管理一个buffer,我们只需要每个处理独立栈分配缓冲区就可以了。在读和写的时候,我们不必明确的跟踪每一个socket,这在我们的代码里是一个暗示,我们没有必要定义一个结构体去跟踪每一个操作什么时候完成,我们只需要使用循环栈变量就...转载 2019-06-04 16:17:09 · 184 阅读 · 0 评论 -
yum简书
yum history list 列出最近的历史yum history info id 列出某次的详细信息,yum history undo id 撤销某次更改yum history help 查看帮助其中~ 代表软件名1.用YUM安装软件包命令:yum install ~2.用YUM删除软件包命令:yum remove ~1.使用YUM查找软件包 命令...转载 2018-12-27 17:36:08 · 213 阅读 · 0 评论 -
centos7下qemu安装
记一次qemu在centos7环境下安装,centos安装镜像为 centos7.5 x86 18_04一、安装部分依赖组件以及工具yum install git glib2-devel libfdt-devel pixman-devel zlib-devel//for a simple UI instead of VNCyum installgtk3-devel//fo...原创 2019-09-29 15:02:01 · 17653 阅读 · 1 评论 -
windows centos双系统安装
一、首先安装win10操作系统二、安装完成后寻找空间较大的盘符对磁盘进行压缩右击"此电脑"→"管理"→"存储"→"磁盘管理"接下来只要选择你要分出空间的盘,右击压缩卷。这个画红圈的就是设置Linux系统的大小,1024M是1G,根据情况分区三、制作安装U盘下载UItaraISO,制作启动安装盘1、使用UltraISO工具 文件-》打开 选择你的ISO文件...原创 2019-09-27 18:07:29 · 1501 阅读 · 0 评论 -
openssl - 数字证书的编程解析
原文链接:http://www.cangfengzhe.com/wangluoanquan/37.html这篇文章主要介绍PKI公钥体系中非常核心元素——数字证书的编程解析。在SSL,SET等安全协议通信时,数字证书用于通信双方进行身份认证,并且依靠数字证书和非对称加密算法加密传输数据,或者根据数字证书协商通信双方的共享密钥。所以,用户想要开发自己的应用,实现身份认证,必须对数字证书进行解析...转载 2019-07-21 14:05:55 · 568 阅读 · 0 评论 -
CentOS7配置阿里云yum源和EPEL源
1、备份[root@bogon ~]# cd /etc/yum.repos.d/[root@bogon yum.repos.d]# mkdir repo_bak[root@bogon yum.repos.d]# mv *.repo repo_bak/[root@bogon yum.repos.d]# lsrepo_bak2、下载新的CentOS-Base.repo 到/et...转载 2019-07-11 15:55:34 · 464 阅读 · 0 评论 -
Grub2资料
GRUB 2 is the default boot loader and manager for Ubuntu since version 9.10 (Karmic Koala). As the computer starts, GRUB 2 either presents a menu and awaits user input or automatically transfers contr...转载 2019-07-04 17:11:27 · 403 阅读 · 0 评论 -
grub2详解(翻译和整理官方手册)
本文原创地址在博客园:https://www.cnblogs.com/f-ck-need-u/archive/2017/06/29/7094693.html翻译了grub2官方手册的绝大部分内容,然后自己整理了一下。因为内容有点杂,所以章节安排上可能不是太合理,敬请谅解。本人译作集合:http://www.cnblogs.com/f-ck-need-u/p/7048359.ht...转载 2019-07-04 17:08:44 · 3840 阅读 · 0 评论 -
Linux 开机引导和启动过程详解
你是否曾经对操作系统为何能够执行应用程序而感到疑惑?那么本文将为你揭开操作系统引导与启动的面纱。理解操作系统开机引导和启动过程对于配置操作系统和解决相关启动问题是至关重要的。该文章陈述了GRUB2 引导装载程序开机引导装载内核的过程和systemd 初始化系统执行开机启动操作系统的过程。事实上,操作系统的启动分为两个阶段:引导boot和启动startup。引导阶段开始于打开电源开关...转载 2019-06-27 14:02:58 · 302 阅读 · 0 评论 -
改变kvm镜像大小和使用已经存在的镜像
在这个知识点我们将会用到以下工具:qemu-img losetup tune2fs e2fsck kpartx fdisk resizefs下面步骤演示我们如何添加空间到先前创建好的raw格式的镜像,扩展root分区和扩展系统镜像。我们的目标是从10G扩展到20G。(1)首先获取镜像目前大小root@kvm:# qemu-img info debian.imgimage...转载 2019-06-27 15:30:58 · 802 阅读 · 0 评论 -
如何在Ubuntu下使用TF/SD 卡制作Exynos 4412 u-boot启动盘
/********************************************************************************* @author Maoxiao Hu* @version V1.0.1* @date Feb-2015*********************************************...转载 2019-06-27 15:29:30 · 383 阅读 · 0 评论 -
Linux启动流程和grub详解
还记得Windows的启动流程吗?相信大家能说出来个大概,为什么说出个大概呢,因为Windows是图形界面启动的,但是开机过程都做了什么,你知道吗,相反,Linux启动的时候,会把这些加载到屏幕上面显示,那接下来我们来看看Linux启动都发生了些什么把!!!Linux启动流程图简解开机启动流程当用户打开电源后,BIOS开机自检,确定启动设备,安装启动设备启动设...转载 2019-06-27 14:05:06 · 636 阅读 · 0 评论 -
Makefile 静态模式
静态模式最近看Makefile,正常依赖没什么问题,但是遇到一些特殊的符号就有点不明白了,例如:$(objects): %.o: %.c、$<之类的。最近看了篇文章写的不错,贴出来供大家分享。静态模式可以更加容易地定义多目标的规则,可以让我们的规则变得更加的有弹性和灵活。我们还是先来看一下语法:<targets ...>: <target-pattern>...转载 2019-04-29 17:39:39 · 363 阅读 · 0 评论 -
Linux下OpenSSL客户端中使用req命令来生成证书
openssl req 用于生成证书请求,以让第三方权威机构CA来签发,生成我们需要的证书。req 命令也可以调用x509命令,以进行格式转换及显示证书文件中的text,modulus等信息。如果你还没有密钥对,req命令可以一统帮你生成密钥对和证书请求,也可以指定是否对私钥文件进行加密。1、密钥、证书请求、证书概要说明在证书申请签发过程中,客户端涉及到密钥、证书请求、证书这几个概念,初学...转载 2019-04-29 16:47:10 · 563 阅读 · 0 评论 -
openssl 命令行使用
OpenSSL 是一个开源项目,其组成主要包括一下三个组件: openssl:多用途的命令行工具 libcrypto:加密算法库 libssl:加密模块应用库,实现了ssl及tls openssl可以实现:秘钥证书管理、对称加密和非对称加密。 1、对称加密对称加密需要使用的标准命令为 enc ,用法如下: 1...转载 2019-01-18 10:16:10 · 1675 阅读 · 0 评论 -
AES openssl 常用API
OpenSSL提供了AES加解密算法的API const char *AES_options(void);AES算法状态,是全部支持或者是部分支持。返回值:“aes(full)” 或者"aes(partial)" int AES_set_encrypt_key(const unsigned char *userKey, const int bits,AES_KEY *key...转载 2019-01-02 17:40:10 · 225 阅读 · 0 评论 -
AES原理学习
AES是一个对称密码,旨在取代DES成为广泛使用的标准。一、AES的加密过程 二、AES的数据结构加密解密算法的输入是一个128位分组。这些分组被描述成4×4的字节方阵,这个分组被复制到state数组中,并在加密和解密的每一阶段都被修改。在字节方阵中,每一格都是一个字,包含了4字节。在矩阵中字是按列排序的。 加密由N轮构成,轮数依赖于密钥长度:16字节密钥对应10轮...转载 2019-01-02 10:41:31 · 2864 阅读 · 0 评论 -
x86与i386、i486、i586、i686等
一、x86与i386、i486、i586、i686等 x86或80x86是英特尔Intel首先开发制造的一种微处理器体系结构的泛称。 该系列较早期的处理器名称是以数字来表示,并以“86”作为结尾,包括Intel 8086、80186、80286、80386以及80486,因此其架构被称为“x86”。由于数字并不能作为注册商标,因此Intel及其竞争者均在新一代处理器使用...转载 2019-01-11 14:11:53 · 651 阅读 · 0 评论