[亲测,Success]Linux,VMware 安装+常用 命 令+网 络+进 程 管 理以及软件安装

编程入门 行业动态 更新时间:2024-10-27 20:34:30

安装Linux

1、环 境 安 装

1 安装VMware,课程中使用的是VMware10的版本

2 检测系统是否支持虚拟化

如果是win10系统,直接打开任务管理器查看


3 如果支持,查看虚拟化是否开启

4.VMware 安装
https://blog.csdn/qq_43652509/article/details/83900942

5 安装完成之后,需要安装xshell

6 xshell连接centos7操作系统

Centos提供IP地址,如何提供呢?

A.设置Wmware的IP地址

B、设置操作系统的地址

2、Linux概 述

2.1、了 解 Unix系 统

l Unix是一个强大的多用户、多任务操作系统。

l 于1969年在AT&T的贝尔实验室开发。

l UNIX的商标权由国际开放标准组织(The Open Group)所拥有。

l UNIX操作系统是商业版,需要收费,价格比Microsoft Windows正版要贵一些。

2.2、了 解 Linux发 展 历 史

l Linux是基于Unix的。

l 诞生于1991 年10 月5 日。

l Linux基于GPL协议,是一个自由的,免费的,源码开放的操作系统。

l Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。

2.3、Linux的 应 用 领 域

l 服务器系统

• Web应用服务器、数据库服务器、游戏服务器、接口服务器、DNS、FTP等等;

l 嵌入式系统

• 路由器、防火墙、手机、PDA、IP 分享器、交换器、家电用品的微电脑控制器等等

l 高性能运算、计算密集型应用

• Linux有强大的运算能力。IBM的Watson超级计算机就是使用Linux系统

l 桌面应用系统

• 很多桌面操作系统的底层也是Linux

l 移动手持系统

• 安卓系统就是基于Linux

2.4、Linux版 本

redhat:目前,全球最大的linux发行厂商,功能全面、稳定,但是,是收费的。

ubuntu:目前,是linux桌面操作系统做的最好的。

centos:免费版的redhat,centos基于redhat发行版基础之上,再重新编译发布的版本。

目前centos已经被Redhat公司收购,但是依然免费

3、安 装 Linux

3.1、安 装 虚 拟 机 软 件

常用的虚拟机软件 主要包括:VirtualBox、VMware Workstation、Virtual PC

VirtualBox: VirtualBox 是一款开源虚拟机软件。VirtualBox 是由德国 Innotek 公司开发,由Sun Microsystems公司出品的软件,使用Qt编写,在 Sun 被 Oracle 收购后正式更名成 Oracle VM VirtualBox

VMware Workstation: 是VMware公司销售的商业软件产品之一。该工作站软件包含一个用于英特尔x86相容电脑的虚拟机套装,其允许用户同时创建和运行多个x86虚拟机

Virtual PC:是Microsoft 最新的虚拟化技术。主要适合做微软自己产品的服务

3.2、安 装 Centos7系 统

https://blog.csdn/qq_43652509/article/details/83903205

3.3、网 络 三 种 连 接 方 式 讲 解

3.3.1、Bridged桥接模式

这种方式下,虚拟机就像一台真正的计算机一样,直接连接到实际的网络上,与宿主机没有任何联系。

3.3.2、Host-only仅主机模式

这种方式下,虚拟机的网卡连接到宿主的 VMnet1 上,但系统并不为虚拟机提供任何路由/上网服务,因此虚拟机只能和宿主机进行通信,而不能连接到实际网络上。

3.3.3、NAT模式

这种方式下,虚拟机的网卡连接到宿主的 VMnet8 上。此时系统的 VMWare NAT Service 服务就充当了路由器的作用,负责将虚拟机发到 VMnet8 的包进行地址转换之后发到实际的网络上,再将实际网络上返回的包进行地址转换后通过 VMnet8 发送给虚拟机。VMWare DHCP Service 负责为虚拟机提供 DHCP 服务。

总结:

虚拟机的三种网络连接方式:

1 桥接模式:虚拟机是一台独立的电脑

2 仅主机模式(host-only):虚拟机可以访问宿主机,虚拟机无法上网,宿主机无法访问虚拟机

3 NAT模式:虚拟机可以访问宿主机,宿主机可以访问虚拟机

       此时宿主机相当于路由器,虚拟机可以通过宿主机上网

       宿主机可以配置254个虚拟机 

3.4、配 置 动 态 IP

什么是动态IP?每次IP地址都可发生改变?

第一步:使用root用户登录(即root/123456),修改IP地址(vi /etc/sysconfig/network-scripts/ifcfg-ens33):

按字符键“i”进入编辑模式,修改/etc/sysconfig/network-scripts/ifcfg-ens33文件内容如下:

按“esc”键后,输入:wq回车,完成配置文件编辑。

输入:service network restart命令重启网卡,生效刚刚修改ip地址,ping www.baidu测试网络连通性。

好了,至此,CentOS7操作系统安装成功了。

3.5、设 置 静 态 ip 地 址 ( 推 荐 )

配置网络的目的主要是为了固定虚拟机的内网IP,方便我们在真实的操作系统中使用Linux连接工具软件进行远程连接

