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

    一、Linux目录结构

    #####linux目录结构特点
    一切从根开始
    磁盘/设备/分区没有挂载 无法使用
    
    举例-linux下面使用光盘
    ###1.把光盘放入到光驱中
    
    ###2.linux中使用光盘 /dev/cdrom
    [root@oldboyedu-01 ~]# ll /dev/cdrom
    lrwxrwxrwx. 1 root root 3 Sep 25 10:01 /dev/cdrom -> sr0
    [root@oldboyedu-01 ~]# cd /dev/cdrom
    -bash: cd: /dev/cdrom: Not a directory
    [root@oldboyedu-01 ~]# cat /dev/cdrom
    
    ###3.把光盘挂载到系统里面
    [root@oldboyedu-01 ~]# mount /dev/cdrom  /mnt/
    mount: block device /dev/sr0 is write-protected, mounting read-only
    [root@oldboyedu-01 ~]# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sda3       8.8G  1.4G  7.0G  17% /
    tmpfs           1.9G     0  1.9G   0% /dev/shm
    /dev/sda1       190M   40M  141M  22% /boot
    /dev/sr0        3.7G  3.7G     0 100% /mnt
    [root@oldboyedu-01 ~]# cd /mnt/
    
    小结:
    1.一切从根开始,一切皆文件
    2.linux设备(光盘/磁盘分区)不挂载无法使用
    3.挂载相当于给磁盘分区/设备 开了一个入口 通过入口进入到光盘/磁盘分区中
    4.入口-挂载点-目录

    1./bin - 重要的二进制 (binary) 应用程序


    包含二进制文件,系统的所有用户使用的命令都在这个目录下。

    2./boot - 启动 (boot) 配置文件


    包含引导加载程序相关的文件,系统引导程序+系统的内核

    3./dev - 设备 (device) 文件


    包含设备文件,包括终端设备,USB或连接到系统的任何设备。

    4./etc - 配置文件、启动脚本等 (etc)

    包含所有程序所需的配置文件,也包含了用于启动/停止单个程序的启动和关闭shell脚本。

    5./home - 本地用户主 (home) 目录

    所有用户用home目录来存储他们的个人档案

    6./lib - 系统库 (libraries) 文件

    包含支持位于/bin和/sbin下的二进制文件的库文件。

    7./lost+found - 在根 (/) 目录下提供一个遗失+查找(lost+found) 系统

    必须在root用户下才可以查看当前目录下的内容。

    8./media - 挂载可移动介质 (media),诸如 CD、数码相机等

    用于挂载可移动设备的临时目录

    9./mnt - 挂载 (mounted) 文件系统

    临时安装目录,系统管理员可以挂载文件系统

    10./opt - 提供一个供可选的 (optional) 应用程序安装目录

    包含从各个厂商的附加应用程序,附加的应用程序应该安装在/opt或者/opt的子目录下。

    11./proc - 特殊的动态目录,用以维护系统信息和状态,包括当前运行中进程 (processes) 信息。

    包含系统进程的相关信息,是一个虚拟的文件系统,包含有关正在运行的进程的信息,系统资源以文本信息形式存在。

    为了解决一切皆文件

    12./root - root (root) 用户主文件夹,读作“slash-root”

    13./sbin - 重要的系统二进制 (system binaries) 文件

    也是包含的二进制可执行文件。在这个目录下的linux命令通常都是由系统管理员使用的,对系统进行维护。

    14./sys - 系统 (system) 文件

    虚拟的目录

    15./tmp - 临时(temporary)文件

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

    16./usr - 包含绝大部分所有用户(users)都能访问的应用程序和文件

    包含二进制文件,库文件。文档和二级程序的源代码

    17./var - 经常变化的(variable)文件,诸如日志或数据库等

    代表变量文件。在这个目录下可以找到内容可能增长的文件

    二、etc目录

    1、网卡的配置文件

    setup命令的本质就是修改这个文件

    --/etc/sysconfig/network-scripts/ifcfg-eth0

    DEVICE=eth0                                ###网卡的名字
    HWADDR=00:0c:29:1e:67:61                   #@@hardware address硬件地址 MAC地址
    TYPE=Ethernet                              ###互联网  
    UUID=3405d22b-1aab-45a5-b57f-c0d005e4f269  ###UUID 系统中唯一的标识
    ONBOOT=yes                                 #@@booton 在重启的时候是否开启网卡(自动运行)
    NM_CONTROLLED=yes                          ###是否能被network软件进行管理
    BOOTPROTO=none                             #@@网卡获取ip地址的方式
    #none/static ip地址是固定的,服务器的IP如果是动态的,可就乱了
    #dhcp        自动获取ip地址
    IPADDR=10.0.0.200                          #@@ ip address ip地址
    NETMASK=255.255.255.0                      ### 子网掩码 局域网内最多能有多少机器
    GATEWAY=10.0.0.2                           #@@ 网关 默认的出口
    USERCTL=no                                 ### 是否准许普通用户管理网卡 开 关 重启
    PEERDNS=yes                                ### 网卡的配置优先于DNS
    DNS1=223.5.5.5                             #@@
    DNS2=223.6.6.6                             #@@

    2、DNS域名解析系统

    把使用的域名转换为ip地址

    常见的DNS服务器

    ###阿里云的DNS
    #223.5.5.5
    #223.6.6.6
    
    ###114
    #114.114.114.114
    #114.114.115.115
    
    ###谷歌
    #8.8.8.8

    常见的DNS有关的错误

    ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'"
    错误       无法     解析    域名  mirrorlist.centos.org

    [root@oldboyedu-01 ~]# yum  install  tree
    Loaded plugins: fastestmirror, security
    Setting up Install Process
    Loading mirror speeds from cached hostfile
    Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os&infra=stock error was
    14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'"
    Error: Cannot find a valid baseurl for repo: base
    
    
    ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'"
    错误       无法     解析    域名  mirrorlist.centos.org
               无法解析域名##linux无法上网
    1.ping www.baidu.com   #是否能上网
    
    2.ping 223.5.5.5       #DNS是否有问题
    
    [root@oldboyedu-01 ~]# ping www.baidu.com
    ping: unknown host www.baidu.com
          未知的   域名
    [root@oldboyedu-01 ~]# ping 223.5.5.5
    PING 223.5.5.5 (223.5.5.5) 56(84) bytes of data.
    64 bytes from 223.5.5.5: icmp_seq=1 ttl=128 time=50.7 ms
    64 bytes from 223.5.5.5: icmp_seq=2 ttl=128 time=50.4 ms
    64 bytes from 223.5.5.5: icmp_seq=3 ttl=128 time=49.9 ms
    64 bytes from 223.5.5.5: icmp_seq=4 ttl=128 time=49.8 ms
    64 bytes from 223.5.5.5: icmp_seq=5 ttl=128 time=50.3 ms
    ^C
    --- 223.5.5.5 ping statistics ---
    5 packets transmitted, 5 received, 0% packet loss, time 4810ms
    rtt min/avg/max/mdev = 49.840/50.257/50.744/0.416 ms
    [root@oldboyedu-01 ~]# #1.有问题
    [root@oldboyedu-01 ~]# #2.ping通畅
    [root@oldboyedu-01 ~]# #DNS有问题
    
    
    ##如何修改DNS
    ####1.在网卡配置文件中添加上
    DNS1=223.5.5.5
    DNS2=223.6.6.6
    
    [root@oldboyedu-01 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
    DEVICE=eth0
    HWADDR=00:0c:29:1e:67:61
    TYPE=Ethernet
    UUID=3405d22b-1aab-45a5-b57f-c0d005e4f269
    ONBOOT=yes
    NM_CONTROLLED=yes
    BOOTPROTO=none
    IPADDR=10.0.0.200
    NETMASK=255.255.255.0
    GATEWAY=10.0.0.2
    USERCTL=no
    PEERDNS=yes
    IPV6INIT=no
    DNS1=223.5.5.5
    DNS2=223.6.6.6
    
    ###2.网卡的配置生效-重启网卡
    
    #####重启某一个网卡
    ifdown eth0 && ifup eth0
    
    #####重启所有网卡
    /etc/init.d/network restart
    
    网卡配置小结:
    1.屌丝逃离洗浴中心之路
    2.如何修改DNS
    3.IPADDR,GATEWAY,ONBOOT,BOOTPROTO,DNS1,DNS2

    配置DNS

    --/etc/resolv.conf

    ##网卡配置文件里面的DNS优先于 /etc/resolv.conf
    ##配置DNS都在网卡里面配置

    3、修改主机名

    --/etc/sysconfig/network
    #######第一个里程碑-查看当前的主机名
    [root@oldboyedu-01 ~]# hostname
    oldboyedu-01


    #######第二个里程碑-临时修改主机名-重启服务器之后失效
    [root@oldboyedu-01 ~]# hostname oldboyedu01-nb
    [root@oldboyedu-01 ~]# hostname
    oldboyedu01-nb


    #######第三个里程碑-永久修改主机名-重启服务器之后生效
    [root@oldboyedu01-nb ~]# cat /etc/sysconfig/network
    NETWORKING=yes
    HOSTNAME=oldboyedu01-nb

     #######最后一步:让主机名能解析(ping主机名可以畅通)

    [root@Dao ~]# ping $(hostname)

    vim /etc/hosts

    添加10.0.0.200  Linux_dao(你的hostname)

    新学一个快捷键:esc + .  使用上一个命令的最后一个

    4、HOST文件

    --/etc/hosts 

    ip地址与域名解析关系  对主机名进行解析

    作用:
    在网站需要更新之前,把地址配置到本地的虚拟环境中,而不是真实的


    ##上线之前需要进行测试-www.jd.com www.baidu.com  www.oldboyedu.com
    ##真实访问的时候 www.baidu.com ---->通过ping 得到 119.75.216.20
    ###在测试的时候 下单---www.jd.com www.baidu.com 这就成了真的下单,东西过几天就送到了你的手上
    ####想办法把 www.jd.com www.baidu.com 解析到 10.0.0.200(测试机器)

    在文件中添加设置
    10.0.0.200  www.baidu.com www.jd.com 
    ##进行测试

    win中的host文件
    /etc/hosts
    C:WindowsSystem32driversetchosts

    5、开机的时候自动挂载的文件

    --/etc/fstab       开机的时候给每个磁盘分区开一个入口


    #第一列 --表示设备/分区
    #第二列 --表示入口/目录/挂载点

    df -h 查看系统磁盘的大小和使用情况

    blkid 查看 设备详细列表

    6、开机的时候自动运行的文件

    --/etc/rc.local    需要开机自启动的软件/命令/服务放在这个文件中
    Startup
    如何让一个软件/脚本/服务开机自动运行?
    1./etc/rc.local                 # 服务器运行软件的清单
    2.通过chkconfig管理      # 开机自启动

    7、开机的时候运行级别的配置文件

    --/etc/inittab 
    #init tab(table)


    ######       1.linux运行级别讲解
    0     关机状态,不要把运行级别设置为0
    1     单用户模式 root用户密码忘记了
    2     多用户模式,但是没有NFS
    3     完全的多用户模式,命令模式,文本模式
    4     未使用
    5     X11,桌面模式,图形化界面模式
    6     重启状态,不要把运行级别设置为6
    ######     2.如何查看当前运行级别
    [root@oldboyedu01-nb ~]# runlevel
    N 3
    [root@oldboyedu01-nb ~]# #                  N                                            3
    [root@oldboyedu01-nb ~]# #上一次使用的运行级别     当前系统的运行级别
    ######     3.如何切换运行级别-临时
    [root@oldboyedu01-nb ~]# #上一次使用的运行级别     当前系统的运行级别
    [root@oldboyedu01-nb ~]# init 5
    [root@oldboyedu01-nb ~]# runlevel
    3 5
    ######     4.如何永久修改运行级别-重启生效
    [root@oldboyedu01-nb ~]# tail -1 /etc/inittab
    id:3:initdefault:


    小结:
    1.0-6含义
    2.如何查看
    3.如何修改 临时 永久

    8、服务管理的命令

    Linux放置命令的地方有哪些?

    --/etc/init.d/

    9、系统环境变量 别名

    --/etc/profile


    #PS1 PATH
    #LANG==>/etc/sysconfig/i18n  单独放置

    10、别名

    --/etc/bashrc  正统存放别名的地方

    ######国法(全国各地生效)
    /etc/profile     系统环境变量 别名   √√√√√---常用
    /etc/bashrc      别名


    ######家规(地方政策 当前用户生效)
    ~/.bashrc       
    ~/.bash_profile

    ~ 表示当前用户的家目录
    root   ~ ===== /root
    oldboy ~ ===== /home/oldboy

    11、编译安装的软件默认的位置

    /usr/local


    C:Program Files ---------windows安装软件默认的位置


    Linux下面安装软件安装的3种方法
    1.yum   (自动解决安装依赖的软件)  点外卖-你缺少什么外面给你解决
    yum   install  tree

    yum   install  tree   -y

    2.rpm    (缺啥少啥自己解决)         速冻水饺-半成品-缺少的东西自己解决

    3.编译安装                              自己做饭
      买菜切菜---------炒菜-----上菜
      ./configure-------make----make install
    [root@oldboyedu01-nb ~]# ##查看软件是否安装成功
    [root@oldboyedu01-nb ~]# rpm -qa |grep tree
    tree-1.5.3-3.el6.x86_64

    /usr/share   另一个安装软件的地方,主要是系统文档,了解一下

    12、系统日志

    系统默认日志信息

    #######/var/log/messages

    系统用户的登录信息
    #######/var/log/secure   (谁 什么时候 从哪里登录的 是否成功)

    grep   “Failed Password”  /var/log/secure  从登陆信息日志中获取是否有人在尝试破解密码

    13、虚拟目录proc

    --/proc/meminfo    内存信息


    [root@oldboyedu01-nb ~]# free
                 total       used       free     shared    buffers     cached
    Mem:       3908500     386300    3522200        236      39192     165944
    -/+ buffers/cache:     181164    3727336
    Swap:       786428          0     786428
    [root@oldboyedu01-nb ~]# free -h
                 total       used       free     shared    buffers     cached
    Mem:          3.7G       377M       3.4G       236K        38M       162M
    -/+ buffers/cache:       176M       3.6G
    Swap:         767M         0B       767M


    --/proc/cpuinfo 查看cpu信息

    lscpu    显示CPU信息


    --/proc/loadavg 系统的负载


    负载:系统的繁忙程度
    最近1分钟 最近5分钟 最近15分钟 平均负载
    [root@oldboyedu01-nb ~]# w
    22:20:05 up 12:18,  4 users,  load average: 0.00, 0.00, 0.00
    USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
    root     pts/0    10.0.0.1         19:16    2:08m  0.18s  0.18s -bash
    root     pts/1    10.0.0.1         11:03    3:02m  0.06s  0.06s -bash
    root     pts/2    10.0.0.1         20:32    1.00s  0.18s  0.07s w
    root     pts/4    10.0.0.1         20:18    2:01m  0.03s  0.03s -bash
    #系统的负载接近系统cpu的核心数量   表示cpu越忙


    --/proc/mounts 显示系统挂载信息


    df –h        查看磁盘空间的使用情况,人类可读
    findmnt  相似于   cat /proc/mounts

    三、Linux系统的启动过程

    1.开机自检 BIOS
    2.MBR引导
    3.GRUB菜单
    4.加载内核
    5.运行init进程
    6.从/etc/inittab读取运行级别
    7.根据/etc/rc.sysinit 初始化系统(设置主机名 设置ip)
    8.根据运行级别启动对应的软件(开机自启动软件)
    9.运行mingetty显示登录界面

  • 相关阅读:
    Django2.1发布,Django2.1新特性
    解决tomcat启动慢问题
    ELKstack简介及环境部署
    Django项目中使用celery做异步任务
    vue moment库格式化处理后端传的日期
    vueAdmin ui基础包
    DRF项目工程基础包
    linux文件系统命令和分区 挂载
    linux解压缩基本命令使用
    vim基本操作
  • 原文地址:https://www.cnblogs.com/bubu99/p/12295955.html
Copyright © 2011-2022 走看看