继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Linux必知必会的目录结构

胡说叔叔
关注TA
已关注
手记 324
粉丝 129
获赞 581

1.目录结构

复制代码

/bin                     二进制文件  命令/sbin                    超级命令 只有root用户可以使用/boot                    系统的引导文件 系统内核/dev                     设备文件 光盘 硬盘分区/etc                     系统配置文件/home                    普通用户的家目录/root                    超级用户的家目录/lib                     lib库文件/lib64                   lib库文件/lost+found              临时保存数据/mnt                     临时挂载点/opt                     第三方软件安装位置/proc                    虚拟目录 存放内存中的信息 进程 服务信息/sys                     虚拟目录 存放内存中的信息 进程 服务信息/tmp                     临时存储文件的位置/usr                     用户安装/var                     存放日志的位置

复制代码

 

回到顶部

2./etc目录下内容

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

第一块网卡的配置文件

system config/networ-scripts/interface(接口/w网卡)config

如果要修改网卡的信息  修改后 重启即可生效

复制代码

[root@oldboy ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0 linux第一块网卡的配置文件DEVICE=eth0                                        <==设备名称
TYPE=Ethernet                                      <==网络类型  以太网 
UUID=9624a449-b94d-4633-9139-e8459206301d          <==系统中给每个设备的标识符号 在系统中唯一  
ONBOOT=yes                                         <==boot on 在开机或重启网络的时候自启动
NM_CONTROLLED=yes                                  <==是否受系统的network服务控制
BOOTPROTO=none                                     <==网卡获取IP的方法 网卡静态IP还是动态IP
HWADDR=00:0C:29:91:97:B5                           <==HardWare ADDRress硬件地址/MAC地址 网卡唯一
IPADDR=10.0.0.201                                  <==服务器的ip地址
PREFIX=24##等同于NATMASK=255.255.255.0 子网掩码 决定你一个局域网中最多可以有多少台服务器GATEWAY=10.0.0.254                                gate way 默认网关  所有人离开进入都要经过网关
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME="System eth0"DNS1=223.5.5.5                                        <== dns
DNS2=223.6.6.6                                        <== dns

复制代码

BOOTPROTO   static/none   静态IP

               dhcp系统默认  自动获取IP地址

NATMASK=255.255.255.0  这个一般没有  PREFIX=24 一般由这个代替

子网掩码 决定你一个局域网中最多可以有多少台服务器

2.2 /etc/resolv.conf  

DNS  (domain name server/system)域名解析

可使用的DNS(公共DNS)

1.阿里云

DNS1 223.5.5.5

DNS2 223.6.6.6

2.114

114.114.114.114

114.114.115.115

复制代码

DNS配置文件
网卡里的配置文件优先于/etc/resolv.conf   
/etc/resolv.conf                                 dns配置文件
[root@oldboyedu-50 ~]# cat /etc/resolv.conf# Generated by NetworkManager# No nameservers found; try putting DNS servers into your# ifcfg files in /etc/sysconfig/network-scripts like so:#
# DNS1=xxx.xxx.xxx.xxx# DNS2=xxx.xxx.xxx.xxx# DOMAIN=lab.foo.com bar.foo.comnameserver 223.5.5.5nameserver 223.6.6.6

复制代码

2.3 /etc/sysconfig/network

修改主机名的地方

复制代码

临时修改主机名
hostname1.临时修改  hostname
[root@oldboyedu-50 ~]# hostname oldboyedu50  修改[root@oldboyedu-50 ~]# hostname              查看oldboyedu50  
2.3.2 永久修改主机名
[root@oldboyedu-50 ~]# vim /etc/sysconfig/networkNETWORKING=yes
HOSTNAME=oldboyedu-50   ##把名字修改为你要改的修改完退出  重启服务器后生效

复制代码

2.4 /etc/hosts

ip与域名(主机名)解析关系

2.4.1 了解/etc/hosts的作用

复制代码

[root@oldboyedu50-lnb ~]# cat /etc/hosts                          查看内容127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
测试
[root@oldboyedu50-lnb ~]# vim /etc/hosts127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain610.0.0.200 jd.com            ###IP地址与域名的对应关系[root@oldboyedu50-lnb ~]# ping jd.com   再次ping  京东 IP地址变为10.0.0.200PING jd.com (10.0.0.200) 56(84) bytes of data.64 bytes from jd.com (10.0.0.200): icmp_seq=1 ttl=64 time=0.031 ms64 bytes from jd.com (10.0.0.200): icmp_seq=2 ttl=64 time=0.026 ms

复制代码

2.5 /etc/fstab

在开机的时候给每个设备创建一个入口  开机的时候自动挂载列表

复制代码

在开机的时候给每个设备创建一个入口  开机的时候自动挂载列表
[root@oldboyedu50-lnb ~]# column -t /etc/fstab  用 column -t 查看 可以先排列好内容再显示#
#                                          /etc/fstab#                                          Created     by            anaconda        on          Tue         Jul         10      18:21:44     2018#
#                                          Accessible  filesystems,  by              reference,  are         maintained  under   '/dev/disk'#                                          See         man           pages           fstab(5),   findfs(8),  mount(8)    and/or  blkid(8)     for   more  info#UUID=c4f4be67-f408-4f14-b01e-a0c0777932cb  /           ext4          defaults        1           1UUID=8dc40910-35ed-4d1b-acd7-5dad0ad47746  /boot       ext4          defaults        1           2UUID=09e2ce6c-7249-4239-8843-5ef9cc3a9a99  swap        swap          defaults        0           0
tmpfs                                      /dev/shm    tmpfs         defaults        0           0
devpts                                     /dev/pts    devpts        gid=5,mode=620  0           0
sysfs                                      /sys        sysfs         defaults        0           0
proc                                       /proc       proc          defaults        0           0
设备磁盘分区                               挂载点

[root@oldboyedu50-lnb ~]# blkid   可用blkid显示的信息与上面内容对比/dev/sda1: UUID="8dc40910-35ed-4d1b-acd7-5dad0ad47746" TYPE="ext4" /dev/sda2: UUID="09e2ce6c-7249-4239-8843-5ef9cc3a9a99" TYPE="swap" /dev/sda3: UUID="c4f4be67-f408-4f14-b01e-a0c0777932cb" TYPE="ext4"

复制代码

2.6 /etc/rc.local

存放开机自启动的程序或命令  开机的时候自动运行

复制代码

[root@oldboyedu50-lnb ~]# cat /etc/rc.local #!/bin/sh#
# This script will be executed *after* all the other init scripts.# You can put your own initialization stuff in here if you don't# want to do the full Sys V style init stuff.##需要开机自启动的命令或脚本可以放在这个文件内##效果类似于win7下面的启动

复制代码

2.7 /etc/inittab  

复制代码

[root@oldboyedu50-lnb ~]# cat /etc/inittab # inittab is only used by upstart for the default runlevel.#
# ADDING OTHER CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.#
# System initialization is started by /etc/init/rcS.conf#
# Individual runlevels are started by /etc/init/rc.conf#
# Ctrl-Alt-Delete is handled by /etc/init/control-alt-delete.conf#
# Terminal gettys are handled by /etc/init/tty.conf and /etc/init/serial.conf,# with configuration in /etc/sysconfig/init.#
# For information on how to write upstart event handlers, or how# upstart works, see init(5), init(8), and initctl(8).#
# Default runlevel. The runlevels used are:      #   0 - halt (Do NOT set initdefault to this)   #   1 - Single user mode                            #   2 - Multiuser, without NFS (The same as 3, if you do not have networking) #   3 - Full multiuser mode                     #   4 - unused                                  #   5 - X11                                      #   6 - reboot (Do NOT set initdefault to this)  # id:3:initdefault:           需要更改直接vim在此处修改就可以

复制代码

运行等级详解

复制代码

#   0 - halt (Do NOT set initdefault to this)    ##关机  #   1 - Single user mode                         ##单用户模式         #   2 - Multiuser, without NFS (The same as 3, if you do not have networking) ##多用户模式 没有NFS#   3 - Full multiuser mode                      ##完全多用户模式 (命令行模式/文本模式)工作默认的环境#   4 - unused                                   待开发#   5 - X11                                      桌面模式  图形化界面#   6 - reboot (Do NOT set initdefault to this)  #重启
init  3   修改运行级别

复制代码

2.8 /etc/init.d

系统的软件/服务的管理命令 存放在这里 

2.9 /etc/profile 

配置别名 配置环境变量的地方

复制代码

[root@oldboy ~]# cat /etc/init.dcat: /etc/init.d: Is a directory
[root@oldboy ~]# cat /etc/profile# /etc/profile# System wide environment and startup programs, for login setup# Functions and aliases go in /etc/bashrc# It's NOT a good idea to change this file unless you know what you# are doing. It's much better to create a custom.sh shell script in# /etc/profile.d/ to make custom changes to your environment, as this# will prevent the need for merging in future updates.pathmunge () {
    case ":${PATH}:" in
        *:"$1":*)
            ;;        *)            if [ "$2" = "after" ] ; then
                PATH=$PATH:$1            else
                PATH=$1:$PATH
            fi
    esac
}if [ -x /usr/bin/id ]; then    if [ -z "$EUID" ]; then        # ksh workaround
        EUID=`/usr/bin/id -u`
        UID=`/usr/bin/id -ru`
    fi
    USER="`/usr/bin/id -un`"
    LOGNAME=$USER
    MAIL="/var/spool/mail/$USER"fi# Path manipulationif [ "$EUID" = "0" ]; then
    pathmunge /sbin
    pathmunge /usr/sbin
    pathmunge /usr/local/sbinelse
    pathmunge /usr/local/sbin after
    pathmunge /usr/sbin after
    pathmunge /sbin after
