Linux零基础速成篇一(理论+实操)

ops/2024/12/27 0:03:33/

前言:本教程适合Linux零基础学习,也适合Linux期末考试的小伙伴,从头到尾理论与实操相结合,让你快速对Linux进行了解和掌握。

一、Linux概述

为什么要学习Linux操作系统?

完全免费-开源

任何用户均可下载使用

安全稳定

极少蓝屏

支持多平台

多用户多任务

等等

了解Unix与Linux发展史

Linux内核官网

www.kernel.org(内核下载地址)

Linux内核版本说明

举个例子:6.10.6:6表示主版本、10表示次版本、6是末版本

在Linux系统中我们可以使用uname -r指令查看内核版本

下面是我在kali linux系统使用uname -r指令查看内核版本

开发版

厂商加入自己的桌面应用程序之后开发

偶数次版本号(如 6.2、6.4等)表示稳定版本

奇数次版本号(如 6.3、6.5等)表示开发中的不稳定版本,通常用于测试新功能。

发行版

目前发行版本:RHEL系列(商业版本)与Debian系列(社区版本)      两者命令有细微差别

二、用户管理

用户和用户组概述

用户

用户就是使用系统的人。

Linux操作系统中每一个用户都有一个用户名(账号),系统为每一个用户分配一个唯一的用户标识,称为UID

UID是系统辨识用户的唯一标识

root用户

root用户也被称为超级用户或系统管理员用户,其UID为0root用户在Linux操作系统中拥有最高权限。root用户权限过高,为了保证系统安全,一般不通过root用户登录Linux操作系统,而且要避免普通用户得到root权限。

系统用户

系统用户是Linux操作系统为满足自身系统管理需要而内建的一类用户,通常在安装操作系统或相应软件时自动创建并保持默认状态。系统用户权限低于root用户,UID通常为1~999(改动)。系统用户由操作系统自动管理的,不能用于登录系统,所以系统用户也称为虚拟用户。

普通用户

普通用户是由root用户创建的用户,可以登录操作系统并使用系统资源,但它只能操作自己所拥有权限的文件和目录。可以通过root用户设置普通用户的权限,但为保证系统安全,一般不会给普通用户设置太高权限。普通用户的UID通常为1000~6000(动)

在普通用户的条件下使用id指令可以查看自身的UID,通过图片可以看到用户id=1000,说明kali是个普通用户。然后使用sudo su指令输入密码后进入root用户,在root权限下再使用id指令我们可以看到用户id=0

用户组

在Linux 操作系统中,为了方便系统管理员按照用户的特性组织和管理用户,提高工作效率,产生了用户组的概念。用户组是具有相同特性的用户集合。当系统管理员统一为某个用户组赋予某种权限时,用户组中的所有用户都会同时拥有该权限。Linux操作系统也会为不同的用户组分配一个唯一标识,称为GID(Group Indentifcation )。
一个用户可以同时是多个用户组的成员,当一个用户属于多个用户组时,这些用户组分为基本组附加组,其中基本组只有一个,而附加组可以有多个。基本组和附加组都可以在添加用户时指定。如果添加用户时没有指定用户所属的组,系统会默认为用户指定一个基本组,这个基本组的名称与用户名相同,但系统不会为用户指定默认的附加组。基本组是用户的主组,例如,一个人职业为医生,同时他还在大学中给医学院学生授课,也就是说他同时归属于医生和老师两个群体,但是当向别人介绍他时,只会说他是一名医生,医生就是他的基本组,老师是他的附加组。

用户账号文件/etc/passwd

在Linux操作系统中,用户账号的相关信息(密码除外)都保存在/etc/passwd文件中。

所有用户都可以查看/etc/passwd文件中的内容。

案例2-1 查看/etc/passwd文件内容

cat /etc/passwd

root:x:0:0:root:/root:/usr/bin/zsh      root用户

daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
.....
king-phisher:x:133:141::/var/lib/king-phisher:/usr/sbin/nologin  系统用户

kali:x:1000:1000:kali,,,:/home/kali:/usr/bin/zsh
newuser:x:1001:1001::/home/newuser:/bin/sh     普通用户

用户影子文件/etc/shadow

     /etc/shadow文件是根据/etc/passwd文件产生的,称为影子文件。因为/etc/passwd文件权限是全局可读,任务一个用户都可以读取该文件的内容,所以Linux操作系统将密码进行加密后转移到了/etc/shadow文件中。/etc/shadow文件只有root用户可读

案例2-2 查看/etc/shadow文件内容

cat /etc/shadow

添加用户useradd命令

