-
Linux 的起源和发展:了解 Linux 操作系统的起源、发展和主要的发行版,如Linux 内核的诞生、GNU项目的贡献以及常见的 Linux 发行版如Ubuntu、Debian、CentOS 等。
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。
严格来讲,Linux操作系统指的是“linux内核+各种软件”,Linux这个词只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。
-
Linux 文件系统:熟悉 Linux 文件系统的层次结构和常见的目录结构:
-
根目录(/)
-
用户目录(/home)
-
系统配置目录(/etc)
-
Linux文件系统中的文件是数据的集合,文件系统不仅包含着文件中的数据而且还有文件系统的结构,所有Linux用户和程序看到的文件、目录、软连接及文件保护信息等都存储在其中。
-
常用的文件系统有以下几种EXT3、swap、vfat、nfs等。
-
深入理解
-
文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于NAND Flash的固态硬盘)或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。文件系统由三部分组成:文件系统的接口,对对象操纵和管理的软件集合,对象及属性。从系统角度来看,文件系统是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,当用户不再使用时撤销文件等。
-
Windows和Linux对比
1、Windows和Linux的文件权限
在Windows系统中,用户分为两类:计算机管理员和受限用户。Windows常常设置为管理员身份,结果大家都可以随意安装和修改系统软件,导致病毒软件防不胜防,导致Windows的安全性相对较差。
在Linux中,用户分为4类:root(超级用户)、普通用户、同一组用户和其他用户。root用户拥有最高权限,可以对计算机系统进行任何操作。但root用户一般只在对系统进行维护时,如添加新用户、安装应用程序时,才进行登录,一般都是以普通用户的身份进行登录,普通用户不能修改系统文件夹下的文件,因此病毒软件想修改系统程序的可能性就大大降低了,这样就增加了系统的安全性和可靠性。
2、Windows和Linux的目录结构
在Windows下,整个硬盘被分成几个区。Linux也有分区的概念,但它是将所有系统安装在一棵树上,即从树根"/"开始。Linux中有一些重要的系统目录,它们都有特定的用途。
/home存放系统中登录用户的主目录
/bin存放系统中的可执行文件
/etc存放系统中大部分配置文件
/root超级用户的主目录
/var存放内容经常变动的文件
/usr存放与系统的用户直接相关的程序和文件
-
-
2.1 Linux文件系统根目录下的主要目录介绍
/bin:保存系统命令,如ls、cd、pwd等常用命令
/dev:存放设备文件,特殊文件保存目录(不可以随意修改)
/home:用户目录,存放普通用户相关文件的用户,是我们常用的目录
/lost+found:存放临时文件。此文件夹大多数情况下都是空的,当突然停电或非正常关机后,有些文件就临时存放在这里。
/mnt:缺省挂载点,挂载U盘、移动硬盘目录(常用)
/sbin:用来存放管理员才能使用的命令,即具有一定权限才可以使用的命令
/proc:进程,该目录不能直接操作,其保存的是内存的过载点
/srv: 系统启动服务时可以访问的数据库目录
/tmp:临时目录
/var:系统相关文档内容目录,存放经常被修改的文件,包括各种日志、数据文件。
/boot:存放引导的相关文件,保存系统的启动数据(不可随意操作)
/etc:用来存放配置相关文件
/lib:存放系统动态链接共享库,几乎所有的应用程序都会用到该目录下的共享库。
/media:存放挂载和自动挂载设备的标准位置。如远程文件系统和可移动介质。
/opt:存放第三方软件。第三方软件在安装时默认会找到这个目录,所以如果你没有安装此类软件时,它是空的,但如果你一旦把它删除,以后再安装此类软件可能会碰到麻烦。
/root:存放root用户(即管理员用户)相关文件的目录
/sys:该目录不能直接操作,存放类似于/proc的文件系统,在Linux2.6内核中最新出现,包含的文件用于获得硬件状态并反映内核看到的系统设备树。它使用了/proc中的很多帮助。
/selinux:selinux是一种基于域-类型模型(domain-type)的强制访问控制(MAC)安全系统,它由NSA编写并设计成内核模块包含到内核中,相应的某些安全相关的应用也被打了SELinux的补丁,最后还有一个相应的安全策略。
/usr:系统软件资源目录,存放默认安装文件的目录,存放用户的应用程序和文件
/usr/bin:众多的应用程序
/usr/sbin:超级用户的一些管理程序
/usr/include:Linux下开发和编译应用程序所需要的头文件
/usr/lib:常用的动态链接库和软件包的配置文件
/usr/src:源代码,Linux内核的源代码就放在这里
/usr/local/bin:本地增加的命令
/usr/local/lib:本地增加的库
3.用户和权限管理:了解 Linux 中的用户和用户组的概念,以及权限管理和访问控制,包括用户的创建、删除、权限的分配和修改等。
在 Linux 操作系统中,任何文件都归属于某一特定的用户,而任何用户都隶属于至少一个用户组。全部的用户信息保存为普通的文本文件。/ etc /passwd
文件是 UNIX 安全的关键文件之一。系统使用 UID 而不是用户名区别用户。任何 UID 值为0的用户都有 root 用户(系统管理员)访问权限,具备对系统的完全控制。/ etc / group
文件包含关于用户组信息。/etc/shadow
包含用户密码文件(影子文件)
Linux用户管理
用户是Linux系统工作中重要的一环,用户管理包括用户与组账号的管理。
账号管理是指账号的新增、删除和修改、账号规划以及权限的授予等问题。
在Linux系统中,不论是由本机或是远程登录系统,每个系统都必须拥有一个账号,并且对于不同的系统资源拥有不同的使用权限
Linux用户权限
Linux下有两种用户:超级用户(root)、普通用户。
Linux系统中的root账号通常用于系统的维护和管理,它对Linux操作系统的所有部分具有不受限制的访问权限。在大多数版本的Linux中,都不推荐直接使用root账号登录系统。
Linux普通用户在系统下的操作是受限的。
超级用户的命令提示符是“#”,普通用户的命令提示符是“$”
useradd #建立用户账户
-c:加上备注文字,备注文字保存在passwd的备注栏中。
-d:指定用户登入时的启始目录。
-D:变更预设值。
-e:指定账号的有效期限,缺省表示永久有效。
-f:指定在密码过期后多少天即关闭该账号。
-g:指定用户所属的起始群组。
-G:指定用户所属的附加群组。
-m:自动建立用户的登入目录。
-M:不要自动建立用户的登入目录。
-n:取消建立以用户名称为名的群组。
-r:建立系统账号。
-s:指定用户登入后所使用的shell。
-u:指定用户ID号
usermod #修改用户账户
-c <备注> 修改用户帐号的备注文字。
-d <登入目录> 修改用户登入时的目录。
-e <有效期限> 修改帐号的有效期限。
-f <缓冲天数> 修改在密码过期后多少天即关闭该帐号。
-g <群组> 修改用户所属的群组。
-G <群组> 修改用户所属的扩展、附加群组。
-l <帐号名称> 修改用户帐号名称。
-L 锁定用户密码,使密码无效。
-s <shell> 修改用户登入后所使用的shell。
-u <uid> 修改用户ID。
-U 解除密码锁定。
userdel #删除用户账户
groupadd #建立用户组
-g GID 指定新用户组的组标识号(GID)。
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
groupdel #删除用户组
groupmod #更改组群识别码或名称
-g GID 为用户组指定新的组标识号。
-o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-n 新用户组 将用户组的名字改为新名字
> # groupmod –g 10000 -n group3 group2
>此命令将组group2的标识号改为10000,组名修改为group3。
gpasswd #管理组群
-a 添加用户到组。
-d 从组删除用户。
-A 指定管理员。
-M 指定组成员和 -A 的用途差不多。
-r 删除密码。
-R 限制用户登入组,只有组中的成员才可以用 newgrp 加入该组。
4.命令行界面:掌握 Linux 命令行界面的基本操作和常用命令,如文件和目录的操作(ls、cd、mkdir、rm 等)、文件权限管理(chmod、chown 等)、文本编辑器(vi、nano)的使用等。
4.1目录操作命令
- 切换目录:cd
绝对路径:绝对路径一定是由根目录 / 开始写起。例如,使用绝对路径的表示方式指明 bin 文件所在的位置,该路径应写为 /usr/bin
相对路径:和绝对路径不同,相对路径不是从根目录 / 开始写起,而是从当前所在的工作目录开始写起。例如cd .. (.表示当前目录、..表示上一级目录)
命令格式:cd 目录名
cd / #切换到根目录
cd ~ #切换到主目录
cd - #切换到上次访问的目录
cd .. #返回上一级目录
- 查看目录:ls 和 pwd
pwd 查看当前工作路径(绝对路径)
ls 查看当前目录下的目录和文件
命令格式:ls [-选项] 目录名
选项: -a:列出当前目录所有文件和目录(包括隐藏文件,以 .开头的为隐藏文件)
-l:以列表的形式显示文件和目录
示例:
ls -a 查看该目录下所有文件或目录
ls -l(简写ll) 以列表形式查看文件或目录
- 目录操作【增、删、改、查】
- 创建目录【增】 mkdir
命令格式:mkdir [-选项] 目录名
选项: -p:递归创建目录。
示例:
mkdir data/ 在当前目录下创建一个名为aaa的目录
mkdir -p hadoop/data/ 在当前目录下创建hadoop一并创建子目录data
mkdir /tmp/bigdata 在指定目录tmp下创建一个名为bigdata的目录
- 删除目录或文件【删】rm和rmdir
命令格式:rmdir 目录名 (只能删除空目录)
示例:
rmdir bigdata #删除bigdata这个目录(bigdata为空的目录)
命令格式:rm [-rf] 目录名或文件名
选项: -f:不提示,强制删除文件或目录;
-i:删除已有文件或目录之前先询问用户;
-r,-R:递归删除,将指定目录下的所有文件与子目录一并删除;
-v:显示指令的详细执行过程。
示例:
rm -rf data/ #删除当前目录下data这个目录
rm -rf * #删除当前目录下所有文件和目录,慎用~
rm -rf /* #【自杀命令!慎用!慎用!慎用!】将根目录下的所有文件全部删除
注意:rm默认删除文件,使用-r选项可以删除目录,也可以删除其他文件或压缩包,为了方便大家的记忆,无论删除任何目录或文件,都直接使用 rm -rf 目录/文件/压缩包。
-
目录修改【改】mv 和 cp
-
目录重命名
命令格式:mv 旧目录名 新目录名 示例: mv hadoop/ hadoop01/ #将hadoop名改为hadoop01 注意:mv的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行重命名的操作
-
剪切(移动)目录
命令:mv 目录名称 目录的新位置 示例: mv data Data/ # 将data这个目录移动到Data这个目录下 注意:mv语法不仅可以对目录进行剪切操作,对文件和压缩包等都可执行剪切操作
-
拷贝(复制)目录或文件
命令格式:cp [-选项] 目录名称 目录拷贝的目标位置 选项: -r:表示递归复制 示例: cp -r apps/ Data/ #将apps目录复制到Data目录下 注意:cp命令在复制目录是一定加上选项参数“-r”,cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不用写-r递归。
-
-
搜索目录【查】find
命令格式:find 目录 参数 文件名称或者目录名 示例: find /tmp -name 'a*' 查找/tmp目录下的所有以a开头的目录或文件。
-
文件操作命令【增,删,改,查】
-
文件操作新建文件【增】touch
命令格式:touch 文件名 示例: touch a.txt #在当前目录创建一个名为aa.txt的文件 touch b.txt c.txt d.txt #在当前目录下创建多个文件b.txt、c.txt、d.txt 注意:使用vi 命令也可以创建新文件
-
删除文件 【删】 rm
命令格式:rm -rf 文件名 示例: rm -rf /tmp/a.txt 删除/tmp目录下的a.txt文件
-
修改文件内容【改】 vi或vim
命令格式:vi 文件名 示例: vi a.txt 进入a.txt进行编辑
-
文件移动或重命名:mv
命令格式:mv 文件名 新文件名 示例: mv hello.txt hi.txt #将当前目录下的hello.txt重命名为hi.txt mv /tmp/a.txt /tmp/b.txt #将/tmp目录下的a.txt重命名为b.txt
-
文件的复制:cp
命令格式:cp 原文件名 指定目录 示例: cp a.txt hadoop/ #将当前目录下的a.txt复制到hadoop目录下 cp a.txt hadoop/b.txt #将当前目录下的a.txt复制到hadoop目录下重命名为b.txt 注意:可以复制的时候重命名
-
查看文件内容【查】
文件的查看命令:cat、more、less、head、tail
cat:查看文件内容,看最后一屏 命令格式:cat [选项] 文件名 选项: -n :显示行号 示例: cat /etc/sudo.conf #使用cat查看/etc/sudo.conf文件,只能显示最后一屏内容
more:百分比显示 示例: more /etc/sudo.conf #使用more查看/etc/sudo.conf文件,可以显示百分比,回车可以向下一行,空格可以向下一页,q可以退出查看
less:翻页查看 示例: less /etc/sudo.conf #使用less查看/etc/sudo.conf文件,可以使用键盘上的PgUp和PgDn向上和向下翻页,q结束查看
head:默认查看文件前十行内容 示例: head -5 /etc/sudo.conf #使用head -5 查看/etc/sudo.conf文件的前5行内容
tail:默认查看文件后十行内容 示例: tail -5 /etc/sudo.conf #使用tail -5 查看/etc/sudo.conf文件的后5行内容
-
创建链接文件:ln
命令格式:ln [-选项] 源文件 目标文件 选项: -s :创建软连接(相当于快捷键) 示例: ln data.txt d #创建data.txt文件的硬链接d 示例: ln -s data.txt da #创建data.txt的软连接文件da 注意:加-s创建软链接,不加-s则创建硬链接,软链接前面是 l 开头的(link),而硬链接是 - 开头,表示文件;软链接类似与 windows 的快捷方式,有一个明显的箭头指向,而指向的是源文件;硬链接文件除了文件名与源文件不一样,其余所有信息都是一样的。类似于 cp 复制操作。但是又和复制不一样,硬链接可以同步更新。
4.2 文件权限管理
-
文件的权限包括读、写、执行
-
每个文件的权限针对三类对象进行定义:
文件和文件目录的所有者:u—User
文件和文件目录的所有者所在的组的用户:g—Group
其它用户(除所有者和所有组的用户):o—Others
所有用户(用 a 表示)
每个文件针对每类访问者定义了三种主要权限:
-
读(由 r 表示)
-
写(或修改,用 w 表示)
-
执行(由 x 表示)
-
rwx r-- r–
-
421 400 400
-
7 4 4
-
文件类型
d:文件夹 -:普通文件 l:软链接(类似Windows的快捷方式) b:块设备文件(例如硬盘、光驱等) p:管道文件 c:字符设备文件(例如屏幕等串口设备) s:套接口文件
-
基本权限
读(r/4): Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限 写(w/2): Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限 执行(x/1): execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限 “—”表示不具有该项权限
-
文件权限值的表示方法
-
字符表示方法
Linux表示 说明 r- - 只读 -w- 仅可写 - -x 仅可执行 rw- 可读可写 r-x 可写可执行 rwx 可读可写可执行 - - - 无权限 -
8进制数值表示方法
权限符号 八进制 二进制 r- - 4 100 -w- 2 010 - -x 1 001 rw- 6 110 r-x 5 101 -wx 3 011 rwx 7 111 - - - 0 000 -
文件访问权限的相关设置方法与命令
-
修改文件权限:chmod
chmod 修改文件权限的方法有两种: 字母法与数字法。
-
字母法:
chmod u/g/o/a +/-/=rwx 文件名
[ u/g/o/a ] 含义 u user 表示该⽂件的所有者 g group 表示与该⽂件的所有者属于同⼀组( group )者, 即⽤户组 o other 表示其他以外的⼈ a all 表示这三者皆是 [ ±= ] 含义 + 增加权限 - 撤销权限 = 设定权限 rwx 含义 r read 表示可读取, 对于⼀个目录, 如果没有r权限, 那么就意味着不能通过ls查看这个⽬录的内容。 w write 表示可写入, 对于⼀个目录, 如果没有w权限, 那么就意味着不能在目录下创建新的文件。 x excute 表示可执行, 对于⼀个目录, 如果没有x权限, 那么就意味着不能通过cd进⼊这个目录。 执行该命令时,我们可以仅对用户或用户组等进行权限操作,也可以同时对用户、用户组等进行权限操作
-
数字法:rwx也可以用8进制数值表示法
如执⾏:chmod u=rwx,g=rx,o=r filename
就等同于:chmod u=7,g=5,o=4 filename
chmod 754 filename
-
修改文件的拥有者:chown
-
修改文件的所属组:chgrp
-
查看或修改文件掩码: umask
Linux下对于新建的文件和目录的默认权限如下
-
新建文件默认权限=0666
-
新建目录默认权限=0777
但实际上我们所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到umask的影响。
这里假设默认权限是default,则实际创建的出来的文件权限是:
default & ~umask
-
-
-
-
-
nano是一个字符终端的文本编辑器,可以打开指定文件进行编辑
语法:nano [选项] [[+行,列] 文件名]
-h, -? --help 显示此信息
-A --smarthome 启用智能 HOME 键
-B --backup 储存既有文件的备份
-U --quickblank 状态行快速闪动
-V --version 显示版本资讯并离开
-W --wordbounds 更正确地侦测单字边界
**vi编辑器是Linux系统下标准的编辑器。**那么简单的理解,就像是Windows下的记事本。
补充:vim是vi的升级版,代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。
- 一、vi 命令的使用
命令格式: vi 文件名
示例: vi a.txt
注意:直接输入vi,可以查看vi的版本等信息,还可以直接编辑,但是退出时需要加上文件名,例如 :wq a.txt,将输入的内容保存到a.txt文件中。
- 二、vi编辑器的三种模式
vi 编辑器有三种模式:命令模式、插入(编辑)模式、底行模式
1、命令模式
直接用命令(vi 文件名)打开一个文件的话,默认是在命令模式下。
例如:(base) [root@defense ~]# vi test.txt
此时处于命令模式下。
2、插入(编辑)模式
在命令模式下输入a、A、i、I、o、O中任何一个字符即可进入插入模式,在此模式下才可以对文件进行编辑,输入内容。在此模式下按 ESC键 退出到命令模式
a、A、i、I、o、O字符作用如下:
a:在当前光标下一位开始编辑
A:在当前光标所在行行尾开始编辑
i:在当前光标开始编辑
I:在当前光标所在行行首开始编辑
o:在当前光标的下一行开始编辑
O:在当前光标的上一行开始编辑
3、底行模式
在命令模式下,通过输入 **:**(英文冒号)即可切换到底行模式,底行模式下可以做一些保存,字符替换等操作,底行模式下命令以回车结束,退出或者返回命令模式,或者**双击Esc**返回命令模式。
常用的底行模式下的命令如下::
set nu 显示行号
:set nonu 取消显示行号
:q 只退出,不保存
:wq 保存退出
:q! 强制退出
:wq! 强制保存退出
:%s/old/new 将old替换成new
:/string 查找字符串
:n 定位到n行(n指数字)
- 三、快捷键的使用
命令模式下的快捷键
dd 删除(剪切)光标所在行整行
ndd 删除光标所在行起向下n行(5dd,删除5行)
yy 复制光标所在行
nyy 复制光标所在行向下n行
p 粘贴 复制或剪切的内容(粘贴到下一行)
x 向后删除当前光标所在字符
X 向前删除当前光标所在字符
gg 把光标跳转到本文件的第一行
G 把光标跳转到本文件的最后一行
Shift+^ (shift+6) 把光标跳转到所在行的行首
shift+$ (shift+4) 把光标跳转到所在行的行尾
u 撤销,返回上一步
r 替换当前光标所在位置(一个字母)
R 向后连续替换
- 四、补充终端快捷键的使用
shell终端快捷键的使用:
Ctrl + a :移到行首
Ctrl + e :移到行尾
Ctrl+L:一键清屏(向上隐藏)
Clear:清屏(上面无内容)
Ctrl+u:删除光标所在行
Ctrl+d:向后删除光标所在位置字符
Ctrl+c:终止当前任务(执行的命令)
Ctrl+z:将任务挂起,放入后台
dpkg用于:管理系统里的deb包,可以对其安装、卸载、deb打包、deb解压等操作,与之相关apt-get工具可以在线下载 deb包 安装
-i:安装软件包;
-r:删除软件包;
-P:删除软件包的同时删除其配置文件;
-L:显示于软件包关联的文件;
-l:显示已安装软件包列表;
--unpack:解开软件包;
-c:显示软件包内文件列表;
--confiugre:配置软件包。
5.包管理器:熟悉 Linux 发行版的包管理系统,如apt、yum、dnf 等,以及常用的包管理命令,如软件的安装、更新、卸载等。
5.1 pm包 - (Fedora, Redhat及类似系统)
rpm -ivh package.rpm 安装一个rpm包
rpm -ivh --nodeeps package.rpm 安装一个rpm包而忽略依赖关系警告
rpm -U package.rpm 更新一个rpm包但不改变其配置文件
rpm -F package.rpm 更新一个确定已经安装的rpm包
rpm -e package_name.rpm 删除一个rpm包
rpm -qa 显示系统中所有已经安装的rpm包
rpm -qa | grep httpd 显示所有名称中包含 “httpd” 字样的rpm包
rpm -qi package_name 获取一个已安装包的特殊信息
rpm -qg “System Environment/Daemons” 显示一个组件的rpm包
rpm -ql package_name 显示一个已经安装的rpm包提供的文件列表
rpm -qc package_name 显示一个已经安装的rpm包提供的配置文件列表
rpm -q package_name --whatrequires 显示与一个rpm包存在依赖关系的列表
rpm -q package_name --whatprovides 显示一个rpm包所占的体积
rpm -q package_name --scripts 显示在安装/删除期间所执行的脚本l
rpm -q package_name --changelog 显示一个rpm包的修改历史
rpm -qf /etc/httpd/conf/httpd.conf 确认所给的文件由哪个rpm包所提供
rpm -qp package.rpm -l 显示由一个尚未安装的rpm包提供的文件列表
rpm --import /media/cdrom/RPM-GPG-KEY 导入公钥数字证书
rpm --checksig package.rpm 确认一个rpm包的完整性
rpm -qa gpg-pubkey 确认已安装的所有rpm包的完整性
rpm -V package_name 检查文件尺寸、 许可、类型、所有者、群组、MD5检查以及最后修改时间
rpm -Va 检查系统中所有已安装的rpm包- 小心使用
rpm -Vp package.rpm 确认一个rpm包还未安装
rpm2cpio package.rpm | cpio --extract --make-directories bin 从一个rpm包运行可执行文件
rpm -ivh /usr/src/redhat/RPMS/arch/package.rpm 从一个rpm源码安装一个构建好的包
rpmbuild --rebuild package_name.src.rpm 从一个rpm源码构建一个 rpm 包
5.2 yum 软件包升级器 - (Fedora, RedHat及类似系统)
yum install package_name 下载并安装一个rpm包
yum localinstall package_name.rpm 将安装一个rpm包,使用你自己的软件仓库为你解决所有依赖关系
yum update package_name.rpm 更新当前系统中所有安装的rpm包
yum update package_name 更新一个rpm包
yum remove package_name 删除一个rpm包
yum list 列出当前系统中安装的所有包
yum search package_name 在rpm仓库中搜寻软件包
yum clean packages 清理rpm缓存删除下载的包
yum clean headers 删除所有头文件
yum clean all 删除所有缓存的包和头文件
5.3 deb 包 (Debian, Ubuntu 以及类似系统)
dpkg -i package.deb 安装/更新一个 deb 包
dpkg -r package_name 从系统删除一个 deb 包
dpkg -l 显示系统中所有已经安装的 deb 包
dpkg -l | grep httpd 显示所有名称中包含 “httpd” 字样的deb包
dpkg -s package_name 获得已经安装在系统中一个特殊包的信息
dpkg -L package_name 显示系统中已经安装的一个deb包所提供的文件列表
dpkg --contents package.deb 显示尚未安装的一个包所提供的文件列表
dpkg -S /bin/ping 确认所给的文件由哪个deb包提供
5.4 apt 软件工具 (Debian, Ubuntu 以及类似系统)
apt-get install package_name 安装/更新一个 deb 包
apt-cdrom install package_name 从光盘安装/更新一个 deb 包
apt-get update 升级列表中的软件包
apt-get upgrade 升级所有已安装的软件
apt-get remove package_name 从系统删除一个deb包
apt-get check 确认依赖的软件仓库正确
apt-get clean 从下载的软件包中清理缓存
apt-cache search searched-package 返回包含所要搜索字符串的软件包名称
5.5 DNF(Dandified Yum)是新一代的RPM软件包管理器。他首先出现在 Fedora 18 这个发行版中。而最近,它取代了yum,正式成为 Fedora 22 的包管理器。DNF包管理器克服了YUM包管理器的一些瓶颈,提升了包括用户体验,内存占用,依赖分析,运行速度等多方面的内容。DNF使用 RPM, libsolv 和 hawkey 库进行包管理操作。尽管它没有预装在 CentOS 和 RHEL 7 中,但你可以在使用 YUM 的同时使用 DNF 。在centos8中已经默认安装DNF,可以同时使用YUM。
#为了安装 DNF ,您必须先安装并启用 epel-release 依赖。
yum install epel-release
yum install dnf
# 查看版本
dnf –version
#查看系统中可用的 DNF 软件库
dnf repolist
#查看系统中可用和不可用的所有的 DNF 软件库
dnf repolist all
#列出系统中所有 RPM 包
dnf list
#列出所有安装了的 RPM 包
dnf list installed
#搜索软件库中的 RPM 包
dnf search git
#查看软件包详情
dnf info git
#安装软件包
dnf install git
#升级软件包
dnf update git
#检查系统软件包的更新
dnf check-update
#升级所有软件包
dnf update
#删除软件包
dnf remove git
#删除无用孤立的软件包
#用处:当没有软件再依赖它们时,某一些用于解决特定软件依赖的软件包将会变得没有存在的意义,该命令就是用来自动移除这些没用的孤立软件包。
dnf autoremove
#删除缓存的无用软件包
dnf clean all
#获取有关某条命令的使用帮助
dnf help clean
#查看 DNF 命令的执行历史
dnf history
6.进程管理和系统监控:了解 Linux 中的进程管理和系统监控工具,如ps、top、htop 等,用于查看和管理运行的进程、系统资源的使用情况等。
7.网络配置和管理:熟悉 Linux 网络配置和管理,包括网络接口的设置、IP 地址的配置、网络服务的启动和停止等。
8.Shell 脚本编程:掌握 Shell 脚本编程的基础知识,能够编写简单的脚本来实现自动化任务和批处理操作。