Linux
文章平均质量分 52
高晓伟_Steven
wx_cangying1988的博客
展开
-
openssl更新至1.1.1l
#!/bin/bash#auth:chenl#version:v1.0#func:openssl 升级# 定义安装目录、及日志信息. /etc/init.d/functions[ $(id -u) != "0" ] && echo "Error: You must be root to run this script" && exit 1log_dir=/root/log/log_file=openssl.logopenssl_url=https://w.原创 2021-11-08 21:14:08 · 660 阅读 · 0 评论 -
linux程序打包和运行脚本
1. 可执行文件 edas2.ldd命令查看需要的依赖库3. 将ldd查询到的所有需要的库导出打包脚本 pack.sh:#!/bin/shexe="edas" #发布的程序名称des="/EDAS" #你的路径(lib文件夹需要自己创建)mkdir -p ${des}mkdir -p ${des}/{output,log} #创建文件依赖的文件夹,可以注掉deplist=$(ldd $exe | awk '{if (match($3,"/")){ printf("%s ".原创 2021-10-17 10:53:02 · 783 阅读 · 0 评论 -
系统裁剪之旅(5)——系统自动安装脚本
前文回顾:我们上一章《系统裁剪之旅(4)——启动克隆后的系统》中完成了使用克隆盘启动系统的操作,本章将会把之前全部的操作囊括到自动化安装脚本当中。以方便后续制作安装盘是使用。本章内容:以脚本的方式实现系统自动化安装。安装脚本:install_system.sh#!/bin/shHD="sda"IType=2cdrom=hdcecho -e "\v\tStart The Installation Of OS7.9 X86_64"echo ""IType=""if [原创 2021-09-22 10:49:36 · 115 阅读 · 0 评论 -
系统裁剪之旅(3)——启动克隆后的系统
前文回顾:我们上一章《系统裁剪之旅(3)——克隆系统》中为虚拟机添加了一块新的硬盘,并将现有系统的“boot”和“rootfs”内容拷贝到了硬盘中。 本章内容:以新硬盘位启动盘,启动克隆后的系统。 操作流程:新建虚拟机1. 在虚拟机主界面按下“Ctrl+N”,再次进入“新建虚拟机向导”,点击“下一步”。2. 选择“稍后安装操作系统”,点击“下一步”。3. 选择对应的系统和版本,点击“下一步”。4. 给虚拟机取个名字,然后点“下一步”。5...原创 2021-09-18 10:15:36 · 256 阅读 · 0 评论 -
系统裁剪之旅(3)——克隆系统
添加硬盘虚拟机关闭的状态下,在对应的虚拟机上点“右键”,选择“设置,”进入“虚拟机设置”。点击“添加”。选择“硬盘”,然后点“下一步”。选择“SCSI”,然后点“下一步”。选择“创建新虚拟磁盘”,然后点“下一步”。这里使用默认选项就可以,直接点击“下一步”。这里也使用默认,然后点“完成”。现在我们的虚拟机就多了一块新的磁盘了,如下图:点击“确定”后,重新打开虚拟机。进入系统后使用“fdisk -l”命令,可以看到多出了一...原创 2021-09-17 16:55:18 · 359 阅读 · 0 评论 -
最小化安装Centos 7快速设置临时IP(无ifconfig)
最小化安装的Centos7,想给系统配置临时IP,启动后发现没有ifconfig命令,好在ip命名是的有,就用它了。首先查看网卡ip a红色框里面的就是网卡名称了。然后给网卡配置ip地址ip addr add ip地址/子网掩码 dev 网卡名称ip addr add 192.168.3.30/24 dev ens33这样就把临时ip配上了注意:如果是虚拟机的话,记得要把网卡模式设置为“桥接”,因为虚拟机默认网卡大多是“NAT”模式,这个模式下虚...原创 2021-09-16 12:00:31 · 2423 阅读 · 0 评论 -
系统裁剪之旅(2)——系统压缩
前文回顾:我们上一章《系统裁剪之旅(1)——虚拟机环境搭建》中详细描述了如何创建了虚拟机,并安装了Centos7操作系统。本章内容:对Centos7系统的“根目录”和“boot”目录进行拷贝。原创 2021-09-16 10:41:07 · 684 阅读 · 0 评论 -
系统裁剪之旅(1)——虚拟机环境搭建
新建虚拟机虚拟机配置在这个界面直接按“Ctrl + N”进入到虚拟机配置界面。这一步我问是要装原始的Centos7操作系统,所以选择“典型”就可以点“下一步”了。这里选择要安装的Centos7 的iso文件,之后点“下一步”。给虚拟机命名,我这里叫“CentOS_7_系统裁剪”,点击“下一步”。这里可以直接使用默认值,然后“下一步”。点击“完成”,进入系统安装。系统安装选择第一项“Install CentOS7”。选择“...原创 2021-09-15 16:12:39 · 359 阅读 · 0 评论 -
python 统计网卡流量并使用udp发送
文章目录server:client:使用方法:server:from socket import *from time import ctimeHOST = ''PORT = 8888BUFSIZ = 1024ADDRESS = (HOST, PORT)udpServerSocket = socket(AF_INET, SOCK_DGRAM)udpServerSocket.bind(ADDRESS) print("waiting for message...")while原创 2021-05-15 09:01:49 · 411 阅读 · 0 评论 -
91发文工具获取图片步骤
目录程序目录获取html内容提取图片urlurl去重并添加域名上传url到数据库程序目录/home/volume/zidongshengchengwejian/scripts获取html内容上传的图片存放在图片库中,选择其中一个目录打开,获取html内容。拷贝内容粘贴到outputHttp下的文件中,文件名随意,建议a,b,c依次延续提取图片urlrm -rf aapython picture.py ./aa ./outputHttp/aa 目录为存放爬取后图片路径的目录ou原创 2021-05-12 15:26:38 · 294 阅读 · 0 评论 -
iptables queue 应用示例
目录简介环境依赖头文件示例测试编译导入模块配置iptables规则ping本机loopback地址启动ipqtest程序简介Linux内核在Netfilter框架的基础上提供了IP Queue机制,从而使得基于用户态的防火墙开发成为可能。从而可以在用户态对报文内容进行分析,同时可以给出对这个报文的处理意见,也可以修改报文。libipq是基于netfilter提供的接口进行二次封装的库,目的是让大家能够更多专注于用户态的数据处理,简化用户态和内核态数据交换流程。环境依赖需要安装libnetfilte原创 2021-04-01 17:24:32 · 1584 阅读 · 0 评论 -
error: libipq.h: No such file or directory 解决方法
yum install -y libnetfilter_queue libnetfilter_queue-devel iptables iptables-devel现在就能找到libipq.h文件了原创 2021-04-01 15:12:50 · 707 阅读 · 0 评论 -
/usr/include/linux/netfilter.h: 错误:‘in’的类型不完全,netfilter_ipv4.h:53: ‘INT_MIN’‘INT_MAX’未声明解决方法
/usr/include/linux/netfilter.h:64:错误:字段‘in’的类型不完全/usr/include/linux/netfilter.h:65:错误:字段‘in6’的类型不完全/usr/include/linux/netfilter_ipv4.h:53:错误:‘INT_MIN’未声明(不在函数内)/usr/include/linux/netfilter_ipv4.h:64:错误:‘INT_MAX’未声明(不在函数内)解决方法:/usr/include/linux/n...转载 2021-04-01 15:06:27 · 334 阅读 · 0 评论 -
iptables/ip6tables数据包根过滤数据包笔记
Iptables下length模块可对数据包的长度进行匹配。length使用参数:-m length --length num #匹配指定大小的数据-m length ! --length num #匹配非指定大小数据-m length --length num: #匹配大于或等于-m length --length :92 #匹配小于或等于-m length --length num:num #匹配指定区间示例:iptables -I INPUT -p icmp -m length --原创 2021-04-01 15:02:25 · 1271 阅读 · 0 评论 -
autoconfiger更新
今天编译开源代码报错:configure.ac:4: error: Autoconf version 2.69 or higher is required。说我的autoconfiger版本太低。升级过程记录一下。升级方法:rpm -qf /usr/bin/autoconfrpm -e --nodeps autoconf-2.63wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gztar -zxvf autoconf-2.69.ta原创 2021-03-18 10:02:45 · 487 阅读 · 0 评论 -
Centos6 yum源设置
yum源失效了阿里云上yum源失效,上网一查才知道,CentOS 6已经停止更新支持,同时官方也把yum源删除了Vault源更换yum源为CentOS的Vault源mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo-backupwget -O /etc/yum.repos.d/CentOS-Base.repo http://file.kangle.odata.cc/repo/Centos-6.repowg原创 2021-03-17 19:14:43 · 4923 阅读 · 6 评论 -
linux下jmeter安装和命令行使用
目录安装JDK下载apache-jmeterjmeter命令行安装JDK下载并解压JDKwget http://download.oracle.com/otn-pub/java/jdk/8u111-b14/jdk-8u111-linux-x64.tar.gztar zxf jdk-8u111-linux-x64.tar.gz -C /usr/local/编辑/etc/profile文件,添加JAVA环境变量,然后保存退出export JAVA_HOME=/usr/local/jdk原创 2021-03-05 11:35:02 · 1215 阅读 · 0 评论 -
FreeBSD开机文件系统出错(automatic file system check failed)
虚拟机装了FreeBSD系统,前几天忽然不能正常启动了。报下面的错误:automatic file system check failed;help!error: aborting boot解决方法倒是不难:/sbin/fsck -y/sbin/mount -a/sbin/reboot有可能需要输入多次/sbin/fsck -y并且重启多次。...原创 2021-01-26 14:55:53 · 506 阅读 · 0 评论 -
ipv6一致性测试(IPv6 Specification)内核修改
目录推荐内核版本REFERENCE测试流程判断标准解决方法内核代码修改推荐内核版本linux-4.19.155下载地址:https://download.csdn.net/download/superbfly/14521687REFERENCERFC 8200 - IPv6 Specification测试流程TN:测试设备NUT:被测设备TN分别发送分片包1和分片包2到NUT,其中分片包1没有包含原始报文全部ip头。NUT设备应该丢弃两个分片报文,并回复ICMPv6 error报文给TN原创 2021-01-19 16:29:51 · 1158 阅读 · 0 评论 -
ipv6一致性测试(Path MTU Discovery for IPv6)内核修改
推荐内核版本:linux-4.19.155REFERENCE:RFC 8201 - Path MTU Discovery for IPv6测试流程:TN2:测试设备TR1:路由(我的理解,可能有偏差)NUT:被测设备TN2发送1400字节长度的Echo Request到NUTTN2判断能否收到NUT回复的Echo Reply消息TR1发送Packet Too Big消息到NUT(MUT为56)TN2再次发送1400字节长度的Echo Request到NUTTN2判读能否收到NUT回复原创 2021-01-18 17:21:39 · 1219 阅读 · 0 评论 -
linux date使用笔记
显示一天后的秒数date -d '+1 day' +%s原创 2020-08-22 15:20:31 · 113 阅读 · 0 评论 -
vimrc设置
"修改注释颜色highlight Comment ctermfg=blue guifg=blue"不使用vi的键盘模式,而是vim自己的set nocompatible"去掉输入错误的提示声音set noeb"在处理未保存或只读文件的时候,弹出确认set confirm"自动缩进set autoindentset cindent"Tab键的宽度set tabstop=4"统一缩进为4set softtabstop=4set shiftwidth=4"不要用空格代替制表.原创 2020-08-14 10:58:43 · 284 阅读 · 0 评论 -
awk 使用笔记
计算文档中第9,10,11列不为空的记录所占的百分比awk -F '|' 'NF>1 {total++; if(length($9)>1)count9++; if(length($10)>1)count10++; if(length($11)>1)count11++;}END{print total, count9/total, count10/total, cou...原创 2020-04-27 09:45:45 · 390 阅读 · 0 评论 -
vim删除空行和注释
删除空行:g/^$/d删除空行以及只有空格的行:g/^\s*$/d删除以 # 开头或 空格# 或 tab#开头的行:g/^\s*#/d对于 php.ini 配置文件,注释为 ; 开头:g/^\s*;/d使用正则表达式删除行如果当前行包含 bbs ,则删除当前行:/bbs/d删除从第二行到包含 bbs 的区间行:2,/bbs/d删除从包...转载 2020-02-19 10:46:31 · 525 阅读 · 0 评论 -
'^X 离开'和M-U 撤销' 该按什么键
Linux系统的文本编辑器和windows还是不太一样,在这里做个简单的记录。^G 求助 ^O 写入 ^W 搜索 ^K 剪切文字 ^J 对齐 ^C 游标位置 M-U 撤销^X 离开 ^R 读档 ^\ 替换 ^U 还原剪切 ^T 拼写检查 ^_ 跳行...原创 2020-01-22 10:39:23 · 10344 阅读 · 0 评论 -
linux 拷贝源文件以及删除失效链接
拷贝链接指向的源文件cp -L 链接文件 目的文件删除失效链接for a in `find . -type l`; do stat -L $a >/dev/null 2>/dev/null; if [ $? -gt 0 ]; then rm -rf $a; fi; done原创 2019-12-20 15:01:23 · 492 阅读 · 0 评论 -
ubuntu18.04安装新版deepin-wine环境
感谢凌风同学参考链接:https://forum.ubuntu.org.cn/viewtopic.php?t=490131#p3217021运行下面这个脚本就可以安转最新的deepin-wine了#!/bin/bashecho "deb [trusted=yes] http://mirrors.aliyun.com/deepin stable main contrib non-...原创 2019-12-12 11:18:22 · 4978 阅读 · 0 评论 -
linux删除两个文件夹下同名的目录和文件
#!/bin/basha=/tmp/to_remove/share/ #文件夹ab=/usr/local/share/ #文件夹bfor i in `ls $a`doecho $ils -l $b/$irm -rf $b/$idone原创 2019-12-02 20:54:05 · 3119 阅读 · 1 评论 -
[Linux]C语言遍历文件和目录
#include #include #include #include #include #include #include #define MAX_PATH_LENGTH 512 #define MAX_FILE_EXTENSION 9 unsigned long visit_dirs = 0; unsigned lon转载 2014-03-06 20:03:12 · 2034 阅读 · 0 评论 -
使用inotify-tools监控Linux下网站文件变动情况
1、下载wget --no-check-certificate http://github.com/downloads/rvoicilas/inotify-tools/inotify-tools-3.14.tar.gz 2、环境预安装yum install gcc 3、编译tar zxf inotify-tools-3.14.tar.gz转载 2014-03-06 10:12:49 · 1808 阅读 · 0 评论 -
Linux操作系统里查看所有用户
1、Linux里查看所有用户 linux里,并没有像windows的net user,net localgroup这些方便的命令来管理用户.Xwindows界面的就不说了. (1)在终端里.其实只需要查看 /etc/passwd文件就行了. (2)看第三个参数:500以上的,就是后面建的用户了.其它则为系统的用户. 或者用cat /etc/passwd |c转载 2014-03-13 10:22:07 · 6402 阅读 · 0 评论 -
inotify -- Linux 2.6 内核中的文件系统变化通知机制
一、 引言众所周知,Linux 桌面系统与 MAC 或 Windows 相比有许多不如人意的地方,为了改善这种状况,开源社区提出用户态需要内核提供一些机制,以便用户态能够及时地得知内核或底层硬件设备发生了什么,从而能够更好地管理设备,给用户提供更好的服务,如 hotplug、udev 和 inotify 就是这种需求催生的。Hotplug 是一种内核向用户态应用通报关于热插拔设备一些事件发转载 2014-03-07 10:40:55 · 888 阅读 · 0 评论 -
使用inotify监视Linux文件变化
#include #include #include #include enum { ACTION_NULL_WD, ACTION_ADD_WD, ACTION_DEL_WD,};int main(int argc, const char **argv){ int err = 0; if (!inotifytools_initialize()) {原创 2014-03-10 10:01:44 · 3342 阅读 · 0 评论 -
Linux下使用inotify监控文件动作
在日常应用中,常常会遇到以下场景,监控文件夹A,若文件夹中的B文件发生变化,则执行C命令。Linux下可以通过inotify完成该功能。自从Linux kernel 2.6.13起,inotify以作为内核的一部份,同时需要glibc 2.4以上版本。1. 相关函数inotify_init() - 创建一个inotify实例inotify_add_watch(int fd,转载 2014-03-10 10:49:15 · 3384 阅读 · 0 评论 -
基于inotify的文件监控方案
最近在做一个linux上的文件监控程序,2.6内核提供了inotify机制,这仅仅是个机制,任何策略都必须自己实现,这一点从inotify不提供递归接口就可以看出来,如果我实时监控到目录被创建,那么马上将这个新目录加入监控表,这个想法是最初的想法,也是最直接的想法,可是仔细推敲一下就会发现这个实现有问题,比如在检测到目录被创建到新目录添加到监控表的时间间隔内,新的子目录的文件事件以及目录事件将被遗转载 2014-03-15 16:48:58 · 1297 阅读 · 0 评论 -
Linux中线程与CPU核的绑定
最近在对项目进行性能优化,由于在多核平台上,所以了解了些进程、线程绑定cpu核的问题,在这里将所学记录一下。 不管是线程还是进程,都是通过设置亲和性(affinity)来达到目的。对于进程的情况,一般是使用sched_setaffinity这个函数来实现,网上讲的也比较多,这里主要讲一下线程的情况。 与进程的情况相似,线程亲和性的设置和获取主要通过下面两个函数来实现:转载 2014-03-15 16:03:45 · 2654 阅读 · 0 评论 -
Linux下去掉^M的方法
第一种方法:cat -A filename 就可以看到Windows下的断元字符 ^M要去除他,最简单用下面的命令:dos2unix filename第二种方法:sed -i 's/^M//g' filename#注意:^M的输入方式是 Ctrl + v ,然后Ctrl + M第三种方法:#vi filename:1,$ s/^M//g^M 输入方法原创 2014-03-15 17:31:23 · 987 阅读 · 0 评论 -
linux C 遍历目录及其子目录 opendir -> readdir -> closedir
1 在linux下遍历某一目录下内容LINUX下历遍目录的方法一般是这样的2 打开目录->读取->关闭目录3 相关函数是opendir -> readdir -> closedir,其原型如下:4 #include 5 DIR *opendir(const char *dirname);6 struct dirent *readdir(DIR *dirp);7 int closedir转载 2014-03-19 16:39:43 · 1758 阅读 · 0 评论 -
CentOS6.4使用YUM安装Adobe Flash Player
安装 Flash Player以管理员身份登录。yum install flash-plugin验証安装安装好后,重新启动FireFox,在地址栏输入【about:plugins】确定 Shockware Flash 是否安装成功并启用。更新 Flash player以管理员身份登录。yum update flash-plugin转载 2014-05-05 16:07:48 · 24878 阅读 · 0 评论 -
linux配置IP的方法
Linux系统下如何设置IP地址?我们可以通过命令设定IP的方法,不过此方法的前提条件是用户需root权限。在Linux系统的 /etc/sysconfig/network-script/ifcfg-eth0文件中存放着网卡IP地址配置的相关信息,它的具体格式为: [root@localhost network-scripts]# cat ifcfg-eth0 DEVICE=et转载 2014-04-04 13:27:07 · 816 阅读 · 0 评论