linux系统

linux下zookeeper安装

雨燕双飞 提交于 2020-03-23 17:17:09
更改测试集群版本,重新安装集群,就写了个文档记录一下。 1.关闭 Linux的防火墙 临时关闭防火墙:service iptables stop 永久关闭防火墙:chkconfig iptables off 2.安装JDK 配置环境:   vim /etc/profile 环境变量生效:     source /etc/profile 查看JDK是否配置成功: 集群之间使用scp -r 命令进行cp,使每一台机器都生效。 3.解压zookeeper, 进入 Zookeeper的安装目录下的子目录conf目录中:cd zookeeper-3.5.6-bin/conf 4.将 conf目录下的zoo_sample.cfg复制为zoo.cfg。Zookeeper在启动的时候会自动寻找zoo.cfg,根据其中的配置来启动存储数据:cp zoo_sample.cfg zoo.cfg 5.编辑 zoo.cfg文件:vim zoo.cfg 6.修改其中的属性 dataDir,指定数据的存储目录:dataDir=/home/zookeeper-3.5.6/tmp   在 zoo.cfg文件的末添加要构建集群的服务器地址   格式: server.编号=IP地址:原子广播端口:选举端口   例如:   server.1=ip地址:2888:3888   server.2=ip地址:2888:3888

Linux命令--查看磁盘空间

懵懂的女人 提交于 2020-03-23 14:58:51
今天用“web发布平台”发布测试的服务,两个节点中发现有一个节点没有发布成功,压测TPS始终上不去,排查后发现只有一个节点在打日志,另一个节点的服务进程都没有在运行, 由此断定应该是没有发布成功,有点坑的是发布平台上的发布记录是SUCCESS的,打开发布日志后才看到有一个节点是发布失败的。 从错误日志中发现报错的关键字“IO”,应该就是磁盘空间满了造成的,查看磁盘空间的命令之前用过,但是这次要删除的log中包含了很多子目录和文件,有些可以删除,有些是需要 保留的,这样就需要分别查看子目录和文件的大小,过往的只是不足以操作了,正好回顾和再学习一下。 报错日志: 命令: 1、查看整个磁盘还剩多少空间,可以使用命令 : df -h 2、如果并不关心磁盘还剩余多少空间,只是需要知道当前的文件夹下的磁盘使用情况,可以使用如下命令: du --max-depth=1 -h 使用 du --max-depth=1 -h 命令来查找磁盘的使用情况,默认是当前的路径。 -h:为了方便读懂每个文件的大小,如果没有这个参数显示的文件大小就没有k,M,G等。 得到结果中,前面n-1行的是该目录下每个文件夹的大小。最后一行显示的是该目录总的大小。 3、如果并不关心该目录下每个文件的大小,只想知道其中某一个文件(文件夹)的大小,需要使用下面命令: du -sh 还有另外一个命令,也可以得到得到同样的效果:

linux使用lrzsz上传下载

早过忘川 提交于 2020-03-23 14:32:11
1.软件安装 1)编译安装 root 账号登陆后,依次执行以下命令: cd /tmp wget http://www.ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz tar zxvf lrzsz-0.12.20.tar.gz && cd lrzsz-0.12.20 ./configure && make && make install 上面安装过程默认把lsz和lrz安装到了/usr/local/bin/目录下,现在我们并不能直接使用,下面创建软链接,并命名为rz/sz: cd /usr/bin ln -s /usr/local/bin/lrz rz ln -s /usr/local/bin/lsz sz 2)yum安装 root 账号登陆后执行以下命令: yum install -y lrzsz 2.用说明 sz命令发送文件到本地: # sz filename rz命令本地上传文件到服务器: # rz 执行该命令后,在弹出框中选择要上传的文件即可。 说明:打开SecureCRT软件 -> Options -> session options -> X/Y/Zmodem 下可以设置上传和下载的目录。 来源: https://www.cnblogs.com/YuanLei888/p/12552009.html

Linux编程简介——静态链接库