修改IP地址(vi /etc/sysconfig/network-scripts/ifcfg-ens33)

按“esc”键后,输入:wq回车,完成配置文件编辑。

输入:service network restart命令重启网卡,生效刚刚修改ip地址,ping www.baidu测试网络连通性。

注意:Linux系统中是严格区分大小写的,写明令时不要写错

3.6、给 虚 拟 机 进 行 快 照

快照其实就是还原点,我们设置了快照。以后如果被我们玩坏了,也可以快速的还原到以前状态!

3.7、安 装 远 程 连 接 工 具

直接操作Linux系统所在机器的问题:

A:虚拟机有鼠标独占问题,不好操作

B:真实开发中,虚拟机与我们不在一起。

使用远程连接工具:

A:操作方便快捷

B:随时随地都可以连接Linux系统,方便管理

3.7.1、远程终端命令工具

主要功能是向Linux系统远程发送命令

Xshell:目前最好用

Secure Shell Client:老牌的连接工具,对中文支持较差

SecureCRT:收费

Putty:早就停止维护了,很多东西支持的很差。但因为习惯依旧很多人支持

我们使用XShell5,安装时安装免费版

使用步骤:

3.7.2、远程FTP工具

FTP工具的目的是:便捷的与Linux系统之间进行文件传输

有以下途径:

Xftp:配合XShell使用,支持简单在线编辑

Secure Shell Client:自带FTP工具

SecureFX:配合SecureCRT使用

Lrzsz:可以安装在Linux系统中,通过在远程终端中使用命令来实现FTP功能

我们使用Xftp。

如果要向Linux进行文件传输,可以在Xshell界面中,点击文件传输按钮,自动就会打开我们安装的Xftp了:

通过XFTP工具,我们可以让本机操作系统和linux系统之间进行文件的上传和下载。

4、Centos7的 使 用 ( 无 界 面 )

4.1、几 个 基 本 的 Linux指 令

我们先来学习一套最基本的指令。

4.1.1、ls指令

ls,列出目录中所有可见的文件和目录。

ls -a,列出目录中所有的文件和目录。(以.开头的文件是隐藏的)

ls -l,列出文件和目录的详细信息。

drwxr-xr-x 第一个字符有3种情况:“-”表示普通文件,“d”代表目录,“l”代表连接文件,“b”代表设备文件。

紧接着的数字2代表 “aa”这个目录下的目录文件数目

ls -al,列出所有文件和目录的详细信息。

总结:

ls命令

ls 列出所有非隐藏的文件

ls -a:列出所有隐藏和非隐藏的文件

ls -l:缩写ll,列出所有非隐藏文件的详细信息

ls -al:列出所有隐藏和非隐藏的文件的详细信息

4.1.2、clear指令

clear,清除屏幕上的内容。

4.1.3、exit指令

exit,退出登录状态。

4.1.4、reboot指令

reboot,重启。

4.1.5、shutdown指令

shutdown主要用来关机。

shutdown -h now // 马上关机

4.2、指 令 快 捷 输 入

因为Linux中需要输入很多指令来操作,为了提高指令输入速度,Linux提供了以下方法。

4.2.1、历史指令

使用上、下箭头可以找出上一条指令和下一条指令。

4.2.2、代码补全

使用tab键可以快速输入指令。

比如:我要输入shutdown指令,这时,我们可以只输入shut然后按下tab键,即可自动把shutdown补全。

思考:为什么只输入s无法实现代码补全?

因为以s开头的指令,很多不只一个,所以不知道应该补哪个。但是我们可以按两个tab键,这时会把所有以s开头的指令都列出来:

按了两个tab,提示共有129个以s开头的指令真的要都显示出来吗?这时如果按y就会列出,如果按n就不会列出来。

按y之后会列出所有以s开头的指令,但因为129个比较多,而在电脑中无法一次全显示出来,所以先显示一部分:(More代表还有更多,这时按回车就可以向下滚动)

总结:

Clear:清屏

Reboot:重启

Exit:断开连接

Shutdown -h now:立即关机

Tab:补全

Pwd:获取当前位置的全路径

5、Linux的 结构

5.1.1、windows系统的目录结构

在windows中目录结构是从C、D、E等盘符开始的:


C、D、E这些盘符的关系是平等的,属于同一级。

5.1.2、Linux目录结构

在Linux中并没有C、D、E等盘符,直接就是一个树形结构的目录(Linux中只有一棵树):

目录结构总结:

1:Linux中的根目录就是/,没有windows中的盘符

2:Linux中如果有新的用户创建,默认会在/home/下创建一个与用户名一样的文件夹,作为该用户的home文件夹

3:root用户的HOME在/root文件夹下。比较特殊

4:一般我们安装文件都放在 /usr/software这个文件夹下

5:/etc下有很多系统的配置文件

6、Linux基 本 命 令

6.1、Linux命 令 的 格 式

Linux命令,其实就是Shell命令,是我们学好Linux的关键。

注意:

A:通过上下方向键来调取过往执行过的命令。

B:命令或参数仅需输入前几位就可以用tab键补全。

格式:

**命令名称** **[****命令参数****] [****命令对象****]**
命令名称:有很多,我们会学习其中重要的一些

命令参数:可选,有两种格式:

       长格式:--help

       短格式:-h

命令对象:可选,就是命令作用的目标,可以是文件、目录、URL等等

例如:

rm –f 1.txt

注意:Linux中的命令严格区分大小写的!

6.2、目 录 操 作 命 令

Linux中并没有文件夹的概念,应该叫目录。

6.2.1、查看当前目录

使用 pwd 指令可以查看当前所在的目录。

~代表当前是家目录,使用pwd可以查当前家(当前用户所在的目录)目录的绝对路径:

/home/用户名 — 家目录

6.2.2、切换目录

使用cd可以切换到其它目录。

Linux中有很多目录可以使用cd切换到任何一个目录中:

例1、切换到根目录:

例2、切换到/home目录:

总结:可以切换到任何一个现有的和我们自己创建的目录中。

面试题:在linux中~和/ 的区别:

6.2.3、创建目录

可以使用mkdir 指令创建目录。

创建目录时可以使用 相对路径 也可以使用 绝对路径。

例1使用绝对路径创建目录。

因为已经有/root目录了,所以在root中创建abcde可以直接创建,但是如果要一次创建多级目录就可以添加 -p 参数了。

例2、创建 /root/a/b/c/d/目录。

注意:因为root下没有a,也没有b,c,d,e,目录,所以要一次性同时创建多级目录需要加 -p 参数

例3使用相对路径在当前目录下创建abc目录。

回顾:./ 代表当前目录, …/ 代表上一级目录。

例4、创建的时候显示创建信息

注意:创建的时候显示创建信息,需要加上参数v

6.2.4、复制目录

可以使用 cp -r 指令复制目录及目录中的子目录。

-r : 递归

说明:cp是复制的意思,但对于目录来说还要加上 -r 这个参数代表连同目录中的子目录和文件一起复制。

例1复制当前目录下的abc目录,新复制出来的目录叫做abc2:

Copy

6.2.5、移动目录

可以使用 mv 指令移动目录。

Move

例1:把当前目录下的abc目录移动到当前目录下的abc2目录中。

6.2.6、删除目录

可以使用 rm -rf 指令删除目录及目录中的子目录和文件。

Remove

参数说明:

-r :递归的删除(删除子目录和文件)。

-f :强制删除(没有任何提示直接删除)。

例:删除当前目录中的abc2目录。

注意:该指令在使用时,一定要小心!定要小心!要小心!小心!心!! –删了就找不回来了。

6.2.7、重命名

可以使用mv 指令对目录重新命名。

例:把当前目录下的a目录改名为b目录。

总结:

mkdir:创建目录,当有多级目录的时候,使用-p

cp:复制目录,当有多级目录的时候,使用-r 递归

mv:移动目录+重命名目录

rm:删除目录,当有多级目录的时候,使用-rf

6.3、打 包 和 解 压 命 令

压缩也是一种打包,压缩的原理是将文件中相同的信息用一个字符代替,致使文件体积变小达到压缩的目的,压缩对于文本类或数据类文件有较明显的作用。

打包就是将一些文件放在一起变成一个包,便于保存和传输,图片和视频数据因为不象文本一样,因此多个文件在压缩的时候没有明显效果,因此只能做打包,进行保存。

Windows系统下常见的压缩文件:

*.zip

*.rar

*.7z

Linux系统下常见的压缩文件:

*.Z compress程序压缩的文件

*.gz gzip程序压缩的文件

*.bz2 bzip2程序压缩的文件

*.tar tar程序打包的数据,并没有压缩过

*.tar.gz tar程序打包并经过gzip压缩

*.tar.bz2 tar程序打包并经过bzip2压缩

6.3.1、.tar命令

打包:tar -zcvf FileName.tar DirName

解包:tar -zxvf FileName.tar

tar命令参数介绍:

-c: 建立压缩档案 create

-x:解压

-t:查看内容

-r:向压缩归档文件末尾追加文件

-u:更新原压缩包中的文件

这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。

下面的参数是根据需要在压缩或解压档案时可选的。

-z:有gzip属性的

-j:有bz2属性的

-Z:有compress属性的

-v:显示所有过程

-O:将文件解开到标准输出

-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。

案例一:将a目录打包为 a.tar

案例二:解包

总结:

tar命令仅仅实现对数据打包。不进行压缩。我们一般处理文件,都是同时进行打包和压缩。因此要加上参数。
因为要压缩,所以加上参数-z

因为要显示运行过程,因此加上-v

因为要指定文件名称,因此加上-f

最后,如果是打包,则用-c;如果是解压,则用--x

因此,最终命令为:

   tar -zcvf 压缩后文件名.tar.gz 目标文件      :打包并压缩目标文件

   tar -zxvf 要解压的文件名                :解压缩到当前目录

   tar -zxvf 要解压的文件名 -C 目标目录     :解压到目标目录

注意,一般Linux中的压缩文件都是 .tar.gz

6.4、文 件 操 作 命 令

Linux中的哲学:“所有东西都是一个文件”。

Linux中所有的东西(硬盘、目录、网络连接、U盘、光驱等等)都会当作一个文件来处理。

6.4.1、介绍

