视频学习记录day03

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了视频学习记录day03相关的知识,希望对你有一定的参考价值。

20170321 21:00-
上节目录知识回顾:
必须掌握的重要目录
/etc/sysconfig/network-scripts/ifcfg-eth0   第一块网卡的配置文件
/etc/resolv.conf   DNS配置文件
/etc/hosts     静态路由配置文件
/etc/sysconfig/network   hostname主机名配置文件
/etc/fstab     挂载设备启动项
/etc/rc.local    开机启动命令
/etc/inittab    启动级别  0 1 2 3 4 5 6
/etc/init.d      使用yum和rpm安装的命令的启动默认存放目录
/etc/profile    全局变量(所有用户)
/etc/bashrc  全局变量(所有用户)
~/.bashrc   局部变量(局部用户)
/usr/local  系统目录 类似c:/program/
/usr/src   源码目录
/var/log/messages   系统安全日志
/var/log/secure   登录日志
/var/spool/cron/root
/proc/cpuinfo  查看cpu信息
/proc/meminfo   查看内存信息
/proc/loadavg   查看负载
/proc/mounts    查看挂载情况


总结的经验:
1、学会总结是学好运维的重要前提。
2、通过案例和例子和总结一个技术点或者命令。
3、画一个逻辑图,形象的卡通记忆这个知识技术点。
4、通过管道过滤数据时,最好先输出结果,然后回退再使用管道查看结果的过滤。



思路思想方法:
1、根据颜色区分文件和目录(蓝色)。
2、ls -l 输出结果以d(全拼 directory)开头的就是目录。
3、ls -l 输出结果第2列数字大于1的就是目录(当文件没有硬链接的情况下是对的)。
4、通过给目录加标识,然后通过过滤标识,就能过滤出目录(ls -F或者ls -p)。
ls -F 给不同的目录加不同的符号尾缀/ * @等   ls -p 给不同的目录尾部加/
5、通过find直接查找指定类型的文件(-d就是目录)
解题:

print $0表示打印整行    if$2>1 表示第二行大于1  


-maxdepth 数字 表示查找深度

linux三剑客正则表达式:
^表示以...开头,  ^d,意思就是以d开头。
$表示以...结尾,   /$,意思就是以/结尾。
\ 叫做转义字符  能够让原本有意义的字符脱掉马甲,还原它本身的含义。
. 代表任意单个字符。
.*代表所有



20170321 21:22-
ls -l |sed -n ‘/^d/p‘        理解为固定格式即可。  sed -n ‘/找谁/干啥‘
ls -F |sed -n ‘/\/$/p‘       \ 叫做转义字符  能够让原本有意义的字符脱掉马甲,还原它本身的含义。
\rm     \可以屏蔽别名
ls -l |awk ‘/^d/‘
ls -F |awk ‘/\/$/‘

ls -a |grep "\."         . 代表任意单个字符。


for n in `seq 14`;do date -s "2016/01/$n" ;touch access_www_$(date +%F).log ;done ;date -s "2017/03/21"
find /app/log -type f -mtime +7 -exec rm -f {} \;
find /app/log -type f -mtime +7 |xargs rm -f

实时监控messages




vim nginx.conf
 
  记得加引号比较规范
      -n对匹配的内容打印行号


20170322 20:52-

开机自启动:
cat /etc/rc.local 开机自启动文件

[[email protected] ~]# chkconfig sshd on
[[email protected] ~]# chkconfig --list sshd                             默认控制级别是2、3、4、5
sshd            0:off   1:off   2:on    3:on    4:on    5:on    6:off
[[email protected] ~]# chkconfig --level 3 sshd off                  在级别3下次开机关闭
[[email protected] ~]# chkconfig --list sshd       
sshd            0:off   1:off   2:on    3:off   4:on    5:on    6:off
[[email protected] ~]# chkconfig --level 3 sshd on                      在级别3下次开机自启动
[[email protected] ~]# chkconfig --list sshd     
sshd            0:off   1:off   2:on    3:on    4:on    5:on    6:off


linux的开机启动过程:
1、操作系统---2、/boot 加载内核---3、/init进程 启动初始化进程---4、确定运行级别---5、/etc/init.d 加载开机启动程序---6、用户登录---7、login shell(关乎~/.bash_profile  ~/.bash_login   ~/.profile)---打开non-login shell   上面7步其实就算启动过程结束了
-------------------------------------------------------------摘抄自http://www.ruanyifeng.com/blog/2013/08/linux_boot_process.html


只要这么设置了   并且命令放在/etc/init.d/下面   就能用chkconfig控制 该服务的开机自启动
chkconfig -add 命令  就能添加到开机启动

系统优化:
一般企业环境需要开机启动项有下列5个:
sshd 远程连接linux服务器的需要
rsyslog 日志相关软件
network 激活和关闭网络接口等
crond 定时计划任务
sysstat 包含检测系统性能的一个软件包

优化 思路:
方法1、关闭需要关闭的 保留这5个开机项目
chkconfig --list |grep 3:on |egrep -v "crond|sshd|network|rsyslog|sysstat" |awk ‘{print "chkconfig",$1,"off"}‘ |bash
方法2、全关,再开5个需要的
chkconfig --list |grep 3:on|awk ‘{print "chkconfig",$1,"off"}‘ |bash
chkconfig --list |egrep "crond|sshd|network|rsyslog|sysstat"|awk ‘{print "chkconfig",$1,"on"}‘ |bash


