首页 > 基于Centos8的Linux简单入门学习笔记
头像
是瑶瑶公主呀
编辑于 2019-12-23 16:11
+ 关注

基于Centos8的Linux简单入门学习笔记

很基础 以后不想记笔记了 最后分享一次😀
计算机网络:https://www.nowcoder.com/discuss/342320
MySQL:https://www.nowcoder.com/discuss/353707
Java并发上:https://www.nowcoder.com/discuss/355081
Java并发下:https://www.nowcoder.com/discuss/355876
JDBC:https://www.nowcoder.com/discuss/356804
显示有问题的话看源地址:https://blog.csdn.net/qq_41112238/article/details/103642483


Linux简单介绍

特性

  • 完全开源
  • 多用户多任务系统
    继承了UNIX多用户多任务的设计理念,允许多人同时上线工作,合理分配资源。
  • 安全稳定高效
    严格的用户权限管理使不同使用者之间保持高度的保密性和安全性。
    • 支持多硬件平台
      Linux是UNIX Like操作系统,遵循POSIX标准,运行在UNIX下的软件很容易移植到Linux下。

发行版本

Linux发行版指的是通常说的Linux操作系统,通常包括Linux内核,各种GNU软件,及其它一些自由软件,某些特定发行版本也有一些专用软件。
发行版为许多不同目的制作,包括对不同计算机硬件结构的支持,对一个具体区域或语言的本地化,实时应用,和嵌入式系统。

  • Red Hat Enterprise Linux 红帽公司的企业版Linux系统,采用RPM的包管理方式。
  • CentOS 由社区开发并维护,基于RHEL,并与RHEL版本号保持一致,致力于提供一个自由使用且稳定的RHEL。
  • Fedora 主要由RedHat主持的社区Linux项目,采用同样的RPM管理,致力于最新技术的开发和引入。
  • SUSE Linux 在欧洲流行的Linux版本,特点是界面华丽和简单易用。
  • Debian 完全开放,由志愿者维护,基于Deb的包管理。
  • Ununta 基于Debian开发,采用相同的Deb和Apt,致力于开发简单易用的Linux系统。

开源文化

  • GNU 1983年提出的一个项目计划,目标是提供一个和UNIX100%兼容的自由软件的操作系统。
  • GLP GNU通用公共许可证,任何软件发布都需要提供许可证。
  • GNU和Linux的结合 1991年,林纳斯编写除了与UNIX兼容的Linux操作系统内核并以GPL授权发布。 1992年,Linux与其他GNU软件结合,完全自由的操作系统正式诞生。

总结

  • Linux是什么
    严格来说只是一个操作系统内核,大多数Linux发行版是由操作系统内核加上GNU的软件或工具形成的完整的操作系统,也就是GNU/Linux,一种Unix Like操作系统。
  • 广泛的Linux发行版本有哪些
    RHEL、Centos、Ubuntu、SUSE Linux。
  • Linux有哪些特点
    完全开源、支持多硬件平台、多用户多任务、安全高效稳定。

安装Linux操作系统

虚拟机

虚拟机软件:可以模拟出虚拟计算机并运行操作系统的软件。
虚拟机:在虚拟机软件下模拟出来的一个计算机(虚拟机)。
常用虚拟机软件:VMware workstation、virtual Box。

安装步骤

(我安装的是VM15和Centos8,百度一下相关的安装教程,很简单,有不懂的可以私我,由于主要介绍的是使用,就不详写安装了)。

1.安装VMware15版本
2.打开VMware创建虚拟机
3.在虚拟机上安装Linux操作系统
1)下载Linux操作系统的镜像文件 2)将镜像文件放入虚拟机的虚拟光驱 3)开启虚拟机

进行到安装软件时,选择带GUI的服务器,开发工具和图形管理工具
在这里插入图片描述
安装完成后 选择未列出 使用root用户登陆
在这里插入图片描述

