Linux08--var目录及系统日志文件、proc目录及系统信息文件

preview

1 重要目录之 /var

# /var目录----系统日志文件夹

/var/log/messages  # 软件安装运行以及系统运行异常日志文件
/var/log/secure    # 系统登录用户情况日志信息

   grep 'Failed' /var/log/secure  # 查看用户登录失败的日志信息

2 重要目录之 /proc

# 1 /proc目录----系统信息文件夹    虚拟文件系统,真实数据是来自内存

/proc/cpuinfo  # 用于查看系统CPU信息情况文件                     
/proc/meminfo  # 用于查看系统内存信息情况文件                     
/proc/loadavg  # 用于查看系统负载信息情况文件,用于衡量系统繁忙程度  
/proc/mounts   # 用于查看系统挂载信息情况文件 

# 2 相关命令:
查看cpu     :   lscpu
查看内存     :   free -m
查看系统负载  :   w
查看系统挂载  :   df -h


# 3 du命令用于显示目录或文件的大小  disk usage
du -sh /proc  
  -s  仅显示总计
  -h  以K,M,G为单位,提高信息的可读性


# 4 卸载/proc文件系统后
umount /proc -l

# 下述命令都不可用
free -m
uptime
lscpu
top

# 重新挂载
mount -t proc proc /proc/
  -t proc   指定文件系统的类型
  proc      文件系统,虚拟文件系统
  /proc     挂载点

2.1 内存 /proc/meminfo

# 1 查看内存
less /proc/meminfo

free [选项]
  -m  # 是兆为单位显示内存大小,默认不加 是以-b 字节为单位显示内存大小
  -w  # buffers 和cache 两个分开显示
  -h  # 友好可读性大小 显示


free -wm
         total   used   free   shared   buffers  cache   available
  Mem:   1837    326     154      96       270     1086     1231
  Swap:   0      0       0
  
free -m 
         total   used    free    shared  buff/cache   available
  Mem:   1837    326     153      96        1357        1231
  Swap:  0         0      0


# 注:total = free + used + buffers + cache
free       : 表示的是当前完全没有被程序使用的内存
buff/cache : 在有需要时,是可以被释放出来以供其它进程使用的
             当然并不是所有cache都可以释放,比如当前被用作ramfs的内存         
available  : 才是真正表明系统目前可以提供给新启动的应用程序使用的内存   # ***
             availeble = free + 部分可释放回收缓存(buff/cache)

/proc/meminfo
在3.14内核版本之后,开始提供MemAvailable的值
在2.6.27~3.14版本之间,是free程序自己计算available的值
2.6.27版本之前,available的值则同free一样


# 2 查看free帮助文档
man free 


# 3 手动释放内存  
/proc/sys/vm/drop_caches  # 系统定时根据该文件的修改时间,再查看该文件的值,来判断是否清理缓存
  0   不释放(系统默认值)
  1   释放page cache页缓存   即上面 单项的cache
  2   释放dentries和inodes
  3   释放所有缓存
  

# eg:
free 
       total     used    free    shared  buff/cache   available
Mem:   2027876   208392  870612  10236      948872     1649684
Swap:  1048572   264     1048308


sync   # 手动执行sync命令  可多执行几次   ***
  sync命令运行sync子例程。如果必须停止系统,则运行sync命令以确保文件系统的完整性
  sync命令将所有未写的系统缓冲区(buffers) 写到磁盘中
  包含已修改的i-node、已延迟的块I/O和读写映射文件
  

echo 3 > /proc/sys/vm/drop_caches  # 手动释放内存  每次释放都需要该操作


free 
       total     used     free     shared  buff/cache   available
Mem:   2027876   194788  1765520    10236       67568     1718768
Swap:  1048572    264    1048308

2.2 cpu /proc/cpuinfo

# 1 查看cpu信息
lscpu

cat /proc/cpuinfo

  === flags     # 有一行flags,可查看系统是否支持虚拟化
  lm(64位)
  vmx 支持虚拟化 Intel
  svm 支持虚拟化 AMD


# 2 逻辑cpu个数
grep "processor" /proc/cpuinfo  # 后面可加 "| wc -l"  直接显示个数
  processor : 0

# 3 物理cpu个数
grep "physical id" /proc/cpuinfo
  physical id : 0

# 4 cpu核数
grep "cpu cores" /proc/cpuinfo    
  cpu cores : 1

2.3 内核启动参数 /proc/cmdline

# 1 查看内核启动参数
cat /proc/cmdline
  BOOT_IMAGE=/vmlinuz-3.10.0-1127.13.1.el7.x86_64 root=UUID=84...2f04 ro rhgb quiet LANG=zh_CN.UTF-8


# 2 查看启动时间
uptime
 17:42:40 up 1 day,  1:33,  2 users,  load average: 0.00, 0.01, 0.05
posted @ 2022-04-01 15:57  Edmond辉仔  阅读(105)  评论(0)    收藏  举报