linux服务器

Linux学习之免秘钥登陆

做~自己de王妃 提交于 2020-02-16 11:49:53
1、公私钥简介与原理 公钥和私钥都属于非对称加密算法的一个实现,这个加密算法的信息交换过程是: (1)持有公钥的一方(甲)在收到持有私钥的一方(乙)的请求时,甲会在自己的公钥列表中查找是否有乙的公钥,如果有则使用一个随机字串使用公钥加密并发送给乙。 (2)乙收到加密的字串使用自己的私钥进行解密,并将解密后的字串发送给甲。 (3)甲接收到乙发送来的字串与自己的字串进行对比,如过通过则验证通过,否则验证失败。 非对称加密算法不能使用相同的密钥进行解密,也就是说公钥加密的只能使用私钥进行解密。 2、使用密钥进行ssh免密登录 ssh使用私钥登录大致步骤就是:主机A(客户端)创建公钥私钥,并将公钥复制到主机B(被登陆机)的指定用户下,然后主机A使用保存私钥的用户登录到主机B对应保存公钥的用户。 (1) 实验环境 两台主机: (1)主机A(客户机):10.246.30.131 (2)主机B(被登陆机):10.246.30.130 (2) 实验开始 在需要免密登陆的主机(主机A)下生成公钥和私钥 1 # ssh-keygen -t rsa ## -t rsa可以省略,默认就是生成rsa类型的密钥 说明: 命令执行后会有提示,输入三次回车即可,执行完成后会在当前用户的.ssh目录下生成两个文件:id_rsa、id_rsa.pub文件,前者是私钥文件,后者是公钥文件

Linux查看负载命令

ぐ巨炮叔叔 提交于 2020-02-16 11:20:31
uptime命令 uptime 08:21:34 up 36 min, 2 users, load average: 0.00, 0.00, 0.00 #当前服务器时间: 08:21:34 #当前服务器运行时长 36 min #当前用户数 2 users #当前的负载均衡 load average 0.00, 0.00, 0.00,分别取1min,5min,15min的均值 如果每个CPU内核的当前活动进程数不大于3的话,那么系统的性能是良好的。如果每个CPU内核的任务数大于5,那么这台机器的性能有严重问题。如果你的linux主机是1个双核CPU的话,当Load Average 为6的时候说明机器已经被充分使用了。 top命令 line1:当前时间、系统已运行时间、当前登录用户的数量、最近5、10、15分钟内的平均负载 line2:任务的总数、运行中(running)的任务、休眠(sleeping)中的任务、停止(stopped)的任务、僵尸状态(zombie)的任务 line3:cpu的状态 字段 字段释义 us user: 运行(未调整优先级的) 用户进程的CPU时间 sy system: 运行内核进程的CPU时间 ni niced:运行已调整优先级的用户进程的CPU时间 id idle:空闲时间 wa IO wait: 用于等待IO完成的CPU时间 hi

linux每日命令(37):top命令

情到浓时终转凉″ 提交于 2020-02-16 10:57:26
top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。下面详细介绍它的使用方法。top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态.如果在前台执行该命令,它将独占前台,直到用户终止该程序为止.比较准确的说,top命令提供了实时的对系统处理器的状态监视.它将显示系统中CPU最“敏感”的任务列表.该命令可以按CPU使用.内存使用和执行时间对任务进行排序;而且该命令的很多特性都可以通过交互式命令或者在个人定制文件中进行设定. 一.命令格式 top [参数] 二.命令功能 显示当前系统正在执行的进程的相关信息,包括进程ID、内存占用率、CPU占用率等 三.命令参数 参数 描述 -b 批处理 -c 显示完整的治命令 -I 忽略失效过程 -s 保密模式 -S 累积模式 -i 设置间隔时间 -u 指定用户名 -p 指定进程 -n 循环显示的次数 四. 使用实例 1.显示进程信息 命令: top 输出: [hc@localhost ~]$ top top - 09:22:56 up 6 days, 1:40, 3 users, load average: 0.22, 0.31, 0.71 Tasks: 231 total, 1 running, 230 sleeping, 0 stopped, 0 zombie %Cpu

linux top 命令查看内存及多核CPU的使用讲述

