linux05--文件基本权限、二进制编译安装、进程管理、系统服务

1 文件基本权限

# 1 rwx             r-x       r-x
  属主(文件所有者)   属组权限    其他人权限
    
# 2 权限详解
    r:read    读权限      4
    w: write   写权限      2
    x: execute 可执行权限   1
    -: 没有权限            0
        
# 3 修改权限
    7=4(r)+2(w)+1(x)
    
    chmod 777 文件夹/文件

2 软件之二进制编译安装

# 1 会了yum安装,为什么还要会二进制安装(编译安装)
    -1.有些软件,官方不提供yum安装
    -2.二进制编译安装,软件版本是最新的
    
# 2 向服务器传递文件的几种方式 
    -1.scp 网络拷贝传输   是两个linux机器相互传输  windows上也支持了。。。
       eg: scp nginx-1.18.0.tar.gz root@101.133.225.166:/home/jack 
    -2.sz,rz 命令
    -3.xftp软件来传
    
# 3 源码安装nginx
    -1 下载
    -2 解压
      -tar -xf 软件包
        
    -3 安装一些编译固定需要的依赖
      -yum install -y pcre-devel gcc gcc-c++ make zlib-devel openssl-devel -y
        
    -4 通过 configure 生成配置信息  # 配置相关的选项,并生成Makefile (软件安装的信息)
      ./configure --prefix=/usr/local/nginx  # prefix 指定安装位置
        
    -5 编译 
      make  # 按照Makefile文件,编译成 可执行二进制程序  此时安装位置还并没有该文件
    
    -6 安装
      make install # 将二进制程序 拷贝至对应的目录中
         
    -7 想在任意路径敲nginx都能执行
      第一种:建立软链接  ln -s /usr/local/nginx/sbin/nginx  /usr/bin/nginx
      第二种:把/usr/local/nginx/sbin/路径加入环境变量
    
    -8 想使用systemctl管理
      制作成系统服务
        
        
# 4 nginx    
  -1 nginx目录介绍
    conf :配置文件都放在这
    html :静态文件存放路径  eg:index.html
    logs :日志
    sbin :可执行文件

  -2 nginx命令介绍
    nginx  # 启动
    nginx -s reload # 重新加载,修改配置文件
    nginx -s restart  # 重启
    nginx -s stop # 停止

3 进程管理

# 1 查看系统进程   常用
  ps -aux  # 中括号是系统进程  [系统进程]

# 2 查看系统进程  
  ps -ef   # 带有UUID

# 3 查看某个进程  grep过滤
  ps -aux | grep id/进程名字

# 4 查看进程 实时变化状态
  top  

# 5 关闭进程
  kill 进程号  # 正常关闭某进程  <==> kill -15 进程号
    -l   # 列出全部的信号
    
    常用信号:
      1 (HUP)  :重新加载进程
      9 (KILL) :强制杀死一个进程  立即终止
      15 (TERM):正常停止一个进程  会保存信息  # 默认信号
  
# 6 强行关闭某进程
  kill -9 进程id号 

# 7 关闭软件的所有进程
  pkill -9 软件名  
    eg:pkill -9 nginx  # 关闭nginx所有进程
    
  killall 软件名
    eg: killall nginx   # 关闭nginx所有进程


# 后台运行进程: 通过screen 来管理进程  
  1.安装:
     yum install screen -y
        
  2.创建一个screen窗口  指定名称
    screen -S myjobs
    
  3.screen窗口中执行耗时任务、进程
    wget ...
    
  4.后台运行任务   平滑退出screen 但任务还在后台运行
    ctrl+a+d   # 注:exit 才是真正关闭screen窗口
    
  5.查看所有的screen
    screen -list
    
  6.进入正在运行的screen 
    screen -r myjobs  # 调到前台执行
    
  7.终止screen
    exit  或 Ctrl + d

4 系统服务

# 1 centos6 启动服务: service start network
# 2 centos7 启动服务: systemctl start network
  centos7 是以 systemd进程 启动linux

# 3 systemd 进程 所在文件目录
  cd /usr/lib/systemd/system/

    
##### 制作系统服务
cd /usr/lib/systemd/system/   # 进入该目录

vim mynginx.service  # 新建服务  名字.service

[Unit]
Description=my nginx  # 描述信息
After=network.target  # 在哪个服务启动后启动
[Service]
Type=forking    # 固定这个
ExecStart=/usr/local/nginx/sbin/nginx       # 启动执行的命令
ExecStop=/usr/local/nginx/sbin/nginx -s stop  # 关闭执行的命令
ExecRestart=/usr/local/nginx/sbin/nginx -s restart  # 重启执行的命令
ExecReload=/usr/local/nginx/sbin/nginx -s reload  # 重新加载执行的命令
[Install]
WantedBy=multi-user.target  # 在linux哪种启动级别后 启动   固定:多用户命令界面启动 

# 以后就支持使用 systemctl start mynginx.service


# 查看服务状态:
  systemctl status mynginx.service
    # disabled表示没有开机自启动
    Loaded: loaded (/usr/lib/systemd/system/mynginx.service; disabled; vendor preset: disabled)
    Active: inactive (dead)  # 未启动
        
# 开机自启动
  systemctl enable mynginx
    
# 取消开机自启动
  systemctl disable mynginx.service
posted @ 2022-07-28 18:38  Edmond辉仔  阅读(45)  评论(0编辑  收藏  举报