windows中的文件由 文件名.扩展名 两部分组成。扩展名直接决定了这个文件的类型,以及将会使用哪种软件来打开运行。

  1.   Xx.doc    word文件
    
  2.   Xxx.java  文件
    
  3.   Xxx.js    js文件
    
  4.   Xxx.xls
    
  5.   Xx.ppt
    

Linux中并没有扩展名的要求,不过为了便于区分文件,我们一般也会给文件加上一个扩展名。

6.4.2、隐藏文件

Linux系统中以 . 开头的文件是隐藏的文件,使用 ls 命令是查看不到这些文件的,必须要加上 -a 参数才可以查看到隐藏的文件。

我们在平时开发时会看到很多以 . 开头的文件,比如 .htaccess 。这些文件都是考虑到在Linux用来隐藏用的。

6.4.3、目录与文件的区分

当我们使用ls命令列出目录中的所有子目录和文件时,如何区分哪些是文件哪些是目录?

可以通过详细信息中第一列的信息来区分:以d开头的是目录,以-开头的是文件。

6.4.4、文件相关的指令

6.4.4.1、创建文件

可以使用 touch 指令创建文件。

touch 绝对路径/相对路径

例:当前目录下创建一个hello文件。

6.4.4.2、复制文件

可以使用 cp 复制文件。

cp 旧文件 新文件

例:复制当前目录下的hello文件,新复制出来一个hello2文件:

6.4.4.3、移动文件

可以使用 mv 移动文件。

mv 原文件 移动后的文件

例:把当前目录下的hello移动到当前目录下的abcd目录下(先有这个目录):

6.4.4.4、删除文件

可以使用 rm 删除文件。

语法1:删除前先提示

rm 要删除的文件

提示时按y删除,n不删除。

语法2:直接删除,没有任何提示

rm -f 要删除的文件

例:删除hello2文件

6.4.4.5、重命名文件

可以使用 mv 重命名文件。(移动时改名)

mv 原文件 新文件

例:把当前目录下的hello改名为helloworld。

6.4.4.6、查找文件

接下来学习如何在系统中查找文件。Linux中提供了很多好用的指令来查找文件。

find指令

find是功能最多的查找指令,可以根据各种条件查询文件。

语法

find 查找的目录 选项 值

例1、在/etc目录下查找所有*.conf.d结尾的文件

find /etc -name “*.conf.d”

扩展:程序的中断

在Linux系统中可以使用 ctrl+c 快捷键来中断当前程序的执行。

6.4.5、文件命令总结

命令目录文件
mkdir创建目录,多级目录使用,-p
touch创建文件
cp复制目录,多级目录使用-r复制文件
mv移动+重命名移动+重命名
rm删除,多级目录-rf删除,-f不询问
find查找文件
tar -zcvf 打包 -zxvf 解包打包+解包打包+解包

6.5、查 看 文 件 内 容 命 令


注意:tail和grep命令非常重要,一定要掌握

6.5.1、cat命令

cat filename 输出文件所有内容

6.5.2、more和less命令

more 查看更多内容

退出:按q键

空格:查询下一屏内容

less 用法和more类似,不同的是less可以通过PgUp、PgOn键来控制。

6.5.3、tail命令(重要)

tail 用于显示文件后几行的内容

tail -10 /etc/password 查看后10行数据

tail -f catalina.log 动态查看日志,可以实时的得到新追加到文件中的信息,常用来跟踪日志文件。

tail -200f catalina.log 动态显示日志最后200行

Ctrl + C 结束查看

6.5.4、grep命令

l 查找符合条件的字符串。

l 用法: grep [选项]… PATTERN [FILE]…

l 示例:

• grep lang anaconda-ks.cfg 在文件中查找lang

• grep lang anaconda-ks.cfg --color 高亮显示

grep location nginx.conf 查找字符串location并且高亮显示、显示查找到的元素的前、后5行内容。

查看进程:

ps -ef | grep java

ps -ef | grep tomcat

6.6、编 辑 文 件 内 容 :vi编 辑 器

l 在Linux下一般使用vi编辑器来编辑文件。

l vi既可以查看文件也可以编辑文件。

l 而vim是vi的升级版本,具备更多的功能

l vi如果目标文件不存在,会创建新的文件。但是如果新文件没做编辑,退出后还会消失。

6.6.1、vi的三种模式介绍

编辑模式:对文本进行输入和修改

底行模式:退出vim或者查找、替换功能

命令模式:通过快捷命令操作数据,打开vi默认就是命令模式

6.6.2、编辑模式

命令模式按下:i、o、a进入编辑模式:

i:光标不动

o:另起一行

a:光标到下一个字符

按ESC退出编辑模式,进入命令模式

6.6.3、底行模式

命令模式下,按‘:’或者‘/’进入底行模式,可以输入命令

1)退出vim:

:q 未编辑时退出vim

:q! 编辑后,退出并且不保存

:wq 编辑后,退出且保存

2)查找

/文本 搜索指定文本,高亮显示,按n显示下一个,按N显示前一个

:整数 快捷跳转到指定行

6.6.4、命令模式(了解)

dd 剪切当前行

5dd 剪切光标及下面共5行