牧云@^-^@ 提交于 2020-02-16 10:55:46
查看多核CPU命令 mpstat -P ALL 和 sar -P ALL 说明:sar -P ALL > aaa.txt 重定向输出内容到文件 aaa.txt top命令 经常用来监控linux的系统状况,比如cpu、内存的使用,程序员基本都知道这个命令,但比较奇怪的是能用好它的人却很少,例如top监控视图中内存数值的含义就有不少的曲解。 本文通过一个运行中的WEB服务器的top监控截图,讲述top视图中的各种数据的含义,还包括视图中各进程(任务)的字段的排序。 top进入视图 第一行: 10:08:45 — 当前系统时间 10 days, 3:05 — 系统已经运行了10天3小时5分钟(在这期间没有重启过) 1 users — 当前有1个用户登录系统 load average: 0.00, 0.00, 0.00 — load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。 load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。 第二行: Tasks — 任务(进程),系统现在共有135个进程,其中处于运行中的有1个,134个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。 第三行:cpu状态 0.3% us —

16 个 Linux 服务器监控命令和watch

若如初见. 提交于 2020-02-16 10:04:38
如果你想知道你的服务器正在做干什么,你就需要了解一些基本的命令,一旦你精通了这些命令,那你就是一个 专业的 Linux 系统管理员。 有些 Linux 发行版会提供 GUI 程序来进行系统的监控,例如 SUSE Linux 就有一个非常棒而且专业的工具 YaST,KDE 的 KDE System Guard 同样很出色。当然,要使用这些工具,你必须在服务器跟前进行操作,而且这些 GUI 的程序占用了很多系统资源,所以说,尽管 GUI 用来做基本的服务器健康状态监测挺好,但如果你想知道真正发生什么,请关掉 GUI 开始命令行之旅吧。 你应该只在需要的时候去启动 GUI ,不用的时候关掉它。如果要让服务器保持最佳性能,你应该将 Linux 服务器的运行级别 runlevel 设置为 3 ,就是控制台模式,当你需要图形化桌面的时候使用 startx 命令来启动它。 如果你的服务器启动后就直接进入图形界面,你需要修改配置 /etc/inittab 找到 initdefault 一样,将 id:5:initdefault 修改为 id:3:initdefault。 如果你没找到 /etc/inittab 文件,那就创建一个新的,文件内容增加 id:3 这么一行。这样下次服务器启动的时候就不会进入图形界面。如果你不想等到服务器重启的时候才生效,你可以执行 init 3 这个命令。

linux下MySQL安装

大城市里の小女人 提交于 2020-02-16 09:53:06
mysql 版本的区别 http://www.cnblogs.com/langtianya/p/5185601.html mysql 软件可以去官网下载 http://dev.mysql.com/downloads/mysql/ ,也可以去大公司的资源库下载,比如: http://mirrors.sohu.com/mysql/MySQL-5.7/ 这是搜狐的。 多实例创建方法 : http://blog.csdn.net/leshami/article/details/40339295 一、 mysql 二进制免编译包安装 mysql 二进制免编译安装 # cd /usr/local/src/ 约定以后安装软件就下载到这里使用 # wget http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.51-linux2.6-x86_64.tar.gz 下载 # tar zxvf mysql-5.5.51-linux2.6-x86_64.tar.gz 解压 # mv mysql-5.5.51-linux2.6-x86_64 /usr/local/mysql 移动位置到安装目录下 # useradd -s /sbin/nologin mysql 建立 mysql 用户 # cd /usr/local/mysql 进入安装目录,目录下有许多文件。

Linux中Kdump服务的配置

删除回忆录丶 提交于 2020-02-16 09:44:44
Kdump 是一种的新的crash dump捕获机制,用来捕获kernel crash时候产生的crash dump。Kdump需要配置两个不同目的的kernel,其中一个我们在这里称作standard(production) kernel;另外一个称之为Crash(capture)kernel。 standard(production)kernel,是指我正在使用的kernel,当standard kernel在使用的过程中出现crash的时候, kdump会切换到crash kernel, 简单来说,standard kernel会正运行时发生crash,而crash(capture) Kernel 会被用来捕获production kernel crash时候产生的crash dump。 捕获crash dump是在新的crash(capture) kernel 的上下文中来捕获的,而不是在standard kernel上下文进行。 具体是当standard kernel方式crash的时候,kdump通过kexec(后面介绍)自动启动进入到crash kernel当中。如果启动了kdump服务,standard kernel会预留一部分内存, 这部分内存用来启动crash kernel。 kdump机制主要包括两个组件:kdump和kexec kexec