fi

HOSTNAME=`/bin/hostname 2>/dev/null`
HISTSIZE=1000if [ "$HISTCONTROL" = "ignorespace" ] ; then
    export HISTCONTROL=ignorebothelse
    export HISTCONTROL=ignoredups
fi

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL# By default, we want umask to get set. This sets it for login shell# Current threshold for system reserved uid/gids is 200# You could check uidgid reservation validity in# /usr/share/doc/setup-*/uidgid fileif [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then
    umask 002else
    umask 022fifor i in /etc/profile.d/*.sh ; do    if [ -r "$i" ]; then        if [ "${-#*i}" != "$-" ]; then
            . "$i"
        else
            . "$i" >/dev/null 2>&1
        fi
    fi
done

unset i
unset -f pathmunge

复制代码

2.10 /etc/bashrc 

配置别名的地方

2.10.1  .bash_profile与 .bashrc

复制代码

国法:对所有用户生效          

/etc/profile   (改这一个就可以)/etc/bashrc                   

家规 :只对当前用户生效       

.bash_profile                 

.bashrc

复制代码

回到顶部

3. /proc目录下内容

3.1 /proc/cpuinfo

复制代码

系统cpu信息 
[root@oldboyedu-50 ~]# cat /proc/cpuinfo                  一般常用的是  lscpuprocessor    : 0                                           第几个核心  此处表示第一个
vendor_id    : GenuineIntel
cpu family    : 6model        : 60model name    : Intel(R) Core(TM) i5-4200H CPU @ 2.80GHz
stepping    : 3microcode    : 34cpu MHz        : 2793.547cache size    : 3072 KB
physical id    : 0                                            第几颗CPU(物理) 此处表示第一个###以下还有信息 但是不常用 不再显示cat /proc/cpuinfo                  一般常用的是  lscpu
[root@oldboyedu-50 ~]# lscpu  查看cpu的信息

复制代码

3.2 /proc/meminfo

复制代码

系统内存信息 
[root@oldboyedu-50 ~]# cat /proc/meminfo可以查看内存的信息  信息过长 此处不粘贴详细内容
cat /proc/meminfo  一般用 free -h代替           
-h使free显示的内容可读
total 一共    used  使用   free  剩余
[root@oldboyedu-50 ~]# free -h  查看内存信息    -h参数 使free显示的内容可读             total       used       free     shared    buffers     cached
Mem:          980M       619M       360M       228K        51M       397M-/+ buffers/cache:       170M       809M
Swap:         767M         0B       767M

复制代码

3.3 /proc/mounts

[root@oldboyedu-50 ~]# cat /proc/mounts用cat /proc/mounts  信息显示很杂乱  一般用column -t  /proc/mounts代替
[root@oldboyedu-50 ~]# column -t  /proc/mounts   ##使文件信息对齐后显示

3.4 /proc/loadavg 

复制代码

系统负载信息
数字接近系统的核心总数的  就算是高了
 [root@oldboy ~]# cat /proc/loadavg      显示系统负载信息0.0    0.00 0.00 1/167 2280 最近一分钟  最近5分钟  最近15分钟  有167个进程 有一个在运行
[root@oldboy ~]# w                      可用w代替  非全屏状态下可能会报错
 23:30:33 up  1:45,  3 users,  load average: 0.00, 0.00, 0.00USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     tty1     -                22:04    1:25m  0.03s  0.03s -bash
root     pts/0    10.0.0.1         22:05    1:04m  0.05s  0.05s -bash
root     pts/1    10.0.0.1         22:27    0.00s  0.24s  0.13s w
[root@oldboyedu-50 ~]# uptime   也能够查看系统负载19:11:33 up 41 min,  3 users,  load average: 0.00, 0.00, 0.00

复制代码

回到顶部

4. /usr目录下内容

4.1/usr/local与/usr/share

4.1.1 /usr/local

linux下安装软件默认的位置 编译安装

4.1.2 /usr/share

文档和帮助

回到顶部

5. /var目录下内容

/var 目录 variable 经常变化

/var/log  日志

5.1 /var/messages

系统默认的日志

5.2 /var/log/secure

记录用户的登陆信息日志

/var/log/secure  #安全日志  记录用户的登陆信息日志 Jul 10 21:51:25 oldboyedu-50 sshd[25452]: Failed password for root from 10.0.0.1 port 56276 ssh2
Jul 10 21:51:26 oldboyedu-50 sshd[25452]: Failed password for root from 10.0.0.1 port 56276 ssh2
                                          failed 错误的

5.3 查看实时更新

命令 tail -f

比如tail -f /var/log/ secure
输入命令后只要不撤销 日志有更新就会一直显示在底部

5.4 如何优雅的查看日志

复制代码

1.head2.tail3.grep4.less    一页一页查看内容
          空格  或者f 下一页
          b     上一页
          q  退出5.more    一页一页查看内容   快捷键和less相同

复制代码

原文出处:https://www.cnblogs.com/wenrulaogou/p/9340205.html

打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP