• linux


    1.简介

    1.没有exe文件
    2.区分大小写
    3.一切皆文件
    4.文件后缀没那么重要,只是好识别而已
    补充:管道符的作用:命令格式:命令A|命令B,即命令1的正确输出作为命令B的操作对象

    2.配置centos网络

    1.配置网络

    vi /etc/sysconfig/network-scripts/ifcfg-encfg03    配置最后一行配置自动启动  onboot = yes
    
    service  network  restart    重启网络服务
    
    ping  www.baidu.com    验证网络是否配置成功

    2.配置ifconfig命令

    yum  install  net-tools   
    ifconfig 验证命令

    3.连接xshell

    1.上面的步骤centos已经可以ping出来,但是ping不进去的
    2.  systemctl  status  firewalld  #查看防火墙 
    systemctl stop firewalld #临时关闭防火墙
    systemctl disable firewalld #永久关闭防火墙
    systemctl restart network #重启网卡
    3.关闭防火墙,重启网卡,ping linux的ip验证
    4.xshell连接
    windows使用xshell客户端
    linux ssh 客户端 yum install openssh-clients
    ssh root@10.0.0.254 # 命令连接 端口号默认22 有的服务器没有远程连接服务sshd 需要自己安装

    4.ssh:  config命令/ 免密登录 (后补)

    4.配置yum源

    1) 安装wget
    yum install -y wget
    2)配置阿里云源
    wget  http://mirrors.aliyun.com/repo/Centos-7.repo
    3) 重新加载yum
    yum clean all    #清除yum安装包的header缓存
    yum makecache # 安装yum缓存


    测试:安装vim : yum install vim

    5.yum命令(安装软件)    先查search后装 install      查看已安装的软件版本  httpd -v

    1.常用命令

    查找
    yum search java 列出所有java的版本,
    yum list 列出所有可安装的安装包
    yum list installed 列出
    安装   yum install
    #全部安装   yum install package1 #安装指定的安装包package1   yum groupinsall group1 #安装程序组group1 更新和升级   yum update #全部更新   yum update package1 #更新指定程序包package1   yum check-update #检查可更新的程序   yum upgrade package1 #升级指定程序包package1   yum groupupdate group1 #升级程序组group1 删除程序   yum remove httpd #删除程序包package1   yum groupremove group1 #删除程序组group1   yum deplist package1 #查看程序package1依赖情况 清除缓存 yum clean all #清除所有缓存包   yum clean packages #清除缓存目录下的软件包   yum clean headers #清除缓存目录下的 headers   yum clean oldheaders #清除缓存目录下旧的 headers

    补充:/home家目录概念    cd ~  进入当前用户的家目录  有可能是root目录或home目录

    6.linux 常用命令

    1.软件操作命令
    2.服务器硬件资源和磁盘操作
    3.文件和文件夹操作命令 
    4.包的命令
    4.系统用户操作命令 5.防火墙相关设置 6.提权操作sudo和文件操作

    1.软件安装命令   yum

    2.服务器硬件资源和磁盘操作(内存 磁盘  cpu)

    内存: free -m     
    硬盘: df -h        
    cpu: w/top     w  可以查看最近5分钟,10分钟,15分钟 cpu的使用率
    cpu个数和核数   cat /proc/cpuinfo

    3.进程/服务   

    ps:top可以动态显示服务器资源动态 ,相当任务管理器, ps是一次性的

    # ps查看进程
    ps aux  # 擦好看进程详细情况      ps aux | grep httpd
    a:显示终端上所有进程,包括其他用户的进程
    u:显示进程的纤细情况
    x:显示没有控制终端的进程
    
    pa au # 常用
    
    
    top # 动态显示运行中的进程并且排序,类似于windows的任务管理器
    
    kill PID号 # 终止PID号的进程
    kill -9 PID号  # 强制终止
    pkill 服务名  # 杀死指定服务
    
    掌握pgrep命令的功能:通过名称或其他属性查找进程
    例如:查找名为firefox的进程的命令为:pgrep firefox
    
    
    # 服务
    netstat -natup   # 查看所有服务
    top  # 动态显示服务状况
    wget www.baidu.com   vim index.html  # 爬取资源
    
    systemctl stop 服务名 : 关闭某一个服务 
    systemctl start 服务名  : 启动一个服务 
        eg:service sshd start: 启动ssh的服务 
    systemctl restart 服务名 : 重新启动一个服务 
        eg:service sshd restart: 重新启动ssh的服务 

    3.文件操作命令(一切皆文件)

      文件目录结构

    目录作用

    bin  ---- 命令,二进制文件的存放目录
    boot ----- 系统引导程序+系统的内核 
    dev   ---- 设备 硬盘,光驱
    etc   ---- 存储系统或者服务的配置文件
    home  ---- 普通用的家目录,贫民窟
    lib  ----- 库文件存放目录
    lib64 ---- 库文件的存放目录(64位系统)
    media ---- linux识别的设备,比如u盘等,挂这个目录
    mnt  ----- 临时的挂载点目录
    opt  ----- 第三方的软件安装在整理
    proc ----- 虚拟目录,显示内存中的信息(进场,内核的信息)
    root -----  root的家目录 相当于皇宫
    run  -----  放的启动的东西
    sbin  ---  超级命令,只用root用户才能用的命令
    srv   ----- service的缩写,存放的是一些启动后需要的数据
    sys  ------ 虚拟目录,内存信息
    tmp  ----- 临时文件的存放位置
    usr ---- 存放用户的程序
    var ----- 存放经常变化的文件,比如日志等

     文件基础操作

    补充:pwd  显示当前路径  ,文件可以不用后缀,一般d开头的表示文件夹 , .表示当前目录

    ls -

    -a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出)
    -l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
    -r 将文件以相反次序显示(原定依英文字母次序)
    -t 将文件依建立时间之先后次序列出
    -A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录)
    -F 在列出的文件名称后加一符号;例如可执行档则加 "*", 目录则加 "/"
    -R 若目录下有文件,则以下之文件亦皆依序列出
    View Code
    cp 拷贝
        eg:将目录/usr/men下的所有文件及其子目录复制到目录/usr/zh中
        cp -r /usr/men /usr/zh
        /cp -r /usr/men /user/zh  # 前面加/ 不会重复提问你
        
    mv 移动 
        eg:将文件 aaa 更名为 bbb :   mv aaa bbb
           将info目录放入logs目录中。注意,如果logs目录不存在,则该命令将info改名为logs。
            mv info/ logs
    
    touch test  # 创建test文件
    touch test{1,2,3}  # 创建test1,test2,test3文件
    mkdir index  # 创建index目录   直接创建文件夹:mkdir -p /etc/test    进入目录后创建mkdir test  
    mkdir index{1,2,3}  # 创建index1,index2,index3目录
    rm test  # 删除文件(需要确认)
    rm -r index  # 删除文件夹(需要确认)
    rm -rf index  # 删除文件或目录(不需要确认,直接删除)
    
    yum install tree
    tree # 树状显示目录结构

      vim编辑器(有GUI页面的都无法使用)将文件读取到内存中

      常用命令 i/esc

     vim  文件   新建或打开文件
    gg 移到行首 G 移动到行尾
    dd删除本行 u撤回

      文件权限

      

    4+2+1   7  rwx    读写执行
    4+2+0   6  rw-    读写
    4+0+1   5  r-x    读执行
    4+0+0   4  r--    读
    0+2+1   3  -wx    写执行
    0+2+0   2  -w-    写
    0+0+1   1  --x    执行
    0+0+0   0  ---    无任何权限
    
    
    # 修改权限方式一
    chmod -R 777  文件名   #所有权限
        -R 标识递归设置所有文件
    # 修改权限方式二
    chmod +rwx 文件名  (不好用,不推荐)
    
    chmod  # 修改权限
    chgrp  # 修改组
    chown  # 修改拥有者

      文件搜索/查找/读取

    # 文件搜索  find搜索
    find 大致路径 -name *.txt  # 搜索路径下的所有以txt结尾的文件
        eg:find -name *a*  # 模糊搜索,配合通配符使用
           find python/ -name *.py  # 搜索python文件夹下的所有.py结尾的文件
    # cat  test.log  读取整个文件
    # head 从头部读取  
    # tail 从尾部读取显示后几行,  
      eg:  tail -f  test.log 实时监控(默认显示10行),tail -n 100  显示日志后100行,  
           tail -f -n 100  test.log    
    #grep  
    tail -f -n 100 test.log | grep xxx | grep yyy
    
    管道符使用:
    find python/ -name *.log | grep error
    
    #more 分页读取   more test.log
    #less 可控分页
    # wc 统计个数    eg:统计日志的行数: cat test.log | wc l

      文件的压缩(tar)与解压

    tar基本使用:
    打包:
    -c # 打包,产生新的包
    -x # 解包
    -v # 列出归档解档过程,显示进度
    -f # 指定包名
    -r # 添加文件
    -u # 更新
    -t # 列出文件
    压缩:
    -z # gzip格式
    -j # bzip2格式
    -C(大写) # 解压到指定目录
    
    # tar打包:
    tar -cvf 包名.tar 文件路径
        eg:
        # 普通打包
        tar -cvf aa.tar /home/001.txt 002.txt 003.txt  # 3个文件打包为1个文件
        # 配合通配符打包
        tar -cf jpg.tar /home/*.jpg  # 将home下的所有.jpg结尾的文件打成jpg.tar包
        # 添加到已有的包
        tar -rf jpg.tar /home/*.gif  # 将home下的所有.gif文件添加到jpg.tar包中
        # 更新
        tar -uf jpg.tar *.gif  # 更新jpg.tar包中的所有gif文件
        # 列出文件
        tar -tf jpg.tar  # 列出jpg.tar包中所有文件
        
    # tar解包:
    tar -xvf 包名.tar
        eg:
            tar -xvf aa.tar
    
    # 打包并压缩 -z 或者-j
    tar -zcvf jpg.tar.gz /home/*.jpg  # 将home下的所有.jpg结尾的文件打成jpg.tar.gz的压缩包
    tar -jcvf jpg.tar.bz2 /home/*.jpg  # 将home下的所有.jpg结尾的文件打成jpg.tar.bz2的压缩包
    
    # 解压缩包 -x或者-j
    eg:
        tar -zxvf jpg.tar.gz
        tar -jxvf jpg.tar.bz2
    
    
    # 解压到指定目录 -C(大写)
    tar -zxvf jpg.tar.gz -C /home/jeff

    包操作  rpm 安装本地的安装包,yum在线安装

    rpm -qa # 查询所有安装过的包信息   rpm -qa | grep httpd   yum liist installed | grep httpd
    rpm -q 包名 # 查询指定软件包是否安装过
    rpm -qf /etc/passwd  # 反向查询文件是由什么包安装
    rpm -qi 包名 # 查询已安装的包的信息
    rpm -ql 包名 # 查询包的所有文件安装路径
    rpm -qr 包名 # 查询已安装包的依赖关系
    rpm -qrp 包名 # 查询包的依赖关系
    rpm -V 包名 # 查询已安装的包是否修改过  V是大写
    
    rpm -e 包名 # 卸载包
    yum -y remove 包名 # 卸载包

    7.通配符

    *  # 匹配0个或者多个字符
        eg: ls index*  # 结果:index1,index2abc,index3asdasd。。。
    ?  # 匹配任意单个字符 
        eg: ls index?  # 结果:index1,index2,index3
            ls index??  # 结果: indexaa,indexbb,indexcc
    [0-9] # 匹配0-9范围内的数字
    [abc] # 匹配列表中的任意字符
    ^  # 非,取反
        eg: [^abc]:匹配除abc的字符
    
    
    >  # 追加到文件,覆盖原来的信息
        # 可以利用>做黑洞文件,垃圾桶
        eg: echo hello >test  # hello写入test中,并覆盖原来的所有内容
    >> #  追加到文件,不覆盖原来的信息
        eg: echo hello >>test  # hello写入test中,从末尾追加,不覆盖
        
    | # 管道符,对前面的命令结果,传给后面用
        eg: cat test2 |grep a
            cat test2 |grep -n a   
            cat test2 |grep -ni A

    8.用户权限

    1.创建用户

    #添加用户  ueradd  bigbox 
    # 设置密码: passwd bigbox
    # 封锁解锁用户 usermod -L jeff 锁定jeff用户 usermode -U jeff 解锁jeff用户 # 删除用户 userdel -r 删除用户 # 将用户添加到组 chgrp -R 组名 用户名 # 将用户添加到组 eg:chgrp -R python jeff # 将jeff添加到python组 -R :递归修改用户中目录及文件权限 who # 查看当前用户目录 whoami # 查看当前用户名 /etc/password # 用于把偶才能用户信息的文件 /usr/bin/passwd # 用于修改用户密码的程序

    2.用户组

    groupadd 组名  # 创建组
    groupdel 组名  # 删除组
    
    # 将用户添加到组
    chgrp -R 组名 用户名  # 将用户添加到组
        eg:chgrp -R python jeff   # 将jeff添加到python组
        -R :递归修改用户中目录及文件权限

    eg:普通用户提权:  root  用户使用visudo 命令 将用户添加到文件中,普通用户使用sudo 即可获得和root一样的权限

    9.开关机,重置密码

    reboot 重启系统
    shutdow # 一分钟后自动关机
    shutdow -c # 取消本次关机操作
    shutdow now # 立即关机
    shutdow -r now # 立即重启
    shutdow 20:00 # 20:00关机
    shutdow 10 # 10分钟后关机
    
    
    root 重置密码
    第一步:开机4秒内按e
    第二步:光标移动到Linux16开头处,按end(光标移到末尾)
    第三步:在末尾输入 空格rd.break   ctrl+x 下一步
    第四步:mount -O remount,rw /sysroot
    第五步:chroot /sysroot
    第六步:passwd root
    第七步:输入两遍新的root密码
    第八步:touch /.autorelabel
    第九步:exit两遍

    进阶:软件安装

    1.防火墙

    1.防火墙    (centos7 自带防火墙)   注意这里使用service 而不是 firewalld

    安装: yum install  firewalld 
    启动: servive firewalld  start
    检查状态: servic firewalld  status 
    关闭或禁用防火墙: service firewalld  stop/disable

    2.常用命令

    firewall-cmd --version  # 查看防火墙版本
    firewall-cmd --help      # 查看帮助
    firewall-cmd --get-zones   #查看防火墙所有区域         默认区域为public
    firewall-cmd --list-all-zone # 查看所有区域的详情
    firewall-cmd --query-service=ssh   # 查询ssh服务
    firewall-cmd --remove-service=ssh   #删除服务
    firewall-cmd --add-service=ssh       #增加服务
    
    端口     端口和服务只需要添加一个即可
    firewall-cmd --zone=public --list-ports firewall
    -cmd --query-port=22/tcp #查询duankou firewall-cmd --add-port=22/tcp #增加端口 firewall-cmd --remove-port=22/tcp #删除端口

     2.appache 

    centos  httpd      ubuntu  appache     

    appache 与 tomcat  :  appache 只支持静态网页 动态js 交给tomcat处理   appache web服务器,tomcat(应用服务器)

    1.安装appche服务

    yum install httpd
    systemctl  start httpd
    system  status  httpd
    ps -ef | grep httpd # 查看进程
    netstat -natup | grep httpd #查看服务
    service firewalld stop #关闭防火墙

     2.域名解析,伪静态  待补充

    3.nginx   

    Centos7中无Nginx的源
    rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
    yum install ngix
    systemctl start nginx
    systemctl stop nginx
    systemctl reload nginx # reload 重新加载文件 重载不会关闭服务 对已连接的用户无影响 正在谁用的服务,一般使用reload

      

     反向代理,负载均衡 待补

  • 相关阅读:
    八、分组
    七、select使用
    六、SQL基础应用
    五、修改MySQL密码
    side Effect
    js函数式编程
    React生命周期
    Portals
    git使用技巧
    函数式编程
  • 原文地址:https://www.cnblogs.com/bigbox/p/12865628.html
Copyright © 2020-2023  润新知