linux目录结构学习与简析

by:授客 QQ1033553122

---------------接Part 1--------------

#1.查看CPU信息

#cat /proc/cpuinfo

processor     : 0    #每个逻辑cpu 唯一编号0-N,编号到N则说明有N个逻辑CPU

vendor_id     : GenuineIntel       #CPU制造商标,GenuineIntel表因特尔处理器

cpu family    : 6    #CPU厂家生产的CPU系列号, 可用来确定处理器属于那一代产品

model         : 23   #型号标识,用来确定处理器的制作技术以及属于该系列的第几代核心

model name    : Pentium(R) Dual-Core  CPU   E5500  @ 2.80GHz #型号名称,编号,标称主频

stepping      : 10   # CPU属于制作更新版本

cpu MHz       : 2800.175    #说明:CPU实际使用主频

cache size    : 2048 KB     #二级缓存的值

physical id   : 0    说明只有一个物理cpu

siblings      : 2    #当前逻辑cpu所在物理CPU中,逻辑CPU的总个数

core id       : 0    #每个物理核在当前物理cpu中的唯一编号

cpu cores     : 2    #当前逻辑cpu所在物理CPU的物理核数

apicid        : 0    #用来区分不同逻辑处理器的编号

initial apicid       : 0

fdiv_bug      : no

hlt_bug              : no

f00f_bug      : no

coma_bug      : no

fpu           : ye   #是否具有浮点运算单元

fpu_exception : yes  #是否支持浮点计算异常

cpuid level   : 13   #执行cpuid指令前,eax寄存器中的值

wp            : yes  #表明当前CPU是否在内核态支持对用户空间的写保护

flags         : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm xsave lahf_lm dts tpr_shadow vnmi flexpriority

#flags当前CPU支持的功能

bogomips      : 5600.35     #在系统内核启动时粗略测算的CPU速度(Million Instructions Per Second)

clflush size  : 64   #每次刷新缓存的大小单位

cache_alignment      : 64   #缓存地址对齐单位

address sizes : 36 bits physical, 48 bits virtual      #可访问地址空间位数

power management:    #对能源管理的支持

processor     : 1

……………………………

更详细解说:参考链接http://linux.chinaitlab.com/administer/893420.html

说明:

如果没开启HT技术,逻辑CPU数量=物理cpu数量 x cpu cores

支持并开启HT技术,逻辑CPU数量=物理cpu数量 x cpu cores x 2

注意:Linux下top查看的CPU也是逻辑CPU个数

具有相同core
id的CPU是同一个core的超线程(HT-->
Hyper-Threading)

具有相同physical
id的CPU是同一个CPU封装的线程或核心

基于以上基础:

#查看物理CPU的个数

# cat /proc/cpuinfo | grep "physical id" | uniq | wc –l

#查看逻辑CPU的个数

# cat /proc/cpuinfo | grep processor | wc –l

#查看所有物理CPU中总核数

# cat /proc/cpuinfo | grep cores | wc -l

#2.查看内存信息

# cat /proc/meminfo

HDFW:/proc# cat /proc/meminfo

MemTotal:        
989392 kB 
#所有可用RAM大小(物理内存减去一些预留位和内核的二进制代码大小)

MemFree:         
666664 kB 
#LowFree和HighFree的总和,被系统留着未使用的内存

Buffers:          
28844 kB 
#缓冲器高速缓冲存储器的内存大小

Cached:          
109576 kB 
#被页高速缓冲存储器使用的内存大小(diskcache
minus SwapCache)。pagecache的大小为一页,通常为4K

SwapCached:           
0 kB #
交换空间内存大小

Active:          
160980 kB 
//活跃使用中的高速缓冲存储器页面文件大小

Inactive:         
99812 kB 
//不经常使用的高速缓冲存储器页面文件大小

Active(anon):    
126284 kB

Inactive(anon):   
24172 kB

Active(file):     
34696 kB

Inactive(file):   
75640 kB

Unevictable:          
0 kB

Mlocked:              
0 kB

HighTotal:       
104200 kB

HighFree:           
572 kB

LowTotal:        
885192 kB

LowFree:         
666092 kB

SwapTotal:            
0 kB 
#交换空间的总大小

SwapFree:             
0 kB 
#未被使用交换空间的大小

Dirty:               
20 kB  
#等待被写回到磁盘的内存大小

Writeback:            
0 kB 
#正在被写回到磁盘的内存大小

AnonPages:       
122372 kB 
#未映射页的内存大小

Mapped:           
36252 kB 
#设备和文件等映射的大小

