目录
软件包管理
yum
1.源码包
2.二进制包
yum源/yum仓库
切换yum源 (BASE EPEL 软件包官方源)
yum软件包管理
安装
install 1.yum仓库中指定的下载地址
包名
本地安装 localinstall .rpm软件包
url (下载 安装)
reinstall
groupinstall
groupreinstall
查询
yum list 部分软件包名称
yum repolist
yum search 描述
yum provides 文件/命令
yum groupinfo
yum info
yum grouplist
卸载
yum remove
扩展:
yum makecache (fast)
yum clean all
yum 可以自动解决软件包的依赖关系
cachedir=/var/cache/yum/$basearch/$releasever //缓存路径
keepcache=0 //是否开启缓存 0==关闭 1==开启 开启缓存后会把 安装的软件包缓存到本地
实验: 在安装软件的时候把软件包缓存到本地
1.修改yum的配置文件,开启缓存功能
2.直接去安装我们需要安装的软件,包会自动缓存到对应的目录下(包的仓库)
rpm 软件包管理的命令
安装(--force 强制安装)
-ivh
-Uvh
查询
-qa 可以查询已经安装的所有软件包,判断该软件是否被安装
查询软件的名称
[root@lcr ~]# rpm -qa (只查询已安装的软件包)
如果我要判断这个软件是否安装
[root@lcr ~]# rpm -qa | grep lftp
lftp-4.0.9-1.el6.x86_64
-a all
-qf ==yum provides 查询文件是由那个软件产生
查询某一个文件是哪个软件产生的
[root@lcr ~]# rpm -qf /etc/passwd
setup-2.8.14-20.el6.noarch
[root@lcr ~]# rpm -qf /bin/rpm
rpm-4.8.0-32.el6.x86_64
-f file
-qc 查询配置文件
-qi 查询软件的详细 == yum info +软件包
卸载 (--nodeps 强制卸载)
-e
软件卸载
[root@lcr ~]# rpm -e 软件名称
-e erase
last 查看登陆过的IP地址
cat /var/log/secure 该文件显示 的是登陆成功的记录,但是该文件经常自动做切割,所以只能看到某个时间段的。
rpm 安装httpd案例过程:
1.查看对应httpdb包名
[root@localhost ~]# yum provides httpd
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
httpd-2.4.6-95.el7.centos.x86_64 : Apache HTTP Server
2.进入rpmfind.net搜索httpd-2.4.6-95.el7.centos.x86_64,找到centos7对应版本,复制链接
3.使用wget 粘贴链接 下载安装包
4.使用rpm -ivh 安装httpd包
5.可能会出现
error: Failed dependencies:
/etc/mime.types is needed by httpd-2.4.6-93.el7.centos.x86_64
httpd-tools = 2.4.6-93.el7.centos is needed by httpd-2.4.6-93.el7.centos.x86_64
libapr-1.so.0()(64bit) is needed by httpd-2.4.6-93.el7.centos.x86_64
libaprutil-1.so.0()(64bit) is needed by httpd-2.4.6-93.el7.centos.x86_64
//这是要你要处理的依赖,须逐个解决;与1,2,3,4步步骤一致,先查对应包名->再搜索对应版本复制链接->下载安装包->安装依赖包
6.解决后即可安装Apache httpd服务
自制yum仓库
==========使用镜像做yum仓库==============
1.准备一个镜像(DVD)
2.挂载镜像(提前准备一个挂载点)
3.写yum仓库的配置文件
4.清空缓存,重新加载缓存
====================================
过程:
1.创建一个目录(用来存放rpm包)
mkdir /opt/myyum
2.将rpm包拷贝到这个目录里(采用上传ISO镜像的方式获取rpm包,使用挂载)
mount CentOS-7-x86_64-minimal-1708.iso /mnt
mount 镜像 挂载点 (/mnt)
cp /mnt/Packages
3.使用命令createrepo把目录创建成软件包目录
[root@lcr ~]# createrepo /opt/myyum/
4.自己创建yum仓库文件
/etc/yum.repos.d/ 存放yum仓库文件的目录
/etc/yum.conf yum的配置文件
cachedir=/var/cache/yum/$basearch/$releasever 缓存目录
keepcache=1 (0:关闭缓存 1:开启缓存)
logfile=/var/log/yum.log yum的日志文件
yum的仓库文件,repo结尾的文件
[myyum]
name=myyum //你想要的名字
baseurl=本地路径 file:///opt/myyum/
http
ftp://10.11.59.110:/nginx
gpgcheck=0 //开启签名机制 (0:关闭 1:开启) 为了保证软件包是一个安全软件包
enabled=0/1 1:开启这个仓库 0:关闭这个仓库(disabled)
利用ftp制作yum仓库服务器
1.准备两台服务器 关闭服务器 关闭selinux
systemctl stop firewalld 关闭防火墙
systemctl disable firewalld 关闭防火墙的开机启动
setenforce 0 临时关闭seliunx
2.服务器规划
ip1:客户端,使用ftp-server提供的rpm包
ip2:ftp服务器 提供rpm包——保证yum仓库可以(base epel)
部署服务器:
1.安装ftp服务器
[root@localhost ~]# yum -y install vsftpd
2.启动ftp服务
systemctl start vsftpd
3.在ftpd的共享目录下创建一个目录叫myyum
cd /var/ftp/
mkdir myyum
4.上传rpm包
5.把/var/ftp/myyum做成软件包目录
createrepo /var/ftp/myyum/
部署客户端:谁用ftp服务器里的rpm包谁就需要写repo文件
cat myyum.repo
[ftp-yum]
name=ftp-yum-mysql
baseurl=ftp://服务器IP/myyum
enabled=1
gpgcheck=0
yum clean all
rm -rf /var/cache/yum
yum makecache fast
yum repolist
当ftp不成功:
1.防火墙是否关闭,是否关闭seliunx
2.netstat -aunt 是否出现端口20 或21
3.服务器端配置文件是否写对
源码包管理
准备一台干净的服务器,保证yum仓库可用.保证能够ping通百度
systemctl stop firewalld 关闭防火墙
systemctl disable firewalld 关闭防火墙的开机启动
setenforce 0 临时关闭seliunx
一:下载nginx的安装包(www.nginx.org)
[root@lcr /]# wget http://nginx.org/download/nginx-1.18.0.tar.gz
[root@lcr /]# tar xf nginx-1.18.0.tar.gz
二:准备编译安装的环境
[root@lcr /]# yum -y install apr apr-util ncurses ncurses-devel openssl-devel bison gcc gcc-c++ make
三:配置
[root@lcr /]# cd nginx-1.18.0
[root@lcr /]# ./configure --prefix=/usr/local/nginx
--prefix=/usr/local/nginx 指定安装路径
四.五:编译+安装
&& 可以链接多个命令,前面的命令执行成功后在执行后面的命令
[root@lcr nginx-1.18.0]# make && make install
扩展:nginx配置参数
--prefix=path
定义将保留服务器文件的目录。该相同目录还将用于设置的所有相对路径 configure(库源路径除外)和nginx.conf配置文件中。/usr/local/nginx默认情况下设置为目录。
--sbin-path=path
设置nginx可执行文件的名称。此名称仅在安装期间使用。默认情况下,文件名为 prefix/sbin/nginx。
--modules-path=path
定义将在其中安装nginx动态模块的目录。默认情况下使用prefix/modules目录。
--conf-path=path
设置nginx.conf配置文件的名称。如果需要,可以通过在命令行参数中指定nginx来始终使用其他配置文件来启动它 。默认情况下,文件名为 。 -c fileprefix/conf/nginx.conf
--error-log-path=path
设置主要错误,警告和诊断文件的名称。安装后,可以始终nginx.conf使用error_log伪指令在配置文件中 更改文件名 。默认情况下,文件名为 prefix/logs/error.log。
--pid-path=path
设置nginx.pid将存储主进程的进程ID 的文件名。安装后,可以始终nginx.conf使用pid伪指令在配置文件中更改文件名 。默认情况下,文件名为 prefix/logs/nginx.pid。
--lock-path=path
为锁定文件的名称设置前缀。安装后,可以始终nginx.conf使用lock_file伪指令在配置文件中 更改该值 。默认情况下,值为 prefix/logs/nginx.lock。
--user=name
设置一个非特权用户的名称,其凭据将由工作进程使用。安装后,可以始终nginx.conf使用用户指令在配置文件中 更改名称 。默认用户名是nobody。--group=name设置工作进程将使用其凭据的组的名称。安装后,可以始终nginx.conf使用用户指令在配置文件中 更改名称。默认情况下,组名设置为非特权用户的名称。
--http-log-path=path
设置HTTP服务器的主请求日志文件的名称。安装后,可以始终nginx.conf使用access_log伪指令在配置文件中 更改文件名 。默认情况下,文件名为 prefix/logs/access.log。
如果IP a看不到IP地址怎么办
ifup ens33