linux软件安装管理与安装RPM时的挂载的概念

来源:互联网 发布:x战警天启知乎 编辑:程序博客网 时间:2024/06/05 11:41

1.软件的分类:


其中的源码包有好处也有坏处,

其中的好处是:我们能看到里面的源代码,方便我们修改和学习其编程语法;还有一个就是不容易中病毒,因为Windows下的很多病毒对于Linux来说都是不认识的。 

其中的坏处是:linux的所有的程序是不能直接拿来使用的,需要再开发;安装步骤比较多,并且对于大型的软件时容易出现拼写错误;安装时间比较久。好处:


  第二个可以自由选择所需的功能,例如我们不需要软件的某些功能,完全可以把其相关代码进行修改。而Windows的供选择的的功能很少,大概只能选择安装位置之类的基础功能。

 第四个卸载方便,linux的关联性文件种类分的比较集中,当我们需要卸载某个程序时,只需删除其安装目录文件即可完全删除,而Windows的系统会越用越卡,是因为其软件相关文件删除不干净。

   2.二进制包;

   

   二进制包指的是已经编译成机器码的包,例如windows的很多应用程序安装包都是编译成机器码的,其中反编译技术不能完整的还原源代码,因为反编译是有代码损失的,所以其一般是不可逆的,rpm包可能会有依赖性,例如安装当前包需要安装B包,安装B包需要安装C包,此时我们则需要先安装C包,再按照B包,最后安装当前包,其实其跟打游戏一样,需要安装显卡驱动,c++等才可能运行游戏。


3、挂载的概念与相关指令:

  像我们的Windows的快压就有一个挂载的功能,其能够把ISO镜像不进行解压就直接在系统上挂个CD盘,这样我们就可以对ISO里面的文件进行读取

,而不用经过解压。现在有个疑问就是什么叫做挂载?

   挂载就是把一个设备或者一个文件(网络中的、本地的、内存的、硬盘的、U盘的)泛资源当做本地的一个文件夹处理,这样你的应用程序就可以直接读取了,注意这里指的是把其当做一个文件夹来处理,意思就是我们在挂载后对里面所以的文件可见。例如我们在挂载iso镜像后就可以打开里面的内容列表。其是挂载随处可见:当我们插入U盘后,在电脑上显示出其盘符,这也是一直挂载,因为我们能打开它对其里面的东西进行操作。如下:


下面是linux系统如何进行挂载一些


2.RPM包的命名原则:


其有个缺点就是:RPM包依赖性,例如:


例如下面的在挂着了centos的iso包后进行安装里面的数据库,则出现了因为依赖性没解决,而出错:


其就是因为缺少libodbcinst.so.2这个包而出现错误。当在安装这个包时使用tab键进行补全时不能进行补全,则是因为这个目录下根本就没有这个包

,原因是:

以后以.so结尾的都是文件,其不是RPM软件包,其是需要安装某些软件包后才会生成的文件。在我们不知道这个库文件所在的软件包时,就可以

通过上面的的那个,模块依赖里的那个查询网站。这是比较繁琐的事,一个更好的方法就是使用yum在线管理,其使用的yum指令会在网上对各种库依赖

进行建立关系,解决了很多繁琐的工作(也可以不联网,把本地光盘当做yum)

3.rpm安装指令是:



其中的--nodeps不检测依赖性(最好好不用,因为软件虽然安装上了,但是可能是运行不了的,其少了一些关联的文件)例子是:


这里需要有两个百分百才成功,第一个是准备成功,第二个是才是安装成功

4.升级与卸载:

  其升级为:rpm -Uvh 包全名   

其中选项: -U(upgrade)升级,其也是先下载包然后按照包,不过这个包必须比当前系统版本更高,如果没有按照这个软件,升级指令则会按照此软件,如果安装后则会升级。

使用RPM指令来安装包,其安装路径是由RPM产生的默认路径里,其各种信息会放到:ls  /var/lib/rpm 这个路径的数据库文件里,为了方便后期的升级、卸载等。

其卸载为:rpm -e  包名

其中选项:-e(erase)卸载  --nodeps不检查依赖性(一般也是禁止使用的)。其中rpm包卸载也是有顺序的,其是上面安装顺序的反顺序,否则会提示卸载失败。其例子:


   注意:这里卸载rpm包为啥需要通过指令来卸载,而不是直接删除相应文件夹来卸载?  因为rpm包安装时会产生一些默认的文件路径,如果凭自己亲自删除文件,可能无法删除干净,但是对于源码包的安装,则可以直接删除相应文件夹,因为,其路径是自己自定义的。

  5.RPM包的查询:

使用rpm安装包比较麻烦,一般使用yum来安装包,但是yum只能实现包的安装,但是其不能查询rpm包的一些信息,必须通过RPM指令来查询。

a.查询是否安装指令:rpm -q 包名    选项-q  查询(query)                                                rpm -qa  查询所有已安装的rpm包, 选项 -a 所有(all)

b.查询软件包详细信息: rpm -qi 包名  选项:-i 查询软件信息(information)   -q查询未安装包信息(pakege) 例子:


c.查询文件安装位置:rpm -ql 包名 选项:-l列表(list) 例子:


d.查询系统文件属于哪个rpm包,其指令是:rpm -qf 系统文件名 选项: -f 查询系统文件属于哪个软件包(file) 例子:


注意:这些指令都是针对rpm包的,因为rpm安装时在其数据库里有储存各种信息。

5.rpm包的校验,其指令是:rpm -V 已安装的包名  选项 -V 校验指定rpm包中的文件(verify),例子:


其中在c前面的是属于校验的具体内容,c为校验出现问题的文件类型,其两者的种类有:




6.rpm包中文件提取,

其指令是:rpm2cpio 包全名 | cpio -idv .文件绝对路径

-rpm2cpio 将rpm包转换成cpio格式的命令    -cpio是一个标准工具,他用于创建软件档案文件和从档案文件中提取文件。

定位某个文件的位置,其指令是:whereis ls   

使用剪切的指令是:mv  /bin/ls   /tmp/ 当这个/bin/ls不存在时则使用不了ls指令,其例子是:

其操作顺序是:


其实际操作是:


6.yum安装使用本地光盘来安装包。(这个是对于redhat、centos等linux系统的,而对于ubuntu、debian等系统使用不了会报错,其对应指令是apt-get install )


其大概的顺序是需要挂载光盘,然后把本地光盘当做源包库。其中的

mkdir /mnt/cdrom   建立挂载点

mount  /dev/cdrom /mnt/cdrom  挂载光盘

是网络yum源失效,其指令是

cd /etc/yum.repos.d/   进入yum源目录

mv CentOS-Base.repo CentOS-Base.repo.bak   修改yum源文件后缀名,使其失效,因为在这个目录下有四个文件,其中默认起作用的是

base.repo的文件,那个media.repo(光盘)文件是不起作用的,在使用media.repo时,我们需要修改使其生效,linux的注释,其中的#号需要在开头,如果不是开头第一位,则会无法识别的。

其原始文件为:


修改后的文件为:


其各个语句的作用如下:


然后通过指令yum list来确定yum是否生效,其如果输出的结果是如下:


通过这样子就完成了光盘搭建yum源。接下来就是yum命令安装。

其常用的yum命令是:

yum list 查询所有可用的软件包列表

yum search 关键字   搜索服务器上所有和关键字相关的包,其中的例子是:


其指令是:yum -y install 包名  选项install 安装    -y 自动回答yes   例如:yum -y istall gcc

其中gcc是一定要转的,因为后面的源码包安装需要使用到gcc编译器,否则是无法安装源码包的,这也说明gcc编译器的安装必须使用yum源来安装,系统越简单则包的依赖性越多。

7.通过yum指令来升级和卸载  其指令是:

yum -y update httpd    其是升级httpd软件,如果不加包名则是指升级所有的东西,包括linux内核,以前的centos 6.3版本以前的系统如果使用这条指令则其会导致系统直接奔溃,所以一般升级需要加包名

其卸载指令是yum -y remove 包名  选项: -Remove 卸载   -y 自动回答yes,  服务器一般要使用最小化安装,用什么软件则才安装什么软件,尽量不卸载。

8.源码包安装过程:

我们linux系统一般建议:源代码保存位置为:/usr/local/src/     软件安装位置:/usr/local/    

在使用tar命令解压完包后,使用cd进入解压文件里,然后执行命令:

./configure 软件配置与检查 ,其后面可以带一些功能选项参数,(这个指令会进行:检测系统环境是否符合安装要求;把定义好的功能选项和检测系统环境的信息都写入makefile文件,用于后续的编辑)---基本上源码包文件里都有一个执行文件configure文件,即使没有的话,都会有相似功能的命令来代替。

./configure  --prefix=/usr/local/apache2  (其是制定安装位置,源码包安装一般都要自己手动指定位置,这是为了便于管理)。

make