虚拟机快照和克隆

  • 快照:
    又称还原点,保存在拍快照时的系统的状态(包含了所有内容),在后期可以随时恢复拍摄快照时状态。 (类似于Windows的系统还原)
    在这里插入图片描述
    从左至右为:拍摄快照 恢复快照 管理快照
  • 克隆:
    可以根据一台配置好的虚拟机复制一台一模一样的虚拟机出来,但是克隆时需要虚拟机处于关闭状态。
    在这里插入图片描述
    右键自己的虚拟机,然后选择->管理->克隆

关机和重启系统命令

关机和重启操作只有管理员权限可以执行
在左上角点击活动->选择终端 以后要输入的指令都在此输入
在这里插入图片描述
直接关机:shutdown -h now
定时关机:shutdown - h 10(10分钟后关机)
取消关机: shutdown -c
重启:reboot
定时重启:shutdown -r 10(10分钟后重启)
取消重启:shutdown -c


基本使用

快捷键

默认:
搜索应用程序 win+s
显示应用程序 win+a
退出 esc

设置:
设置快捷键 桌面右键->显示设置->keyboard
在这里插入图片描述
在这里插入图片描述

终端基本使用

可在首选项内设置快捷键、文字大小、光标形状、背景颜色等
在这里插入图片描述

Linux目录结构

目录 说明 备注
/root 管理员root的家目录
/home 普通用户的默认家目录 /home/你的用户名
/bin->/usr/bin 普通用户的命令 软连接文件 /usr/bin/date /usr/bin/ls
/sbin->/usr/sbin 管理员使用的命令 软连接文件 /usr/bin/shutdown
l/usr/local 第三方源码包默认安装目录 类似Windows下的C:\Program Files
/etc 系统和服务相关配置文件 /etc/passwd
/var 动态,可以变化的数据文件 日志文件(/var/log/xxx)
/tmp 临时文件存放目录 全局可写(系统或程序产生临时文件)
/dev 设备文件 /dev/sda
/lib -> /usr/lib 库文件 软连接文件
/lib64-> /usr/lib64 库文件 软连接文件
/proc 虚拟的文件系统 反映出来的是内核。进程信息或实时状态
/boot 系统内核,引导程序相关文件
/media 移动设备默认挂载点
/mnt 手工挂载设备挂载点

文件路径表示方法

  • 绝对路径

    1. 一定以/开头,是唯一一个绝对能够描述文件所在路径的方式
    2. /根目录是Linux操作系统最顶级的目录,没有任何路径比它还要靠前
  • 相对路径

    1. 路径是相对的,文件所在的路径是相对于当前所在路径而言的
    2. 当前路径用../表示 当前目录的上一级用..../表示
    3. 当前用户家目录使用~表示,上次工作路径使用-表示
  • 路径查看和切换
    查看当前路径 pwd
    在这里插入图片描述
    更改工作路径 cd

    [root@sjh ~]# cd /home 
    [root@sjh home]# pwd
    /home
    [root@sjh home]# cd
    [root@sjh ~]# pwd
    /root

文件操作管理

Linux下,一切皆文件 以下所有命令都在终端上运行
终端上所有命令都需要SHELL解释器翻译,RedHat和Centos的默认shell解释器为BASH
语法: 命令 [可选项] 参数
命令:整条shell命令的主体
选项:会影响或微调命令的行为,通常以---
参数:命令作用的对象

判断文件类型(file)

常见文件类型:

文件类型 说明
字符设备(c) 所有输入输出的设备,如:键盘、数部、显示器、打印器
块设备(b) 所有存储设备称之为块设备文件,如:软盘、磁盘、光盘、U盘、磁带、光驱等
软连接文件(l) 类似于Windows下快捷方式
目录文件(d) 相当于Windows文件夹
普通文件(f或-) 类似Windows下记事本、word等,可使用相关命令进行编辑、查看文件内容
管道文件(p) 程序或进程之间的通信方式
套接字文件(s) 程序或进程之间的通信方式

在这里插入图片描述

可见tty是字符型设备,nvme0n1是块设备在这里插入图片描述

可见/usr/bin/sh是软连接文件 连接了usr/bin/bash
在这里插入图片描述

d代表目录文件,-代表普通文件。


列出目录内容 (ls)

