课堂笔记

六 Linux目录文件与系统启动知识

Linux是强大的系统工具  提供服务的工具  追求:速度,效率,安全。使用命令行来管理

一切从根开始

windows里分区和目录一一对应。

Linux里的目录和分区是分离的。每个目录都可以对应不同的分区

IDE:不同磁盘使用用字母表示:hda hdb

    不同的分区用数字表示:hda1 hda2

SAS/SATA/SCSI sda sdb sda1 sda2

/dev /sada1

/etc 目录

同一个目录下,文件也可能会对应不同的分区。

分区不能直接进入

挂载:为分区找到一个入口,为分区开一个门或者窗户。

挂载点:这个分区的入口的目录名 /etc4就是分区dev/sda1的挂载点

mount 挂载命令

umount 取消

临时挂载点/mnt

*****boot  引导分区,系统内核及引导程序 

*****dev  硬件设备文件所在目录 

*****etc  系统配置                           

    lib  usr/lib  库文件目录  , 共享库和内核模块

    media 可移除的媒体挂载点 比如:光盘  不怎么用

*****mnt  临时的要挂载的文件系统的挂载点                 

    opt  额外的应用软件包          不怎么用

*****proc  虚拟的文件系统,存放进程和内核信息的目录。                           

    run  正在运行的程序相关信息的文件               

    srv  系统提供服务的数据,用户使用的数据

    sys  虚拟的文件系统,存放进程和内核信息的目录,和proc差不多

*****tmp  存在临时文件目录

*****usr  系统软件和用户相关程序所在目录  第二目录层次

*****var  可变化数据  系统 日志 缓存

6.4etc系统初始化及设置相关重要软件

一:/etc/sysconfing/network-scripts/ifcfg-eth0:网卡配置文件

c7:nmtui 图形化配置上网 本质就是修改上述文件

c6:setup

可以不用图形工具,直接改文件。

——————————————————————————————————————————————————————————————————————————————

二../etc/resolv.conf:        Linux系统DNS客户端配置文件

DNS Domain Name  System  域名系统

作用:把浏览器里输入的域名,解析为服务器的IP地址,然后才能找到服务器,提供内容。

早期上网,直接IP,10.0.0.200  记不住

修改DNS 一般从/etc/sysconfing/network-scripts/ifcfg-eth0中编辑

————————————————————————————————————————————————————————————————————————————————————————————

三./etc/hosts:系统本地的DNS解析文件

10.0.0.200    www.baidu.com

每个人的电脑必须要有一个hosts文件做解析  发明了DNS。  公网公共解析服务资源 。

重要功能:把浏览器里输入的域名,解析为服务器的IP地址。 这就是DNS

DNS的/etc/resolv.conf  配置文件命令基本废弃,由网卡文件替代

/etc/sysconfing/network-scripts/ifcfg-eth0

只要在网卡文件里配置DNS 不需要再使用DNS设置

但是如果先更新/etc/resolv.conf文件,网卡如果重启就会自动清除

/etc/hosts:系统本地的DNS解析文件

10.0.0.200 www.baidu.com  每个人的电脑必须要有一个hosts做解析

浏览器输入www.baidu.com时,优先找hosts文件解析。

4./etc/fstab:配置开机设备自动挂载文件

/etc/fstab  开机自动挂载。

/dev/sda1

UUID=fd35882e-bb9e-456c-ab1b-aa86f2c649ad /              xfs          defaults        0        0

UUID=6c013650-b7ac-49fa-810c-9b9f58a46e43 /boot        xfs            defaults        0        0

UUID=46a75efe-145e-4ae7-b6be-b10b2f22513f swap          swap          defaults        0        0

设备名  UUID                              挂载点      文件系统类型    挂载参数      是否备份 是否开机检查

5./etc/rc.local:存放开机自启动程序命令的文件  /etc/rc.d/rc.local

6./etc/profile及/etc/bashrc:配置系统的环境变量/别名等的文件

各种配置的永久的配置文件。

生效条件二选一:1.退出重新登陆。2.source /etc/profile

例如:希望下面别名永久生效

alias rm=''

就放到上述配置文件里

7./etc/issue 和/etc/issue.net:

版本内核

清理命令>etc/issue.net

8./etc/motd  配置用户登录系统之后显示提示内容的文件(开机提示)

9./etc/redhat-release 查看系统版本

[root@xiaozhang ~]#

[root@xiaozhang ~]# cat /etc/redhat-release

CentOS Linux release 7.6.1810 (Core)

unmae-r 查看内核

10./etc/sysctl.conf Linux内核参数设置文件

Liunx系统内核的配置和优化

11./etc/init.d:软件启动程序所在的目录(CentOS7以前,现在废弃了)

------

12./etc/inittab 开机运行级别 以及启动相应脚本