yy 复制光标所在行

5yy 复制光标及下面共5行

p 将之前dd或yy的数据粘贴到光标位置

R 进入替换模式,输入的任何数据都直接替换光标所在位置数据

6.7、组 合 命 令 ( 掌 握 )

Linux中的命令组合后,可以产生神奇的效果!

6.7.1、重定向输出>和>>

例1:a.txt中内容为Hello,b.txt中内容为world,将内容合并到c.txt中

例2:a.txt中内容为Hello,b.txt中内容为world,c.txt中内容为Hello World,将内容合并并追加到c.txt中

6.7.2、管道 “|”

6.7.3、逻辑控制&&


7、网 络

7.1、虚 拟 机 的 三 种 网 络 连 接 方 式

7.1.1、Bridged桥接模式

这种方式下,虚拟机就像一台真正的计算机一样,直接连接到实际的网络上,与宿主机没有任何联系。

7.1.2、Host-only仅主机模式

这种方式下,虚拟机的网卡连接到宿主的 VMnet1 上,但系统并不为虚拟机提供任何路由服务,因此虚拟机只能和宿主机进行通信,而不能连接到实际网络上。

7.1.3、NAT模式

这种方式下,虚拟机的网卡连接到宿主的 VMnet8 上。此时系统的 VMWare NAT Service 服务就充当了路由器的作用,负责将虚拟机发到 VMnet8 的包进行地址转换之后发到实际的网络上,再将实际网络上返回的包进行地址转换后通过 VMnet8 发送给虚拟机。VMWare DHCP Service 负责为虚拟机提供 DHCP 服务。

7.2、配 置 文 件

配置网络时的几个重要参数:IP、Netmask、Gateway、DNS IP。

网卡配置文件

名称配置文件重要参数
网卡配置/etc/sysconfig/network-scripts/ifcfg-ens33DEVICE=物理设备名 IPADDR=IP地址 NETMASK=掩码值 NETWORK=网络地址 BROADCAST=广播地址 GATEWAY=网关地址 ONBOOT=[yes|no](引导时是否激活设备) USERCTL=[yes|no](非root用户是否可以控制该设备) BOOTPROTO=[none|static|bootp|dhcp](引导时不使用协议|静态分配|BOOTP协议|DHCP协议) HWADDR = 你的MAC地址NM_CONTROLLED=额外网管软件,建设设置为no
私有DNS/etc/hostsIP 主机名 别名
DNS服务器/etc/resolv.confNAMESERVER ip地址
主机名/etc/hostname /etc/hosts修改主机名需要重新启动电脑:reboot

7.3、网 络 管 理 指 令

重启网络服务

Service network restart

7.4、常 用 指 令

7.4.1、ip指令(掌握)

ip是一个功能强大的综合性网络指令,可以查看网卡接口、路由、IP等功能。

查看网卡IP信息 ------------------- centos6.x ifconfig

ip addr

查看网卡数据数据统计信息

ip -s link

7.4.2、ping指令

ping,可以用来检测两台连接的连接情况。

语法:

ping -c 数字 IP/主机名

-c:连接的次数。

-W:最长等待的秒数。

7.4.3、ss(掌握)

ss,指令,可以用来查看网络接口。在centos7之前的版本中常用的是netstat这个指令。

ss -参数列表

常用参数:

a:浏览所有接口。

n:解析服务名为端口号数字

t:tcp

l:监听的

p:显示使用socket的进程信息

u:udp

例1:查看当前运行的所有tcp服务器,显示服务名。

例2:查看当前运行的所有tcp服务器,显示端口号。

8、软 件 的 安 装

Linux上的软件安装只有root账号才可以完成。

8.1、三 种 安 装 方 法

Linux系统下的软件安装有三种方法。

8.1.1、tarball:源代码安装。

优点:软件根据实际的机器硬件进行配置和编译,性能最好、最稳定。

缺点:需要使用源代码编译、安装,比较麻烦。

tarball就相当于我们自己做馒头一样,自己买面,合面,自己蒸,虽然比较麻烦,但是自己做的很香,还可以根据自己的口味调整。

大部分的tarball安装的命令执行方式如下:

l ./configure 这个步骤是建立makefile这个文件

l makeclean 消除下上次编译过的目标文件之类的,不是必须要有,但保险起见还是做一下

l make 会依据makefile当中默认工作(也就是第一个)进行编译行为,主要是进行gcc将源码编译成为可执行的目标文件,而这个可执行文件放置在目前所在的目录之下

l make install 一般是最后的安装步骤,make会依据makefile关于install的选项,将上个步骤所编译完成的数据安装到默认的目录中

参考学习:https://blog.csdn/wangzengdi/article/details/32988275

8.1.2、rpm:二进制安装包安装。

优点:安装包直接运行安装,相对tarball简单些。

缺点:存在包依赖的问题,安装时需要手动下载很多安装包。

包依赖:安装A包时,报错提示需要B包,下载安装B包时,报错提示需要C包。。。。一直要把所有用的包都下载安装才可以。rpm解决了这个问题。

rpm相当于成品馒头,买回来直接吃。

