Linux——软件包简单学习笔记
Linux中的是那种软件包: (这里学习是基于redHat的Cent-OS)
1: 二进制软件包管理(RPM、YUM)
2:源代码包安装
3: 脚本安装(Shell或Java脚本)
一: 二进制软件包:
RPM包管理:
RPM软件包的一个例子: sudo-1.7.2p1-5.el5.i386.rpm
其中包括软件名(sudo),版本号(1.7.2pl),发行号(5.el5),和硬件平台(i386)。
(1) 卸载 : # rpm -e sudo 注意:如果其它软件包有依赖关系,卸载时会产生提示信息,可使用--nodeps强行卸载。 (yum就会自动检测)
(2) 装载 : # rpm -ivh sudo-1.7.2p1-5.el5.i386.rpm 这里用rpm装载的话,是从光盘的文件夹里装载,所以我们必须首先加载光盘
挂载光盘: mkdir /mnt/cdrom mount /dev/cdrom /mnt/cdrom
其他安装选项: --excludedocs 不安装软件包中的文档文件
--prefix PATH 将软件包安装到由PATH指定的路径下
--test 只对安装进行测试,并不实际安装
--replacepkgs 覆盖已安装的程序
文件冲突:如果要安装的软件包中有一个文件已在安装其它软件包时安装,会出现以下错误信息:
# rpm -ivh sudo-1.7.2p1-5.el5.i386.rpm
conflicts with file from bark-3.2-1l
sudo-1.7.2p1-5.el5.i386.rpm cannot be installed
要想让RPM 忽略该错误信息, 请使用--replacefiles命令行选项。
未解决依赖关系:RPM软件包可能依赖于其它软件包,在安装了特定的软件包之后才能安装该软件包。
# rpm -ivh sudo-1.7.2p1-5.el5.i386.rpm
failed dependencies:
sudo is needed by bark-3.2-1l
你必须安装完所依赖的软件包,才能解决这个问题,强制安装使用--nodeps 选项。 yum会自动联网解决该问题
(3) 查询: rpm -q sudo rpm -qa | grep samba
选项:
-a 查询所有已安装的软件包.
-f 查询文件所属软件包
-p 查询软件包
-i 显示软件包信息
-l 显示软件包中的文件列表
-d 显示被标注为文档的文件列表
-c 显示被标注为配置文件的文件列表
RPM查询应用案例:
1、查询文件隶属的软件包:rpm -qf
2、查询软件包信息:rpm -qi、rpm -qip
3、查询软件包安装文件:rpm -ql、rpm -qlp
4、查询软件包帮助文档:rpm -qd
5、查询软件包配置文件:rpm -qc
(4) 升级: # rpm -Uvh sudo-1.8.0p1-5.el5.i386.rpm
(5) 校验 : # rpm -V 软件名称
5 文件的md5校验值
S 文件大小
L 链接文件
T 文件的创建时间
D 设备文件
U 文件的用户
G 文件的用户组
M 文件的权限
(6) : 解压指定文件到当前目录 # rpm2cpio initscripts-8.45.30-2.el5.centos.i386.rpm | cpio -idv ./etc/inittab
YUM包管理:
应用yum的好处: 自动解决软件包依赖关系, 方便的软件包升级.
主要命令:
安装 yum install
检测升级 yum check-update
升级 yum update
软件包查询 yum list
软件包信息 yum info
卸载 yum remove
帮助 yum -help、man yum
二: 源代码包:
1:首先解压:
tar -xzvf proftpd-1.3.3d.tar.gz(解压解包)
2: 进入文件然后执行configure脚本
# cd proftpd-1.3.3d
# ./configure --prefix=/usr/local/proftpd(配置)
3:编译: # make (编译)
4: 安装: # make install (安装)
三: 脚本安装:
应用举例(webmin、OpenOffice )
# tar -xzvf webmin-1.530.tar.gz
# cd webmin-1.530
# vi README (Readme 或者 Install )
# ./setup.sh
APT包管理 (ubuntu里面好像是用这个)
搜索软件包 apt-cache search
软件包信息 apt-cache show
安装 apt-get install(reinstall、-f)
删除 apt-get remove(autoremove、--purge)
更新软件源 apt-get update
更新已安装包apt-get upgrade
Linux——软件包简单学习笔记的更多相关文章
- Linux——GRUB简单学习笔记
GRUB的配置文件默认为 :/boot/grub/grub.conf # ls -l /etc/grub.conf GRUB配置选项: default定义缺省启动系统 timeout定义缺省等待时间 ...
- Linux——帮助命令简单学习笔记
Linux帮助命令简单学习笔记: 一: 命令名称:man 命令英文原意:manual 命令所在路径:/usr/bin/man 执行权限:所有用户 语法:man [命令或配置文件] 功能描述:获得帮助信 ...
- 兄弟连Linux运维学习笔记
最新经典linux运维兄弟连Linux运维学习笔记... --------------- 全程1.5倍播放.加油我一定可以学完Linux----------------------Unix与Linux ...
- Linux防火墙iptables学习笔记(三)iptables命令详解和举例[转载]
Linux防火墙iptables学习笔记(三)iptables命令详解和举例 2008-10-16 23:45:46 转载 网上看到这个配置讲解得还比较易懂,就转过来了,大家一起看下,希望对您工作能 ...
- Linux进程线程学习笔记:运行新程序
Linux进程线程学习笔记:运行新程序 周银辉 在上一篇中我们说到,当启动一个新进程以后,新进程会复制父进程的大部份上下 ...
- Linux下iptables学习笔记
Linux下iptables学习笔记 在Centos7版本之后,防火墙应用已经由从前的iptables转变为firewall这款应用了.但是,当今绝大多数的Linux版本(特别是企业中)还是使用的6. ...
- Log4j简单学习笔记
log4j结构图: 结构图展现出了log4j的主结构.logger:表示记录器,即数据来源:appender:输出源,即输出方式(如:控制台.文件...)layout:输出布局 Logger机滤器:常 ...
- Linux进程间通信IPC学习笔记之同步二(SVR4 信号量)
Linux进程间通信IPC学习笔记之同步二(SVR4 信号量)
- Linux进程间通信IPC学习笔记之同步二(Posix 信号量)
Linux进程间通信IPC学习笔记之同步二(Posix 信号量)
随机推荐
- Oil Deposits(poj 1526 DFS入门题)
http://poj.org/problem?id=1562 ...
- visualSVN server安装使用
SVN服务推荐使用visualSVN server,安装完成之后自动设置开机启动服务,具体使用如下图:
- xgb, lgb, Keras, LR(二分类、多分类代码)
preprocess # 通用的预处理框架 import pandas as pd import numpy as np import scipy as sp # 文件读取 def read_csv_ ...
- python-计算器实现
# 开发一个简单的python计算器# 实现加减乘除及括号优先级解析# 用户输入 1 - 2 * ( (60-30 +(-40/5) * (9-2*5/3 + 7 /3*99/4*2998 +10 * ...
- http协议基础(十)实体首部字段
1.定义 包含在请求和响应中的实体部分所使用的首部,用于补充内容的更新时间等与实体相关的信息 2.Allow 通知客户端能够支持的Request-URI指定资源的所有http方法:如果服务器接收到不支 ...
- 读书--编写高质量代码 改善C#程序的157个建议
最近读了陆敏技写的一本书<<编写高质量代码 改善C#程序的157个建议>>书写的很好.我还看了他的博客http://www.cnblogs.com/luminji . 前面部 ...
- win7 xampp 验证码,session出不来的问题
win7 xampp 验证码,session出不来的问题 需要在前面加上全路径,如:"\xampp\tmp" 变成"D:\xampp\tmp" Warning: ...
- c++ sleep(windows/linux)
c标准中包含了一个sleep用以实现当前线程暂停执行n毫秒,如下所示: 函数名: sleep 功 能: 执行挂起一段时间 用 法: unsigned sleep(unsigned seconds); ...
- 20145310 《网络对抗》 MSF基础应用
实验要求 掌握metasploit的基本应用方式,掌握常用的三种攻击方式的思路. 一个主动攻击,如ms08_067; 一个针对浏览器的攻击,如ms11_050: 一个针对客户端的攻击,如Adobe 成 ...
- Python3基础 if else 格式 输入一个整数并判断是8吗
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...