云架构师进阶攻略

独自空忆成欢 提交于 2020-02-16 07:56:15
https://mp.weixin.qq.com/s/tHRl5OQHY2mNXqKwACCVWw?utm_source=tuicool&utm_medium=referral 一、架构的三个维度和六个层面 1.1、三大架构 在互联网时代,要做好一个合格的云架构师,需要熟悉三大架构。 第一个是IT架构,其实就是计算,网络,存储。这是云架构师的基本功,也是最传统的云架构师应该首先掌握的部分,良好设计的IT架构,可以降低CAPEX和OPEX,减轻运维的负担。数据中心,虚拟化,云平台,容器平台都属于IT架构的范畴。 第二个是应用架构,随着应用从传统应用向互联网应用转型,仅仅搞定资源层面的弹性还不够,常常会出现创建了大批机器,仍然撑不住高并发流量。因而基于微服务的互联网架构,越来越成为云架构师所必需的技能。良好设计的应用架构,可以实现快速迭代和高并发。数据库,缓存,消息队列等PaaS,以及基于SpringCloud和Dubbo的微服务框架,都属于应用架构的范畴。 第三个是数据架构,数据成为人工智能时代的核心资产,在做互联网化转型的同时,往往进行的也是数字化转型,并有战略的进行数据收集,这就需要云架构师同时又大数据思维。有意识的建设统一的数据平台,并给予数据进行数字化运营。搜索引擎,Hadoop,Spark,人工智能都属于数据架构的范畴。 1.2、六个层面 上面的三个维度是从人的角度出发的

shell之select语句

痞子三分冷 提交于 2020-02-16 03:43:17
1. select in 语句 select in 循环用来增强交互性,它可以显示出带编号的菜单,用户输入不同的编号就可以选择不同的菜单,并执行不同的功能 select in 是 Shell 独有的一种循环,非常适合终端(Terminal)这样的交互场景,C语言、C++、Java、Python、C# 等其它编程语言中是没有的 Shell select in 循环的用法如下: select variable in value_list do statements done variable 表示变量,value_list 表示取值列表,in 是 Shell 中的关键字 我们先来看一个 select in 循环的例子 [root@server1 mnt]# sh test.sh What is your favourite OS? 1) Linux 2) Windows 3) Mac OS 4) UNIX 5) Android #? 1 Linux #? 2 Windows #? 1) Linux 2) Windows 3) Mac OS 4) UNIX 5) Android #? 1) Linux 2) Windows 3) Mac OS 4) UNIX 5) Android #? You have selected Windows [root@server1 mnt]# cat

Linux笔记1

流过昼夜 提交于 2020-02-16 01:16:52
感悟 文件权限 所有对linux文件的操作,像替换jar包,复制文件,新增文件,处理完之后都要看一下文件的权限对不对。 在升级jar包的时候,有一个很重要的问题,回滚之后的jar也要注意权限。。。。。这是个坑呀。 linux替换文件,拥有的是原文件的权限。 有一次替换jar包后,调用15822接口的Rest服务,报找不到服务器。然后开始排查,启动日志是正常启动了的,usf的日志是正常的,run和debug的日志也是正常啊的,netstat和lsof看接口15822接口也是在监听的。 后来发现是替换jar包后,这个jar包没有其他用户的读权限。。。。坑啊。但是为什么没有日志报错呢,猜测是因为usf框架接到请求后,去调用jar包然后每找到,然后线程就挂了,但是usf框架可能打的是debug日志,所以日志里面看不到。。。。。 crontab crontab虽然可以设置系统级的运行(相当于ROOT用户在执行),也可以挂在某个用户下面进行运行。 这些都不影响crontab的任务的执行,只是说执行用户挂的是谁而已。因为crontab只要程序被唤起,就会去执行。 执行文件 在linux中,有的时候我们用./,然后用tab去联想我们当前目录下面的脚本的时候,发现并没有联想文件,那是因为当前目录下的可执行文件我们都没有执行权限,所以不会给我们联想的提示。 ./xxx是执行当前目录下的文件。