添加用户就是在系统中创建一个新的账号,并为该账号设置用户名称、用户组、主目录、登录Shell等资源。 添加用户的命令为useradd。   很重要

格式:useradd 选项 用户名

useradd命令常用选项(标黄需要重点记忆

选项

说明

-d

指定用户登录目录

-c

指定号的备注文字

-e

指定号的有效期限

-f

缓冲天数,密码过期时在指定天数后关闭该

-g

指定用户基本组

-G

指定用户所属的附加用户组

-m

自动建立用户的登录目录

-r

创建系统

-s

指定用户的登录Shell

-u

指定用户的用户ID。若添加-o选项,则用户ID可与其他用户重复

案例2-4 添加用户长岛icetea

useradd 长岛icetea

案例2-5 添加用户itcast,并指定用户的主目录为/usr/itcast

useradd -d /usr/itcast -m itcast

案例2-7 添加用户Addy,并设置用户ID为1024

useradd Addy -u 1024

设置用户密码passwd命令

Linux系统中使用passwd命令为用户设置密码。

格式:passwd 选项 用户名

passwd命令常用选项

选项

说明

-l

锁定密码,锁定后密码失效,无法登录(新用户默认锁定)

-u

解除密码锁定

-d

删除密码,仅系统管理员可使用

-S

列出密码相关信息,仅系统管理员可使用

-f

强行执行

案例2-8 为新添加的itcast用户设置密码

passwd itcast

删除用户命令userdel命令

userdel命令可以删除指定用户及用户相关的文件和信息

格式 userdel   选项  用户名

userdel命令常用选项

选项

说明

-f

强制删除用户,即便该用户为当前用户

-r

删除用户的同时,删除与用户相关的所有文件

三、文件管理

Linux文件类型

文件类型标识符

含义

-

普通文件。文件属性信息长列表中以“-”开头。

d

目录文件。文件属性信息长列表中以“d”开头。

l

链接文件。文件属性信息长列表中以“l”开头。

c

字符设备文件。文件属性信息长列表中以“c”开头。

b

块设备文件。文件属性信息长列表中以“b”开头。

p

管道文件。文件属性信息长列表中以“p”开头。

s

Socket文件。文件属性信息长列表中以“s”开头。

案例3-1 分别查看/etc目录下的文件类型

 cd /etc    #切换到/etc目录

 ls –l        #查看所有文件属性信息

目录操作命令

ls命令

ls命令用于列出参数的属性信息。

格式 ls  选项  参数

参数既可以是目录,也可以是文件。

ls命令常用选项

选项

说明

-l

以详细信息的形式展示出当前目录下的文件

-a

显示当前目录下的全部文件(包括隐藏文件)

-d

查看目录属性

-t

按创建时间顺序列出文件

-i

输出文件的i-node编号

-R

列出当前目录下的所有文件信息,并以递归方式显示各个子目录中的文件和子目录信息

案例3-4:查看当前目录下的文件

ls

案例3-5:查看当前目录下的所有文件,包括隐藏文件

ls -a

mkdir命令

mkdir命令用于创建目录。

格式 mkdir 选项 参数

mkdir命令常用选项

案例3-6 在当前目录下创建itheima目录

mkdir itheima

rmdir命令

rmdir命令用于删除目录。

格式 rmdir -p 参数

rmdir命令的参数既可以是目录也可以是路径。

rmdir命令只有一个常用的选项-p,-p选项表示递归删除,当参数为路径时,如果子目录被删除后,其上层目录也成为空目录,则上层目录会一并删除。当参数为一个空目录时,不需要使用选项,直接删除目录。

使用rmdir -p itheima指令删除,然后通过ls -l 查看已经被删除。

文件内容显示命令

cat命令

cat命令用于将文件内容打印到输出设备。

格式 cat 选项 文件名

cat命令常用选项

cat 1.sh

查看1.sh的内容

案例3-9:显示/etc/passwd文件内容,并对每一行进行编号。

cat -n /etc/passwd

 more命令

more命令用于分页显示文件内容

格式 more 选项 文件名

more命令常用选项

选项

说明

+n

从第n行开始显示文件内容

-n

定义屏幕大小为n行

-c

从顶部清屏,然后显示后面的内容

-p

与-c选项类似,通过清屏换页

-s

把连续的多个空行显示为一行

-u

去掉文件内容中的下画线  

案例3-10:分页显示/etc/passwd文件内容

more /etc/passwd

less命令

less命令也可用于分页显示文件内容,但与more命令不同的是,less既支持向下翻页,也支持向上翻页。

格式 less 选项 文件名

less命令常用选项

选项

说明

-e

文件显示结束后,自动退出文件。如果不加该选项,必须按q键退出文件

-i

忽略搜索时的大小写

-m

显示查看文件内容的百分比

-N

显示每行的行号

-s

将连续空行显示为一行

案例3-11:分页显示/etc/passwd文件内容,要求可以向上翻页

less /etc/passwd

head命令

head命令用于查看文件的前n行内容

格式 head 选项 文件名

head命令常用选项

选项

说明

-n

显示的行数,默认显示10行

-v

显示文件名

案例3-12:显示/etc/passwd的前6行内容

head -6v /etc/passwd

tail命令

tail命令用于显示文件的后n行内容

格式 tail 选项 文件名

tail命令的常用选项及含义与head命令相同,只是tail命令从文件末尾开始计算行数。

案例3-13:显示/etc/passwd的后4行内容

tail -4 /etc/passwd

文件查找命令

find命令

find命令可以通过关键字,从指定的目录开始递归搜索各个子目录,查找符合条件的文件。

格式 find 路径 选项 查找关键字

路径补充:./表示当前目录         

                  / 表示跟目录       

                  ../表示上级目录

find命令常用选项

选项

说明

-name

根据文件名查找文件

-lname

根据文件名查找符合条件的符号链接文件

-size

根据文件大小查找文件

-user

根据文件所有者查找文件

-group

根据用户组查找文件

-uid n

查找UIDn的用户所有的文件

-gid n

查找GIDn的用户组所有的文件

-empty

查找大小为0的目录或文件

-type x

查找类型为x的文件

-atime n

查找n天以前访问过的文件

案例3-14:查找当前目录下名称为passwd的文件。

find -name passwd

当前目录下没有名称为passwd的文件,find命令没有输出任何结果。

which命令

which命令主要用于搜索可执行文件的位置。

格式 which 命令

案例3-16:查看命令ls的文件位置。

which ls

whereis命令

whereis命令的功能与which命令类似,但whereis命令除了可以查找可执行文件,还可以查找帮助文件。

格式 whereis 选项 命令

whereis命令常用选项​​​​​​​

选项

说明

-b

只查找可执行文件的位置

-m

只查找帮助文件

案例3-17:分别查找命令ls的可执行文件和帮助文档位置。

whereis -b ls

whereis -m ls

文件复制、移动、删除

文件复制命令cp

cp命令原意为“copy”,即拷贝,该命令可以将一个或多个文件复制到指定目录。

格式 cp  选项  源文件 / 目录   目标文件  / 目录

​​​​​​​cp命令常用选项

选项

说明

-a

递归复制目录及目录下的文件,在复制时保留原有文件的属性信息(如时间戳)

-R

递归复制目录及目录下的文件,在复制时使用新的文件属性信息
-p复制的同时不修改文件属性,包括所有者、所属组、权限和时间
-f强行复制文件/目录,无论目标文件/目录是否存在,即覆盖原文件
-i与-f选项相反,在覆盖原文件之前给出提示
 示  例1: 使用cp命令将a.txt文件中的内容复制到b.txt文件中

cp a.txt b.txt    

 示  例2: 使用cp命令将a.txt文件和b.txt文件复制到dir目录下。

mkdir dir

cp a.txt b.txt dir

文件移动命令mv

mv命令有两个功能: 第一个功能是重命名文件。

                                   第二个功能是移动文件/目录到指定目录。

格式 mv 选项 文件/目录 目标文件/目录

mv命令常用选项

选项

说明

-f

强制复制移动文件或重命名文件

-i

与-f选项相反,在移动文件或重命名文件之前给出提示
案例3-19:在当前目录下创建mvdir目录,并将a.txt、b.txt文件、dir目录移动到mvdir目录。

mv a.txt b.txt dir mvdir

文件删除命令rm

rm命令用于删除文件/目录。

格式 rm 选项 文件/目录

rm命令常用选项

选项

说明

-f

强制删除文件/目录

-rf

选项-r与-f结合,删除指定目录中所有文件和子目录,并且不逐一确认
-i在删除文件/目录时对要删除的内容逐一进行确认(y/n)
案例3-20:删除mvdir目录。

rm -rf mvdir

文件更新

touch命令用于修改文件/目录,时间为系统当前时间,包括文件存取时间和修改时间如果文件不存在,则创建一个新的文件

格式 touch  选项 文件名

touch命令常用选项

选项

说明

-a

只修改文件读取时间

-c

如果文件不存在,不创建新文件
-d使用指定的日期,而不使用系统当前时间
-m只修改文件的修改时间
案例3-21:修改文件a.txt的时间戳为系统当前时间

 文件打包tar命令

tar命令是一个文件/目录打包归档命令,它可以把许多文件/目录打包成.tar格式的文件包(通常为tar包)。但tar命令不是压缩命令,因为它打包之后的文件与原来大小相同。

格式 选项 包名 文件/目录

tar命令常用选项

选项

说明

-c创建新的备份文件

-f

指定备份文件名,该选项通常是必选项
-x从备份文件中还原文件
-t列出备份文件内容,即查看备份了哪些文件
-v显示打包过程
-z打包完成后使用gzipp命令将包压缩
-j打包完成后使用bzip2命令将包压缩
-p打包时保留文件原来的属性
-k保留原文件,例如,还原包中文件时,遇到同名文件不覆盖
案例3-27:将/usr/bin目录下的文件打包并使用gzip命令压缩。

chmod命令

1. 采用字符方式更改文件/目录权限

2. 采用数字方式更改文件/目录权限

使用数字设置文件/目录权限时,不同的权限对应不同的数值,读权限对应数值为4(100),写权限对应数值为2(010),执行权限对应数值为1(001)。

用户对文件/目录的权限由读、写、执行这3种权限的数值相加结果表示。

格式 chmod  数值表示的权限  文件/目录

案例3-30:设置a.txt文件的权限,所有者具有读、写、执行权限,同组用户和其他用户只具有读权限

(未完待续)


http://www.ppmy.cn/ops/145246.html

相关文章

leetcode hot100 翻转二叉树

226. 翻转二叉树 已解答 简单 相关标签 相关企业 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 # Definition for a binary tree node. # class TreeNode(object): # def __init__(self, val0, leftNone, rightNone): # …

docker commit生成的镜像瘦身

1、清除宿主系统的docker资源 docker system prune -a --volumes 2、清理容器内系统的临时文件和缓存 # 删除包管理器缓存 apt-get clean rm -rf /var/lib/apt/lists/* # 删除日志文件 rm -rf /var/log/* # 删除临时文件 rm -rf /tmp/* 3、安装docker squash工具&#xff0…

梳理你的思路(从OOP到架构设计)_设计模式Factory Method模式

目录 1、Factory Method模式 2、范例&#xff1a; Android FM(工厂)模式 3、Android里处处可见的FM模式的应用 1、Factory Method模式 誰來創建<T>的對象呢?例如&#xff0c; 剛才的Template Method模式內含一個EIT造形&#xff0c;那麼&#xff0c; 請問&#xff…

探索大语言模型的世界:入门指南

随着人工智能技术的飞速发展&#xff0c;大语言模型&#xff08;Large Language Models, LLMs&#xff09;已成为诸多行业关注的焦点。从自然语言处理到生成式人工智能&#xff0c;LLMs 正在改变我们与技术互动的方式。如果你刚刚接触大语言模型&#xff0c;不知道从何下手&…

uni-app开发订单列表页面

目录 一:功能描述 二:功能实现 一:功能描述 订单列表页面包含三个部分,最上面显示订单的状态信息,可以根据订单进行切换,中间显示订单的商品和价格信息,最下面显示订单的操作按钮,可以根据不同的状态操作订单。 二:功能实现 1:状态切换 <view class="nav-…

32位MCU主控智能电表方案

智能电表作为电网数据采集的核心设备&#xff0c;承担着至关重要的角色。它主要用于采集、计量和传输原始的电能数据&#xff0c;确保电力系统的高效运行。该设备配备了多种通讯接口&#xff0c;如RS485和以太网&#xff0c;使得用户能够轻松进行用电检测、集中抄表以及电力管理…

蓝牙和WiFi技术的测试:从基础到高级的学习资源

无线通信技术,特别是蓝牙和WiFi,已被广泛应用于智能设备、物联网(IoT)以及许多行业领域。而随着无线设备数量的激增,如何对这些技术进行高效、准确的测试成为了一个至关重要的问题。在这篇博客中,我们将深入探讨蓝牙和WiFi技术的测试,从基础到高级的学习资源,帮助你掌握…

天融信网络架构安全实践

1、医院客户想通过等保2.0三级&#xff0c;推荐哪几款网络安全产品&#xff1f;&#xff08;至少6个&#xff09; TopSAg(运维安全审计系统) TopNAC&#xff08;网络准入系统&#xff09; TopEDR&#xff08;终端威胁防御系统&#xff09; TDSM-SBU&#xff08;存储备份一体机…