Shmem:            
28084 kB 
#共享内存大小

Slab:             
26332 kB 
#内核数据结构缓存的大小,可减少申请和释放内存的消耗

SReclaimable:     
10908 kB #可收回Slab的大小

SUnreclaim:       
15424 kB 
#不可收回Slab的大小

KernelStack:       
2984 kB

PageTables:        
6844 kB

NFS_Unstable:         
0 kB 
#不稳定页表的大小

Bounce:               
0 kB

WritebackTmp:         
0 kB

CommitLimit:     
494696 kB

Committed_AS:   
1125248 kB

VmallocTotal:    
122880 kB #
虚拟内存总大小

VmallocUsed:      
28164 kB #已经被使用的虚拟内存大小

VmallocChunk:     
41364 kB

HardwareCorrupted:    
0 kB

HugePages_Total:      
0

HugePages_Free:       
0

HugePages_Rsvd:       
0

HugePages_Surp:       
0

Hugepagesize:      
4096 kB

DirectMap4k:      
20472 kB

DirectMap4M:     
888832 kB

说明:Cache是加速“读”,而buffer是缓冲“写”,前者解决读的问题,保存从磁盘上读出的数据,后者是解决写的问题,保存即将要写入到磁盘上的数据。

由上面的基础上引出的:

#查看RAM内存大小命令

[root@localhost ~]# grep MemTotal /proc/meminfo

MemTotal:       
1939012 kB

#查看交换空间的大小

[root@localhost ~]# grep SwapTotal /proc/meminfo

SwapTotal:     
16482296 kB

#3.查看系统内核版本

# cat /proc/version

Linux version 2.6.35.12-2012r6360 (root@new-lenny) (gcc version
4.3.2 (Debian 4.3.2-1.1) ) #5 SMP Fri Aug 17 07:36:58 CST
2012

说明:

linux内核版本号

Linux version 2.6.35.12-2012r6360

gcc编译器版本号

gcc version 4.3.2

操作系统:Debian
4.3.2-1.1

编译次数:#5

最后编译时间:SMP
Wed Feb 27 18:41:08 CST 2013

#4.查看已经加载的文件系统列表

# cat /proc/mounts

/dev/loop0 /base squashfs ro,relatime 0 0

/dev/loop1 /patch squashfs ro,relatime 0 0

none / aufs rw,relatime,si=7addee1f 0 0

说明:从左到右,依次是文件系统,挂载点文件系统类型

================

/var 

Variable Files,代表变量文件,且文件内容会不断增长。

/var/log/

程序的Log文件,特别是login 
(/var/log/wtmp log所有到系统的登录和注销)

和syslog
(/var/log/messages)里存储所有核心和系统程序信息。/var/log

里的文件经常不确定地增长,应该定期清除.

/var/log/message

记录系统发生的错误,告警等信息

/var/lib/

存放包和数据库文件

/var/lib/rpm/     
rpm套件安装处,这可以让

last命令产生一份用户登陆的列表。系统重新开机时,文件中也会有记录。

/var/local

存放/usr/local中安装的可变数据.注意,及时本地安装的程序也会使用其他/var目录,如/var/lock

/var/mail/

存放邮件文件

/var/run/

保存到下次引导前有效的关于系统的信息文件。

/var/spool/   
mail,news,打印队列和其他队列工作的目录。

/var/lock/

存放锁文件

/var/tmp/

存放重启必须的临时文件

/var/log/wtm

文件包含了每个用户的登陆次数和持续时间的二进制信息。

/var/run/utmp 
二进制文件,包含了目前登陆系统的用户信息。通过who,w命令可以产生目前登陆用户的信息。

/var/log/boot.log

记录开机或者是一些服务启动的時候,所显示的启动或关闭信息

/var/log/maillog

记录邮件存取或往来(
sendmail
与pop3
)的使用者记录

/var/log/cron

记录crontab这个例行性服务的内容。crontab将命令存在/var/spool/cron/crontabs这个目录下的一个文件中,该文件以用户名来命名。一个称为crond的看守进程会定时读取这个文件,在适当的时候执行命令。一般来说,系统上其中有一个rc文件会在开机时自动执行crond.所以实际上并没有叫做cron的命令。只有crontab这个工具和crond看守程序

================

/tmp

Temporary Files,包含系统和用户创建的临时文件。当系统重启时,该目录下的文件将被删除

================

/usr  

User Programs,包含二进制文件,库文件,文档,二次开发源代码。

/usr/etc/

存放系统配置文件和脚本文件