20170323 22:03-
cp - CoPy files and directories
cp命令  -a复制文件保持文件所有属性不变  

-i   覆盖前询问 是否覆盖  alias别名默认添加 -i

最方便的备份方法,很适合给到脚本使用
还有 cp /etc/{ssh/sshd.conf,dhcp/}     



mv MoVe (rename) file


rm  ReMove files or directories
普通目录  不能加-r(递归删除)
删除目录则需要加-r

正确删除文件的姿势
1)使用mv命令移动到/tmp(回收站)替代删除动作
2)cd 目的目录; find . -type f(d) -name "" |xargs rm


find 查找命令
-type f文件 d目录
-name 文件或者目录名称
!取反

xargs  -i

Linux里一切皆文件(广义上的“文件”)!
文件和目录的属性及权限:
文件属性就是文件的描述信息
第一列:inode索引节点编号(人的身份证,全国唯一);
          系统读取文件时首先通过文件名找到inode,然后才能读取到文件内容。
第二列:文件类型和权限(共10个字符,第一个字符为类型,后9个字符为权限);
第三列:硬链接的数量   (硬链接相当于超市的多个门  几个门就是几个硬链接);
第四列:文件或目录所属的用户(属主);
          linux里面文件和程序的存在必须要有用户和组满足相应的存在需求。
第五列:文件或目录所属的组(属组);
第六列:文件或目录的大小;
第七八九列:文件的修改时间,默认 月 日 时分;ctime指属性的改变   atime是访问时间  mtime内容的改变
第十列:文件名    严格意义上不属于文件的属性

Inode 索引节点(index node)
硬盘要存储数据(房子住人),首先要分区(隔断),然后格式化创建文件系统(装修),最后存数据(住人)。

文件,inode,block之间的关系:

查看一个文件或目录的inode,通过ls命令的-i参数即可。

查看磁盘inode的总量和使用量 df -i
 
查看磁盘block的总量和使用量 df -h

磁盘空间是否满了,是由两项参数决定的:
第一个是inode是否满了,第二个block是否满了,任何一项满了,都无法放你喜欢的片了。
(磁盘满了一般特征和提示:no space left on device )

有关inode的小结:学会阶段性的知识做小结是学好linux运维的好习惯。
1、磁盘被分区并格式化为ext4文件系统后生成一定数量的inode和block。
2、inode是索引节点,他的作用是存放文件的属性信息以及作为文件的索引(指向文件的实体)。
3、ext3和ext4文件系统的block存放的是文件的实际内容。
4、inode是磁盘上的一块存储空间,CentOS6非启动分区inode默认大小256字节,CentOS5是128字节。
5、inode的表现形式是一串数字,不同的文件对应的inode(一串数字)在文件系统里是唯一的。
6、inode节点号相同的文件,互为硬链接文件,可以认为是一个文件不同的入口。
7、ext3和ext4文件系统下,一个文件被创建后至少要占用一个inode和一个block。
8、ext3和ext4文件系统下,正常情况下一个文件占用  有且只能有一个inode(人和身份证)。
9、block是用来存储实际数据,它的的大小一般有1k,2k,4k几种。其中引导分区一般为1k,其他普通分区多为                                                             
     4k(CentOS)。
10、如果一个文件很大(高清的大片4G),需要占用多个block,如果文件很小(0.01k),至少占用一个block,并且这个block的剩余空间就浪费了,即无法再存储其他数据了。
默认block count一般会大于inode count

查看文件的inode的信息方法: ls -li 或者 stat /etc/hosts
如何生成和指定inode大小:
格式化命令:mkfs.ext -b 4096 -l 256 development/sdb      -b设置block 一般企业设置为4k   -i设置inode大小




文件删除恢复 ext3grep,应该多养成好习惯,先备份再操作,要你快速还原,不容易还原的,先通过多套测试环境测试,然后再操作。         一般企业服务器不宕机比数据还原更重要!


20170325  8:23-


重点把:


        rwx                r-x             r-x                    root    root       r read 读   4       w write 写 3           x 执行  1              - 没有权限  0
属主(用户)权限位   属组权限位     其它用户权限位       主人   用户组

静态文件删除原理:



文件链接的小结:



i_link (硬链接数量),为零,文件就被删除。
i_count(进程引用计数),为零,文件就被删除。
文件删除的条件是i_link=0且i_count=0
只要上面 源文件 进程 硬链接  其中一个不为零,文件就没有被删除。

用户和用户组
/etc/passwd   用户配置文件
帐号密码因为明文显示不安全 转移到/etc/shadow密文保存

/etc/shadow   用户口令文件



第7、8、9列是时间属性  也能用stat查看各项属性
ls -l --time-style=long-iso   时间显示格式改变

第十列是文件名  不在文件inode里面   系统读取文件名 然后在inode寻找索引  再读取block的内容



以上是关于视频学习记录day03的主要内容,如果未能解决你的问题,请参考以下文章

视频学习记录day13

视频学习记录day02

视频学习记录和规划day10

视频学习记录和规划day11

视频学习记录day04

视频学习记录和规划day12