yum
能够自动解决软件包和依赖之间的关系
软件仓库的提供方式
- FTP服务:ftp://…
- HTTP服务:http://……
- 本地目录:file://……
RPM软件包的来源
- Centos发布的RPM包集合
- 第三方组织发布的RPM包集合
- 用户自定义的RPM包集合
Linux系统各家厂商用的安装源
- centos7和rhel7默认使用的时yum仓库源 ,软件包的结尾是".rpm’
- centos8和rhel 8可以使用dhf (是yum的衍生产品)
- Ubuntu debian使用的是apt 软件包是以“.deb”结尾
命令
—yum
常用选项
yum install 安装具体软件包
yum update 具体软件升级
yum upgrade 具体软件更新
yum remove 删除指定软件包及依赖文件
yum groupinfo显示所有的包组具体信息 显示具体的包组的具体信息
不常用选项
yum list 显示所有可用包 单个的可安装包
yum info 显示所有可用包的信息 单个具体的信息
yum search 模糊查找所有的相关信息
yum provides 精确查找
yum grouplist 显示所有可用包组 显示具体的包组
yum groupinstall 安装具体软件包组
yum group update 具体包组升级
yum groupremove 卸载具体包组软件
yum groupinstall 安装具体软件包组
yum whatprovides 精确查找
yum history 查看当前yum操作历史
yum history info 加序号列出某次事务的详细信息
yum history undo 加序号卸载序号里安装的软件(比yum remove 软件名,清除的更加彻底)
yum history redo 加序号重新执行序号里的操作
配置本地yum源
具体操作
临时挂载
mount /dev/cdrom /mnt/ #把光盘挂载到/mnt目录下
cd /etc/yum.repos.d/ #因为yum工具,程序下载/安装/
暂时用不到的centos源做备份
mkdir bak
mv Cent* bak
将需要的源放进/etc/yum.repos.d
配置仓库
vim local.repo #1.告诉仓库位置在哪 2.指向仓
库
[local] #文件名
name=local #描述
baseurl=file:///mnt #指定光盘挂载目录作为软件仓库源
enabled=1 #开启此yum源,此为默认项,可省略
gpgcheck=0 #不去检查软件序列号
(priority=1 #优先级,数字越小,优先级越高)
删除yum缓存并更新
yum clean all && yum makecache fast
永久挂载
vim /etc/fstab
/dev/cdrom /mnt iso9660 defaults 0 0
搭建ftp yum仓库
环境
两台centos 7
一台用作服务端,提供下载库
一台作为客户端,建立yum仓库获取下载库的资源
具体操作
服务端
安装 vsftpd服务
yum install -y vsftpd
服务端在/var/ftp/ 下创建一个文件,并且挂载
该步骤涉及到ftp原理,用户远程访问时的,根目录就在/var/ftp上,所以在此创建挂载目录
cd /var/ftp
mkdir centos7
mount /dev/sr0 /var/ftp/centos7/
systemctl start vsftpd #开启服务
查看挂载
df -hT
客户端
搭建ftp yum仓库
cd /etc/yum.repos.d
mkdir repo.bak
mv *.repo ./repo.bak/
vim local.repo
[local]
name=local
baseurl=ftp://服务端IP/centos7 #两个斜杠,本地三个斜杠其中一个是根目录
gpgcheck=0
enabled=1
关闭防火墙、核心防护
systemctl stop firewalld
setenforce 0
实操
环境
两台centos 7
服务端 IP : 20.0.0.51
客户端 IP : 20.0.0.52
服务端
一、安装 vsftpd服务
yum install -y vsftpd
二、创建一个文件,并且挂载
cd /var/ftp
mkdir centos7
mount /dev/sr0 /var/ftp/centos7/
三、开启服务
systemctl start vsftpd
四、查看挂载
df -hT
客户端
五、备份
cd /etc/yum.repos.d
mkdir repo.bak
mv *.repo ./repo.bak/
六、搭建ftp yum仓库
vim local.repo
[local]
name=local
baseurl=ftp://20.0.0.51/centos7
gpgcheck=0
enabled=1
七、关闭防火墙、核心防护
systemctl stop firewalld
setenforce 0
八、完成
NFS—共享文件
环境
两台centos 7
一台用作服务端
一台作为客户端
在文件服务器使用 NFS 发布共享资源
服务端
安装 nfs-utils、rpcbind 软件包
rpm -q rpcbind nfs-utils
yum -y install nfs-utils rpcbind
设置共享目录
mkdir -p /opt/wwwroot
chmod 777 /opt/wwwroot
vim /etc/exports
/opt/wwwroot 192.168.233.0/24(rw,sync,no_root_squash)
#可以被哪个网段的主机使用
#rw:允许读写(ro表示只读)
#sync:同步写入内存与硬盘中
#no_root_squash:客户机以root用户访问共享目录时,赋予本地root权限
(root_squash:客户机以root用户访问共享目录时,将root用户映射成匿名用户)
其它常用选项
all_squash :所有访问用户都映射为匿名用户或用户组。
async:将数据先保存在内存缓冲区中,必要时才写入磁盘
subtree_check(默认):若输出目录是一个子目录,则nfs服务器将检査其父目录的权限
no subtree check:即使输出目录是一个子目录,nfs服务器也不检査其父目录的权限,这样可以提高效率
启动 NFS 服务程序
systemctl start rpcbind
systemctl start nfs
systemctl enable rpcbind
systemctl enable nfs
查看rpcbind端口是否开启,rpcbind服务默认使用tcp端口111
netstat -natp | grep rpcbind
查看本机发布的 NFS 共享目录
showmount -e
在客户端中访问 NFS 共享资源
安装 nfs-utils、rpcbind 软件包
rpm -q rpcbind nfs-utils
yum -y install nfs-utils rpcbind
查看服务端共享目录
showmount -e 服务端IP
手动挂载NFC共享目录
mkdir /myshare
mount 服务端IP:/opt/wwwroot /myshare
确认挂载结果
df -hT
设置永久挂载
vim /etc/fstab
服务端IP:/opt/wwwroot /myshare nfs defaults,_netdev 0 0
_netdev:表示挂载设备需要网络
强制卸载NFS
如果服务器端NFS服务突然间停掉了,而客户端正在挂载使用时,在客户端就会出现执行 df -h 命令卡死的现象。这个时候直接使用umount 命令是无法直接卸载的,需要加上 -lf 选项才能卸载。
umount -lf /myshare
注:
客户端存进去的文件也存储在服务端上
实操
环境
两台centos 7
服务端 IP : 20.0.0.51
客户端 IP : 20.0.0.52
服务端
一、安装 nfs-utils、rpcbind 软件包
yum install -y nfs-utils rpcbind
二、设置共享目录
mkdir -p /opt/wwwroot
chmod 777 /opt/wwwroot
三、设置共享设备
vim /etc/exports
/opt/wwwroot 20.0.0.0/24(rw,sync,no_root_squash)
四、启动 NFS 服务程序
systemctl start rpcbind
systemctl start nfs
systemctl enable rpcbind
systemctl enable nfs
五、查看rpcbind端口是否开启,rpcbind服务默认使用tcp端口111
netstat -natp | grep rpcbind
六、查看的 NFS 共享目录
showmount -e
客户端
七、安装 nfs-utils、rpcbind 软件包
yum -y install nfs-utils rpcbind
八、查看服务端共享目录
showmount -e 20.0.0.51
九、手动挂载NFC共享目录
mkdir /myshare
mount 20.0.0.51:/opt/wwwroot /myshare
十、确认挂载结果
df -hT
十一、设置永久挂载
vim /etc/fstab
20.0.0.51:/opt/wwwroot /myshare nfs defaults,_netdev 0 0