/usr/bin/  
包含用户程序的二进制文件,几乎所有用户命令。如果你不能在/bin下找到用户二进制文件,那么在/usr/bin下查找,如:at,awk,cc,less,scp

/usr/sbin/  包含系统管理员二进制文件。如果你不能在/sbin下找到系统二进制文件,那么在/usr/sbin下查找,如:atd,cron,sshd,useradd

/usr/local/ 
是本地系统管理员用来自由添加程序的目录。存放你从源安装的用户程序。一般是你安装软件的目录,这个目录就相当于在windows下的programefiles这个目录。如:当你从源安装apache,它会跑到/usr/local/apache2目录下

/usr/local/bin/

使用者可执行的
binary file
的目录

/usr/local/sbin

系统管理员才能执行的指令

/usr/local/lib/

系统会使用到的函数库

/usr/lib/

包含/usr/bin和/usr/sbin目录下的程序所需要用到的类库,随系统安装的应用软件用到的库文件

/usr/lib/autofs/

存放自动挂载设备软件包

/usr/src/    
  
  
存放Linux的安装源代码

/usr/include/

存放c编译的头文件,为了一致性,这实际上应该在/usr/lib

下,但传统上支持这个名字.

/usr/share/

存放结构独立的数据

/usr/share/man/

存放man手册页信息

/usr/share/info/   
GNU信息文档

/usr/share/doc/

其他文档信息

/usr/games

存放游戏和教学文件

================

/home  
Home Directories,供所有用户存储他们的个人文件,如/home/laiyu,/home/john

================

/boot  
Boot Loader Files,包含Boot
Loader相关文件,如Kernel
initrd, vmlinux, grub eg: initrd.img-2.6.32-24-generic,
vmlinuz-2.6.32-24-generic

/boot/grub/

存放启动管理程序所需的文件及程序

/boot/vmlinuz    
linux内核,vmlinuz后面还接版本信息等,如vmlinuz-2.6.32-279.el6.i686

================

/lib  

System Libraries,包含位于/bin、/sbin目录下二进制文件的支持文件。类库文件形式:ld*

或者lib*.so.*,例如:ld-2.11.1.so,
libncurses.so.5.7

/lib/modules/

存放kernel

的相关模块

================

/opt 
Optional add-on Applications,opt表示optional(可选),包含来自私人供货商的应用程序插件。插件应用程序应该安装在/opt/目录下,或者/opt/
sub-directory/下

================

/mnt 
Mount Directory,供系统管理员挂载文件系统的临时加载目录

================

/media 
Removable Media Devices,可移除设备的临时挂载目录,例如CD-ROM的挂载目录:

/media/cdrom
软盘驱动的挂载目录:/media/floppy;
CD刻录器的挂载目录:/media/cdrecorder

================

/srv 

Service Data srv代表service,包含服务器特定服务相关的数据,如

/srv/cvs
包含与 CVS

相关数据

================

/root

超级用户的主目录

================

/lost+found

这个目录一般情况下是空的,每个文件系统都包含了一个lost+found目录,用于保存执行文件系统检查操作中发现的文件问题,

如系统非法关机后,下次启动时,系统会执行文件系统检查并尝试修复损坏文件。这些修复操作将以文件形式保存在lost+found目录。件。这些修复文件可能不完整或没多大意义,但也有可能很是很值得修复的东西

================

/sys 
   
sysfs文件系统的挂载目录。与sysfs文件系统相对应的是/sys目录,其子目录主要有:

/sys/fs/  
进入后查看内核支持哪些类型的文件系统

/sys/block/  
包含所有的块设备

/sys/bus/

包含系统中所有总线类型

/sys/class/  
系统中的设备类型(如网卡设备,声卡设备)

/sys/devices/
包含系统所有的设备,并根据设备挂载的总线类型组织成层次结构。

================

/misc

该目录可以用来存放杂项文件或目录,即那些用途或含义不明确的文件或目录可以存放在该目录下

================

