zoukankan      html  css  js  c++  java
  • Linux 目录结构

    FHS全称(Filesystem Hierarchy Standard),中文意思是目录层次标准,是linux的目录规范标准。

    • FHS定义了两层规范
    • 第一层:“/”目录下的各个目录应该放什么文件数据,例如:/etc目录下放置系统的配置文件,例如:/etc/exports,/etc/hosts,而/bin和/sbin放置程序及系统命令。
    • 第二层:是针对/usr(unix software resource|Secondary hierarchy)和/var(Variable data)这两个目录的子目录来定义。例如:/var/log下放置系统日志文件等

    根目录结构

    linux系统的目录结构最顶端是“/”,一切目录从根开始。 我们可以通过tree命令得到根(/)下的目录结构。

    重要目录

    • dev 设备目录
    • etc/ 系统配置2及服务配置文件,服务启动命令目录/etc/init.d
    • /proc 显示内核及进程信息的虚拟文件系统
    • /tmp 临时文件目录,
    • /home 普通用户家目录
    • /root 超级管理员家目录
    • var 变化的目录,一般是日志文件(/varlog),cache目录。/varlogmessages,/var/logsecure
    • usr 用户程序及数据,帮助文件,二进制命令等目录(usrlocal/
    • bin 普通用户命令的目录
    • /sbin 和/usr/sbin/:超级用户命令的目录

    重要子目录说明

    必须要掌握的linux目录路径知识

    修改网卡配置文件

    配置文件路径:
    /etc/sysconfig/network-scripts/ifcfg-eth0
    (1)查看eth0(第二块eth1)
    (2)通过setup===>"network configuration"修改网卡配置就是再改这个文件

    (3)固定IP地址

    (4)重启网卡/etc/init.d/network restart(影响所有网卡)

    (5)ifdown eth0 && ifup eth0只针对eth0网卡

     

    注意

    设置文件ifcfg-interface-name包含了初始化接口所需要的大部分周详的信息。其中interface-name将根据网卡的类型和排序而不同,一般名字为eth0,eth1,ppp0等,其中eth表示以太(eth0)类型网卡,0表示第一块网卡,1表示第二块网卡,而ppp0则表示第一个point-to-poirt protocol网络接口。在ifcfg文件中定义
    的各项目取决于接口类型。
    下面的值较为常见:

    DEVICE=name,其中,name是物理设备名

    IPADDR=addr,其中addr是IP地址

    NETMASK=mask,其中,mask是网络掩码值

    GATEWAY=addr,其中addr是网关地址

    ONBOOT=answer,其中answer是yes(引导时激活设备)或no(引导时不激活设备)

    USERCTL=answer,其中,answer是yes(非root用户能控制该设备)或no

    BOOTPROTO=proto,其中,proto取下列值之一:none,引导时不使用协议;static静态分配地址;bootp,使用BOOTP协议,或dhcp,使用DHCP协议

    上图配置实际上修改的是/etc/sysconfig/network-scripts/ifcfg-eth0文件

    上图设置实际上修改的是/etc/resolv.conf这个文件

    小结

    1,linux客户端DNS可以在网卡配置文件里设置(ifcfg-eth0)

    2,linux客户端DNS也可以在/etc/resolv.conf里设置

    3,网卡里的设置DNS优先于/etc/resolv.conf,如果重启网络网卡的dns会覆盖/etc/resolv.conf的设置
    4,etc/hosts:设定用户IP与名字(域名)的对应解析表,相当于本地LAN局域网内的DNS解析文件
    5,/etc/sysconfig/network:可修改主机名及网卡启动,网关等配置。永久更改主机名,需同时修改以下两项:
    (1)vi /etc/sysconfig/network
    (2)hostname 主机名

    • etc/fstab:开机自动挂载文件系统的一个列表(具体配置以后详说)

    思考: fstab一旦配置错误,会导致服务器无法启动。如何修复?

    • /etc/rc.local:用于存放开机自启动程序命令的文件(chkconfig 常用来管理yum/rpm安装的程序的服务的开机自启动/etc/init.d)

    在开机时,linux会把/etc/rc.local里的内容执行一遍

    • etc/inittab:设定系统启动时init进程将把系统设置成什么样的,runlevel运行级别及加载相关的级别对应启动文件设置
    • /etc/exports:NFS网络文件系统用的配置文件
    • etc/init.d:这个目录是用来存放通过yum或rpm工具安装的软件的默认启动程序(启动脚本)的目录
    • /etc/xinit.d:如果服务器是通过xinetd模式运行的,它的脚本要放在这个目录里。有些系统没有这个目录,比如Slackware,(无人值守pxe+kickstart安装系统时会用到/etc/xinit.d)
    • /etc/profile:系统全局环境变量,永久生效的配置文件

    (用户的环境变量:~/.bash_profile,~/.bashrc)

    /etc/目录下的重要目录和文件

    • /etc/issue(/etc/issue.net):记录用户登录前显示的系统版本等信息
    • /etc/motd:登录提醒(里面写的任何东西都会在所有用户登录前显示出来)
    • etc/redhat-release:包括一行声明RedHat版本号和名称的信息。
    • /etc/group:设定用户的组名与相关信息
    • /etc/passwd:用户账号信息文件
    • /etc/shadow:用户密码信息文件
    • /etc/gshadow:组密码文件
    • /etc/sudoers:可以执行使用sudo命令的配置文件(权限提升)
    • etc/securetty:设定哪些中断可以让root登录
    • /etc/login.defs:所有用户登陆时的缺省配置
    • /etc/modprobe.conf:内核模块额外参数设定
    • /etc/rsyslog.conf:日志设置文件(仅限centos6.x)

    其他目录

    • /lib:系统会使用到的函数库
    • /lib/modules:kernel的相关模块
    • /var/lib/rpm:rpm套件安装处
    • usr/bin:这个目录是可执行程序的目录;当我们从系统自带的软件包安装一个程序时,他的可执行文件大多会放在这个目录。
    • lib64:库文件存放目录
    • usr/sbin:这个目录也是可执行程序的目录,但大多存放涉及系统管理的命令;相似目录是/sbin或/usr/local/sbin或/usr/X11R6/sbin等;
    • /usr/local:这个目录一般用来存放用户自编译安装软件的存放目录;一般是通过源码包安装的软件,如果没有特别指定安装目录的话,一般是安装在这个目录中。
    • /usr/local/bin:用户安装的小的应用程序,和一些在/usr/local目录下大应用程序的符号连接
    • /usr/local/sbin:系统全局环境目录,可放置一些不需要加路径执行的脚本
    • /usr/share:系统共用的东西存放地,比如/usr/share/doc和/usr/share/man帮助文件
    • /usr/src:内核源码存放目录,比如下面有内核源码目录,比如linux,linux-2.xxx.xx目录等。

    1,rpm -ivh(存在rpm包,又无法使用yum的时候)
    2,yum install
    (习惯:线上对外的服务器很少安装apache,nginx,mysql,功能性软件会用yum)
    3,源码(./configure,make,make install),定制。大中小企业重要服务。
    门户:源码---定制RPM包---制作yum仓库----yum安装

    • /usr/bin:使用者可执行的binary file目录
    • /usr/local/bin:使用者可执行的binary file目录
    • /usr/lib:系统会使用到的函数库
    • /usr/local/lib:系统会使用到的函数库

    /var目录下的路径知识

    • /var:日志文件
    • /var/log:各种系统日志存放地
    • /var/log/messages:系统信息默认日志文件,非常重要。按周自动轮循
    • /var/log/secure:记录登入系统存取信息的文件,按周自动轮循,例如:pop3,ssh,telnet,ftp都会记录在此。系统安全的日志文件
    • /var/spool:定时任务默认路径,按用户名命名的文件(/var/spool/cron/root)
    • var/spool/clientmqueue:sendmail临时邮件文件目录,有很多原因会导致这个目录碎文件很多,比如crontab定时任务命令不加>/dev/null等。工作中偶尔会因为该目录文件太多,导致/var所在的分区inode数量被消耗尽,无法写入文件的情况(centos6.x不会装sendmail,所以不会有这个问题)

    /proc下的重要路径知识

    top:看cpu等

    • /proc:虚拟目录,是内存的映射,内核和进程的虚拟文件系统目录
    • /proc/version:内核版本
    • /proc/sys/kernel:系统内核功能
    • /proc/sys/net/ipv4:修改proc的配置时临时生效。
      (/etc/sysctl.conf内核参数里配置才是永久生效。两个路径的修改效果是一样的。net.ipv4.tcp_tw_reuse=1实际上就是修改/proc/sys/net/ipv4/tcp_tw_reuse的内容)
    • /proc/cpuinfo:关于处理器的信息,如类型,厂家,型号和性能等
    • /proc/meminfo:系统内存信息,free -m
    • /proc/devices:当前运行内核所配置的所有设备清单
    • /proc/dma:当前正在使用的DMA通道
    • /proc/filesystems:当前运行内核所配置的文件系统
    • /proc/initerrupts:正在使用的中断,和曾经有多少个中断。
    • /proc/ioports:当前正在使用的I/O端口。
    • /proc/loadavg:系统负载平均值信息(系统的繁忙情况,比较准确,但是不够细致系统性能指标),uptime的结果。(负载值不要超过CPU的核数。看负载top,uptime,w

    必须掌握的路径及文件

    • 1.    /etc/sysconfig/network-scripts/ifcfg-eth0(第一块网卡配置文件)
    • 2.    /etc/resolv.confDNS的配置文件,网卡配置文件优先resolv.conf
    • 3.    /etc/hosts(ip与域名(主机名)解析表)
    • 4.    /etc/sysconfig/network(主机)
    • 5.    /etc/fstab(开机自动挂载列表)
    • 6.    /etc/rc.local(开机自启动文件,自启动命令,脚本)
    • 7.    /etc/inittab Linux开机运行级别配置文件)
    • 8.    /etc/init.d(服务启动命令脚本目录)
    • 9.    /etc/profile(全局环境变量)
    • 10. /etc/bashrc(别名)
    • 11. /usr/local(编译安装软件默认安装目录)
    • 12. /var/log/message(系统日志)
    • 13. /var/log/secure(系统安全日志)
    • 14. /var/spool/cron/root(定时任务,root目录)
    • 15. /proc/cpuinfo(系统cpu信息)
    • 16. /proc/meminfo(系统内存信息)
    • 17. /proc/loadavg(系统cpu负载程度)
    • 18./proc/mounts(系统挂载信息)
  • 相关阅读:
    evernote100个做笔记的好方法
    平衡二叉树的调整模版
    晨间日记的奇迹
    hdu 2952 Counting Sheep
    hdu 1535 Invitation Cards
    poj 3259 Wormholes(spfa)
    poj 2263 Heavy Cargo(floyd)
    poj 3268 Silver Cow Party(SPFA)
    hdu 1690 Bus System
    hdu 3631 Shortest Path(Floyd)
  • 原文地址:https://www.cnblogs.com/mustark/p/10415245.html
Copyright © 2011-2022 走看看