第09天 [yum仓库和编译安装]

misc 文件打不开解决办法
	yum install autofs -y 
 	systemctl start autofs
	systemctl enable autofs

1、安装时提示:warning: *.rpm: Header V3 RSA/SHA256 Signature, keykey ID c105b9de: NOKEY
解决的方法就是在rpm 语句后面加上 --force --nodeps
2.要是无法解决,可以先mount /dev/sr0 /mnt            yum源配置在mnt下面
	
模拟删除启动救援模式
	ldd /bin/cp ldd 是查找依赖库
	首先在家目录下面 mv /lib64/libc.so.6 .  移动到当前文件夹下面
	此时执行mv命令后就不会成功,这时候启动救援模式。
	启动界面时候按ESC键->CD-ROM Drive ->troubleshooting->bescue a Centos system->此时选择
	1continue   执行命令 mv  /mnt/sysimage/root/libc.so.6  /mnt/sysimage/lib64  修复完之后exit退出
	如果rpm包不小心删除了,那么我在救援模式下执行 rpm -ivh /run/install/repo/Packages/rpm-3......rpm  --root=/mnt/sysimage就可以成功安装
	切记一定要指定root 。
	
	如果执行ls 所看到的所有文件全部是挂载光盘的文件。

rpm包管理
	所在数据库/var/lib/rpm
	管理程序包的方式:
	使用包管理器:rpm
	使用前端工具:yum, dnf
	获取程序包的途径:
	(1) 系统发版的光盘或官方的服务器
	CentOS镜像:
	https://www.centos.org/download/
	http://mirrors.aliyun.com
	http://mirrors.sohu.com
	http://mirrors.163.com
	(2) 项目官方站点
	
	-i:install ,安装
	-v:verbose,显示详情
	-h:显示进度条
	-e:erase,删除(卸载)
	-U upgrade,升级
	upgrade:安装有旧版程序包,则“升级”
	如果不存在旧版程序包,则“安装” Uvh
	freshen:安装有旧版程序包,则“升级”
	如果不存在旧版程序包,则不执行升级操作 Fvh
	--force强制安装(不能用于强制卸载)
	--test: 测试安装,不真正执行安装。
	--nodeps:忽略依赖性(一般不忽略)
	--oldpackage 降级安装(一般不降级)
	--replacepkgs 覆盖安装 
	--rpm2cpio 包文件|cpio –itv 预览包内文件

	内核安装默认是不覆盖安装的,装了多个kernel,可以修改grub.conf修改默认启动内核顺序。
	可以rpm -e卸载旧的kernel
	查询
	rpm -q PackageName查询某个包
	rpm -qa 查询已安装的所有包
	rpm -qa |grep xxx 模糊过滤
	rpm -qf FILE 硬盘上的文件(file)是来自于哪个rpm包(可以是二进制程序,也可以是配置文件等)
	rpm -qi xxx.rpm 查询安装包详细信息(information)
	rpm -ql xxx.rpm 查看某个包安装后在系统里的所有文件
	rpm -qc xxx 查询安装包后的配置(config)文件位置
	rpm -q --scripts查询程序自带的脚本

	rpm校验

	rpm --import xxx/yyy/RPM-GPG-KEY-CentOS-7:导入包完整性校验文件
	rpm -K xxxxx.rpm校验某个包

	查找安装gpg-pubkey
	rpm -qa "gpg-*"

