运维SRE-06 阶段性复习&&软件管理体系

那些年运维必会操作-第一弹

  • 操作

    • 文件:增删改查
      • 增:touch,vim,>,>>,cp
      • 删除:rm
      • 修改:内容:vi/vim,>,>> 文件名:mv
      • 查看:内容:cat/vim/less/more/head/tail/sed/awk/grep 内容排序:sort/uniq 文件名字:find
    • 目录:增删改查
      • 增:mkdir
      • 删除:rm
      • 修改:改名 mv
      • 查看:ls,tree,find
    • 用户:增删改查
      • 增:useradd(adduser)
      • 删除:userdel
      • 修改:usermod
      • 查看:id(uid,gid,组),w(登录),last,lastlog
    • 权限:增删改查
      • chmod:权限
      • chown:所有者
      • lsattr/chattr(隐藏属性)
    • 四剑客:增删改查
      • 正则配合三剑客进行过滤
      • 取行,取列
      • 统计计算
      • find进行查找文件,按照名字,按照时间,按照大小
      • find+其他命令(sed,ls,rm,grep)3种方法:find + |xargs find + 反引号 find+ -exec\
      • 特殊情况:find + cp/mv
      • 特殊情况:find + tar
    • 打包压缩三剑客:
      • tar:zcf `` tf``xf``-c
      • gzip:注释配置文件gzip *.repo``gzip -d 解压
      • zip/unzip:unzip解压zip压缩包
    • 磁盘:增删改查
      • 磁盘分区:fdisk/parted/gdisk
      • 格式化
      • 挂载
    • 软件包:rpm,yum,增删改查
      • rpm:查询,手动安装rpm包
        • 增:rpm -ivh
        • 删除:rpm -e
        • 修改:rpm -Uvh
        • 查看:rpm -qa;rpm -ql
      • yum:自动下载,自动安装
        • 增加:yum install -y``yum localinstall
        • 查看:yum list(用于知道软件包名字,看看yum源中是否有 yum provides``yum search all(用于你不知道软件包名字,软件包内容)
        • 删除:yum remove
        • 修改:yum update/upgrade
  • 知识点:

    • 目录结构
    • 命令格式
    • 文件属性(ls -lhi每一列含义)
    • 软连接硬链接
    • 权限体系:文件和目录 rwx
    • 磁盘故障案例
    • Linux安装软件包方式
  • 复杂操作

    • 配置别名

    • 磁盘:分区,格式化,挂载,永久挂载

    • yum仓库搭建

      #配置文件yum源的配置文件 配置yum命令下载软件的的时候从哪里下载.
      配置文件目录: /etc/yum.repos.d/
      yum源配置文件以.repo结尾.
      文件内容:
      [base] #yum源名字
      name=介绍这个yum源的作用 #注释
      enabled=1 #是否开启yum源
      baseurl=yum仓库的地址. #http://mirrors.aliyun.com/....... 或 file:///data/cdrom
      gppcheck=0 #是否开启软件包校验.

  • 给Linux系统配置yum源(从清华或阿里云下载软件包)

    wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
    wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

软件包管理体系-编译安装

  • 编译安装
    • 把你获取的软件的源代码(C语言代码),通过编译操作,把代码变成可执行的命令。
  • 编译安装步骤(三部曲)
    • 配置:./configure (对代码进行配置)
    • 编译:make (把代码根据上面配置要求进行编译,代码--->命令)
    • 编译安装:make install (把命令复制到系统指定的目录中,创建目录,复制配置文件)
编译安装-黑客帝国(字母雨)
#01 安装依赖
yum install -y python-libs ncurses-devel binutils

#02 解压注意:软件包要上传到 /app/tools/目录下.
mkdir -p /app/tools
cd /app/tools/
tar xf cmatrix-1.2a.tar.gz

#03 进入目录准备开始编译安装
cd cmatrix-1.2a/

#04 编译安装3步曲
./configure
echo $? #检查上一个命令执行结果 # 0表示正常. 非0 错误。
如果出现configure: error: no acceptable cc found in $PATH
yum install -y gcc



make
make install



#05 结果
cmatrix

#06 编译默认安装的目录
/usr/local
编译安装-nginx
#01 检查系统是否安装过nginx,需要删除.
#02 下载代码包  
#03 安装依赖
#04 编译安装三部曲 安装到指定目录/app/nginx-1.20.2
#05 扩展:启动nginx与访问
#01 检查系统是否安装过nginx,需要删除.

rpm -e `rpm -qa |grep nginx`
rpm -qa |grep nginx 

#02 下载代码包  
cd /app/tools/
wget https://nginx.org/download/nginx-1.20.2.tar.gz #如果没有wget则yum安装下.

#03 安装依赖
不知道依赖.
yum install -y openssl-devel pcre-devel

#04 编译安装三部曲 安装到指定目录/app/nginx-1.20.2
#--prefix=指定安装目录,没有就自动创建
tar xf nginx-1.20.2.tar.gz
cd nginx-1.20.2

./configure --prefix=/app/nginx-1.20.2  --user=nginx  --group=nginx --with-http_ssl_module --with-http_v2_module --with-http_stub_status_module --with-http_mp4_module

make  
make install

#05 编译安装后续操作
##a) 检查nginx信息
[root@oldboy81-golden-lnb ~]# /app/nginx-1.20.2/sbin/nginx -V 
nginx version: nginx/1.20.2
built by gcc 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) 
built with OpenSSL 1.0.2k-fips  26 Jan 2017
TLS SNI support enabled
configure arguments: --prefix=/app/nginx-1.20.2 --user=nginx --group=nginx --with-http_ssl_module --withhttp_v2_module --with-http_stub_status_module --with-http_mp4_module
##b) 准备用户
useradd -s /sbin/nologin -M nginx

##c) 关闭selinux和防火墙
####关闭防火墙
systemctl disable firewalld   
systemctl stop firewalld

####关闭selinux
setenforce  0   
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config

##d) 启动与访问nginx
/app/nginx-1.20.2/sbin/nginx   #启动
[root@hb-sre-001 sbin]# ps -ef|grep nginx
root       9069      1  0 15:38 ?        00:00:00 nginx: master process ./nginx
nginx      9070   9069  0 15:38 ?        00:00:00 nginx: worker process
root       9072   4811  0 15:38 pts/0    00:00:00 grep --color=auto nginx


#测试下访问
浏览器输入10.0.0.100
http://10.0.0.100:80
#伪装成百度
wget https://www.baidu.com/
cp index.html   /app/nginx-1.20.2/html/index.html
部署二进制版本tomcat为例
#00 关闭防火墙和selinux.
####关闭防火墙
systemctl disable firewalld   
systemctl stop firewalld 
####关闭selinux
setenforce  0   
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config

#01 下载tomcat二进制软件包  
wget --no-check-certificate -P /app/tools/ https://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.93/bin/apache-tomcat-8.5.77.tar.gz

#02 安装依赖(环境)
yum install -y java


#03 解压与启动
##a) 解压
cd /app/tools/
tar xf apache-tomcat-8.5.77.tar.gz
ln -s apache-tomcat-8.5.77   tomcat
##b) 启动
/app/tools/tomcat/bin/startup.sh  
##c)检查 进程
[root@oldboy81-golden-lnb /app/tools]# ps -ef |grep java

软件包管理体系总结

  • rpm
  • yum
  • 编译安装
  • 二进制
软件安装方式 简介 详细特点 优势 缺点 应用场景
rpm软件包安装 rpm是linux软件包格式买回来后只需要简单的加工就可以食用. 但是,没有相关依赖,需要自己解决. 自己下载rpm包,自己安装。缺少依赖自己手动解决依赖. 只要你有rpm包.通过rpm命令安装. 缺少依赖.只能手动解决依赖. yum源没有,自己下载好了rpm可以用rpm命令安装安装的时候推荐使用yum localinstallrpm命令一般用于查找软件安装没有,软件包内容
yum命令安装 依赖自行解决 yum安装软件,替我们下载rpm包,替我们安装rpm包,缺少依赖yum替我们下载. 自动检查依赖,自动下载安装 依赖网络(也可以自搭建yum仓库解决 必备,大部分软件通过yum安装有的时间yum源中的软件包版本较低如果要新版本尝试查找rpm包,二进制,源码.
编译安装 可以自己定义. 编译: 源代码--->命令(二进制文件) 编译安装三部曲: ./configure(配置,备菜)--->make(编译,炒菜)--->make install (安装,上菜) 可以自定义功能, 这个软件没有rpm包或yum安装不了. 步骤繁琐.缺少的依赖需要自己解决.大型软件时间长. 定制化功能(增减)新版本企业应用:先编译安装,编译安装内容打包rpm包,搭建yum仓库(私有)
二进制包 绿色软件(解压即用) 别人配置好,我们只需要解压,简单配置,即可使用 方便 不是所有软件都有 方便,但不是所有软件都有。tomcat,数据库软件。
相关推荐
IChen.1 小时前
解决centos 删除文件后但空间没有释放
linux·运维·centos
多恩Stone2 小时前
【vs code(cursor) ssh连不上服务器】但是 Terminal 可以连上,问题解决 ✅
运维·服务器·ssh
何陈陈2 小时前
【Linux】线程池
linux·服务器·开发语言·c++
S hh2 小时前
【Linux 】文件描述符fd、重定向、缓冲区(超详解)
linux·运维·服务器
DuoRuaiMiFa2 小时前
Linux系统性能调优实战指南
linux
憧憬一下2 小时前
线程池的实现和讲解:解决多线程并发服务器创建销毁线程消耗过大的问题
linux·线程池·c/c++·嵌入式linux
碳治郎AI2 小时前
Bolt.new:终极自动化编程工具
运维·自动化
朝九晚五ฺ3 小时前
【Linux探索学习】第三弹——Linux的基础指令(下)——开启新篇章的大门
linux·运维·学习
肥or胖3 小时前
【MySQL】索引
linux·数据库·mysql