现在直接用ll/usr/lib/systemd/system

定义:Linux系统运行级别当前所处于的状态。

Linux系统运行级别的说明如下:

#  0  关机(请不要把系统运行级别设置为0)

#  1  单用户模式 (root用户密码忘记,可用此模式找回) 

#  2  没有NFS,多用户模式

#  3  命令行模式 文本模式(企业级服务器核心运行状态)         

#  4  未使用

#  5  图形化模式 桌面模式  X11(桌面个人版系统运行状态)

#  6  重启(不要把系统运行级别设置为6)

CentOS7

systemctl get-default查看运行级别 

systemctl set-default修改运行级别

CentOS6

查看运行级别  runlevel

切换 init

————————————————————————————————————————————————————————————

TYPE=Ethernet  上网类型  以太网

PROXY_METHOD=none

BROWSER_ONLY=no

BOOTPROTO=none  启动协议 none  静态

DEFROUTE=yes  使用默认路由

IPV4_FAILURE_FATAL=no

IPV6INIT=yes

IPV6_AUTOCONF=yes

IPV6_DEFROUTE=yes

IPV6_FAILURE_FATAL=no

IPV6_ADDR_GEN_MODE=stable-privacy

NAME=eth0  第一块网卡逻辑设别名

UUID=7c27c0a5-418b-41a6-b2a4-3f8a8b129d94  通用唯一识别码

DEVICE=eth0  第一块网卡逻辑设备名

ONBOOT=yes      开启启动

IPADDR=10.0.0.201  IP地址

PREFIX=24

GATEWAY=10.0.0.254 

DNS1=223.5.5.5  DNS

IPV6_PRIVACY=no 

—————————————————————————————————————————————————————/etc/hostname C7主机名配置

/etc/sysconfig/network C6主机名配置

/usr目录

1./usr/local/:源码编译安装软件默认的位置路径

软件安装:a.rpm安装          b.yum, 

2./usr/src:存放源代码文件的目录

/var目录

1./var/log      记录系统及软件运行信息文件所在的目录

log 日志信息 =====记录计算机运行行为。

2./var/log/massages:Linux系统级别日志文件。 ll

记录Liunx系统运行行为的文件,正常行为,非正常行为。

3.var/log/secure:用户登陆信息日志文件。

4.var/log/dmesg:记录硬件信息加载情况的日志文件

对应命令:dmesg

/proc下的重要路径

1./proc/meminfo 查看系统内存呕6  free-m查看内存

2./proc/cpuinfo 查看CPU

3./proc/loadavg 查看负载  系统繁忙程度的一个综合指标  uptime

[root@xiaoq /usr]# uptime

09:28:29 up 11:53,  2 users,  load average: 0.00, 0.01, 0.05

当前时间  开机多久  哪些用户  负载 平均    1分钟 5分钟  15分钟

负载的数字和PCU核数相当的时候就是负载的一个临界点,例如,一颗两核,临界负载就是2

4.proc/mounts  查看挂载情况

开机BIOS自检  》  读MBR引导 主引导记录 后66分区表 》  加载GRUB菜单()

vim:

普通模式,命令模式,编辑模式

vim:

普通模式开始

i 当前光标

a 第二个

o是下一行开始

进入编辑模式 加入更改内容

esc返回普通模式

: 切到命令模式  WQ保存  q 退出不保存  wq!强制保存退出

set nu 显示行号

CentOS6启动流程

四大块:

检查硬件 BIOS:内存 CPU 磁盘

MBR引导:  446字节引导启动

GRUB :选择内核

加载内核到内存:

——————————————————————————————:

启动init进程:

读取运行级别  etc/inittab

执行/etc/rc.d/rc.sysinit 设置主机名ip地址

运行etc/rc3.d下面的脚本    一些开机自启动程序

启动mingetty显示登录界面

(分先后顺序)

CentOS7启动流程

四大块:

1.检查硬件  BIOS:内存 CPU  磁盘

2.MBR引导:446字节引导启动

3.GRUB:选择内核

4.加载内核到内存

————————————————————————————:

1.运行ststemd进程

2.读取运行级别

3.并行各种服务 /usr/lib/systemd/system和/etc/systemd/system/

4.显示登录界面

Liunx里严格区分大小写

所有字符尽量加双引号

重定向符号的核心知识******

超重点。

>或者1>输出重定向,箭头方向就是数据流向,把左边的数据流向到右边,会清空右边之前的数据。

清空前备份。

>>或者1>>追加输出重定向  内容追加到文件尾部。

<或0<标准输入重定向,箭头方向就是数据流向。

<<或0<<追加输入重定向,箭头方向就是数据流向,

2>错误输出重定向  报错

2>>错误追加输出重定向 

数字1 标准输出

数字0 标准输入

数字2 错误输出

cho ""  1>文件  2>文件    会把报错信息打到文件里

