linux *** 作系统适合做什么?

linux *** 作系统适合做什么?,第1张

Linux *** 作系统主要有以下三大应用领域:
1 Linux作为企业级服务器的应用
Linux系统可以为企业架构>1、简介

dmesg 命令主要用来显示内核信息。使用 dmesg 可以有效诊断机器硬件故障或者添加硬件出现的问题。另外,使用 dmesg 可以确定您的服务器安装了哪些硬件。每次系统重启,系统都会检查所有硬件并将信息记录下来。执行/bin/dmesg 命令可以查看该记录,开机信息亦保存在/var/log目录中,名称为dmesg的文件里。

2、dmesg命令常用格式

[root@RedHat_test ~]# dmesg [-cn][-s <缓冲区大小>]

-c: 当完成打印显示后清除环缓冲内的内容。

-s: 缓冲区大小。定义一个大小为"缓冲区大小"的缓冲区用于查询内核环缓冲区。默认大小为8196(此大小与2033 和21103 内核的默认syslog 缓冲区大小一致),如果你设置了一个大于默认值的环缓冲区,那你就可以用这个选项定义一个相当的缓冲区来查看完整的环缓冲区内容。

-n: 级别。设置级别为记录控制台启动信息的级别。比如,-n 1指的就是将此级别设为最低级,除了内核恐慌信息之外不会向控制台显示信息。所有级别的启动信息还将记录到/proc/kmsg,文件中,因此,syslogd(8)同样可以用来对信息的输出进行控制。当使用-n选项时,dmesg将不会 清除内核环缓冲区中的内容。当同时使用以上两个选项时,只有最后一个选项才会产生效果。

3、将系统启动信息保存到文件中

[root@RedHat_test ~]# dmesg > messagestxt

4、单页输出

[root@RedHat_test ~]# dmesg | more

[root@RedHat_test ~]# dmesg | less

5、以可读性较好的形式输出信息

[root@RedHat_test ~]# dmesg -H

6、设置记录信息的层级

[root@RedHat_test ~]# dmesg -n 3

7、打印输出内存

[root@RedHat_test ~]# dmesg | tail -f #打印输出最近一次的信息

[root@RedHat_test ~]# dmesg | head -20 #打印输出前20行的信息

[root@RedHat_test ~]# dmesg | tail -20 #打印输出最后20行日志

8、实时监控dmesg日志的输出信息

[root@RedHat_test ~]# watch "dmesg | tail -20"

9、搜索包含特定字符串的被检测到的硬件

[root@RedHat_test ~]# dmesg | grep DMA #查看硬盘的运行模式

[root@RedHat_test ~]# dmesg | grep eth #查看以太网的连接信息

[root@RedHat_test ~]# dmesg | grep sda #查看硬盘设备

[root@RedHat_test ~]# dmesg | grep ttyS #查看串口的相关信息

[root@RedHat_test ~]# dmesg | grep -i memory #查看内存状况

[root@RedHat_test ~]# dmesg | grep -i usb #查看usb接口

[root@RedHat_test ~]# dmesg |egrep -i "(apm|acpi)" #探测系统内核模块,检测ACPI的加载情况

10、将开机信息发邮件

[root@RedHat_test ~]# dmesg >bootmessages

[root@RedHat_test ~]# mail -s "Boot Log of Linux Server" public@web3qnet <bootmessages

11、打印并清除内核环形缓冲区

[root@RedHat_test ~]# dmesg -c

关于运维学习、分享、交流,笔者开通了微信公众号运维猫,感兴趣的朋友可以关注下,欢迎加入,建立属于我们自己的小圈子,一起学运维知识。