常见选项
-a   all,查看目录下所有文件,包括隐藏文件
-l   长列表显示 查看到的时间是“最近更改”时间
-h   human,以人性化方式显示
-d   只列出目录名
-t   按修改时间排序
-S   按文件大小排序
-r   反向排序
-i   查看inode结点
-R   递归列出所有文件
-m   用逗号分隔显示内容

创建目录(mkdir)

-p 级联创建 如果要创建的目录的父目录不存在 需要加-p参数
默认在当前目录创建 或加./
在根创建 加/
或者加要创建的目录的路径

在这里插入图片描述

创建文件(touch)

  • 命名规则
  1. 严格区分大小写
  2. 文件名不能包含特殊字符,如/*
  3. 文件名最多255个字符
  • 创建空文件
    在这里插入图片描述
  • 文件存在时 修改文件时间戳
    直接使用
    在这里插入图片描述
    可使用stat 文件名查看文件详情在这里插入图片描述
    最近访问:文件的查看访问时间
    最近更改:文件的修改时间
    最近改动:文件的属性时间,文件的大小、权限等信息发生改变的时间
    -a 修改访问时间 修改格式:年月日时分
    在这里插入图片描述
    -m 修改更改时间 修改格式:年月日时分
    在这里插入图片描述
    -t 指定时间格式 和-a / -m一起使用
    -d 同时修改访问和更改时间 修改格式:年月日/年月/年月日 时分秒
    在这里插入图片描述

查看文件

  • cat 一般查看小文件,从第一行到最后一行列出来
  • n 显示行号
  • A 显示控制字符,如换行符,制表符等 在这里插入图片描述
  • tac 一般查看小文件,从最后一行到第一行列出来
    在这里插入图片描述
  • more 和 less 一般查看大文件,q退出查看,可以搜索,建议使用less
  • head 默认查看文件前10行,head - n m或head m可以查看前m行
  • tail 默认查看文件后10行,tail - n m或tail m可以查看后m行,-f表示动态查看
    在这里插入图片描述
  • ldd 一般用来查看二进制的命令文件
    在这里插入图片描述

    拷贝文件(cp)

    本地文件拷贝
    cp [选项] 需要拷贝的文件 拷贝的目标处
    选项:

    -r : 递归拷贝目录
    -v: 显示拷贝过程信息
    在这里插入图片描述
    -p: 文件属性信息一起拷贝
    在这里插入图片描述
    -a : 递归拷贝文件,包括目录及文件属性信息 即-rp的作用

    移动或重命名文件(mv)

    移动文件(不同路径下)
    mv 要移动的文件 新的路径
    在这里插入图片描述
    重命名文件(相同路径下)
    mv 旧文件名 新文件名
    在这里插入图片描述

删除文件(rm)

-r 递归删除,一般用于删除目录
-f 直接删除,不提示
在这里插入图片描述

如何获取帮助

简单求帮助

知道命令的含义,忘记了参数

内部命令(shell内置的命令)
help 命令
外部命令(第三方程序,软件带来的命令)
命令 -- help
判断命令内部还是外部
type 命令
在这里插入图片描述
在这里插入图片描述

详细求帮助(man)

例:man ls
进入后按q退出

Bash的标准输入输出

名词解释

标准输入 stdin:键盘上的输入 文件描述符->0
标准输出 stdout:屏幕上正确的输出 文件描述符->1
标准错误 stderr:屏幕上错误的输出 文件描述符->2

相关符号

  • >:标准输出重定向,覆盖重定向,1>或>标准输出重定向,2>标准错误重定向
    在这里插入图片描述
    • >>:重定向追加,1>>标准输出追加,2>>标准错误追加
      在这里插入图片描述
    • <:标准输入
    • &>:标准输出标准错误重定向
      在这里插入图片描述

echo

将输入的字符串送往标准输出,并在最后加上换行符,可理解为打印字符串。
选项:

-n 不输出最后的换行符
-e 解释转义字符(将字符串中特殊字符进行处理)
在这里插入图片描述
可结合>或>>进行文件的创建或内容追加
在这里插入图片描述

Linux下文件查找命令

命令查找

which 找出命令的绝对路径
whereis 找出命令的路径以及文档手册信息
在这里插入图片描述

文件查找

find 精确查找,磁盘搜索,IO读写,CPU开销大
用法1:找出来输出到屏幕
find 查找路径 选项 关键字

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

用法2:找出来执行命令
find 查找路径 选项 关键字 动作
在这里插入图片描述

默认为-print-ls打印信息,-delere删除
在这里插入图片描述

查找当前目录的file文件并复制到tmp目录下:

{}表示find查询到的结果
在这里插入图片描述

文件打包和压缩

常用压缩解压工具

压缩工具 说明 解压缩工具
zip 兼容类unix与windows,可以压缩多个文件或目录 unzip
gzip 压缩单个文件,压缩率相对低,cpu开销低 gunzip
bzip2 压缩单个文件,压缩率相对高,cpu开销高 bunzip2
xz 压缩单个文件,压缩率高,时间相对长,解压快,cpu开销高 unxz
### 工具的用法
  • zip
    压缩:zip 压缩的文件 需要压缩的文件
    选项 :-r 递归压缩,压缩目录 压缩后的模式默认为.zip,也可手动加
    解压缩:unzip 要解压的文件 [-d 解压路径]
  • gzip
    压缩:gzip 需要压缩的文件
    选项:-r 递归压缩 -d 解压缩
    解压缩 gunzip 或者 gzip -d
  • bzip2
    压缩:bzip2 需要压缩的文件
    选项:-d 解压缩
    解压缩 bunzip2 或者 bzip2 -d
  • xz
    压缩:xz 需要压缩的文件
    解压缩:unxzxz -d

文件打包工具

tar命令:可以将多个文件打包成一个并且压缩,不会改变文件的属性
用法:tar [选项] 打包后的文件 需要打包的文件
| 常用选项 | 说明 |
| ------------------ | ---------------- |
| -c |创建tar包(打包)
| -z |调用gzip压缩
| -j |调用bzip2压缩
| -J |调用xz压缩
| -v |显示详细信息
| -f|指定包名
| -x |解压
| -C |指定解压路径
| -t |列出或查看tar包内容
|-r|往tar包追加内容
打包
在这里插入图片描述
解压
在这里插入图片描述
查看
在这里插入图片描述

日期相关指令

date

  • date:打印或设置当前系统的日期和时间 在这里插入图片描述
    -s设置系统日期或事件 只有root权限可以 -d打印非当前日期时使用
    在这里插入图片描述
  • hwclock查看并设置硬件时间
    在这里插入图片描述
    -s 用硬件时间设置系统时间 -w用系统时间设置硬件时间 -l 查看本地硬件时间
  • timedatectl 查询或更改系统时间 在这里插入图片描述
  • 调用当前系统日期 $():括号里的命令优先执行 ``里的命令优先执行(不推荐) 创建目录,以当前系统日期命名:
    在这里插入图片描述
    创建文件,以3天后系统日期命名:
    在这里插入图片描述

cal

cal查看日历
在这里插入图片描述

用户组管理

用户管理

概念

  • 用户
    Linux操作系统中用于管理系统或服务的人
  • 管理的内容
    Linux下一切皆文件,管理的是相应的文件
  • 如何管理
    文件的基本管理:创建、删除、复制、查找、打包压缩等,文件的权限增加、减少等
    文件的高级管理:程序文件的安装、卸载、配置等

分类

  • 超级用户
    管理员root,具有所有权限,UID=0
  • 系统用户
    也叫程序用户,一般由程序创建,用于程序或者服务运行时候的身份。
    默认不允许登陆系统,1<=UID<=999
  • 普通用户
    一般由管理员创建,用于对系统进行有限的管理维护操作。
    默认可以登陆系统,1000<=UID<=60000。

基本管理

  • 创建用户 useradd
    选项:
    -u 指定用户uid,唯一标识
    -g 指定用户的默认组(主组)
    -G 指定用户的附加组(一个用户可加入多个组,但默认组只有一个)
    -d 指定用户家目录(默认在/home/xxx)
    -s 指定用户默认shell
    使用id 用户名查看用户信息
    su - 用户名登陆
    在这里插入图片描述
  • 密码设置 passwd
    passwd 用户名 给某个用户设置密码
    passwd 给当前用户设置密码
    echo 密码|passwd --stdin 用户名 跳过验证直接设置密码
    在这里插入图片描述
    普通用户设置密码必须符合安全规范
    用户信息保存在/etc/passwd
    用户密码信息保存在/etc/shadow
  • 更改用户密码信息chage
    选项:
    - d 最近日期
    - E 过期日期
    - I 过期I天后,设定密码失效
    - l 显示账户信息
    在这里插入图片描述
    - m 最小天数
    - M 最大天数
    - W 警告天数
  • 更改用户信息 usermod
    usermod [选项] 用户名
    选项:
    -u 指定用户uid,唯一标识
    -g 指定用户的默认组(主组)
    -G 指定用户的附加组(一个用户可加入多个组,但默认组只有一个)
    -d 指定用户家目录(默认在/home/xxx)
    -s 指定用户默认shell
  • 删除用户userdel
    userdel [选项] 用户名
    不会删除目录及邮箱 要删除使用-r
    在这里插入图片描述
    选项:
    -r 删除用户并移除其目录和邮箱
    -f 强制删除正在创建的用户

组管理

组和用户的关系

  • 组的目的是为了方便管理用户
    用户是操作系统上管理维护系统或服务的人
    组是用户的一个属性信息
    任何一个用户默认都会有一个主组(默认组)
    一个用户除了主组也可以有多个其他组(附加组)
  • 用户的主组和附加组之间无关
  • 文件所属的组是创建文件的用户的默认组
    在这里插入图片描述

组的管理

  • 创建组
    基本语法 groupadd [选项] 组名
    -g指定组的GID,唯一编号
    创建一个组 指定GID=2000
    通过tail etc/group查看组信息
    在这里插入图片描述
  • 删除组
    goupdel 组名
    若一个组是其他用户的主组 不可删除
    在这里插入图片描述
  • 组成员管理
    gpasswd [选项] 组名
    选项:
    -a 添加用户到组
    -d 从组中删除成员
    在这里插入图片描述
    -A 指定管理员
    gpasswd -A stu2 admin将stu3设置为组admin的管理员,使用其他用户管理组会失败
    在这里插入图片描述
    -M 指定组成员,可以批量添加用户到组中(会覆盖原成员)
    -r 删除密码
    在这里插入图片描述
    gpasswd 组名给组设置密码
    在这里插入图片描述

文件编辑工具vim

  • linux下的文本编辑器:emacs、nano、gedit、vi、vim
  • vi编辑器通常被称为vi,它是Linux和Unix系统上最基本的文本编辑器,类似于Windows下的记事本
  • 所有的Unix like系统都会内置vi文本编辑器,很多软件的编辑接口都主动调用vi,vim具有程序编辑能力,可以主动以字体颜色辨别语法正确性,方便程序设计,程序简单,编辑速度快

三种模式

  • 命令行模式
    进行基本的复制、删除、跳转、撤销、移动等操作
    在这里插入图片描述

    在第一行按下yy,在bin行按下p,复制到该行下面,在daemon行按下P,复制到改行上面
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  • 编辑模式

    功能:编辑文件内容
    进入方式:
    i 在光标所在字符前开始插入
    a 在光标所在字符后开始插入
    o 在光标所在行的下面另起一新行插入
    I 在光标所在行的行首开始插入 如果行首有空格则在空格之后插入
    A 在光标所在行的行尾开始插入
    O 在光标所在行的上面另起一行开始插入
    S 删除光标所在行并开始插入

  • 底行模式
    命令行进入底行模式 按冒号:
    编辑模式进入底行模式:先按esc退出到命令模式,再按冒号:
    w保存文件
    wq保存退出
    q不保存退出
    x在文件未修改情况下,表示直接退出,否则表示保存退出
    替换搜索 / 搜索内容 n往下匹配,N往上匹配

    三种模式的切换

    在这里插入图片描述

不想学linux了 先到此为止吧

全部评论

(3) 回帖
加载中...
话题 回帖