1、找到相应的软件包,比如soft.version.rpm,下载到本机某个目录;
2、打开一个终端,su -成root用户;
3、cd soft.version.rpm所在的目录;
4、输入rpm -ivh soft.version.rpm

8.1.3、yum:自动下载二进制包安装。

rpm方式在安装软件时需要自己下载软件,还要解决包依赖,而yum解决了这个问题,yum只需要执行几个命令就可以自动下载并安装软件。

优点:最简单方便的安装方式,只要一条指令,系统就可以自动下载并安装所有的包。

缺点:1. 必须要有软件源(连网或者搭建软件源) 2. 有些软件没有yum包,不能使用yum安装,比如nginx等。

yum,就像外卖一样,一个电话,香喷喷的饼头和菜就送到家了,非常方便。

总结:如果能够连网使用yum安装软件是最方便的,如果yum安装不了,可以考虑rpm和tarball。

8.2、rpm安 装 ( 掌 握 )

使用rpm非常的简单只需要几个指令。

8.2.1、查询软件

指令1、列出所有已安装的软件

rpm -qa

指令2、查看是否安装了某个软件

rpm -q 软件名

例、查看是否安装了vim。

指令3、查看某个已安装的软件的信息

rpm -q[licdR] 已安装的软件名

-l:列出该软件所有的文件和目录

-i:列出该软件的详细信息,如开发商、版本、说明等

-c:列出该软件所有的配置文件(一般在/etc目录下)

-d:列出该软件所有的帮助文件

R:列出该软件依赖软件所包含的文件

例、查看python软件安装之后所有文件的路径。

指令3、查找某个文件属于哪个软件

rpm -qf 文件名

8.2.2、安装rpm软件包

指令

rpm -ivh 软件包

-i:安装

-v:查看更详细的安装信息界面

-h:以安装信息栏显示安装进度

–prefix=安装路径:安装的目录,如果不设置会安装到默认目录中

–test:测试一下是否可以安装

注意:在一其它的Linux版本中,比如ubuntu。用的是dpkg机制。

安装目录:使用–prefix可以指定安装的目录,如果没有指定,默认会安装到以下几个目录中:

安装的软件主要包含以下几部分:可运行的程序、配置文件、手册、说明文档。

目录说明
/usr/bin可运行的程序
/etc配置文件
/usr/share/doc说明文档
/usr/man/man1手册

8.2.3、更新软件

指令

rpm -Uvh 软件包

8.2.4、卸载软件

指令

rpm -e 已安装的软件名

8.2.5、重建rpm数据库

由RPM文件会经常 安装/删除/升级 等,某些操作或许会导致RPM数据库/var/lib/rpm/内的文件损坏。这时我们就需要重建一下RPM的数据库:

rpm --rebuilddb

8.2.6、RPM的包依赖问题

RPM可以很方便实现软件包的管理,但是却有一个最最麻烦的问题:“包依赖”。

包依赖,当我们安装A软件时,会报错提示需要先安装B,这时我们安装了B软件之后,又报错会提示我们需要先安装C。。。。。最终我们为了安装好一个软件,需要把所有相关的依赖包都下载来先安装,这就会花费我们大量的时间。

同时在卸载软件时也要非常的小心,因为如果卸载的软件包被其它软件所依赖,那么这个软件卸载之后还会导致其它依赖它的软件也无法使用。

如何解决呢?

使用YUM。

8.3、yum安装

yum安装的好处是无须手动下载软件,只能简单几个指令,yum就会自动帮我们下载并完成安装。

8.3.1、yum指令:

指令描述
yum search 软件名查找软件
yum info 软件名查看软件信息
yum list列出yum服务器上所有的软件包
yum list updates列出可供升级的软件有哪些
yum install 软件名安装软件
yum update 软件名更新软件
yum remove 软件名删除软件
yum repolist all列出所有软件源

注意:在一其它的Linux版本中,比如ubuntu。不叫yum,叫做apt-get,虽然软件不同,但原理相同。

例、安装vim软件。(前提:需要联网。)

先查找有没有这个软件

搜索到了几个vim,选择一个合适的安装:

安装时会询问你是否下载安装相关的依赖包,按y同意即可:

可以看到需要30多个依赖包,这些包yum会自动帮我们下载安装,非常的方便,如果我们自己使用rpm来安装,那简直是恶梦!

8.3.2、yum的配置文件

yum下载软件时,必须要先有一个软件源,否则yum不知道从哪里才可以下载,软件源是通过yum的配置文件来配置的:/etc/yum.repos.d/CentOS-Base.repo。

这个文件中有多个软件源,以上图中有三个(每个[xx]开始的就代表一个软件源)

[xxx]:软件源名字,xxx就是名字。

name:显示软件源时的名字,不太重要。

mirrorlist=:列出可以使用的站点。

baseurl=:这个最重要,资源实际的地址

enable=1:是否启动,0代表不使用

因为yum有缓存的功能,如果我们修改了软件源需要清除一个现有数据

yum clean all

8.4、安 装 gcc-c++的 编 译 环 境

很多程序是C语言开发,安装这些程序前需要安装编译环境,gcc-c++。两种方式安装gcc-c++

方式一:rpm方式安装

方式二:yum安装

8.4.1、rpm 和yum的区别