2>错误输出重定向  报错

2>>错误追加输出重定向

————————————————————————————————————————————————————————————————————————————————————————————————————

8.1

1153832 -rw-r--r-- 1 root root 39 Mar 13 11:49 3

1153835 -rw-r--r-- 1 root root 39 Mar 13 11:49 4

1153836 -rw-r--r-- 1 root root 12 Mar 13 11:51 5

1153837 -rw-r--r-- 1 root root  0 Mar 13 11:50 6

1153830 -rw-r--r-- 1 root root  0 Mar 13 11:46 a.txt

1153831 -rw-r--r-- 1 root root 39 Mar 13 11:46 a.xt

1153833 -rw-r--r-- 1 root root 30 Mar 13 11:46 b.txt

第一列  索引节点  身份证

第二列  共十一个字符  第一个字符为文字类型接下来表示权限

d是目录文件、l是链接文件、-是普通文件、p是管道 

.表示和selinux有关的标识

第三列:硬连接数

第四列:属主:文件的拥有者,用户

第五列:属组:文件的拥有组,用户组

第六列:文件大小

第七列:月份

第八列:日

第九列:时间(文件内容最后修改时间)

第十列:文件名

——————————————————————————————————————————————————————————————————————————

8.2

第二列第一个字符:文件类型

一切皆文件  windows用扩展名区分文件,linux有自己的文件类型。liunx的扩展名兼容windows,方便区分。

1.- 普通文件(regular file)

图片视频文档都是文件

三种类型:

a纯文本文件:字符 数字等内容

b.数据文件:存放命令收集的信息

c.二进制文件:可执行的命令

lastlog查看谁登录过

2.d  目录(directory)

生成:mkdir

复制:cp -a /-r

删除:rm -rf

区分;目录是蓝色  文件类型一行开头为D      ls -p  目录结尾斜线结尾

1.字符设备与块设备

以C开头的是字符设备  猫 串口

以b开头的是块设备  硬盘 光驱

2. 套接口文件

以S开头  sock文件是一类特殊的文件,常用在网络之间进行数据连接 如:

我们可以启动一个程序监听客户端请求,客户端可以通过套接字来进行数据通信。

用于进程之间通信的文件。

重点:$PATH

命令行执行命令会从PATH对应的路径中查找命令

PATH对应的路径中没有这个命令就会报command not found

软链接解压无效

特殊符号

\转义字符  *所有字符  !取反  |管道

多用户 多任务

用户:管理liunx系统而存在的。

用户一般分为用户名,用户ID。相当于我们有名字和身份证,

用户名方便管理员使用,用户ID是唯一区别一个用户(计算机只识别ID)

user  UID

Liunx里所有的文件和进程都要有用户对应。

文件存在必须对应用户

进程运行必须对应用户

Liunx用户分为三类:

1.超级管理员root(皇帝)

UID为0 ,UID为0的都由皇帝对应的权限。

不要修改ID为0变管理员

作业:root 密码丢失了 如何找回。

2.虚拟用户(傀儡)

实际存在的用户,但是又不允许登录。

能够满足文件或进程运行宿主的要求,但是又不会带来管理风险。

UID  1-499

3.普通用户(大臣)

实际存在的用户,可以登录。管理员身份创建的,帮助管理员管理系统,

权限仅仅限制家目录,在一些系统级目录中可以顿不可写,不能进/root

UID C7 1000起步  C6 500起步

用户组:集合,组织(人的家庭)

Liunx里每个用户都必须要拥有一个组织,这个组织就叫做用户组。

用户组也是给人看的,用户组也有唯一标识,Group  ,简称GID

默认情况创建用户,会自动创建一个和用户名相同的用户组以及UID相当。

id oldgirl

uid=1000(oldgirl) gid=1000(oldgirl) 组=1000(oldgirl)

用户和用户组的对应关系

1.1个用户对应一个组,

2.1个用户对应多个组

3.多个用户对应一个组。

文件权限:严格的权限,Liunx安全权限严格

rwxr-xr-x

9个字符

r read    可读取                  4

w write    可读写                  2

x execute  可执行权限              1

- 没有权限                          0

字符分组:三个字符是一组

d    rwx                  r-x        r-x    2 root root  66 10月  1 05:20 2

    用户的权限        用户组权限  其他权限

                      可读不可写   

789列:文件最后的修改时间

文件时间有三种:

修改时间:modify 文件内容被改之后的时间

访问时间:access  文件内容被访问过

变化时间;change  文件属性发生改变的时间

[root@xiaozhang ~]# stat  /etc/hosts

  文件:"/etc/hosts"

  大小:158      块:8          IO 块:4096  普通文件

设备:803h/2051d Inode:16793700    硬链接:1

权限:(0644/-rw-r--r--)  Uid:(    0/    root)  Gid:(    0/    root)