℡╲_俬逩灬. 提交于 2020-03-23 13:44:51
有时我们需要将一组代码编成一个库,从而方便其复用。例如,我们调用的STL和系统函数都是以这种方式提供的。另外,当项目工程较大时,为了使其模块化方便分工,有时也需要将其创建自己的链接库。 链接库按照其链接方式可以分为动态链接库和静态链接库两种,本文主要介绍一下静态链接库的创建方式。 以一个简单的代码为例,这里有两个文件main.c和stack.c,这里打算把stack.c作为一个lib供main.c调用。 /* stack.c */ char stack[512]; int top = -1; char pop( void ) { return stack[top--]; } void push( char c ) { stack[++top] = c ; } /* main.c */ #include <stdio.h> char pop(); void push( char c); void main( void ) { push( 'a' ); push( 'b' ); printf( "%c\n" , pop()); } 要把stack.c编成lib,需要经过如下两个步骤: 通过gcc –c命令将stack.c编成stack.o 通过ar命令将stack.o封装成libstack.a gcc -c stack.c ar cr libstack.a stack.o

Linux之静态库

喜你入骨 提交于 2020-03-23 13:43:11
命名规则: lib + 库的名字 + .a 制作步骤 生成对应.o文件 .c à .o 将生成的.o文件打包 ar rcs + 静态库的名字(libMytest.a) + 生成的所有的.o 发布和使用静态库: 1) 发布静态 2) 头文件 文件如下图所示:   1) 生成对应的.o文件   2) 将所生成的.o文件打包,并移动到lib文件夹中   3) 验证生成的库文件数据    写一个测试代码main.c使用上图中的函数 /*** main.c ***/ #include<stdio.h> #include"MyCalc.h" int main() { int a = 10; int b = 20; int result = a + b; printf("a + b = %d\n",result); return 0; } 编译运行: 静态库的优缺点: 查看静态库内容 nm 静态库名字 nm 可以查看可执行程序内容 优点: 发布程序的时候,不需要提供对应的库 库的加载速度比较快 缺点: 库打包到应用程序中,库的体积很大 库发生了变化,需要重新编译程序。 来源: https://www.cnblogs.com/wanghao-boke/p/11293763.html

实验三 Linux系统用户管理及VIM配置

妖精的绣舞 提交于 2020-03-23 13:35:30
实验三 Linux系统用户管理及VIM配置 项目 内容 这个作业属于哪个课程 班级课程主页 这个作业的要求在哪里 作业要求 学号-姓名 17041422-王骁阳 作业学习目标 (1)学习Linux系统用户管理(2)学习vim使用及配置 实验内容 Linux用户管理 简答:Linux系统为什么应避免使用root用户登录? 答:1.对用户进行限制 2.root权限可能会无意造成危害 操作 1)如何在与用户有关的三个文件中查看当前用户的信 cat /etc/passwd | grep xiaoyang #查看用户xiaoyang的用户信息 请简要描述这三个文件? /etc/passwd 这个文件存放着所有用户账号的信息 /etc/group 这个文件是用户组的配置文件 /etc/shadow 这个文件存放着密码数据 2)用id命令查看当前用户相关信息 请简要描述输出结果? uid=0(root)#用户id gid=0(root)#组id groups=0(root) #组名称 3)创建两个账号,一个账号为test,另外一个账号以大写E开头加上你自己学号尾数4位,两个账号分别设置密码及管理员权限,账号设置完成后,切换账号简单查看信息后,删除test账号,保留另一账号,以备后续操作。 a)创建账号 b) 设置密码 c)设置权限 请简要描述用户组的概念? 管理员组:root 普通用户组 系统组

[转帖]浅谈Linux进程模型

折月煮酒 提交于 2020-03-23 13:29:35
浅谈Linux进程模型 https://blog.lecury.cn/2019/04/04/浅谈Linux进程模型/ 写在前面 进程基础 进程概念 进程描述符 进程创建 上下文切换 init进程 进程应用 进程间通信 信号处理 后台进程与守护进程 浅谈nginx多进程模型 常用工具介绍 ps: 查看进程属性 lsof: 查看打开的文件情况 netstat: 查看网络连接情况 strace: 查看系统调用情况 进程基础 基础概念 进程是操作系统的基本概念之一,它是操作系统分配资源的基本单位,也是程序执行过程的实体。程序是代码和数据的集合,本身是一个静态的概念,而进程是程序的一次执行的实体,是一个动态的概念。 那在Linux操作系统中,是如何描述一个进程的呢? 进程描述符 为了管理进程,内核需要对每个进程的属性和所需要做的事情,进行清楚的描述,这个就是进程描述符的作用,Linux中的进程描述符由 task_struct 标识。 task_struct 的数据结构是相当复杂的,不仅包含了很进程属性的字段,而且也包括了指向其他数据结构的指针。大致结构如下: state: 描述进程状态 thread_info: 进程的基本信息 mm: mm_struct 指向内存区描述符的指针 tty: tty_struct 终端相关的描述符 fs: fs_struct 当前目录 files: files