如何配置visualvm监控
visualvm支持在Linux和windows上启用图形界面监控jvm的资源,但是如何可以使我们在windows上监控到远程linux服务器资源,这还需要做一些配置,此文是在原文基础上做了更改的,希望对大家能有所帮助。
(1)首先要修改JDK中JMX服务的配置文件,以获得相应的权限:
进入$JAVA_HOME所在的根目录的/jre/lib/management子目录下,
a 将jmxremotepasswordtemplate文件复制为jmxremotepassword
b 调整jmxremoteaccess和jmxremotepassword的权限为只读写,可以使用如下命令
chmod 600 jmxremoteaccess jmxremotepassword
c 打开jmxremotepassword文件,去掉
# monitorRole QED
# controlRole R&D
这两行前面的注释符号
(2)修改envsh
打开envsh文件,并在JVM的启动配置中添加如下信息:
JAVA_OPTS="-Dcomsunmanagementjmxremoteport=1099 -Dcomsunmanagementjmxremotessl=false -Dcomsunmanagementjmxremoteauthenticate=false -Djavarmiserverhostname=1020150218 其他配置”
这几个配置的说明如下:
-Dcomsunmanagementjmxremoteport:这个是配置远程connection的端口号的,要确定这个端口没有被占用
-Dcomsunmanagementjmxremotessl=false -Dcomsunmanagementjmxremoteauthenticate=false:这两个是固定配置,是JMX的远程服务权限的
-Djavarmiserverhostname:这个是配置server的IP的,要使用server的IP最好在机器上先用hostname –i看一下IP是不是机器本身的IP,如果是127001的话要改一下,否则远程的时候连不上,目前我们的server上我已经都改好了
(3)Windows客户端配置
JDK 16版本自带visualvm,只需要进到bin目录下启动即可
启动后页面比较简洁,配置也很简单:
a 点击左侧菜单的add Remote host,输入server的IP,然后再advanced settings里配置端口(注意这个端口要和server上的端口一致)
b 右击刚才配置的IP,选择JMX connection方式,再次输入端口,就可以监视到JVM资源了

在上文中,我们已经详细介绍 linux 三剑客的基本使用,接下来我们看看具体在性能测试领域的运用,本文主要介绍的是在 Tomcat 和 Nginx access日志的统计分析。

serverxml 使用配置方式,%D-请求时间,%F-响应时间

字段说明如下:

日志样例:

使用默认 combined 的经典格式上扩展 response_time&upstream_response_time

nginxconf 使用配置方式:

字段说明如下:

日志示例:

为了能理解 AWK 程序,我们下面概述其基本知识。

模式( pattern ) 用于匹配输入中的每行文本。对于匹配上的每行文本,awk 都执行对应的 动作( action )。模式和动作之间使用花括号隔开。awk 顺序扫描每一行文本,并使用 记录分隔符(一般是换行符)将读到的每一行作为 记录,使用 域分隔符( 一般是空格符或制表符 ) 将一行文本分割为多个 域, 每个域分别可以使用 2, … 表示。1 表示第一个域,表示第二个域,n 表示第 n 个域。 $0 表示整个记录。模式或动作都可以不指定,缺省模式的情况下,将匹配所有行。缺省动作的情况下,将执行动作 {print},即打印整个记录。

此处使用Nginx accesslog 举例,Tomcat 日志自己举一反三。 使用 awk 分解出Nginx access日志中的信息

以此类推…… 当我们使用默认的域分割符时,我们可以从日志中解析出下面不同类型的信息:

我们不难发现,仅使用默认的域分隔符,不方便解析出请求行、引用页和浏览器类型等其他信息,因为这些信息之中包含不确定个数的空格。 因此,我们需要把域分隔符修改为 “ ,就能够轻松读出这些信息。

注意:这里为了避免 Linux Shell 误解 “ 为字符串开始,我们使用了反斜杠,转义了 “ 。 现在,我们已经掌握了 awk 的基本知识,以及它是怎样解析日志的。

此处使用Nginx accesslog 举例,Tomcat 日志自己举一反三。

如果我们想知道那些类型的浏览器访问过网站,并按出现的次数倒序排列,我可以使用下面的命令:

此命令行首先解析出浏览器域,然后使用管道将输出作为第一个 sort 命令的输入。第一个 sort 命令主要是为了方便 uniq 命令统计出不同浏览器出现的次数。最后一个 sort 命令将把之前的统计结果倒序排列并输出。

我们可以使用下面的命令行,统计服务器返回的状态码,发现系统可能存在的问题。

正常情况下,状态码 200 或 30x 应该是出现次数最多的。40x 一般表示客户端访问问题。50x 一般表示服务器端问题。 下面是一些常见的状态码:

>

日志收集和服务器管理运维工具的话,可以推荐你试下云帮手这个工具呢。

如果你是个小白,又有多台云服务器,又想集中便捷快速管理的话,这款工具尤其适合你。

云帮手,功能有:

安全防护,数据库备份、Shell脚本执行、站点备份、日志切割、释放内存、访问URL等;

快速批量管理多台云主机,后续如果增设云主机的话,也完全没有问题;

远程管理文件,集成Windows系统RDP远程桌面协议、Linux系统SSH远程登录协议,模拟Windows文件浏览器;

兼容性强大,跨云管理,市面所有主流云商的云主机都兼容,兼容系统,windows和Linux都兼容;

系统检测,系统修复,一键修复,简单 *** 作;

资源巡航,资源监控,自定义条件告警机制;

而且这款工具所有功能都是免费使用的,不限主机数量。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/12627251.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存