zoukankan      html  css  js  c++  java
  • Linux系统的相关知识、常用命令及拓展、centos 7网卡配置

    (本文仅为平时学习记录,若有错误请大佬指出,如果本文能帮到你那我也是很开心啦)

     

    一、Linux系统的相关知识

    1.Linux中根目录下所有文件夹的含义和用途

    目录 功能
    /bin 存放可执行文件

    /dev

    存放设备文件 (如:网卡、CPU)

    /media 存放可移除设备文件 (如:U盘、CD/DVD、VMTools)
    /opt 存放第三方软件的默认位置
    /tmp  存放临时文件 (如:日志文件)
    /root root用户的家目录,主文件夹
    /home 普通用户的家目录,文件夹的命名是以用户的名字来命名的
    /etc 存放配置文件
    /usr 存放操作系统软件资源
    /var 存放常态性变动的文件 (如:创建网站的网站源码)
    /proc 存放虚拟文件系统

    2.[root@localhost ~]#含义:

    • root 当前登录的用户
    • localhost  计算机名字
    • ~  当前工作位置,家目录
    • -  前一个工作目录  如:当前工作目录/etc   cd /var   cd -  就进入了/etc
    • #  当前用户是root  若为$ 当前用户是普通用户

     

    二、常用的Linux命令(以下命令均在centos上演示)

    ls  查看当前文件夹下或其他文件夹下的文件列表或文件夹列表

    ls -l  查看详细信息的列表

    ls -al或ls -a  查看所有文件列表的详细信息,可查看隐藏文件,隐藏文件前加.

    1 ls -d  只看当前目录
    2 ls -dl  目录的信息
    3 ls -dl /temp/  查看目录temp的详细信息

    1 cd 切换目录
    2 cd ./当前目录
    3 cd ../上一级目录
    4 cd /home 进入普通用户家目录
    5 cd ~  =  cd  =  cd /root  进入root家目录
    6 cd /home/test 进入tast的家目录

    1 clear = ctrl + L  清屏
    2 touch index.html  创建文件
    3 echo ‘hello word!’ >index.html  写数据
    4 cat index.html 查看文件,将文件从第一行开始连续的将内容输出在屏幕上
    5 cat -n 文件名  读文件时,连行号一起输出

    • 注:tab补全功能,也可检查拼写是否正确
    1 more index.html 或 less index.html  查看文件,读文件时显示一部分
    2   more 文件名(显示百分比,按Q键退出,回车一行出一行)
    3   less 文件名(不显示百分比,按Q键退出,回车一行出一行)

    tac index.html  读文件,将文件从最后一行开始倒过来将内容数据输出到屏幕上(与cat正好相反)

    1 head 文件名 默认显示前10行
    2   head -n 7 文件名 显示前7行

    1 tail 文件名 默认显示后10行
    2   tail -n 7 读取后10行

    1 mkdir test  创建文件夹
    2 rmdir test  删除文件夹

    1 rm index.html  删除文件
    2 rm -r test  删除文件夹
    3 rm -rf test强制删除文件,不会询问

    cp 源文件 目的文件  拷贝文件

      注:这里qqq.txt的路径是 ./ttt/qqq.txt

    1 mv 源文件 目的文件  移动文件
    2    mv 原文件名 更改的文件名  修改文件名字

    1 su 用户名 切换用户
    2 whoami  查看当前用户是谁
    3 id  查看当前用户的UID  注:UID = 1000 表示普通用户  UID = 0 表示root
    4 hostname  查看计算机名

    • 注:Linux对大小写敏感
    1 service firewalld status 查看防火墙运行状态
    2 service firewalld stop  关闭防火墙

    1 curl  来获取网页,可以使用输出重定向来下载文件
    2 wget  下载文件  也可下载工具
    3 firefox www.baidu.com  用火狐浏览器访问百度,会直接弹出界面
    4 nslookup  查看DNS(DNS就是把域名解析为IP)信息
    • 若访问失败,找网卡配置文件,/etc/sysconfig/network-scripts/ifcfg-ens33(我这里是ens33,是通过在终端ifconfig查看的),vim 先找到配置文件,/etc/sysconfig/network-scripts/ifcfg-ens33,在文件中 找到 ONBOOT=NO 改成 ONBOOT=yes,保存退出,重启网络service network restart(这里先讲解决方法具体命令在下面详细解释)

    • 查看百度源代码view-source:https://baidu.com
    1. F12 或者 在空白处右键查看源代码
    2. curl https://baidu.com/index.html >./baidu.index.html  将百度的源代码打印下来,并且重定向到当前目录下的baidu.index.html文件中
    3. wget https://baidu.com/  下载百度源码

    三、查找文件的常用命令

    1.find

    1 find 路径 [-name|-type|-time|-size]
    2   -name  找指定文件名的文件
    3   -type  找指定文件类型的文件
    4   -time(小时、分钟、秒)  找指定时间内或者外修改过的文件
    5   -size  找指定大小的文件

    注:Linux中所有的设备都是以文件的形式存在,如网卡在Linux中有一个文件来表示网卡(网卡配置文件)

    • 如:ifconfig --> ens33 -->find /etc -name ‘*ens33*’  查找网卡配置文件

    查找指定时间内修改过的文件

    1 find -atime -2 最后2*24小时访问的文件
    2 find -ctime -2 最后2*24小时被改变文件状态的文件
    3 find -mtime -2 最后2*24小时被改变文件数据的文件

    2.locate sshd_confg

    1 updatedb  需要先更新文件位置数据库,再查找
    2 whereis sshd_confg 系统命令,找出系统命令的具体位置,找文件不一定能找到!!!
    3 whereis cat 找到cat命令手册

    3.grep 从文本文件或管道数据流中筛选匹配的行及数据

    1 grep qwe /etc/group  查看qwe组密码文件
    2 cat /etc/group |grep qwe  在etc下的group里面搜test

    grep 'qwe' ./r.txt  在r.txt文件中查找qwe

    四、开关机以及运行模式

    关机:shutdown、shutdown -h、halt、power off

      (shutdown -c  取消前一个机关命令)

    重启:reboot  init 6  shutdown -r

    登录  login 用户名

    退出  exit  loginout

     

    五、Linux系统模式

    • init进程

        0:关机,停机模式

        1:单用户模式

        2:多用户模式

        3:完整的多用户文本模式

        4:系统未使用,保留一般不用

        5:图形化模式

        6:重启模式

     

    六、vim编译器

    1.vim的三种模式及之间的相互转换

    • 命令模式:vim 打开文件后所处的状态

        退出:wq 保存退出  :w 保存 :q 退出  :w! 强制保存  :q! 强制退出

    • 输入模式:在命令模式下输入a/i/o 就能进入到输入模式,就可以开始编辑(这里就不做演示了)

        a 在光标后一位开始输入

        i 在光标所在位置开始输入

        o 在光标下一行开始输入

        A 在光标所在行的末尾开始输入

        I 在光标所在行的开始位置输入

        O 在光标上一行开始输入

      按ESC进入命令模式

    • 底部命令模式: 

        当前是输入模式,按ESC,输入:,就可以进入到底部命令模式

        当前是命令模式,直接输入:,就能进入到底部命令模式

    2.vim编辑器中的数据操作

    • 在vim编译器中查找数据,需要在命令模式中进行

      /key_word  在光标之后找第一次出现的关键词,按住n键会寻找下一个关键词

    • 在vim中替换数据,需要在底部命令模式中进行
    1 :%s/key1/key2  所有的文档每行第一次出现的key1替换成key2
    2 :%s/key1/key2/g   所有的key1替换成key2
    3 :s/key1/key2  将当前行第一次出现的key1替换成key2
    4 :s/key1/key2/g  将当前行中所有的key1替换成key2

    3.vim其他操作

    • 在命令模式中进行

        x  删除光标后面的一个字符

        X  删除光标前面的一个字符

        dd  删除光标所在行

        ndd  删除光标后n行

        yy  复制光标所在行

        p  将复制的数据粘贴到光标的下一行

        P  将复制的数据粘贴到光标的上一行

        u  撤销上一个动作

    • 在底部命令模式中进行

        :set un  设置行号

        :set nonu  取消行号

    注:vi 和 vim 的功能基本一样,vim可以看作是vi的增强版

     

    七、压缩格式

    • 压缩包
    1 tar 打包 没有压缩
    2 tar -cvf fire.tar f1 f2   将文件f1、f2打包成fire.tar
    3   -c  打包
    4   -v  显示打包过程
    5   -f  指定文件
    6   -z  针对的压缩包的格式是zip或gz
    7   -x  解压缩
    8 tar -zcvf file.tar.gz f1 f2  将文件f1、f2打包压缩成file.tar.gz
    9 tar -zxvf file.tar.gz 解压缩
    • zip包
    1 zip test.zip f1 f2  将文件f1、f2压缩成test.zip
    2 unzip test.zip 解压缩

      [y]  确认单个文件或文件夹压缩

      [n]  取消单个文件或文件夹压缩

      [A]所有解压

      [N]所有取消解压

      [r]单个文件或文件夹解压后重命名

    注:开启多个终端  shift + ctrl +t

      切换终端  alt + 数字

     

    八、Linux下的权限管理

    ls -l  查看详细信息的列表

    数据的含义:

    文件类型和权限   子目录数或链接数量   文件所有者   文件所属组   文件大小   日期和时间  文件名

    这里主要说第一列,第一列包含文件类型和权限(后面9位中出现-表示权限缺省)

    • 1位表示文件类型

        -   二进制文件  

        -d 目录文件

        l    链接文件(快捷方式)

    • 第2到第4位 当前文件所有者的权限
    • 第5到第7位 文件所属组的权限
    • 第8到第10位  其他人对于该文件的权限

    后9位表示权限(后面9位中出现-表示权限缺省)

      r  可读,用4表示

      w  可写,用2表示

      x  可执行,用1表示

    权限对于文件和文件夹的含义:

     

    对于文件的含义

    对于文件夹的含义

    r

    可以查看文件内容

    可以列目录 即可ls

    w

    可以修改文件内容

    可以在文件夹下新建或删除文件

    x

    可以执行文件

    可以进入文件夹  即可cd

    chmod [who] [+|-|=] 文件名  更改权限的命令

      who  u-->所有者  g-->所属组  o-->其他人  a-->所有人

        +  添加权限

        -  取消权限

        =  赋值某些权限

    • 如图所示,在桌面新建test.txt,把权限更改为777

      注:更改权限的方式推荐直接使用数字

    更改所属者或者所属组

    1 chown root /test  将test文件夹所有者更改为root
    2 chgrp admin /test  将test文件夹的所属组更改为admin

    快速方法:

    1 chown root:root /tmp 将tmp文件夹的所有者改为root,所属组该为root
    2 chown -R root:root /tmp  将tmp文件夹下的所有文件的所有者改为root,所属组该为root
    3 chmod -R 777 ./*  此目录下所有的文件都循环迭代,更改权限为777

     九Linux下的用户管理

    1.用户信息保存在/etc/passwd,一般用户都有读的权限

    cat /etc/passwd  查看用户信息

    参数说明:

    用户名:密码:UID:GID组ID:描述信息:用户的家目录:默认使用的解析器

    • 如果将最后一项更改为/sbin/nologin,该用户就不能登录了

    真正的用户:修改密码,可以登录

    伪用户:应用程序在运行时会以某种权限来运行,并使用程序名来表示该程序,并存在/etc/passwd文件中,伪用户不可以直接登录  如:apache 使用www - data

    2.当前用户权限不足,需要提权

    1 sudo 命令  赋予当前用户一个临时的root权限去操作
    2 sudo ./vmware-install.pl
    3 su root  切换为root用户

    3.用户密码存储在/etc/shadow,一般情况下,普通用户没有读权限

    cat /etc/shadow  查看用户密码

    参数说明:

    用户名:密文密码:最后修改密码的时间:修改密码最短有效时间:最长时间:7:::(后三位是密码策略)

    4.单用户操作su 切换用户

     1 whoami  查看当前登录的用户
     2 id  查看当前用户ID,组ID也可看到 非0 为普通用户
     3 useradd [选项] 用户名  添加用户 
     4   -u  指定UID
     5   -g  指定组(指定的组需要提前创建好,组名不要完全用数字)
     6   -G  指定用户还属于其他组
     7   -d  指定家目录(主目录、宿主目录、缺省目录)
     8   -s  指定解析器(默认为/bin/bash)
     9   -o 和 -u 一般同时使用,创建和其他用户ID一样的用户
    10 passwd 用户名  加密码
    11 userdel 用户名  删除用户
    12 usermod -L 用户名  禁用用户  (会在密码前面标注上感叹号)
    13 usermod -U 用户名  恢复用户

      注:默认添加的用户会自动加入和用户名一样的组中

    5.组操作

    1 groups  查看组
    2 groups 用户名  查看当前用户属于哪个组
    3 groupadd 组名  添加组
    4 groupdel 组名  删除组

    6.组信息存储在/etc/group

    1 cat /etc/group  查看当前linux里都有哪些组
    2 grep qwe /etc/group  在etc下group里面搜test
    3 或 cat /etc/group |grep qwe

    参数说明:

    qwe:!!::qwe

    组名:组密码:GID:当前组下有哪些用户

    7.组密码文件存储在/etc/gshadow

    cat /etc/gshadow  查看组密码文件 

    8.用户在组中的操作

    1 gpasswd -a qwe test 将qwe用户加入到test组里
    2   -a 就是at
    3 gpasswd -d qwe test 将qwe用户从test组中移除
    4   -d 就是删除

    9.修改用户(注:以下命令要在/home下进行操作)

    1 usermod -l/-d/-g/-s 用户名  
    2   -l 修改用户名:usermod -l number test  把test用户名改成number
    3   -d 修改家目录:usermod -d /home/ko test  把test用户的家目录改成home下的ko
    4   -g 修改所属组:usermod -g root tset  把test用户的组改成root(注:所属组要提前创建)
    5   -s 修改解析器:usermod -s /bin/zsh test 将test的解析器从/bin/sh改为zsh

    十、Linux内存管理

    1.查看进程

    1 ps  查看系统进程   
    2 ps -u查看隶属于当前用户的进程信息
    3 ps -l  以列表形式
    4   -a  显示所有的进程
    5   -aux所有用户的进程信息
    6   -aux |grep qwe 查看指定用户qwe的进程
    7   -le  查看简明扼要的进程信息
    8   -le|grep ssh 查找ssh的进程信息

    2.查看端口(端口即服务器  服务器即端口)信息

    1 netstat -ano  (win)
    2 netstat -ntulp  (linux)

    3.进程管理

    1 kill PID(进程ID号)  关闭某个进程
    2 kill -9 PID 强制关闭某个进程
    3 kill -l  重启进程
    4 killall  关闭所有的进程 

    4.进程动态查看

    1 top 动态显示进程信息(PID  占用内存大小  占用cpu大小等)  Q键退出
    2 top -c  显示完整命令
    3 top -d 2  设置更新时间为2秒
    4 top -p PID  查看某PID的具体信息     

    参数说明:

    PR(进程优先级)  NI(nice值,表示优先级)  VIRT(虚拟内存)  RES(物理内存) SHR(共享内存)  S(进程状态)  %CPU(CPU百分比)  %MEM(内存百分比)  TIME(使用CPU时间总和)+COMMAND (命令)

    5.free  显示Linux中的空闲、使用的物理内存、swap内存、buffer

    参数说明:

    total(总物理内存)  used(已使用内存) free(空闲内存) shared(多个进程共享的内存)  buff/cache(缓存大小) available

     

    十一、Linux网络管理

    1 ping  查看网络连通性  ctrl +C 结束
    2 ping www.baidu.com -c 4 ping百度4次

    ifconfig  显示或配置网络设备(网络接口卡)的命令

    • 在ubuntu中使用ifconfig出现以下情况 联网安装
    1 route  查看路由
    2 netsat  查看网络状态
    3 arp  查看ARP缓存表
    4 traceroute  查看数据包在网络中的路径

    1 ss  显示socket通信信息
    2 ss -t -a  显示tcp链接
    3 ss -l  显示打开的所有的网络链接端口
    4 ss -pl  显示进程使用的socket

     

    十二、centos 7 中网卡配置(VM的网卡类型选择是NAT,分配IP的方式就是DHCP):

    1.IP自动获取

    vim /etc/sysconfig/network-scripts/ifcfg-ens33  打开网卡配置文件
    • 注:Linux的绝对路径开头为/,即根目录

    TYPE="Ethernet" 网卡类型

    BOOTPROTO="dhcp" 网卡获取IP的形式,ip配置方式(NONE/DHCP/STATIC)

    DEFROUTE="yes"

    PEERDNS="yes"

    PEERROUTES="yes"

    IPV4_FAILURE_FATAL="no"

    NAME="ens33" 网卡名称

    UUID="ae04ed91-a630-435e-b327-583632895fa0" 通用唯一标识码

    DEVICE="ens33" 网卡名称

    ONBOOT="yes" 开机加载网卡配置文件

    重启网卡

    1 /etc/init.d/network restart
    2 service network restart
    3 systemctl restart network
    • 注:service 使用service控制服务器启动关闭

    查看网卡信息以及配置

    1 ifconfig  查看所有网卡信息
    2 ifconfig ens33  查看ens33网卡信息
    3 ifdown ens33  关闭网卡
    4 ifup ens33  开启网卡
    5 ip add  查看所有网卡的IP
    6 ifconfig ens33 192.168.1.160 255.255.255.0 手动配置IP,临时性的,重启就没了

    2.配置静态IP

    vim /etc/sysconfig/network-scripts/ifcfg-ens33  打开网卡配置文件
    • 修改网卡获取IP的形式为BOOTPROTO = static
    • 添加

        IPADDRESS = 192.168.1.160

        NETMASK = 255.255.255.0

        GATEWAY = 192.168.1.2 (在虚拟网络编辑器中的NAT设置中查看)

        DNS1 = 114.114.114.114

    修改如图所示

    1 ifdown ens33  关闭网卡
    2 ifup ens33  开启网卡或者重启网卡
    3 ifconfig  查看IP是否修改成功
  • 相关阅读:
    elementui 表格格式化
    安装mongoDB出现的问题:无法启动
    学习笔记-angular 使用uuid
    cordova app打包apk签名
    ionic3 清除navpush的堆栈 (android真机返回键bug)
    ionic3 StatusBar 不显示问题
    ionic3+angular 倒计时效果
    windows下一台机器运行多个tomcat
    JDBC连接数据库小结
    工具类---提供精确的浮点数运算
  • 原文地址:https://www.cnblogs.com/yankaohaitaiwei/p/11505775.html
Copyright © 2011-2022 走看看