草庐IT

Tina_Linux_syslog

全部标签

linux环境配置kafka

下载软件首先先下载kafka的包,kafka是apache基金会的一部分,官网下载我原本下载的是最新的3.6.0,但是部署时发生了错误,所以回退到了2.6.0版本安装包名:kafka_2.13-2.6.0.tgz,其中2.13是scala版本,因为kafka是用scala语言写的,2.6.0是kafka的版本tar-xvzfkafka_2.13-2.6.0.tgz把压缩包放到local目录解压然后cd进入cdkafka_2.13-2.6.0可以看到压缩包内总共有这些内容:其中etc是我新建的,不属于压缩包bin里都是.sh文件,存放kafka的常用脚本config里都是.properties文

Linux之进程(四)(进程地址空间)

目录一、程序地址空间二、进程地址空间1、概念2、写时拷贝3、为什么要有进程地址空间四、总结一、程序地址空间我们先来看看下面这张图。这张图是我们在学习语言时就见到过的内存区域划分图。 下面我们在Linux下看一看内存区域是不是也是这么划分的。可见在Linux下也是符合上面的分布的。那么下面我们来看看下面的代码: 上面的代码中用fork函数创建了一个子进程,其中让子进程相将全局变量g_val该从100改为200后打印,而父进程先休眠3秒钟,然后再打印全局变量的值。按我们之前所学的来说子进程打印的全局变量的值为200,而父进程是在子进程将全局变量改后再打印的全局变量,而且全局变量在整个程序中应该只有

Linux环境下安装部署单机RabbitMQ(离线)

摘要本文档适用于在Linux系统下部署单体RabbitMQ,是在无网的情况下部署的。涉及的任何操作都是通过手动下载安装包然后上传到服务器上进行安装,因此也遇到一些问题,并在此文档中记录。实际操作环境:KylinV10,实际操作的Linux系统是银河麒麟。根据我安装的过程,觉得适用于所有Linux的操作系统。一、准备环境1.确认目前服务器上是否有gcc的环境命令:gcc-v如出现如图所示,如果出现gcc版本信息及其他相关信息,则说明已经有gcc环境了,跳过后续安装gcc步骤;若没有则需要安装。2.安装gcc、g++离线安装阿里云盘下载地址:https://www.aliyundrive.com/

Linux中cut和paste命令的用法详解

本文将详细介绍Linux命令行中的cut和paste命令,包括命令的基本用法、常见选项和实例演示。cut命令用于从文本中剪切字段,而paste命令则用于合并文本。通过学习这两个命令,您将能够更高效地处理和编辑文本文件。1.cut命令cut命令用于从文本文件或标准输入中剪切字段,然后将它们输出到标准输出。下面是cut命令的基本用法:cut[选项]文件名1.1常见选项-d:指定字段的分隔符。默认情况下,字段分隔符为制表符。-f:指定要剪切的字段。可以使用逗号分隔多个字段,也可以使用连字符表示字段范围。--complement:输出未剪切的字段。-s:如果输入行中没有指定的分隔符字符,则跳过该行。1

如何快速分析软件运行瓶颈在哪里?推荐Linux下的一个强大命令工具

Linux被广泛用于服务器系统,很多线上服务在上线前要做压力测试,对发现的性能问题要进一步排查和开发优化性能。比如通过 top 、iostat 等命令找到了引起资源异常的进程后,就要进一步对该进程/线程的内存占用、文件系统IO系统调用次数、Socket和网络通讯阻塞问题等做跟踪分析。由于此时往往更希望接近真实场景的运行方式,所以除了采用代码断点调试的方式外,最保真、最快速跟踪到实际环境问题根源的就是用Linux系统自带的strace软件启动问题软件,获得直接的数据实现,故障分析、性能分析。这是一款Linux下瑞士军刀级别的工具,开发者、运维人员如果不熟悉,那么非常有必要继续往下看。学会后可以事

Linux学习——模拟实现mybash小程序

目录一,跟正宗的bash见个面二,实现一个山寨的bash1.提示符2.输入命令与回显命令 3.解析命令4.执行命令5.执行逻辑三,全部代码一,跟正宗的bash见个面 在这篇文章中,我会写一个myshell小程序。这个小程序其实就是一个解释器。在我的机器上它长这样:  二,实现一个山寨的bash1.提示符在图:中。这个提示符的信息可以分为四类:1.用户名  2.主机名  3.当前地址  4.其他字符在这个图片里:cq就是用户名 VM-8-9-centos就是主机名  mybash就是当前所在路径。那我们该如何获取呢?两条路:1.其它字符直接打印 2.用户名等用环境变量获取。代码如下:#inclu

vmware虚拟机 linux 本地yum源,网卡配置ens33,防火墙selinux

1、挂载镜像文件,CentOS-7-x86_64-DVD-1804.iso,并且要处于连接状态#光盘挂载至/mntmount/dev/sr0/mnt#备份yum源文件cd/etc/yum.repos.d/mkdir-p./bakmvCentOS*./bak#编缉本地源vimlocal.repo[centos7]name=CentOS7baseurl=file:///mntenable=1gpgcheck=0 关闭防火墙并设置开机不启动firewall服务开启与关闭firewalld状态:#systemctlstatusfirewalld.service关闭firewalld:#systemct

一文聊透 Linux 缺页异常的处理 —— 图解 Page Faults

本文基于内核5.4版本源码讨论在前面两篇介绍mmap的文章中,笔者分别从原理角度以及源码实现角度带着大家深入到内核世界深度揭秘了mmap内存映射的本质。从整个mmap映射的过程可以看出,内核只是在进程的虚拟地址空间中寻找出一段空闲的虚拟内存区域vma然后分配给本次映射而已。vma=vm_area_alloc(mm);vma->vm_start=addr;vma->vm_end=addr+len;vma->vm_flags=vm_flags;vma->vm_page_prot=vm_get_page_prot(vm_flags);vma->vm_pgoff=pgoff;如果是文件映射的话,内核还

使用goto语句和Linux命令实现关机整蛊小程序

目录🎃了解goto语句🚀前言🕹️运行效果🛸运行原理🎢程序源码🍻最后开始整人最后🎃了解goto语句C语言提供了⼀种非常特别的语法,就是goto语句和跳转标号,goto语句可以实现在同⼀个函数内跳转到设置好的标号处。#includeintmain(){ printf("1234\n"); gotonext;//goto到next语句 printf("5678\n");//被夹在里面的语句被跳过无法执行。next: printf("跳过了5678的打印\n"); return0;}运行结果:程序执行过程:该程序先从上往下执行,得到1234,之后遇到goto语句后,程序将会直接从gotonext跳到n

Linux驱动交叉编译把驱动文件放入开发板,以及printk函数打印级别

上一篇介绍了一个最简单的驱动程序和驱动程序大体结构,但那还是用本地编译只能在Ubuntu上运行,我们该怎么编译一个能加载到开发板上呢,就需要交叉编译,交叉编译通常都是在嵌入式开发中使用到的。交叉编译理解交叉编译前先了解下本地编译:是指编译源代码的平台和执行源代码编译后程序的平台是同一个平台。例如在x86平台下编译的程序,就只能在x86平台下运行。而我们现在是在Ubuntu下(x86)编译,到ARM开发板(arm)上去运行自然不行,所以交叉编译:是指编译源代码的平台和执行源代码编译后程序的平台是两个不同的平台,其中运行编译程序称为宿主机,运行编译程序所产生目标代码的称为目标机。那为什么不在ARM