make install   (即可完成安装)

其中在源码包的目录下有个大写的INSTALL文件,其指的是安装说明和执行文件的启动指令。我们打开其,里面有:


接着我们在启动阿帕奇后就可以在网页上输入ip地址即可访问这个服务器。其例子为:


其中html储存的位置,在RPM包与源码包中是不一样的,

其中在我们编辑vimrc文件后是无法使用source指令来重新加载改配置的,其会报错,是因为source是对bash的相关配置

其作用的。

小指令:


强大的文本编辑器Vim
1.:set mouse=a  启用对鼠标的支持,双击任何位置就可以定位,好
2.:set LANG="zh_CN.UTF-8"  设置为中文环境
3.:vim ~/.vimrc  其是配置vim编辑器的一些功能,如行号,函数高亮,ctag函数定位
4.:直接在命令行下输入vim就加载新的vim配置文件了。syntax on就是开启代码高亮,在
vimrc中不写这句的话也会高亮,因为这是默认设置,当把on改为off时则是关闭高亮。
5.
apt-get install openssh-server  安装ssh服务
ps -e | grep ssh  确认sshserver是否启动了:
/etc/init.d/ssh start 启动ssh服务
6.源代码浏览,使用tags,其步骤为:


安装ctags指令为:
apt-get install ctags
然后用cd定位到源码目录,在终端上使用如下指令生成tags,
ctags -R
然后在vim打开的源代码界面,使用set指令告诉编译器tags在哪里,
:set tags=/home/yangdashi/examples/tags
然后就可以跳转了,其跳转方法为:Ctrl-】;Ctrl-T键,调回原来的位置。g-】
:如果有同名的多个tag,可以用这两个键进行跳转,会提示选择序号。
7.系统函数,使用的跳转指令是:
shift + K
8.其补全代码是:
此时有一些快捷键可以用:


Ctrl+P 向前切换成员
Ctrl+N 向后切换成员
Ctrl+E 表示退出下拉窗口, 并退回到原来录入的文字
Ctrl+Y 表示退出下拉窗口, 并接受当前选项


如果你增加了一些成员变量, 全能补全还不能马上将新成员补全, 需要你重新生成一下tags文件,
 但是你不用重启vim,只是重新生成一下tags文件就行了, 这时全能补全已经可以自动补全了, 还真够"全能"吧.






0
0
 
 

  相关文章推荐
  •  运维笔记10 (Linux软件的安装与管理(rpm,yum))
  •  第二十三章、软件安装: RPM, SRPM 与 YUM 功能
  •  linux常用命令3(进程管理和软件安装)
  •  linux学习(备份)
  •  Linux程序包管理之RPM
  •  linux study
  •  Linux常用命令详解(软件安装)
  •  Linux 常用命令 学习笔记
  •  Linux软件安装
  •  关于开源云计算平台软件的一些个人想法
猜你在找

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 大麦盒子总自动加软件怎么办 小米手机玩王者荣耀卡怎么办 荣耀8青春版信号差怎么办 华为mate8电池不耐用怎么办 华为4x内存小怎么办 发现手机被用过怎么办 华为p8手机声音小怎么办 手机指纹解锁密码忘了怎么办 华为p10黑色掉漆怎么办 金立手机导航信号弱怎么办 手机导航时gps信号弱怎么办 三星手机导航gps信号弱怎么办 小米5导航信号弱怎么办 华为手机导航gps信号弱怎么办 手机屏玻璃裂了怎么办 oppo音量键坏了怎么办 魅蓝手机屏幕碎了怎么办 手机钢化膜边缘有气泡怎么办 手机贴钢化膜边缘有气泡怎么办 苹果手机钢化膜边缘有气泡怎么办 手机膜里的水泡怎么办 膜贴好了有气泡怎么办 后档玻璃膜气泡怎么办 贴膜里面有灰尘怎么办 贴膜边缘不粘怎么办 贴膜时候的气泡怎么办 贴手机膜起泡了怎么办 手机膜起泡泡了怎么办 手机膜鼓起来了怎么办 贴膜中间有气泡怎么办 新车贴膜有气泡怎么办 贴手机膜进灰尘怎么办 贴手机膜有灰尘怎么办 华为mate10后机壳碎了怎么办 手机屏和壳分开了怎么办 oppoa33手机开不了机怎么办 7p背面刮花了怎么办 oppo手机左右两键失灵怎么办 苹果5s屏幕翘起怎么办 0pp0手机有点卡怎么办 手机用久有点卡怎么办