linux中的软件管理
1 ###############linux中的软件管理#######
在此之前,环境中需要有名为“rhel-server-7.2-x86_64-dvd.iso 的镜像文件(我的linux系统是7.2版本的)
##1.使用已有网络安装资源安装软件###
cd /etc/yum.repos.d/ ##要切换到此目录
vim yum.repo
vim /etc/yum.repos.d/yum.repo 文件名必须以 repo 结尾
编写内容:
[rhel7.2] ##仓库名称
name=rhel7.2 source ##对软件源的描述
baseurl=http://172.25.254.250/rhel7.2 ##网络安装源
gpgcheck=0 不检测gpgkey
enabled=1 ##此安装源语句块生效
yum clean all ##清空系统中原有的yum信息
建立dhcp服务
yum install dhcp
如图:
##2.配置本地yum源
###(真实主机)
1.获得一个与本机系统版本一致的系统镜像
2.挂载镜像
mkdir / rhel7.2 建立目录
cd /iso
chmod 755 /iso/ rhel-server-7.2-x86_64-dvd.iso (给镜像文件可读可执行可修改的权力)
mount /iso/rhel-server-7.2-x86_64-dvd.iso /rhel7.2 (我的镜像文件在iso目录里)
3.设定永久挂载
vim /etc/rc.d/rc.local
在文件最后一行添加:mount /iso/rhel-server-7.2-x86_64-dvd.iso /rhel7.2
如下图:
chmod 755 /etc/rc.d/rc.local (给予该文件权限)
###3.共享型yum源的部署
1.在一台已经链机好本地yum源的主机中安装httpd
yum install httpd
2.配置网络yum源
systemctl start httpd.service (开启httpd服务)
systemctl stop firewalled.service (关闭防火墙)
systemctl enable httpd.service (开机时自动开启httpd服务)
systemctl disable firewalld.service (开机时自动关闭防火墙服务)
mount /iso/rhel-server-7.2-x86_64-dvd.iso /var/www/html/rhel7.2 (挂载到网络ip为172.25.254.31上)
vim /etc/rc.d/rc.local
{{{{
touch /var/lock/subsys/local
mount /iso/rhel-server-7.2-x86_64-dvd.iso /var/www/html/rhel7.2(后两行变更)
}}}}
测试:
在浏览器中输入地址:
http://ip/rhel7.2
http://172.25.254.31/rhel7.2 <<此地址就是网络yum源>>
如果实验成功会出现下图:
##4.yum命令####
1.yum命令的使用必须是在yum源搭建成功后才能正常运行
2.yum命令的详细用法
yum clean all ##清除原有yum缓存
yum repolist ##列出仓库信息
yum install software ##安装
yum update ##把当前所有软件更新到指定镜像版本
yum update httpd ##更新httpd
yum list all ##列出所有软件
yum list installed ##列出已安装的
yum list available ##列出可安装软件
yum reinstall software ##重新安装软件(可以解决文件被删情况)
yum remove software ##卸载软件
yum info software ##查看软件信息
yum search software ##根据软件信息查找软件
yum whatprovides file ##根据文件找出包含此文件的软件
yum groups list ##列出软件组
yum group info ##查看软件组信息
yum groups install sfgroup ##安装软件组
yum remove remove sfgroup ##卸载软件组
列出所有软件:
如何屏蔽某些软件
编辑vim /etc/yum.conf
添加配置文件exclude=*.i686(这里以屏蔽掉32位软件安装源为例)
###5.用rpm命令处理软件###
rpm
-i ##安装
-v ##显示过程
-h ##hash加密 后加software 软件名称
-e ##卸载
-q ##查看
-a ##所有
-p ##软件包
--scritps ##查看脚本
--nodeps ##安装软件忽略软件依赖
-Kv ##检测软件是否被篡改
--force ##强行安装软件
-ql +softwarename ##查看软件在系统中安装的文件
-qpl ##查看未安装的软件在系统中如果安装后产生文件的路径
-qf ##根据某个文件找出此文件属于那个安装包
-qc ##查看软件的配置文件名称
-qd ##查看软件的帮助文件
######6.第三方软件仓库的搭建###
1.把所有的.rmp包存放到一个目录中
2.createrepo -v /存放软件包的目录 ##扫描本地
3.vim /etc/yum.repos.d/yum.repo
[software]
name=software
baseurl=file:///software
gpgcheck=0
yum clean all
######kickstart ##3自动安装脚本的制作###
yum install system-config-kickstart.httpd -y
yum install system-config-kiskstart
后进行如下图操作:
图中超级用户密码自己设定 两行要一样
图解:HTTP Server 处是安装源地址 此处应该是http://172.25.254.31 (忘记修改了)
选择完成后点击“add” 添加
/swap 选择500, /boot选择200, /选择剩余全部
选择完成后,点左上角的file,保存到“var/www/html“中 结束操作。
执行命令:cd /mnt
vim create_vm.sh 编辑为如下所示:
#!/bin/bash
#virt-install \
#--ram 1024 \
#--cpus 1 \
#--disk /var/lib/libvirt/images/$1.qcow2,bus=virtio,size=9 \
#--name $1 \
#--network bridge=br0,model=virtio &> /dev/null
#--location http://172.25.254.31/rhel7.2 \
#--extra-args ks=http://172.25.254.146/ks.cfg
保存后 进行
cd /var/www/html
vim ks.cfg 修改为下图:
ksvalidator ks.cfg 检查文件的语法错误
没有报错则正常
systemctl start http 开启http服务
systemctl stop filewalld 关闭防火墙
systemctl disable filewalld 开机不启动防火墙
再次切换到mnt目录里,执行sh create_vm.sh hello 命令(虚拟机名字为hello)
虚拟机就会自动开启