• 橘子学linux02之Linux基本命令


    一、VMware的两种备份方式

    1、为什么要进行备份

    保证CentOS7.6操作系统的安全,必须对操作系统进行备份。即便linux是一个十分稳定的操作系统,但是难免有些不当的操作导致系统损坏,最后导致运行失败,所以备份是一件很有必要的事情,有助于我们恢复系统。

    2、VMware有哪些系统备份方式

    快照备份和 克隆备份,快照备份我们在上一讲已经讲了,下面我们来看看克隆备份。
    其中快照备份侧重在于短期备份,需要频繁备份的时候都可以使用快照,做快照的时候虚拟机中操作系统一般处于开启状态。
    克隆备份以后再说TODO。

    二、Linux系统使用注意

    1、Linux严格区分大小写

    Linux是一个非常严谨的操作系统,严格区分大小写。

    Linux 和Windows不同,Linux严格区分大小写的,包括文件名和目录名、命令、命令选项、配置文件设置选项等。
    例如,Win7 系统桌面上有文件夹叫做Test,当我们在桌面上再新建一个名为 test 的文件夹时,系统会提示文件夹命名冲突;但是linux不会,他是区分大小写的,大写和小写不一样
    
    • 1
    • 2

    也就是你以后敲命令的时候也是需要注意大小写的。

    2、Linux文件扩展名

    在Linux操作系统中,与Windows不同,其文件的类型不是通过扩展名来进行区分的!

    我们都知道,Windows 是依赖扩展名区分文件类型的,比如,“.txt” 是文本文件、“.exe” 是执行文件,但 Linux 不是。
    Linux 系统通过权限位标识来确定文件类型,常见的文件类型有普通文件、目录、链接文件、块设备文件、字符设备文件等几种。Linux 的可执行文件就是普通文件被赋予了可执行权限。

    # Linux系统中常见的后缀名称:
    Linux 中的一些特殊文件还是要求写 "扩展名" 的,但 Linux 不依赖扩展名来识别文件类型,写这些扩展名是为了帮助运维人员来区分不同的文件类型。
    
    这样的文件扩展名主要有以下几种:
    压缩包:Linux 下常见的压缩文件名有 *.gz、*.bz2、*.zip、*.tar.gz、*.tar.bz2、*.tgz 等。
    
    为什么压缩包一定要写扩展名呢?很简单,如果不写清楚扩展名,那么管理员不容易判断压缩包的格式,因为压缩格式不一样,使用的解压缩命令也不一样,虽然有命令可以帮助判断,但是直观一点更加方便。就算没写扩展名,在 Linux 中一样可以解压缩,不影响使用。
    
    二进制软件包:CentOS 中所使用的二进制安装包是 RPM 包,所有的 RPM 包都用".rpm"扩展名结尾,目的同样是让管理员一目了然。=> 类似Windows中的exe文件
    
    程序文件:Shell 脚本一般用 ".sh" 扩展名结尾。=> check_network.sh
    
    网页文件:网页文件一般使用 ".php" 等结尾,不过这是网页服务器的要求,而不是 Linux 的要求。
    .html/.css/.js/.jsp/.php/.py => 网页文件
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    总结一下:
    Linux操作系统不以“扩展名”来判断文件的类型,而是通过权限位标识符来进行判断。
    有一些特殊的文件,有扩展名称=>压缩包、二进制软件包、程序文件、网页文件。

    3、Linux中所有内容以文件形式保存

    在Linux系统中,一切皆文件!在Windows是文件的,在Linux下也是文件。在Windows中不是文件的,在Linux系统中也是文件。包括你像进程都是文件。就没有不是文件的东西。
    有个小技巧,当我们不知道文件权限的时候,我们怎么判断那个文件是文件夹还是文件呢,可以通过颜色来判断。
    我们在shell窗口随便找个目录看下:我们用ls查看一下文件
    在这里插入图片描述
    普通文件:通过ls命令查看时,如果显示黑色,代表其是一个普通的文件

    文件夹:通过ls命令查看时,如果显示天蓝色,代表是一个文件夹
    在这里插入图片描述

    4、Linux中存储设备都必须在挂载之后才能使用

    在这里插入图片描述
    Windows:存储空间需要分区,各种C D E盘,分区+格式化之后这块地方才能使用。

    Linux操作系统:分区+格式化+挂载,存储设备必须挂载后才能使用(硬盘、光盘、U盘)
    也就是你的存储盘需要挂载到一个目录才能用,访问的也是这个挂载的目录,不是原来你分区的盘。

    挂载mount命令: mount 空格 /dev/sda1 空格 /mnt/file 把/dev下的第一个盘挂载到/mnt/file目录下。一般挂载都是挂到/mnt下面创建的目录。

    三、Linux系统的目录结构(重要)

    1、Linux分区与Windows分区

    Linux 系统不同于 Windows,没有 C 盘、D 盘、E 盘那么多的盘符,只有一个根目录(/),所有的文件(资源)都存储在以根目录(/)为树根的树形目录结构中。
    在这里插入图片描述

    2、Linux系统文件架构

    在这里插入图片描述
    在 Linux 根目录(/)下包含很多的子目录,称为一级目录。例如 bin、boot、dev 等。

    同时,各一级目录下还含有很多子目录,称为二级目录。例如 /bin/bash、/bin/ed 等。

    3、Linux系统的文件目录用途

    /bin:系统命令目录
    
    /sbin:超级命令目录,只能超级管理员可以执行的命令
    
    /boot:系统目录,类似于Windows中的C盘
    
    /dev :设备文件目录,硬盘、光驱、U盘都属于设备文件,/dev/sr0代表光驱设备。注意,次目录下的文件没有办法直接使用,必须先挂载
    
    **/etc :非常重要,代表系统的配置文件目录。大部分软件安装完成后,其配置文件都存放在此目录**
    
    /home:普通用户的家目录,用户登录后会自动切换到此目录,你要是每创建一个目录就会在home下面创建一个对应的目录作为这用户的家。
    
    /root:超级管理员的家目录,超级管理员登录后会自动切换到此目录
    
    /media:挂载目录,早期Linux挂载目录,用于挂载光盘以及软盘
    
    /mnt:挂载目录,用来挂载额外的设备,如 U 盘、移动硬盘和其他操作系统的分区
    
    /opt :第三方软件目录,这个目录是放置和安装其他软件的位置,手工安装的源码包软件都可以安装到这个目录中。不过笔者还是习惯把软件放到 /usr/local/ 目录中,也就是说,/usr/local/ 目录也可以用来安装软件
    
    /usr :系统程序目录,类似Windows中的Program Files
    
    /proc:虚拟文件系统。该目录中的数据并不保存在硬盘上,而是保存到内存中。主要保存系统的内核、进程、外部设备状态和网络状态等。运行的时候启动的那些线程文件都在这里。
    
    /tmp :临时文件目录,在该目录下,所有用户都可以访问和写入。建议此目录中不能保存重要数据,最好每次开机都把该目录清理
    
    /var :经常变化的文件目录,网页文件、数据文件、日志文件
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27

    四、Linux命令

    1、开启终端

    不管是虚拟机自己的还是xshell这类东西,都可以开启终端,看你自己了。
    在这里插入图片描述

    2、Linux命令格式

    什么是Linux 的命令?

    答:就是指在Linux 终端(命令行)中输入的内容就称之为命令。

    一个完整的命令的标准格式:Linux 通用的格式

    # 命令(空格) [选项](空格)[参数]
    
    • 1

    但是有些命令比较特殊,可能没有选项也没有参数

    # pwd
    
    • 1

    还有一些命令,有命令有选项,但是没有参数

    # ls -l
    
    • 1

    还有一些命令,命令+选项+参数全都有

    # tail -n 3 readme.txt
    
    • 1

    3、扩展:Linux下的命令补全

    键盘上有一个按键:Tab键
    当我们在Linux系统的终端中,输入命令时,可以无需完整的命令,只需要记住命令的前几个字母即可,然后按Tab键,系统会自动进行补全操作。

    # syst + Tab键
    # systemc + Tab键
    # systemctl
    
    • 1
    • 2
    • 3

    有些命令可能都以某几个字母开头,这个时候,只需要按两次Tab键,其就会显示所有命令。

    # clea + Tab键 + Tab键
    
    • 1

    Tab键的功能特别强大:其不仅可以补全命令还可以补全Linux的文件路径

    4、切换用户

    基本语法:

    # su - root
    Password:123456
    [root@localhost ~]# 切换成功
    
    • 1
    • 2
    • 3

    扩展:-横杠作用是什么?答:-横杠代表切换用户的同时,切换用户的家目录,也可以不加。

    5、uname命令

    主要功能:获取计算机操作系统相关信息

    基本语法:

    # uname -a
    选项说明:
    -a :all缩写,代表显示所有信息,获取全部的系统信息(类型、全部主机名、内核版本、发布时间、开源计划)
    
    • 1
    • 2
    • 3

    whoami可以查看当前用户是谁。获取当前用户的名称。

    6、ls命令

    ☆ 用法一

    主要功能:ls完整写法list show,以平铺的形式显示当前目录下的文件信息

    基本语法:

    # ls
    
    • 1

    用法二

    主要功能:显示其他目录下的文件信息

    # ls 其他目录的绝对路径或相对路径
    
    • 1

    扩展:ls后面跟的路径既可以是绝对路径也可以是相对路径
    绝对路径:不管当前工作路径是在哪,目标路径都会从“/”磁盘根下开始
    案例:访问levi用户的家目录,查看有哪些文件

    # ls /home/levi
    
    • 1

    绝对路径必须以左斜杠开头,一级一级向下访问,不能越级

    相对路径:除绝对路径之外的路径称之为相对路径,相对路径得有一个相对物(当前工作路径)。

    只要看到路径以“/”开头则表示该路径是绝对路径,除了以“/”开头的路径称之为相对路径。

    当前位置:/home/levi目录下

    …/:表示上级目录(上一级)

    ./ :表示当前目录(同级),普通文件./可以省略,可执行文件(绿色)必须加./

    文件夹名称/:表示下级目录(下一级),注意这个斜杠/

    用法三

    基本语法:

    # ls [选项] [路径]
    选项说明:
    -l :ls -l,代表以详细列表的形式显示当前或其他目录下的文件信息(简写命令=>ll)
    -h :ls -lh,通常与-l结合一起使用,代表以较高的可读性显示文件的大小(kb/mb/gb)
    -a :ls -a,a是all缩写,代表显示所有文件(也包含隐藏文件=>大部分以.开头)
    
    • 1
    • 2
    • 3
    • 4
    • 5

    计算机中的单位:

    # 1TB = 1024GB
    # 1GB = 1024MB
    # 1MB = 1024KB
    # 1KB(千字节) = 1024B(字节)
    
    • 1
    • 2
    • 3
    • 4

    7、pwd命令

    主要功能:pwd=print working directory,打印当前工作目录(告诉我们,我们当前位置)

    基本语法:

    # pwd
    
    • 1

    8、cd命令

    主要功能:cd全称change directory,切换目录(从一个目录跳转到另外一个目录)
    基本语法:

    # cd [路径]
    选项说明:
    路径既可以是绝对路径,也可以是相对路径
    
    • 1
    • 2
    • 3

    案例一:切换到/usr/local这个程序目录

    # cd /usr/local
    
    • 1

    案例二:比如我们当前在/home/levi下,切换到根目录/下

    # cd /home/levi
    # cd ../../
    
    • 1
    • 2

    案例三:当我们在某个路径下,如何快速回到自己的家目录

    # cd# cd ~
    
    • 1
    • 2
    • 3

    9、clear命令

    主要功能:清屏
    基本语法:

    # clear
    
    • 1

    10、reboot命令

    主要功能:立即重启计算机

    基本语法:

    # reboot
    
    • 1

    11、shutdown命令

    主要功能:立即关机或延迟关机

    立即关机基本语法:

    # shutdown -h 0或now   这是立即关机
    # shutdown -h 0 这是立即关机
    # shutdown -h now  这是立即关机
    选项说明:
    -h :halt缩写,代表关机
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在Linux系统中,立即关机除了使用shutdown -h 0以外还可以使用halt -p命令

    延迟关机基本语法:

    # shutdown -h 分钟数
    代表多少分钟后,自动关机
    
    • 1
    • 2

    案例1:10分钟后自动关机

    # shutdown -h 10
    
    • 1

    案例2:后悔了,取消关机

    取消关机分两步:
    # 1、按Ctrl + C退出(CentOS6,中断关机。CentOS7中还需要使用shutdown -c命令也就是第二步,版本6不需要第二步)
    # 2、shutdown -c 这个可以在客户端输入之后也可以取消关机。
    
    • 1
    • 2
    • 3

    12、type 命令

    主要功能:主要用来结合help命令,用于判断命令的类型(属于内部命令还是外部命令)
    基本语法:内部就是系统自带的,

    # type 命令 意思就是type pwd查看pwd是不是内部命令这样
    内部命令:命令 is a shell builtin
    外部命令:没有显示以上信息的就是外部命令
    
    • 1
    • 2
    • 3

    在这里插入图片描述
    passwd就不是内置的,他是usr下面的,不是操作系统自己的。

    13、history命令

    主要功能:显示系统以前输入的前1000条命令
    基本语法:

    # history
    
    • 1

    14、hostnamectl命令

    主要功能:用于设置计算机的主机名称(给计算机起个名字),此命令式CentOS7新增的命令。
    hostnamectl : hostname + control

    ☆ 获取计算机的主机名称

    # hostname	查看当前主机的名称,默认叫localhost.localdomain
    # hostnamectl  在CentOS7中可以用hostnamectl  来设置
    
    • 1
    • 2

    设置计算机的主机名称

    Centos7中主机名分3类,静态的(static)、瞬态的(transient)、和灵活的(pretty)。

    ① 静态static主机名称:电脑关机或重启后,设置的名称亦然有效

    ② 瞬态transient主机名称:临时主机名称,电脑关机或重启后,设置的名称就失效了

    ③ 灵活pretty主机名称:可以包含一些特殊字符

    CentOS 7中和主机名有关的文件为/etc/hostname,它是在系统初始化的时候被读取的,并且内核根据它的内容设置瞬态主机名。

    更改主机名称,让其永久生效?有两个方法,① 使用静态的主机名称 ② 直接改/etc/hostname文件

    1、瞬态主机名称(临时设置)
    # hostnamectl --transient set-hostname 主机名称
    主机名称 建议遵循 FQDN协议(功能+公司域名)
    web01.ali.cn
    web02.ali.cn
    
    • 1
    • 2
    • 3
    • 4

    案例:临时设置主机名称为www.levi.cn

    # hostnamectl --transient set-hostname www.levi.cn
    # su (输入su回车使其立即生效)
    
    • 1
    • 2
    2、静态主机名称(永久生效)
    # hostnamectl --static set-hostname 主机名称
    温馨提示:--static也可以省略不写
    
    • 1
    • 2

    案例:把计算机的主机名称永久设置为www.levi.cn

    # hostnamectl --static set-hostname www.levi.cn
    # su (输入su回车使其立即生效)
    
    • 1
    • 2
    3、灵活主机名称(主机名称可以添加特殊字符)
    # hostnamectl --pretty set-hostname 主机名称(包含特殊字符)
    
    • 1

    案例:把计算机的主机名称通过灵活设置,设置为levii’s server01

    # hostnamectl --pretty set-hostname "levii's server01"(这里必须加双引号)
    查看灵活的主机名称
    # hostnamectl --pretty
    
    • 1
    • 2
    • 3
  • 相关阅读:
    SpringMVC入门
    Apache DolphinScheduler 3.0.0 正式版发布!
    Python——类和对象、魔术方法(day07)
    集合嵌套之Arraylist集合存储HashMap元素并遍历
    cubemx 使用 学习跳转链接
    深入了解嵌入式硬件设计
    文献学习-14-一种用于高精度微创手术的纤维机器人
    【vue五分钟】五分钟让你了解vue组件
    [ spring boot入门 ] java: 错误: 无效的源发行版:17
    路由中的meta、params传参的一些问题(可传不可传,为空,搭配,点击传递多次参数报错)
  • 原文地址:https://blog.csdn.net/liuwenqiang1314/article/details/127831236