Linux 目录结构学习与简析 Part2的更多相关文章

  1. Linux 目录结构学习与简析 Part1

    linux目录结构学习与简析 by:授客 QQ:1033553122 说明: /             linux系统目录树的起点 =============== /bin      User Bi ...

  2. Linux目录结构简析

    Linux目录结构简析 Linux继承了unix操作系统结构清晰的特点.在linux下的文件结构非常有条理.但是,上述的优点只有在对linux相当熟悉时,才能体会到.现在,虫虫就把linux下的目录结 ...

  3. 实验楼学习linux第一章第四节linux目录结构及文件基本操作

    linux目录结构及文件基本操作 常用命令 切换目录 cd 当前目录 . 上一级目录 .. (.和..开头的都是隐藏文件) 查看隐藏文件 ls -a 上一级所在目录 - 当前用户home目录 ~ 获取 ...

  4. linux命令学习笔记(23):Linux 目录结构

    对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件 目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要,下 ...

  5. Linux学习笔记之Linux目录结构、磁盘命名、启动过程

    1.Linux磁盘命名规则 名称的起名规则——/dev/xxyN: 1.Linux下装所有硬件设备的一个目录叫 /dev(devices) 2.Linux没有C盘.D盘.Linux最根上的一个目录叫  ...

  6. Linux网络性能优化方法简析

    Linux网络性能优化方法简析 2010-12-20 10:56 赵军 IBMDW 字号:T | T 性能问题永远是永恒的主题之一,而Linux在网络性能方面的优势则显而易见,这篇文章是对于Linux ...

  7. day 2 Linux目录结构

    Linux系统的目录结构的基本介绍: 1)在逻辑上的所有目录(包括目录下的子目录)都在最高级别的目录“/”下. 根(/)目录是Linux系统中所有目录的起始点(顶点),根下面的目录及子目录是一个有层次 ...

  8. Linux目录结构以及文件操作

    Linux目录结构 UNIX 是以目录为主的,Linux 也继承了这一优良特性. Linux 是以树形目录结构的形式来构建整个系统的,可以理解为树形目录是一个用户可操作系统的骨架.虽然本质上无论是目录 ...

  9. Linux驱动之中断处理体系结构简析

    S3C2440中的中断处理最终是通过IRQ实现的,在Linux驱动之异常处理体系结构简析已经介绍了IRQ异常的处理过程,最终分析到了一个C函数asm_do_IRQ,接下来继续分析asm_do_IRQ, ...

随机推荐

  1. maven配置多仓库的方法

    刚接触maven就是在公司里配置好的,所以一直以来使用都没毛病,所以一直没有去动这些固有的东西. 但是,后来把公司的电脑拿回家之后,发现有的东西就搞不起来了.原因也看一下就明白了,因为在公司的时候用的 ...

  2. vue 去哪网项目 学习笔记(一)

    启动项 mian.js 是整个项目的入口程序 定义局部组建 components 是定义的局部组建 template 渲染app里的内容 单文件组建 单文件组建是以vue 结尾的内容 app组建的内容 ...

  3. Neo4j学习笔记

    1. 环境搭建 正好最近同学有一台阿里云服务器借我玩,就尝试着在服务器上搭了Neo4j. 环境:CentOS Linux release 7.4.1708 (Core) 安装Java 安装Neo4j需 ...

  4. 14-03 java BigInteger类,BigDecimal类,Date类,DateFormat类,Calendar类

    BigInteger类 发 package cn.itcast_01; import java.math.BigInteger; /* * BigInteger:可以让超过Integer范围内的数据进 ...

  5. html 空格字符类型

    1,Html中空格     不断行的空白(1个字符宽度)     半个空白(1个字符宽度)     一个空白(2个字符宽度)     窄空白(小于1个字符宽度) 2,Css 的方式空格 CSS中当 w ...

  6. 高手速成android开源项目【developer篇】

    主要介绍和Android开发工具和测试工具相关的开源项目. Buckfacebook开源的Android编译工具,效率是ant的两倍.主要优点在于:(1) 加快编译速度,通过并行利用多核cpu和跟踪不 ...

  7. 在线画UML图的工具

    工作需要在线画各种UML图,类图.协作图.用例图等等,调查了一些在线画UML图的工具,有的做的很好但要收费,例如:http://www.gliffy.com/,发现现在免费好用的是ProcessOn: ...

  8. MySQL修改表、字段、库的字符集及字符集说明

    修改数据库字符集: ALTER DATABASE db_name DEFAULT CHARACTER SET character_name [COLLATE ...]; 把表默认的字符集和所有字符列( ...

  9. [译]初试C# 8.0

    原文地址: https://blogs.msdn.microsoft.com/dotnet/2018/12/05/take-c-8-0-for-a-spin/ 初试C# 8.0 昨天我们宣布了Visu ...

  10. [转]Angular2 使用管道Pipe以及自定义管道格式数据

    本文转自:https://www.pocketdigi.com/20170209/1563.html 管道(Pipe)可以根据开发者的意愿将数据格式化,还可以多个管道串联. 纯管道(Pure Pipe ...