linux postfix部署邮箱服务

爷,独闯天下 提交于 2020-03-23 13:28:22
一. 邮箱部署前的知识 1. Mail Server与DNS关系 Mail Server 与MX和A的作用 发送邮件的时候,目的地址使用“账号@域名”的方式发送邮件,因此必须通过DNS解析出来@后边的域名,然后才能投递到对方的邮件服务器。 MX 代表的是 Mail eXchanger, 当一封邮件要传送出去时,邮件主机会先分析那封邮件的“目标域名的 DNS ”,先取得 MX 标志 (注意,MX 标志可能会有多部主机) 然后以最优先 MX 解析为目的将邮件发送出去,如果所有MX解析的目的接收邮件失败,则尝试使用A解析为目的发送邮件,所有都失败才提示邮件退回。 Mail Server与DNS反解的作用 当邮件服务器收到邮件的时候,首先会对源IP进行反解,如果反解解析不出来注册域名,则列入垃圾邮件。 2. 邮件传输所需要的组件 MTA 即Mail Transfer Agent,是发送和转递邮件的服务器,发送和转递使用SMTP协议。 MRA 即Mail Retrieval Agent,是接收邮件的服务器,接收邮件使用的协议POP3或者IMAP。 MDA 即Mail Delivery Agent, MDA 是挂在 MTA 底下的一个小程序,分析由 MTA 所收到的信件表头或内容等数据,过滤垃圾邮件,实现自动回复。 Mail Box 就是某个账号专用的信件收受的文件,Linux

11. linux 驱动工作队列相关API

寵の児 提交于 2020-03-23 12:28:58
不是所有的驱动程序都必须有自己的工作队列。驱动程序可以使用内核提供的缺省工作队列。由于这个工作队列由很多驱动程序共享,任务可能会需要比较长一段时间才能开始执行。为了解决这一问题,工作函数中的延迟应该保持最小或者不要延时。 需要特别注意的是缺省队列对所有驱动程序来说都是可用的,但是只有经过GP许可的驱动程序可以用自定义的工作队列。 创建工作队列 每个工作队列有一个专门的线程,所有来自运行队列的任务在进程的上下文中运行(这样它们可以休眠)。驱动程序可以创建并使用它们自己的工作队列,或者使用内核的一个工作队列。 //创建工作队列 struct workqueue_struct *create_workqueue(const char *name); 创建工作队列的任务 工作队列任务可以在编译时或者运行时创建 //编译是创建 DECLARE_WORK(name, void (*function)(void *), void *data); //运行时创建 INIT_WORK(struct work_struct *work, void (*function)(void *), void *data); 将任务添加到工作队列中 //添加到指定工作队列 int queue_work(struct workqueue_struct *queue, struct work_struct *work

nmon监控linux系统性能

ぃ、小莉子 提交于 2020-03-23 12:09:07
Nmon是一款计算机性能系统监控工具,使用 Nmon 可以很轻松的监控系统的 CPU、内存、网络、硬盘、文件系统、NFS、高耗进程、资源等信息。【简单方便】 Nmon 安装 到https://sourceforge.net/projects/nmon/ 这里下载nmon包。 安装完后,直接执行即可。 #./nmon 可以看到下图: 从上面的截图可以看到 nmon 命令行工具完全是交互式运行的,你可以使用快捷键来轻松查看对应的统计数据。你可以使用下面的 nmon 快捷键来显示不同的系统统计数据: q : 停止并退出 Nmon h : 查看帮助 c : 查看 CPU 统计数据 m : 查看内存统计数据 d : 查看硬盘统计数据 k : 查看内核统计数据 n : 查看网络统计数据 N : 查看 NFS 统计数据 j : 查看文件系统统计数据 t : 查看高耗进程 V : 查看虚拟内存统计数据 v : 详细模式 直接按快捷键对应的字母即可。 例: 查看CPU 按c 也可以把结果写到文件中,方便后期查看。 来源: https://www.cnblogs.com/lxplwh/p/7418679.html