rpm是由红帽公司开发的软件包管理方式,使用rpm可以方便的进行软件的安装、卸载、升级、查询等工作。但是rpm软件包之间可能有依赖关系,处理这些依赖性问题往往会很繁琐。例如使用rpm安装gcc环境时,首先要有gcc的rpm包,如果没则需要下载gcc的软件包并上传到Linux服务器,但是在安装gcc-c++时,会出现如下错误提示

8.4.2、rpm安装gcc-c++

安装步骤:1 提供gcc-c++需要的软件包

      2 rpm安装

意思是gcc-c++环境需要依赖gcc、libmpfr、libstdc这3个包,费了九牛二虎之力从网上找到这3个包并上传到服务进行安装,但是!在安装这3个包时,又会出现新的类似的错误提示,然后接下来:下载、安装、看到错误提示、下载、安装、看到错误提示、下载、安装……最后终于搞定了!

整个过程安装了N个软件包,而且需要按照一定的顺序安装,显然你的内心是崩溃的!

最终完成的安装方式:

1、上传gcc-c++环境所需的所有软件包

2、执行安装,直接使用如下命令32****位:

rpm -ivh --nodeps cloog-ppl-0.15.7-1.2.el6.i686.rpm

rpm -ivh --nodeps cpp-4.4.7-18.el6.i686.rpm

rpm -ivh --nodeps gcc-4.4.7-18.el6.i686.rpm

rpm -ivh --nodeps gcc-c+±4.4.7-18.el6.i686.rpm

rpm -ivh --nodeps libstdc+±devel-4.4.7-18.el6.i686.rpm

rpm -ivh --nodeps mpfr-2.4.1-6.el6.i686.rpm

rpm -ivh --nodeps ppl-0.10.2-11.el6.i686.rpm

64****位:

rpm -ivh --nodeps cloog-ppl-0.15.7-1.2.el6.x86_64.rpm

rpm -ivh --nodeps cpp-4.4.7-18.el6.x86_64.rpm

rpm -ivh --nodeps gcc-4.4.7-18.el6.x86_64.rpm

rpm -ivh --nodeps gcc-c+±4.4.7-18.el6.x86_64.rpm

rpm -ivh --nodeps libstdc+±devel-4.4.7-18.el6.x86_64.rpm

rpm -ivh --nodeps mpfr-2.4.1-6.el6.x86_64.rpm

rpm -ivh --nodeps ppl-0.10.2-11.el6.x86_64.rpm

8.4.3、yum安装gcc-c++

安装命令:yum install gcc-c++

OK

9、系 统 服 务

服务,是指常期运行,常驻内存中的进程,比如,apache、mysql、ssh等。

9.1、服务与端口

每个服务软件一般在运行时都会对应一个端口。

查看监听的端口

ss –lntp

9.2、防 火 墙 及 防 火 墙 设 置

CentOS 7.0默认使用的是firewall作为防火墙

查看防火墙状态

firewall-cmd --state

9.2.1、直接关闭firewalld防火墙

关闭防火墙:systemctl stop firewalld

防火墙状态:systemctl status firewalld

9.2.2、iptables 防火墙失效的问题

卸载Firewall并安装iptables后重新安装回Firewall。安装Firewall启动时,提示

Failed to start firewalld.service: Unit firewalld.service is masked.

systemctl unmask firewalld.service

此时可以正常启动Firewall了。

接下来顺便讲述一下Firewall的安装,及一些简单配置。

查看状态,看电脑上是否已经安装 firewalld

#systemctl status firewalld

#yum install firewalld //安装firewalld 防火墙

#systemctl start firewalld.service //开启防火墙

# systemctl stop firewalld.service //关闭防火墙

# systemctl enable firewalld.service //设置开机自动启动

# systemctl disable firewalld.service //设置关闭开机制动启动

#firewall-cmd --reload //在不改变状态的条件下重新加载防火墙

启用某个服务

# firewall-cmd --zone=public --add-service=https //临时

# firewall-cmd --permanent --zone=public --add-service=https //永久

开启某个端口

#firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp //永久

#firewall-cmd --zone=public --add-port=8080-8081/tcp //临时

查看开启的端口和服务

#firewall-cmd --permanent --zone=public --list-services //服务空格隔开 例如 dhcpv6-client https ss

#firewall-cmd --permanent --zone=public --list-ports //端口空格隔开 例如 8080-8081/tcp 8388/tcp 80/tcp

#systemctl restart firewalld.service //修改配置后需要重启服务使其生效

#firewall-cmd --zone=public --query-port=8080/tcp //查看服务是否生效(例:添加的端口为8080

10、进 程 管 理

如何查看当前正在运行的程序呢?

10.1、ps 指 令(掌 握)

查看当前系统中正在运行的所有的程序

ps 正在运行的某个进程的状态

ps –ef 查看所有进程

ps –ef | grep ssh 查找某一进程

ps -aux命令可以查看更详细的进程信息!

kill 杀掉某一进程

kill 2868 杀掉2868编号的进程

kill -9 2868 强制杀死进程

10.2、top指 令 ( 掌 握 )

top可以动态的查看程序的变化,可以用来观察每个进行CPU、内存的占用率。

