rpm方式
优点:无需网络安装软件
缺点:无法解决软件依赖
命令如下:
1. rpm -ivh 安装 2. rpm -Uvh 升级安装,未装则安装 3. rpm -Fvh 更新安装,未装则不装 4. rpm -e 卸载(--nodeps忽略依赖,强制卸载) 5. rpm -q 查看软件是否安装 6. rpm -ql 查看软件所有的安装文件列表 7. rpm -qc 查看软件的配置文件 8. rpm -qd 查看软件的模板文件 9. rpm -qf 查看命令文件由哪个软件所装
yum方式
优点:自动解决软件依赖 缺点:无法定制化安装
1. 安装
1. yum install #全部安装 2. yum install package1 #装指定的安装包package1 3. yum groupinsall group1 #安装程序组group1
2. 更新和升级
1. yum update #全部更新 2. yum update package1 #更新指定程序包package1 3. yum check-update #检查可更新的程序 4. yum upgrade package1 #升级指定程序包package1 5. yum groupupdate group1 #升级程序组group1
3. 查找和显示
1. yum info package1 #显示安装包信息package1 2. yum list #显示所有已经安装和可以安装的程序包 3. yum list package1 #显示指定程序包安装情况package1 4. yum groupinfo group1 #显示程序组group1信息 5. yum search string #根据关键字string查找安装包
4. 删除程序
1. yum remove | erase package1 #删除程序包package1 2. yum groupremove group1 #删除程序组group1 3. yum deplist package1 #查看程序package1依赖情况
5. 清除缓存
1. yum clean packages #清除缓存目录下的软件包 2. yum clean headers #清除缓存目录下的 headers 3. yum clean oldheaders #清除缓存目录下旧的 headers 4. yum clean, yum clean all (yum clean packages; yum clean oldheaders) #清除缓存目录下的软件包及旧的headers
6. 仅下载,并以本地文件安装。下载到本地目录,并以localinstall安装
1. mkdir /http-rpm 2. yum -y install --downloadonly --downloaddir=/http-rpm httpd 3. cd /http-rpm 4. yum -y localinstall *.rpm
源码编译方式
优点:可以定制化软件安装 缺点:无法解决软件依赖
前提依赖:yum -y install apr* pcre*
复制httpd源码包到/usr/src目录
1. cd /usr/src 2. tar xf httpd-2.4.52.tar.gz 3. cd http-2.4.52 4. ./configure --prefix=/usr/local/httpd 5. make 6. make install
二进制安装
优点:简化安装过程 缺点:无法解决软件依赖
案例:安装二进制mysql 5.7.20
1.复制MySQL二进制包,解压改名到/usr/local/mysql
1. tar xf mysql-5.7.20-linux-glibc2.12-x86_64.tar.gz 2. mv mysql-5.7.20-linux-glibc2.12-x86_64 /usr/local/mysql
2.执行下列命令安装
1. echo "export PATH=/usr/local/mysql/bin:$PATH" >> /etc/profile 2. source /etc/profile 3. rm -rf /var/run/yum.pid 4. yum remove -y mariadb-libs 5. useradd mysql 6. mkdir -p /usr/local/mysql/data 7. chown -R mysql.mysql /usr/local/mysql/data 8. /usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data 9. cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld 10. 11. cat >> /etc/my.cnf << end 12. [mysqld] 13. user=mysql 14. basedir=/usr/local/mysql 15. datadir=/usr/local/mysql/data 16. socket=/tmp/mysql.sock 17. server_id=6 18. port=3306 19. [mysql] 20. socket=/tmp/mysql.sock 21. prompt=mysql> 22. end 23. 24. cat >> /etc/systemd/system/mysqld.service << end 25. [Unit] 26. Description=MySQL Server 27. Documentation=man:mysqld(8) 28. Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html 29. After=network.target 30. After=syslog.target 31. [Install] 32. WantedBy=multi-user.target 33. [Service] 34. User=mysql 35. Group=mysql 36. ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf 37. LimitNOFILE = 5000 38. end 39. 40. systemctl restart mysqld