访问时间:2020-10-01 00:00:20.809999259 +0800

修改时间:2013-06-07 22:31:32.000000000 +0800

变化时间:2019-03-05 18:02:13.914928577 +0800

创建时间:-

索引节点:

[root@xiaozhang ~]# ls -lhi

总用量 12K

33574983 drwxr-xr-x  3 root root  75 10月  1 14:26 2

50803884 drwxr-xr-x  2 root root    6 10月  1 07:34 3

33663448 -rw-r--r--  1 root root  160 10月  1 07:36 3.tar.gz

33574979 -rw-------. 1 root root 1.4K 3月  5 2019 anaconda-ks.cfg

33663449 -rw-r--r--  1 root root  428 10月  1 07:38 -C

第一列:

表现形式是数字,33663449就是索引节点 类似于身份证。

是文件在系统中的唯一标识。

找一个文件最终都要通过索引节点才能找到

索引节点的概念处在ext文件系统中(ext2 ext3 ext4)

索引节点是硬盘上的一块存储空间。大小256字节或512字节。

索引节点里存放的数据是文件的属性(大小,访问时间,用户,组,权限等)

唯独不包含文件名。(文件名在上次目录的block里)

磁盘想要使用,先分区,格式化(创建文件系统)

格式化创建文件系统的时候,就会生成大量的inode(索引节点)和block

inode  用于存储文件属性信息,同时存放指向文件实体(block)的指针。

1.ext3/ext4文件系统下,任何一个非空文件都有一个inode和block

block有可能多个 因为装不下  inode 有且只有一个

2.inode节点号相同的文件,互为硬链接文件,同一个文件的不同入口

3.inode在某一个文件系统(分区)内是唯一的。

block  存放文件内容的(大片)

inode相当于首页的目录索引

block等于书的页

block 磁盘块 是用来存放实际数据的实体,真正用来存储数据

1.磁盘读取数据是按block为单位读取的

2.每度取一个Block就会消耗一次磁盘I/O

3.若文件比较大,一个文件可能占用多个block

4.若文件较小,一个Block剩余空间会被浪费,无论多小。

[root@xiaozhang ~]# df -i  看inode数量

文件系统        Inode 已用(I) 可用(I) 已用(I)% 挂载点

/dev/sda3      9944576  36333 9908243      1% /

devtmpfs        121783    373  121410      1% /dev

tmpfs          124487      1  124486      1% /dev/shm

tmpfs          124487    704  123783      1% /run

tmpfs          124487      16  124471      1% /sys/fs/cgroup

/dev/sda1      131072    332  130740      1% /boot

tmpfs          124487      1  124486      1% /run/user/0

[root@xiaozhang ~]# df -h  看block数量

文件系统        容量  已用  可用 已用% 挂载点

/dev/sda3        19G  1.5G  18G    8% /

devtmpfs        476M    0  476M    0% /dev

tmpfs          487M    0  487M    0% /dev/shm

tmpfs          487M  14M  473M    3% /run

tmpfs          487M    0  487M    0% /sys/fs/cgroup

/dev/sda1      253M  136M  118M  54% /boot

tmpfs            98M    0  98M    0% /run/user/0

[root@xiaozhang ~]#

企业

+磁盘满了的原因有两种:

1.inode满了

2.block满了

no space left on device 报错 (没有空间在设备上了,磁盘满了)

检查步骤

1.df -h block满了?

2.df -i inode满了?

为什么inode会满?

小文件太多,

初始化的时候block数量会远大于inode数量

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,907评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,987评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,298评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,586评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,633评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,488评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,275评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,176评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,619评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,819评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,932评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,655评论 5 346
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,265评论 3 329
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,871评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,994评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,095评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,884评论 2 354

推荐阅读更多精彩内容

  • 第九章Linux文件核心属性知识 1、Linux是一个多用户、多任务的操作系统。 1.1、用户:管理Linux系统...
    Gentlewei丶阅读 394评论 0 0
  • 一个基本的计算机系统由“硬件”和“软件”组成,一台Linux设备,主要的组成如下图所示: 一般情况下,我们所说的L...
    时待吾阅读 1,644评论 0 16
  • #day9-day12课堂笔记# day9课堂笔记 Linux永远不要,也不能重启。 /etc/hostname ...
    故此曦阅读 304评论 0 0
  • 因为你们是我在世上最爱的人,而感情这碗茶,我欠的太多,所以我很想把最好的东西给你们。 多事之秋,似乎讨厌这样的季节...
    苏沐晴阅读 532评论 24 25
  • 曾经有一部热播韩剧,名字叫做《我叫金三顺》,剧中的女主角是一位出色的面点师,在她的手里,面粉如同魔术一般奇妙,因为...
    向南南的读写笔记阅读 475评论 0 1