top -d 数字

-d:更新的秒数。

查看进程的CPU、内存占用率。在这个界面可以使用几个按键实现交互:

M :根据内存占用率排序。

P :根据CPU占用率排序。

q :退出。

10.3、kill指 令 ( 掌 握 )

可以使用 kill 指令关闭一个正在运行的程序。

kill -信号 进程id

常用信号:

-9:强制关闭程序。

-15:正常关闭程序。

进程id:可以通过 ps 指令查看到。

10.4、工 作 管 理 ( 了 解 )

10.4.1、丢到后台

我们可以把一个程序丢到后台去执行,这样我们可以在前台继承做其它的工作。

按 ctrl + z 把当前工作丢到后台

这个指令会把工作丢到后台并让它处于“暂停”状态。

10.4.2、查看后台工作

可以使用 jobs 指令查看后台中运行的程序。

10.4.3、后台拿到前台

可以使用 fg 工作号 把后台运行的工作拿到前台来运行。

10.4.4、在后台运行

可以使用 bg 指令让一个程序在后台运行,而不是暂停。

10.4.5、关闭后台程序

可以使用 kill 指令关闭一个后台正在运行的程序。

kill -信号 %工作号

常用信号:

-9:强制关闭一个工作。

-15:正常关闭一个工作。

11、用 户 及 组 管 理

11.1、用 户 管 理

查看用户:

id        : 查看当前用户

id 用户名  : 查看指定用户

11.2、组 管 理

11.3、用 户 信 息 文 件

11.3.1、用户文件

11.3.2、密码文件

11.3.3、组文件

12、权 限 管 理

我们查看文件列表时,前面有一串信息:

其含义是:

读取权限 4

写:2

执行:1

读取+写:6

读+执行:5

写+执行:3

所有:7

7 7 7

7 6 6

7 5 5

12.1、文 件 类 型

第一个位置代表的是Linux中的文件类型:

创建软连接的方式: 注意 只能对文件操作,不可对目录操作

ln -s 源文件地址 联接地址

例如:

1 现在usr下面创建jdk文件夹

2 执行

ln -s /usr/software/jdk1.8.0_181/bin/java  /usr/jdk

这样就用 /usr/jdk  指向了 /usr/software/jdk1.8.0_181/bin/java这个文件

12.2、文 件 权 限

权限分段,每一段代表不同的用户:

属主权限:当前文件所属用户的权限,在Linux中每一个文件都有所属的用户

属组权限:当前文件的用户所在组的其它成员的权限

其它用户权限:跟文件所属用户不在同组的其它用户的权限

每一段中的内容都是一样的,分别限定:读(r=4)、写(w=2)、执行(x=1)

rwx 7 具备所有权限

rw- 6 具备读写权限

r-x 5 具备读和执行权限

r-- 4 具备只读权限

-wx 3 具备写和执行权限

-w- 2 具备写权限

–x 1 具备执行权限

12.3、权 限 管 理

修改文件权限

13、硬 件 信 息 查 看

我们拿到一台主机之后,首先需要了解主机的硬件信息,这样才可以评估出硬件的性能。

13.1、CPU信 息

13.1.1、CPU位数

uname -a 可以查看CPU是32位的还是64位的。

13.1.2、型号、核数

指令

cat /proc/cpuinfo | grep name | cut -f2 | uniq -c

查看CPU型号和核数,可以看出是 i7 处理器, 1核的。

13.2、内 存 信 息

使用 free 指令可以查看内存信息。

指令

free -m

单位:兆(MByte)

13.3、硬 盘 信 息

13.3.1、分区信息

可以使用 df 查找每个分区的信息。

df -h

13.3.2、某个目录

可以使用 du -h 查看某个目录的大小。

14、系 统 时 钟

14.1、查 看 时 间

可以使用 timedatectl 查看系统时间、时区等信息。

14.2、设 置 时 区

timedatectl set-timezone Asia/Shanghai

14.3、设 置 日 期

timedatectl set-time YYYY-MM-DD

14.4、设 置 时 间

timedatectl set-time HH:MM:SS

15、vim的 使 用

vim的操作基本上和vi一样。但vim中的功能更加的强大,比如有代码加亮、变色功能:

Day03总结:

1 firewalld防火墙的使用

开机自启:systemctl enable firewalld

启动:systemctl start xxx

停止:systemctl stop xxx

重启:systemctl restart xxx

查看防火墙状态:systemctl status xxx

永久开放端口:firewall-cmd --permanent --zone=public --add-port=8080/tcp

临时开放端口:firewall-cmd --zone=public --add-port=8080/tcp

查看开放端口:firewall-cmd --permanent --zone=public --list-ports

2 tomcat开机自动启动—与上面不一样,需要配置

3 进程管理指令

rpm -qa | grep xxx 查看已安装软件

ps -ef : 查看正在运行的进程

Top:

Kill:

4 用户管理:useradd

5 文件权限:chmod 777 赋予权限

更多推荐

[亲测,Success]Linux,VMware 安装+常用 命 令+网 络+进 程 管 理以及软件安装

本文发布于:2023-06-13 16:55:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1385313.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:常用   软件   Success   Linux   VMware

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!