自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 Linux由默认语言导致的uniq命令重复计数错误

背景今天遇到一件比较奇怪的事,同一个文件在统计重复行时出现了不同的结果,手动执行时去重后有2.5w+,放到crontab中执行,去重后居然有2.9w+。分析查看文件内容,发现文件中有一些特殊字符,猜想和系统设置的语言相关,于是测试了一下,[root@localhost ~]# export LC_ALL=""[root@localhost ~]# cat /tmp/myfile | so...

2018-12-29 16:50:52 616

原创 Linux系统调用流程——open函数从用户态接口到内核

注:本文分析基于3.10.0-693.el7内核版本,即CentOS 7.4,glibc版本为glibc-2.17-196.el7_4.21、关于系统调用linux内核其实可以看做是一个大型应用,其提供的接口就称之为系统调用。而我们平时经常用的open、close、read、write等函数,其实并不是linux提供的系统调用,而是glibc提供的接口,它封装了linux的相关系统调用,以一个...

2018-12-29 10:37:48 4013 1

原创 gcc编译报错: /usr/bin/ld: cannot find -lc

背景在64位机器上编译32位可执行程序,出现以下报错,[root@CentOS-7-4 /home/syscall]# gcc -g -static -m32 open.c -o open32/usr/bin/ld: cannot find -lccollect2: error: ld returned 1 exit status解决方案这其实是因为缺少32位相关编译环境,需要安装g...

2018-12-27 21:01:48 1784

原创 Linux X86架构参数传递规则

背景突然好奇x86架构下函数参数怎么传递的,之前只是听别人说过通过寄存器,但是怎么传,什么顺序都没有仔细研究过,也没有实际测试过,因此就想着用实践来检验一下咯。传参顺序在32位和64位机器上,寄存器名称不同,64位机器为rxx,32位机器为exx。传参顺序如下,64位系统有16个寄存器,32位系统只有8个。e开头的寄存器命名依然可以直接运用于相应寄存器的低32位。而剩下的寄存器名则是从r...

2018-12-27 16:18:01 8325

原创 fatal error: gnu/stubs-32.h: No such file or directory

背景在64位系统上编译32位可执行程序时出现报错,[root@CentOS-7-2 /home/register]# gcc -g -m32 test.c -o testIn file included from /usr/include/features.h:399:0, from /usr/include/stdio.h:27, ...

2018-12-27 15:53:27 8449 2

原创 Linux使用audit审计用户执行命令

注:本文基于CentOS 6.5编写

2018-12-19 17:45:08 9678

原创 Linux使用snoopy记录命令执行日志

注:本文基于CentOS 6.5编写1、关于snoopysnoopy是一个开源的轻量级lib库, 可以记录系统中所有执行过的命令和参数。它是以预加载(preload)的方式实现历史命令的记录。 通过封装execv()和execve()系统调用,在发生这两个系统调用的时候记录下所需要的信息。2、安装在CentOS 6.5系统上可以直接通过yum方式安装,如果没有对应的rpm包也可以直接用源码...

2018-12-18 18:05:22 2946 1

原创 Linux使用PROMPT_COMMAND环境变量记录用户操作日志

注:本文基于CentOS 6.5 编写1、关于PROMPT_COMMAND环境变量Bash在显示PS1之前先执行PROMPT_COMMAND定义的内容,而PS1也就是linux的命令提示符,关于PS1详细设置可参考:Linux 提示符后面显示全路径。我们可以先感受一下PROMPT_COMMAND的功能效果,如果要显示命令执行的时间,可以如下操作。[root@CentOS-6-5 /]# e...

2018-12-18 16:14:45 12322

空空如也

空空如也

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

TA关注的人

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