• Linux的基本命令2


    ifconfig  查询、设置网卡和ip等参数
    ifup  ens33  启动网卡

    ifdown   关闭网卡
     脚本命令,更简单的方式启动关闭网络
    ip  符


    systemctl restart/start/stop  network

    qq群

    群主     root 拥有至高无上的权利


    管理员  是root用户给与他一些超级权限

    渣渣   小白用户,只有自己基本的权限


    创建普通用户
    useradd  用户名  存放用户信息到 /etc/passwd
    passwd  用户名         给指定用户修改密码。如果不指定用户,修改当前登录的用户的密码

    linux 命令 id命令
    id root  查看root的用户id (uid)  以及组id(gid  gourp id )


    /etc/passwd 存放用户信息
    /etc/group  存放用户组信息
    通过id命令查看用户信息
    id  xiaobai

    切换用户身份


    root用户切换普通用户 不要密码
    反之需要输入root密码

    su  -  用户名
    注意  中间的  -  代表完全切换,连同环境变量都切换了

    退出登录 exit  logout


    xshell快捷键
    ctrl + l  清屏
    ctrl + d  退出登录
    ctrl + shift + r  快速登录


    linux命令提示符的变量 PS1变量

    修改命令提示符,添加 绝对路径,和时间

    PS1="[u@h w ]$"               ??????

    用户组添加

    groupadd 用户组名


    删除用户
    userdel  用户名


    用root身份去执行命令 sudo
    编辑这个文件,写入一些配置
    vi /etc/sudoers
    找到这一行配置

    ## Allow root to run any commands anywhere
    root    ALL=(ALL)       ALL
    zhaoyining      ALL=(ALL)       ALL



    visudo命令,提供语法检测,检测/etc/sudoers文件的编写语法


    修改主机名
    hostnamectl set-hostname s15nb

    文件与目录权限篇

    -rw-r--r--. 1 root             root        712819 Dec  7 08:17 girl.gif        文件
    drwxr-xr-x. 2 root             root      6 Dec 26 20:49 nb            文件夹

    权限相关    软连接数    属于哪个用户      属于哪个组  文件大小   日期   文件名

    文件夹的权限
    d    rwx(user)        r-x(group)            r-x(others)
        root用户的    属于root组里的        既不是root用户,又不再root组的权限

        
        
        
    -    rw-    r--    r--

    d 代表文件夹
    -  代表普通文件


    r  read 可读  
    w    write 可写
    x    可执行
    -   代表没有权限


    属主

    属组



    -rw-r--r--. 1 root root     28 Dec 26 20:57 zhaoyiningnibiewanshoujila
    这个文件属主 root
    属组  root  
    是什么类型文件 是 -  普通文件
    权限是什么 rw-r--r--
        这个文件属主的权限是 rw-
        这个文件的属组的权限是  r--
        其他人的权限是  r--
    对于普通文件的可读可写可执行
    可读  cat vi more less head tail  tac
    可写   echo  vi  >重定向符号啦
    可执行  二进制程序,可以运行的程序

    文件夹的可读写执行

    可读 ls  
    可写 在文件夹当中创建文件
    可执行 cd

    r    可以对此目录执行ls列出所有文件
    w    可以在这个目录创建文件
    x    可以cd进入这个目录,或者查看详细信息

    rwx对应 4+2+1  777

    r  4
    w   2
    x 1
    5(user)4(group)6 (other)  转化字母   r-xr--rw-

    000  ------
    010  -----x---

    rw-r----x    6 4  1

    777  rwxrwxrwx

    文件创建时间 Dec 26 20:57
    文件大小 28


    修改文件权限的命令
    chmod  change  mode 缩写

    -rw-r--r--
    普通文件,user rw-    group  r--   other  r--

    chmod u+ file
    -rwxr--r--
    chmod g-r  file
    -rw----r--
    chmod o+w file
    -rw-r--rw-


    -rwxrwxrwx. 1 root root  0 Dec 26 21:41 123.txt
    chmod   531 123.txt

    -r-x-wx--x  123.txt
    531

    改变用户的属主
    chown  change owner 更改拥有者
    chown  用户名  file
    更改属组
    chgrp  组名   file   ???

    如何查看当前文件在哪个目录下  ???



    #软连接配置

    ln命令   ???

    ln -s  目标文件绝对地址  快捷方式的绝对路径地址

    ln -s  /opt/cs.txt   /home/cs.txt

    py3  /opt/python36/bin/python3.6  解释器绝对路径

    python的时候,就去path中寻找

    将python3.6的解释器,添加快捷方式到 /usr/local/sbin/python3.6

    当我们输入python的时候
    ln -s /opt/python36/bin/python3.6     /usr/local/sbin/

    软连接和path添加,二选一即可


    echo $path
    [root@s15fafafa home]# echo $PATH
    PATH变量只能添加目录,不能定位到文件
    将某个文件地下所有内容,都加入环境变量
    /usr/local/sbin
    :/usr/local/bin
    :/usr/sbin
    :/usr/bin
    :/root/bin

    #假设不用这个
    :/opt/python36/bin/   这才是正确的添加python环境变量



    tar压缩解压命令

    lrzsz 上传下载的小工具

    xftp 文件传输工具

    tar 命令

    -c  压缩参数
    -x  解压参数
    -v  显示过程
    -f  指定文件   这个参数要写在最后

    语法
    压缩文件
    tar  -cf  压缩文件名    想压缩的内容
    解压文件
    tar -xf  压缩文件名


    查看网络端口
    django运行后,会怎么样?
    开通了一个端口  8000
    产生了一个进程
    产生日志
    可能会出现一堆大黄页


    linux一个程序运行后

    ps -ef|grep  查看任务是否运行有进程
    netstat -tunlp | grep  查看任务的端口是否启动

    来自于同一台机器的三个ip
    0.0.0.0          127.0.0.1 加上 192.168.12.13 ,暴露应用又在对外的ip地址,又暴露在自己的回环地址

    127.0.0.1        本机回环地址 ,代表机器自己的内部一个ip,其他人访问不到,并且每个人都有自己的127.0.0.1

    192.168.12.13  本地对外可以提供访问的 ip地址 ,每个人都不一样



    python manage.py  runserver   启动django

    python manage.py  runserver  192.168.12.13 8000  在 192.168.12.13地址上启动 8000 端口提供访问

    其他人访问地址192.168.12.13:8000   


    python manage.py  runserver  默认启动在 127.0.0.1  8000

    其他人访问不到你的django

    python manage.py  runserver  0.0.0.0  8000
    其他人可以访问 你的机器地址 192.168.12.13:8000 即可

    如果你没有ifconfig
    输入这个命令,安装一个软件
    yum install net-tools -y


    如果你发现你有些命令没有,在确保你没敲错的情况下,就是没安装这个命令

    在你装机的时候,最小化安装,可能只有 500个软件
    选择 web服务器软件包安装  1000个软件

    如果你缺少命令,不要怕。缺什么装什么
    yum 这个软件管理命令去安装




    端口查看

    netstat -tunlp |grep 8000  过滤出 django的8000端口是否存货


    netstat [选项]
    -t或--tcp:显示TCP传输协议的连线状况;
    -u或--udp:显示UDP传输协议的连线状况;
    -n或--numeric:直接使用ip地址,而不通过域名服务器;
    -l或--listening:显示监控中的服务器的Socket;
    -p或--programs:显示正在使用Socket的程序识别码和程序名称;
    -a或--all:显示所有连线中的Socket;

    ps 命令查询进程                                                                                                                                                                                
    ps -ef  |grep mysql
    ps -ef|grep  nginx


    杀死进程的命令

    kill 命令   如果你kill一个进程,死活杀不死,就加上 -9  
    -9  强制终止信号(危险命令)  强制杀死进程,以及进程相关的依赖

    kill -9  uwsgi

    kill -9  mysqld




    selinux 内置的防火墙

    查询selinux状态    ????不能运行
    getenforce
    暂时停止selinxu
    setenforce 0
    永久关闭selinux
    vi /etc/selinux/conf     ????里面没有东西
    #     enforcing - SELinux security policy is enforced.          开启
    #     permissive - SELinux prints warnings instead of enforcing.        临时关闭
    #     disabled - No SELinux policy is loaded.        永久关闭

    修改如下行
    SELINUX=enforcing
    重启机器,使得selinx永久关闭


    软件防火墙
    iptables -F  清空规则
    iptables -L  
    查看iptable防火墙规则 ,看到只有如下短短的三个链,就说明,没有规则了
    关闭防火墙的需求,防止他影响你的服务访问
    [root@s15fafafa ~]# iptables -L
    Chain INPUT (policy ACCEPT)
    target     prot opt source               destination         

    Chain FORWARD (policy ACCEPT)
    target     prot opt source               destination         

    Chain OUTPUT (policy ACCEPT)
    target     prot opt source               destination    



    停止防火墙服务
    systemctl start/restart/stop firewalld
    systemctl disable  firewalld  #删除iptables的开机自启

    修改linux的字符编码

    1.编译字符编码的文件
    vi /etc/locale.conf
    写入如下变量
    LANG="zh_CN.UTF-8"

    2.读取这个文件,使得变量生效

    source  读取命令,使得配置文件在系统中生效

    source /etc/locale.conf

    3.查看系统字符编码
    echo $LANG



    #查看磁盘空间
    df -h


    #tree以树状图显示文件目录结构

    yum install tree -y



    #dns服务
    bind软件,配置dns服务的

    常见的互联网 dns服务器

    8.8.8.8  谷歌的dns服务器
    114.114.114.114  114dns服务器地址
    223.5.5.5  
    223.6.6.6  阿里巴巴的dns服务器地址

    119.29.29.29  腾讯的dns服务器地址

    .....


    linux  dns配置文件是 /etc/resolv.conf
    [root@s15fafafa home]# cat /etc/resolv.conf
    # Generated by NetworkManager
    nameserver 119.29.29.29        主dns
    nameserver 223.5.5.5        备dns
     
    /etc/hosts文件  本地dns强制解析的文件

    [root@s15fafafa home]# cat /etc/hosts
    127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
    ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
    192.168.13.148  www.baidu.com




    dns解析顺序:
    1./etc/hosts
    2./etc/resolv.conf


    linux用于解析域名的命令

    nslookup  pythonav.cn




    linux的定时任务
    crontab  -l  查看任务
    crontab -e  编辑任务




    crontab的语法

    分 时  日 月 周   命令

    *   *   *  *  *   每一分钟 做这件事

    #每分钟执行一次命令
    * * * * *  命令

    #每小时的3,15分钟执行命令

    分        时        日         月         周        
    *       *       *       *       *
    3,15    *         *        *        *  命令    


    #在上午8-11点的第3和第15分钟执行
    分        时        日         月         周        
    *       *       *       *       *
    3,15   8-11     *      *      *  命令



    #每晚9:30执行命令
    分        时        日         月         周        
    *       *       *       *       *
    30      21      *        *        *


    #每周六、日的1:30执行命令
    分        时        日         月         周        
    *       *       *       *       *
    30        1       *       *       6,0  


    #每周一到周五的凌晨1点,清空/tmp目录的所有文件
    分        时        日         月         周        
    *       *       *       *       *
    0       1        *     *        1-5    /usr/bin/rm -rf /tmp/*  

    #每晚的21:30重启nginx
    分        时        日         月         周        
    *       *       *       *       *
    30      21     *      *     *    /usr/bin/systemctl  restart nginx

    #每月的1,10,22日的4:45重启nginx
    分        时        日         月         周        
    *       *       *       *       *
    45     4        1,10,22     *    *   /usr/bin/systemctl  restart nginx


    #每个星期一的上午8点到11点的第3和15分钟执行命令
    分        时        日         月         周        
    *       *       *       *       *
    3,15    8-11    *     *       1  执行命令



    windows软件包
        exe可安装格式
        msi 可执行安装文件
        .zip  压缩格式
        .rar 压缩包格式

    linux软件包管理
    linux软件格式分为

    1.源码包格式
        1.下载python3的源码包
        2.解压缩源码包,切换目录
        3.编译且安装
        4.配置环境变量
        5.使用python3
    2.rpm二进制包格式(这种安装方式,需要手动解决依赖关系,有可能装一个mysql,装个俩小时)
        1.下载软件的rpm格式包
        2. rpm -ivh lrzsz.rpm
        3.使用lrzsz工具
        
        补充:
        1.如果直接安装mysql5.6.rpm,依赖了很多其他的软件包,我就得一个一个解决依赖,
        2.所以rpm安装方式,需要手动解决依赖关系,很麻烦,不建议使用
        
        
    lrzsz这是软件包的名字
    提供了命令是
    rz 接收文件
    sz  发送文件


    3.yum安装方式
    yum工具,自动的搜索下载rpm包,且安装,且解决依赖关系,自动处理下载其他的依赖rpm包


    软件开发目录规范
    lib 库文件
    core  核心文件
    bin  可执行文件
    conf 配置文件
    log  日志文件夹
    readme  使用说明书

    向用python的模块
    pip3 install -i http://pypi.douban.com/simple flask

    想用linux的软件,yum默认去从centos官网去下载
    yum install    

    yum源的仓库路径在
    /etc/yum.repos.d/
    然后这个目录底下,只有 以 .repo结尾的文件,才会被识别为yum仓库


    配置国内的yum源
    1.在/etc/yum.repos.d/目录底下,定制我们自己的repo仓库文件
    2.我们自己没有yum仓库,我们就去拿阿里巴巴的yum仓库
    3.https://opsx.alibaba.com/mirror  这就是阿里巴巴的镜像站
    4.下载阿里巴巴的yum仓库文件
    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    wget下载文件后,-O参数,指定放到某个目录,且改名
    5.清除yum缓存
    yum clean all
    6.生成新的阿里云的yum软件缓存
    yum makecache


    再配置epel额外的仓库源,这个仓库里就存放了很多第三方软件,例如redis  mysql  nginx
    1.配置epel仓库
    wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
    2.最好再生成yum缓存
    yum makecache
    3.请随心所欲的使用 yum工具

    yum示例用法
    yum安装nginx web服务器软件
    1.  yum install nginx  -y       -y 一路都是默认yes
    2.启动nginx  
    直接输入nginx命令
    3.修改nginx主页面 ,文件名字叫做 index.html  
    find  /   -name index.html        查找这个文件所在地
    vim /usr/share/nginx/html/index.html        修改这个nginx首页文件



    系统服务管理命令
    只有通过yum安装的软件,默认才能使用这个命令管理
    systemctl  start/stop/restart  服务名

    systemctl  start/stop/restart    mariadb
    systemctl  start/stop/restart  redis
    systemctl  start/stop/restart  nginx








  • 相关阅读:
    修改 markdown 二级标题的编号 自动编号 autoNumber.js nodejs
    摆脱鼠标系列 百度搜索 火柴 快捷键 Ctrl两次
    代码片段管理软件 发现 utools 这个工具还行 windows软件
    java 携带session 前台传递cookie 跨域解决方案 vue + java
    用nodejs 调用 博客园 MetaWeblog,获取自己全部列表标题
    利用 油猴脚本 每日填日志
    Vue.prototype.$app = this vscode ctrl 点击 不跳转
    vscode 切换主侧栏可见性 原Ctrl+B 我改为了 Alt+P
    vscode 快速切换窗口 快捷键 设置成 Alt + Q 了
    snipaste 截屏工具快捷键 alt + A 还有 Ctrl + Shift + A
  • 原文地址:https://www.cnblogs.com/mlhz/p/10187740.html
Copyright © 2020-2023  润新知