yum 仓库
	/etc/yum.conf:为所有仓库提供公共配置
	/etc/yum.repos.d/*.repo:为仓库的指向提供配置
	yum repolist 可以列出所有仓库的文档
        yum install epel-release 安装红帽源

	/etc/yum.conf            yum 的公共配置文件
	/etc/yum.repos.d/*.repo 具体的每个仓库的配置,分开文件是为了方便管理和配置。
	/var/log/yum.log  日志文件
	常用指令
	yum repolist 列出所有仓库
	yum list 查看所有的包
	yum clean all    清除所有缓存(如果还清不了,可以手动删除rm -rf /var/cache/yum)
	yum makecache    创建yum缓存
	yum -y install xxx yyy zzz
	yum remove  删除
	yum search httpd 搜索httpd相关安装包
	yum history  
	yum history info 11 查看具体安装历史
	yum history undo 11 撤销
	yum history redo 11 重做
yum -y remove httpd 卸载一个软件时
rpm -ivh ntp-0.7.rpm  安装
rpm -e ntp-0.7.rpm 卸载
rpm -U ntp-0.7.rpm 更新
rpm -Uvh *.rpm  下载到镜像仓库
repoquery -ql   包名  查看yum依赖包  
	切记yum出问题一般是两个问题
	1.格式写错
	2.缓存问题 yum clean all 

	在/etc/yum.repos.d/下面vim base.repo   (ls /misc/cd  要有 repodata)
	vim base.repo
	基本 格式
	[base]
	name=base
	baseurl=file:///misc/cd 
	gpgcheck=0    --0是不检查
	enable=1   --1是启用0是禁用

----------------------------以下为linux中的代码---------------------------------------------------------------------------
[root@Centos7 yum.repos.d]#cat base.repo 
[base]
name=cdrom base
baseurl=file:///misc/cd
gpgcheck=0
[root@Centos7 yum.repos.d]#cat epel.repo 
[epel]
name=aliyunepel
baseurl=https://mirrors.aliyun.com/epel/$releasever/$basearch/
#baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
gpgkey=https://mirrors.aliyun.com/centos/7.6.1810/os/x86_64/RPM-GPG-KEY-CentOS-7
gpgcheck=0
enable=1

--------------------------------------------------------------------------------------------------
首先把目录挂载上 mount /dev/sr0 /mnt
[root@Centos7 yum.repos.d]#cat base.repo  # 上面的如果不行试试这个。
[local]
name=local
baseurl=file:///mnt
gpgcheck=0
enabled=1
-------------------------------------------------------------------------------------------------------
http安装
	yum install httpd
	systemctl start httpd
	之后在网页中输入ip既可以访问
	目录文件在 /var/www/html
	在html 下面新建文件夹 mkdir centos/{6,7}/os/x86x64/ -pv
	然后进入网页写下http://192.168.41.105/centos/  
	就会自动跳转到目录下,如果仅仅是写ip的话那么网址还是没有变化。
	之后挂载到dev下面为以后创建本地yum源作条件
	mount /dev/sr0 7/os/x86x64/     --我是在/var/www/html/centos/   下面所以直接挂载
------------------------------本地yum-----------------------------------------------------------
[root@Centos7 yum.repos.d]#cat test.repo 
[test]
base=localhttp
baseurl=http://192.168.41.105/centos/7/os/x86x64/
gpgcheck=1
gpgkey=http://192.168.41.105/centos/7/os/x86x64/RPM-GPG-KEY-CentOS-7
-----------------------------------------------------------------------------------------
编译安装
	Application-VERSION-release.src.rpm --> 安装后,使用rpmbuild命令制作
	成二进制格式的rpm包,而后再安装
	源代码-->预处理-->编译-->汇编-->链接-->执行
	C语言源代码编译安装三步骤:
	 1、./configure
	(1) 通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的
	指定以及Makefile.in文件生成Makefile
	(2) 检查依赖到的外部环境,如依赖的软件包
	 2、make 根据Makefile文件,构建应用程序
	 3、make install 复制文件到相应路径
	也可以写成这样更酷的单行方式 ./configure && make && make install
	开发工具:
	autoconf: 生成configure脚本
	automake:生成Makefile.in
	注意:安装前查看INSTALL,README
	yum search apr  可以查看所有的依赖包


        rm -f /var/run/yum.pid   可以解决进程出错实际没有进程


yum查看相关安装包
相关网址https://blog.csdn.net/weixin_38601833/article/details/98628078
yum -y install yum-utils
repoquery -ql 

你可能感兴趣的:(Linux知识汇总,Linux)