本文目录:
- 1、查看linux系统是不是运行在虚拟机上的方法
- 2、linux是什么意思 怎么理解linux的意思
- 3、记录一次服务器死机分析
- 4、nl是什么意思?
- 5、在Linux下综合使用vi、gcc编译器和gdb调试器开发汉诺塔游戏程序
- 6、5.13内核怎么升级到5.14
查看linux系统是不是运行在虚拟机上的方法
当一个高配置的主机虚拟成N个不同的VM主机分给不同的用户使用的时候,需要防范利用VM的漏洞逃逸到宿主机或者取得了其他VM的信息,这是云安全遇到的一个不小的难题。
要想逃逸,首先要检测当前操作系统是否为VM,下面提供几个Linux下的检查方法:
第一,首推facter virtual ,权限为普通用户,约定,普通用户命令提示符用$表示,root用户命令提示符用#表示,第一组为实体机的返回,第二组为虚拟机的返回:
$facter virtual
physical
$facter virtual
vmware
第二,cat /proc/scsi/scsi,需要分析Vendor中的内容:
$cat /proc/scsi/scsi
Attached devices:
Host: scsi6 Channel: 03 Id: 00 Lun: 00
Vendor: HP Model: P410 Rev: 5.14
Type: RAID ANSI SCSI revision: 05
Host: scsi6 Channel: 00 Id: 00 Lun: 00
Vendor: HP Model: LOGICAL VOLUME Rev: 5.14
Type: Direct-Access
$cat /proc/scsi/scsi
Attached devices:
Host: scsi1 Channel: 00 Id: 00 Lun: 00
Vendor: NECVMWar Model: VMware IDE CDR10 Rev: 1.00
Type: CD-ROM ANSI SCSI revision: 05
Host: scsi2 Channel: 00 Id: 00 Lun: 00
Vendor: VMware Model: Virtual disk Rev: 1.0
Type: Direct-Access
由于我当前使用的测试环境为vmware,下面以它为例
第三,lspci | grep -i vmware:
$ lspci | grep -i vmware
实体机上无返回结果
$ lspci | grep -i vmware
00:07.7 System peripheral: VMware Virtual Machine Communication Interface (rev 10)
00:0f.0 VGA compatible controller: VMware SVGA II Adapter
00:11.0 PCI bridge: VMware PCI bridge (rev 02)
00:15.0 PCI bridge: VMware PCI Express Root Port (rev 01)
00:15.1 PCI bridge: VMware PCI Express Root Port (rev 01)
00:15.2 PCI bridge: VMware PCI Express Root Port (rev 01)
00:15.3 PCI bridge: VMware PCI Express Root Port (rev 01)
00:15.4 PCI bridge: VMware PCI Express Root Port (rev 01)
第四,grep -i vmware /proc/scsi/scsi /proc/ide/*/model
$grep -i vmware /proc/scsi/scsi /proc/ide/*/model
grep: /proc/ide/*/model: No such file or directory
$ grep -i vmware /proc/scsi/scsi /proc/ide/*/model
/proc/scsi/scsi: Vendor: NECVMWar Model: VMware IDE CDR10 Rev: 1.00
/proc/scsi/scsi: Vendor: VMware Model: Virtual disk Rev: 1.0
第五,需要root权限,dmidecode | grep -i vmware
#dmidecode | grep -i vmware
实体机无返回
# dmidecode | grep -i vmware
Manufacturer: VMware, Inc.
Product Name: VMware Virtual Platform
Serial Number: VMware-56 4d 29 65 6c ac 42 33-33 7f 89 2c d0 36 a3 25
Description: VMware SVGA II
linux是什么意思 怎么理解linux的意思
1、Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。
2、2021年6月,根据Linux 5.14刚刚进入合并队列的char-misc-next提交,Linux 5.14正式移除了RAW驱动。
记录一次服务器死机分析
服务器无法ssh登录,ping一下,不通,到机房重启
less /var/log/messages
查看到死机前的几行
Jun 16 13:01:01 kvmserver systemd: Started Session 26 of user root.
Jun 16 13:10:01 kvmserver systemd: Started Session 27 of user root.
Jun 16 13:20:01 kvmserver systemd: Started Session 28 of user root.
Jun 16 13:30:01 kvmserver systemd: Started Session 29 of user root.
Jun 16 13:40:01 kvmserver systemd: Started Session 30 of user root.
Jun 16 13:50:01 kvmserver systemd: Started Session 31 of user root.
Jun 16 14:00:01 kvmserver systemd: Started Session 32 of user root.
Jun 16 14:01:01 kvmserver systemd: Started Session 33 of user root.
Jun 16 14:10:01 kvmserver systemd: Started Session 34 of user root.
Jun 16 14:20:02 kvmserver systemd: Started Session 35 of user root.
Jun 16 14:30:02 kvmserver systemd: Started Session 36 of user root.
Jun 16 14:40:01 kvmserver systemd: Started Session 37 of user root.
Jun 16 14:45:20 kvmserver kernel: perf: interrupt took too long (2563 2500), lowering kernel.perf_event_max_sample_rate to 78000
Jun 16 14:50:01 kvmserver systemd: Started Session 38 of user root.
Jun 16 15:00:01 kvmserver systemd: Started Session 39 of user root.
Jun 16 15:01:01 kvmserver systemd: Started Session 40 of user root.
Jun 16 15:10:01 kvmserver systemd: Started Session 41 of user root.
Jun 16 15:20:01 kvmserver systemd: Started Session 42 of user root.
Jun 16 15:30:01 kvmserver systemd: Started Session 43 of user root.
Jun 16 15:40:01 kvmserver systemd: Started Session 44 of user root.
Jun 16 15:50:01 kvmserver systemd: Started Session 45 of user root.
Jun 16 16:00:01 kvmserver systemd: Started Session 46 of user root.
Jun 16 16:01:01 kvmserver systemd: Started Session 47 of user root.
Linux 内核使用"性能"性能监视器收集样品,而不影响延迟。
这些包括中断时间。如果中断时间过长,则与此打印类似的消息:
kernel: [ 6491.061361] perf: interrupt took too long (6650 6452), lowering kernel.perf_event_max_sample_rate to 30000
这意味着
这基本上意味着机器长时间处于中断。这可能是由多种原因造成的,包括:
磁盘 IO 中断时间长 ,将由故障、缓慢或超载磁盘引起。或者,这也可能由磁盘或突袭控制器的问题引起。
网络 IO 中断时间过长 通常是由于网络驱动程序问题不理想造成的。或者,这也可以由网络问题引起,尽管协议切换理论上应该会阻止它。
磁盘 IO 可轻松通过磁盘 IO 统计数据(sysstat-sar 和/或 iostat)进行检查并确认。如果磁盘 IO 不是缓慢中断的原因,则网络 IO 将是。为此,需要在网络和/或内核方面检查问题。
故障排除的第一点应包括检查/var/logs/(messages|syslog)中的内核消息以及dmesg。如果这些显示来自 vmxnet 驱动程序的痕迹,中断时间过长将由网络驱动程序故障引起。请联系网卡提供商,或尝试升级到最新的可用稳定内核。
如果内核驱动程序没有问题,网络将是最容易出错的,很可能是第一跳。然后需要在网络方面检查这一点。
grep -iE "error|warn|kernel" /var/log/messages
dmesg -T | grep -iE "error|warn|kernel"
[Thu Jun 17 15:39:06 2021] systemd[1]: Started Apply Kernel Variables.
[Thu Jun 17 15:39:15 2021] ACPI Warning: SystemIO range 0x0000000000000428-0x000000000000042f conflicts with OpRegion 0x0000000000000400-0x000000000000043f (\PMB0) (20130517/utaddress-254)
[Thu Jun 17 15:39:31 2021] L1TF CPU bug present and SMT on, data leak possible. See CVE-2018-3646 and for details.
dmesg报错时间对不上
无法是磁盘io问题还是网卡问题
[root@kvmserver log]# sar -n DEV
Linux 3.10.0-957.el7.x86_64 (kvmserver) 06/17/2021 _x86_64_ (4 CPU)
03:08:47 PM LINUX RESTART
03:10:01 PM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
03:20:01 PM br0 4.07 0.00 0.50 0.00 0.00 0.00 0.00
03:20:01 PM eno1 4.08 0.00 0.57 0.00 0.00 0.00 1.14
03:20:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
03:20:01 PM virbr0-nic 0.00 0.00 0.00 0.00 0.00 0.00 0.00
03:30:01 PM br0 5.37 0.01 0.60 0.00 0.00 0.00 0.00
03:30:01 PM eno1 5.37 0.01 0.70 0.00 0.00 0.00 1.30
03:30:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
03:30:01 PM virbr0-nic 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: br0 4.72 0.01 0.55 0.00 0.00 0.00 0.00
Average: eno1 4.73 0.01 0.63 0.00 0.00 0.00 1.22
Average: lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: virbr0-nic 0.00 0.00 0.00 0.00 0.00 0.00 0.00
03:39:21 PM LINUX RESTART
03:40:01 PM IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s
03:50:01 PM br0 16.50 12.22 29.83 2.50 0.00 0.00 0.00
03:50:01 PM eno1 27.89 12.35 30.90 2.56 0.00 0.00 1.13
03:50:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
03:50:01 PM virbr0-nic 0.00 0.00 0.00 0.00 0.00 0.00 0.00
04:00:01 PM br0 4.43 0.09 0.58 0.01 0.00 0.00 0.00
04:00:01 PM eno1 4.44 0.09 0.66 0.01 0.00 0.00 1.61
04:00:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
04:00:01 PM virbr0-nic 0.00 0.00 0.00 0.00 0.00 0.00 0.00
04:10:01 PM br0 5.40 0.47 0.64 0.06 0.00 0.00 0.00
04:10:01 PM eno1 10.61 9.65 1.42 1.06 0.00 0.00 1.67
04:10:01 PM vnet1 4.93 5.85 0.50 0.86 0.00 0.00 0.00
04:10:01 PM lo 0.08 0.08 0.01 0.01 0.00 0.00 0.00
04:20:01 PM br0 3.56 1.60 0.57 0.95 0.00 0.00 0.00
04:20:01 PM eno1 8.95 11.25 1.29 1.96 0.00 0.00 1.16
04:20:01 PM vnet1 5.08 5.24 0.48 0.85 0.00 0.00 0.00
04:20:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
04:30:01 PM br0 4.74 2.44 0.66 1.05 0.00 0.00 0.00
04:30:01 PM eno1 10.19 12.17 1.41 2.08 0.00 0.00 1.34
04:30:01 PM vnet1 5.14 5.61 0.49 0.89 0.00 0.00 0.00
04:30:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
04:40:01 PM br0 3.89 0.18 0.54 0.04 0.00 0.00 0.00
04:40:01 PM eno1 9.24 9.81 1.28 1.06 0.00 0.00 1.37
04:40:01 PM vnet1 4.75 6.51 0.46 0.88 0.00 0.00 0.00
04:40:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
04:50:01 PM br0 2.60 0.16 0.47 0.01 0.00 0.00 0.00
04:50:01 PM eno1 7.84 9.36 1.16 0.98 0.00 0.00 1.26
04:50:01 PM vnet1 4.90 5.29 0.47 0.82 0.00 0.00 0.00
04:50:01 PM lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00
Average: br0 5.87 2.45 4.76 0.66 0.00 0.00 0.00
Average: eno1 11.31 9.24 5.44 1.39 0.00 0.00 1.36
Average: vnet1 3.54 4.07 0.34 0.61 0.00 0.00 0.00
Average: lo 0.01 0.01 0.00 0.00 0.00 0.00 0.00
[root@kvmserver log]# iostat
Linux 3.10.0-957.el7.x86_64 (kvmserver) 06/17/2021 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
2.76 0.00 1.94 0.53 0.00 94.76
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
sda 7.31 204.33 39.78 1003853 195463
dm-0 7.32 202.03 39.78 992568 195431
dm-1 0.02 0.50 0.00 2460 0
暂时没看出问题究竟在哪,再观察两天
nl是什么意思?
NL是一个LINUX命令,可以为输出列加上编号,也是编号过滤工具。
linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。
Linux操作系统起源:
Linux操作系统的诞生、发展和成长过程始终依赖着五个重要支柱:Unix操作系统、MINIX操作系统、GNU计划、POSIX标准和Internet网络。
20世纪80年代,计算机硬件的性能不断提高,PC的市场不断扩大,当时可供计算机选用的操作系统主要有Unix、DOS和macOS这几种。Unix价格昂贵,不能运行于PC;DOS显得简陋,且源代码被软件厂商严格保密;MacOS是一种专门用于苹果计算机的操作系统。
此时,计算机科学领域迫切需要一个更加完善、强大、廉价和完全开放的操作系统。由于供教学使用的典型操作系统很少,因此当时在荷兰当教授的美国人AndrewS.Tanenbaum编写了一个操作系统,名为MINIX,为了向学生讲述操作系统内部工作原理。
MINIX虽然很好,但只是一个用于教学目的的简单操作系统,而不是一个强有力的实用操作系统,然而最大的好处就是公开源代码。
全世界学计算机的学生都通过钻研MINIX源代码来了解电脑里运行的MINIX操作系统,芬兰赫尔辛基大学大学二年级的学生Linus Torvalds就是其中一个,在吸收了MINIX精华的基础上,Linus于1991年写出了属于自己的Linux操作系统,版本为Linux0.01,是Linux时代开始的标志。
他利用Unix的核心,去除繁杂的核心程序,改写成适用于一般计算机的x86系统,并放在网络上供大家下载,1994年推出完整的核心Version1.0,至此,Linux逐渐成为功能完善、稳定的操作系统,并被广泛使用。
2021年6月,根据Linux 5.14刚刚进入合并队列的char-misc-next提交,Linux 5.14正式移除了RAW驱动。
在Linux下综合使用vi、gcc编译器和gdb调试器开发汉诺塔游戏程序
结果是游戏可以正常运行。
Linux,全称GNU/Linux,是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。
它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的debian、archlinux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。
2021年6月,根据Linux 5.14刚刚进入合并队列的char-misc-next提交,Linux 5.14正式移除了RAW驱动。
Linux操作系统的诞生、发展和成长过程始终依赖着五个重要支柱:Unix操作系统、MINIX操作系统、GNU计划、POSIX标准和Internet网络。
20世纪80年代,计算机硬件的性能不断提高,PC的市场不断扩大,当时可供计算机选用的操作系统主要有Unix、DOS和macOS这几种。Unix价格昂贵,不能运行于PC;DOS显得简陋,且源代码被软件厂商严格保密;MacOS是一种专门用于苹果计算机的操作系统。
5.13内核怎么升级到5.14
手机系统内核是Linux,linux内核是靠升级系统版本来升级内核的。升级方法:
1、使用手机自带的系统更新功能:在安卓手机的设置--关于手机中,可以看到当前安卓手机的系统版本,另外这里也有自动检测更新系统功能。这里就是安卓手机自带的系统更新功能,其更新主要由手机厂商提供,像小米手机就可以很好的通过该功能升级手机系统版本。不过使用该功能升级系统,需要下载不少升级文件,因此建议大家在Wifi环境下进行;【使用手机自带的系统更新功能仅对部分品牌手机比较实用,通常很多品牌手机的自带的升级功能,可升级的非常慢,并且无法更新到最新的安卓系统版本,因此一般也不建议采用该方式升级】;
2、下载手机系统升级包:一般手机厂商官网都会更新一些系统文件包供用户下载升级,我们可以可以进入自己手机品牌官网下载中心,然后根据自己手机品牌型号,下载最新的系统更新升级包,下载存放在手机SD卡当中。然后我们再进入手机设置,然后选择“关于手机”最后找到“系统更新”选项,之后我们在选择“存储卡升级”。如果SD中有可用的升级包就会自动开始升级;
3、通过刷机升级安卓系统:对于安卓手机用户而言,热衷的还是刷机了,刷机是一种时下非常有效的升级安卓系统方法,网上也有很多安卓手机的ROM系统,并且更新很快,大家可以选择采用最新安卓系统内核去刷机,从而实现安卓系统的升级。
【linux5.14】的内容来源于互联网,如引用不当,请联系我们修改。
网友留言: