• 重要文件功能

  • 系统优化

  • 用户权限

  • 文件权限

  • 文件索引

  • 三剑客简介(grep、sed、awk)

 

usr目录

经常发生变化的文件保存在variable
经常变化的文件>>>:日志文件
    /var/log/messages 服务运行情况信息、系统运行或异常信息
    /var/log/secure 用户登录信息保存文件
     
   规律查看日志信息
   grep  #三剑客老三
   grep "Failed" /var/log/secure
   # 对于日志文件过大必须要做切割处理
   cat /etc/services >> a.txt  # 连续追加
   cat a.txt  # 查看出现卡顿
   secure-0k > secure-100k > 大小范围10M > securebak01 secure
   ls -l /var/log/secure*  # 查看默认切割策略 按天数切割

proc目录

记录一些硬件使用情况 硬件详细信息
CPU  # /proc/cpuinfo
   命令查看CPU信息
    lscpu
    CPU(s):4 整个服务器有多少核心
    Core(s): per socket: 2 每颗CPU有多少核心
    Socket(s): 2 服务器有几颗CPU
     
命令查看内存信息
cat /proc/meminfo
   MemTotal: 2030172 kB --- 服务器的总共内存容量
MemFree: 1755372 kB --- 服务器未使⽤的CPU容量
MemAvailable: 1728900 kB --- 服务器还可以使⽤的
Buffers: 2076 kB
Cached: 86716 kB
   实时使用情况
   free、free -h
   命令查看磁盘信息
   df -h
   查看负载情况
   系统优化相关
   cat /proc/loadavg
   0.00 0.01 0.03
   平均每分钟负载 平均5分钟负载 平均15分钟负载
   负载的数值不能超过服务器的核心数 87(阈值)
   利用命令查看负载信息
  w
       15:39:53 up 43 min, 2 users, load average: 0.00,
0.01, 0.03
当前时间 服务器运行时间 连接用户数 平均负载情况
   查看挂载信息
  df -h
       cat /proc/mounts  # 记录系统挂载信息

系统优化

性能优化
安全优化
编码优化
1.了解自己的系统情况
cat /etc/redhat-release
   uname -r/-a/-n/-s/...  
2.在系统中创建用户信息
创建用户
       useradd suohai
       passwd suohai
       切换用户状态管理主机
   环境变量
  su - suohai  # su == switch user
       ps:管理员切普通用户再想切回管理员可以使用ctrl+d
       进行确认检查
       whoami

环境变量

特征:
1.由大写字母组成
   2.配置的环境变量所有用户都必须遵循
   3.系统中默认就有的变量信息
   
   第一个环境变量:PS1 (命令提示符信息)
   echo $PS1
   修改环境变量:
   第一个里程:临时修改
   PS1="[\u@\h \w]\$" 错误修改环境变量方式
   第二个里程:永久修改
   vim /etc/profile
   export PS1="[\u@\h \w]\$"  # 添加内容
   source /etc/profile  # 重新加载文件内容

下载优化

1.需要修改yum源文件(指定使用哪个yum软件仓库)  # 类似于pip换源
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
     
   yum repolist
   PS:万一阿里云不好用,可以选择清华yum源
     
   https://mirrors.tuna.tsinghua.edu.cn/help/centos/
     
2.需要修改yum扩展源epel源
   第二个特殊的软件仓库
   # epel Extra Packages for Enterprise Linux
   wget -O/etc/yum.repos.d/epel.repo
   http://mirrors.aliyun.com/repo/epel-7.repo
       检查测试
       yum install -y bash-completion-extras
 3.所有源文件更新进行最终更新确认
yum repolish

安全优化

'''1.selinux'''
1.修改selinux设置(国安局)
限制皇帝root行为,但是实际应用不会使用它来显示root较为麻烦,基本都关闭
 
2.关闭selinux服务程序
# 永久关闭
   vim /etc/selinux/config
   # enforcing - SElinux security policy is
   enforced.
   # permissive - SELinux prints warnings instead of
   enforcing
   # disabled - No SELinux policy is loaded
   SELINUX=disabled
   ps:文件修改之后,配置不会立即生效,需要重启linux操作系统使之生效
   # 临时关系
   setenforce  # 设置
   # usage: setenforce [ Enforcing | Permissive | 1 | 0]
   getenforce  # 查看
   
   """防火墙服务"""
       防护墙
       字符编码优化
      centos6:iptables
           /etc/init.d/iptables stop  # 临时关闭防火墙
           /etc/init.d/iptables status  # 查看
           chkconfig iptables off  # 永久关闭防火墙
           chkconfig iptables  # 查看
           centos7:firewalld
           systemctl stop firewalld.service  # 临时关闭防火墙
           systemctl status firewalld.service  # 查看
           systemctl disable firewalld.service  # 永久关闭防火墙
           systemctl status firewalld.service # 查看
           应用防火墙场景
          建议开启:服务器可以被外界访问(公网/外网ip)
               建议关闭:服务器可以被内部访问(私网/内网ip)
               建议关系:服务器处于高并发状态(公网/外网ip) 软件防火墙关闭 硬件防火墙进行安全控制

字符编码优化

'''1.环境变量方式给修改'''
echo $LANG  # 查看当前系统字符编码
export LANG=en_US.GBK  # 临时修改
echo"export LANG=en_US.GBK">>/etc/profile  # 永久修改
source /etc/profile  # 立即生效

传输数据

# 1.如何让linux 和 windows系统之间传输数据信息
"""
rpm查看安装的软件有时候可能查看不到(软件名称可能更长)
rpm -qa|grep vim
"""
第一个历程:安装和传输数据相关的软件
yum install -y lrzsz
第二个历程:利用lrzsz软件将数据进行传输
# Linux上面传输数据
   传输给 windows主机 sz -y 数据信息
   # windows上面传输数据
   传输给 Linux主机 rz -y
   PS:空文件是无法传递的 xshell支持拖拽上传
 
# 2.查看系统文件数据信息
比较大的文件 如何查看信息
   less 逐行 或者 一页页进行查看
   more 逐行 或者 一页一页进行查看
   以上两个查看文件信息命令区别说明:
   1.是否可以使用快捷方式之间区别
   less 可以使用
   more 禁止使用
   2.是否可以实现查看完毕自动退出
   less 不可以使用
   more 可以实现
   """
  需求1:
  将一个文件前几行内容进行截取
  将一个文件后几行内容进行截取
  测试环境准备
  seq 10或seq -w 10
  数据录入 seq -w 10 > /suohai/seq.log
  前几行截取:前5行截取
  head -n5 /suohai/seq.log
  后几行截取:后3行截取
  tail -3 /suohai/seq.log
  需求2:一直查看日志文件信息
  tail -f /var/log/secure --- 实时监控日志方法
  -f 文件消失立即失效
  tail -F /var/log/secure --- 实时监控日志方法
  -F 文件消失、后续创建可以继续监控
  """
# 3.如何检索文件中的指定内容信息
测试文本
   suohai01
   suohai02
   suohai03
   suohai04
   suohai05
   三剑客 老三 grep 擅长过滤信息
   grep "01" /suohai/suohai.txt
   三剑客 老二 sed 不擅长过滤信息
   sed "/01/p" /suohai/suohai.txt
   sed -n "/01/p" /suohai/suohai.txt
   三剑客 老大 awk 不擅长过滤信息
   awk '/01/' /suohai/suohai.txt
   '''擅长过滤的原因'''
grep "03" -B 2 /suohai/suohai.txt # 连带前⼏⾏
grep "03" -A 2 /suohai/suohai.txt # 连带后⼏⾏
grep "03" -C 1 /suohai/suohai.txt # 连带上下⾏
grep -n "03" /suohai/suohai.txt # 附带⾏号
grep -v "03" /suohai/suohai.txt # 取反操作
# 4.如何替换文件数据信息
需求:将文件中的oldboy信息替换为oldgirl
   方式1:
   sed命令替换步骤:第一个历程 备份文件
   sed命令替换步骤:第二个历程 查看搜索
   sed -n '/suohai/p' suohai.txt
   sed命令替换步骤:第三个历程 文件信息模拟替换
别名功能
sed -n 's#suohai#suodiao#gp'
   /suohai/suohai.txt
   sed命令替换步骤:第四个历程 文件信息真正替换
   sed -i 's#suohai#suodiao#g'
   /suohai/suohai.txt
   sed命令替换步骤:第五个历程 替换完成检查确认
   方式2:
   再linux系统中,不是所有命令都可以直接编辑修改文件
   tr企业应用:可以将指定字母大小写进行转换 1对1进行替换
   tr 'a-z' 'A-Z' < /oldboy/oldboy.txt

别名功能

1.如何查看别名设置
alias 别名
   alias cp='cp -i'
   alias mv='mv -i'
   alias rm='rm -i'
   -i 如要人为交互,有提示信息
   问题:如何非交互的覆盖原有信息
   1. \cp /tmp/oldboy.txt /oldboy/ --取消别名功能
   2.采用命令绝对路径方式
  # 查看一个命令到底再哪个绝对路径中
       which cp
       alias cp = 'cp -i'
       /user/bin/cp
       文件属性信息
       /usr/bin/cp /tmp/suohai.txt/suohai
     
2.如何设置别名信息
设置rm命令别名提示:rm command not use
   第一步:临时设置别名
   alias rm='rm -i'
   alias rm='echo rm command not use'
   问题:设置别名常见问题
   1.别名后面单引号中一定是完整命令信息
   2.别迷宫后面单引号一定是英文的
   永久设置别名
   echo alias rm = 'echo rm command not use' >>/etc/profile
   source /etc/profile
   第三步:将~/.bashrc内容进行注释
   alias rm='rm -i'  # 需要重新连接服务端即可

文件属性信息

ls -lhi /etc/ --- 查看数据属性信息
67683849 d rwxr-xr-x. 3 root root 101 Nov 30 17:18
abrt
01 02 03 04 05 06 07
08
第一列:inode信息 index node 索引节点
第二列:文件类型 文件权限
第三列:硬链接数
文件相关命令
磁盘(设备文件) == 超市 /mnt(挂载点) == 超市的入口
   硬链接 === 超市的多入口 /oldboy
   第四列:数据(文件 目录)的所属用户信息 == 监护人(父亲 母亲)
   第五列:数据(文件 目录)的所属用户组信息 == 家庭中亲人
   第六列:文件大小信息
   第七列:文件修改时间信息
   第八列:文件名称(不属于文件属性信息)
 """详细说明"""
文件类型:
   windows系统中:根据文件扩展名称信息决定文件类型
   Linux系统中:系统的文件系统和文件扩展名没有半毛钱关系
   Linux系统文件类型分类 ls -lhi /etc/  # ./
   d directory 目录类型的文件
   - file 普通类型的文件
   l softlink 连接类型的文件
   c character 字符类型的文件(会源源不断的产生字符信息)
   b block 块设备类型的文件 设备文件
   s socket 和网络接口通讯相关(开发 网络编程)
   p pip 管道文件

文件相关命令

1.显示文件信息类型命令 file
file suohai.txt
2.显示命令绝对路径信息 which
which cp
3.显示命令路径以及文件 whereis
whereis cp
4.快速定位文件路径信息 locate
updatedb  # 更新数据库信息,便于locate命令可以进行查找
   locate suohai1.txt
5.快速查找数据信息命令 find  # 重点掌握
语法说明:find 区域 查找人的类型 具备的条件
   eg:
    1.寻找⼀个suohai.txt
    find /temp -type f -name "suohai.txt"
    2.寻找⼀个以.txt扩展名结尾的⽂件
    find /temp -type f -name "*.txt"
    3.按照⽂件数据⼤⼩进⾏查找⽂件 查找⼤于10k的⽂件 但⼩于
   10M
    find /etc/ -type f -size +10k -size -10M # 默认递归
    # 限制查找层级
  find /etc/ -maxdepth 1 -type f -size +10k - size -10M
6.对数据信息进行压缩处理
压缩数据的命令 tar
   tar 参数信息 压缩包信息(箱子) 物品01(数据信息) 物品02(数据信息)
   eg:
  1.压缩/suohai /etc/hosts至/suohai/suohai.tar.gz
       tar -zcvf /suohai/suohai.tar.gz /suohai /etc/hosts
   z利用gzip方式进行压缩数据 rar zip
   文件权限
  c 创建压缩包 create
       v 详细执行操作过程 verbose
       f 指定需要压缩的文件信息    ,、
       2.如何检查确认压缩数据
       tar -tf /suohai/suohai.tar.gz
       3.解压数据文件
       tar -zxvf /suohai/suohai.tar.gz
       tar -zxvf system.tar.gz -C /oldgirl  # 解压至指定位置


 posted on 2022-06-13 15:12  鳗鱼的春天  阅读(7)  评论(0编辑  收藏  举报