安装软件包命令:
一、rpm -i 命令
[root@localhost Packages]# rpm -i vsftpd-3.0.2-22.el7.x86_64.rpm
警告:vsftpd-3.0.2-22.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
查看软件包的详细信息:
[root@localhost Packages]# rpm -qi vsftpd
Name : vsftpd
Version : 3.0.2
Release : 22.el7
Architecture: x86_64
Install Date: 2017年11月02日 星期四 06时08分55秒
Group : System Environment/Daemons
Size : 356236
License : GPLv2 with exceptions
Signature : RSA/SHA256, 2017年08月11日 星期五 04时17分26秒, Key ID 24c6a8a7f4a80eb5
Source RPM : vsftpd-3.0.2-22.el7.src.rpm
Build Date : 2017年08月03日 星期四 14时10分20秒
Build Host : c1bm.rdu2.centos.org
Relocations : (not relocatable)
Packager : CentOS BuildSystem <http://bugs.centos.org>
Vendor : CentOS
URL : https://security.appspot.com/vsftpd.html
Summary : Very Secure Ftp Daemon
Description :
vsftpd is a Very Secure FTP daemon. It was written completely from
scratch.
[root@localhost Packages]#
软件包安装在哪里
[root@localhost Packages]# rpm -ql vsftpd
系统中安装了多少个rpm包,可以验证到底是否成功安装
[root@localhost Packages]# rpm -qa
[root@localhost Packages]# rpm -qa | grep vsf
vsftpd-3.0.2-22.el7.x86_64
[root@localhost Packages]#
知道了某个文件,要查哪个软件包产生:
[root@localhost Packages]# rpm -qf slapi-nis-0.56.0-4.el7.x86_64.rpm
文件 /run/media/root/CentOS 7 x86_64/Packages/slapi-nis-0.56.0-4.el7.x86_64.rpm 不属于任何软件包
[root@localhost Packages]#
删除软件
[root@localhost Packages]# rpm -e vsftpd
查看是否删除成功
[root@localhost Packages]# rpm -q vsftpd
未安装软件包 vsftpd
[root@localhost Packages]#
rpm –i的问题:httpd-2.4.6-67.el7.centos.x86_64.rpm依赖别的软件包,需要先按照别的软件包
[root@localhost Packages]# rpm -i httpd-2.4.6-67.el7.centos.x86_64.rpm
警告:httpd-2.4.6-67.el7.centos.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
错误:依赖检测失败:
/etc/mime.types 被 httpd-2.4.6-67.el7.centos.x86_64 需要
httpd-tools = 2.4.6-67.el7.centos 被 httpd-2.4.6-67.el7.centos.x86_64 需要
libapr-1.so.0()(64bit) 被 httpd-2.4.6-67.el7.centos.x86_64 需要
libaprutil-1.so.0()(64bit) 被 httpd-2.4.6-67.el7.centos.x86_64 需要
[root@localhost Packages]#
二、yum命令
解决这个问题的方法:
yum 需要有目录,帮你解决依赖性,不过依赖性需要提前在目录上写好
依赖性文件repodata
由于目录如果有空格就会影响结果,
[root@localhost CentOS 7 x86_64]# pwd
/run/media/root/CentOS 7 x86_64
[root@localhost CentOS 7 x86_64]# df
文件系统 1K-块 已用 可用 已用% 挂载点
/dev/sda3 18351104 6310516 12040588 35% /
devtmpfs 485108 0 485108 0% /dev
tmpfs 499848 0 499848 0% /dev/shm
tmpfs 499848 7308 492540 2% /run
tmpfs 499848 0 499848 0% /sys/fs/cgroup
/dev/sda1 508580 154480 354100 31% /boot
tmpfs 99972 8 99964 1% /run/user/42
tmpfs 99972 20 99952 1% /run/user/0
/dev/sr0 4414592 4414592 0 100% /run/media/root/CentOS 7 x86_64
所以挂载到没有空格的目录中
[root@localhost CentOS 7 x86_64]# mount /dev/sr0 /opt
进入下面这个目录,这个目录存放yum的配置文件
[root@localhost CentOS 7 x86_64]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
我们看到很多网络配置的文件
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo
我们为了学习写配置文件,现在把他们都移到一个文件夹中,让这个文件夹为空
[root@localhost yum.repos.d]# mkdir /tmp/bak
[root@localhost yum.repos.d]# mv * /tmp/bak
[root@localhost yum.repos.d]# ls
要以repo结尾
vim local.repo
[local] -- 随便写
name=local repo -- 随便写
baseurl=file:///opt
enable=1 -- 开启
gpgchek=0 -- 不检测
上面配完本地yum
清除yum的本地缓存
yum clean all
安装httpd
yum install httpd
如果不是按yes的话,就yum install httpd -y
卸载
yum -y erase httpd或者rpm -e httpd
[root@localhost yum.repos.d]# mv /tmp/bak/*
mv: 目标"/tmp/bak/CentOS-Vault.repo" 不是目录
[root@localhost yum.repos.d]# ls
local.repo
记住要加点
[root@localhost yum.repos.d]# mv /tmp/bak/* .
[root@localhost yum.repos.d]# ls
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo local.repo
yum能解决依赖性,是因为yum仓库cd /opt 中有repodata
[root@bogon yum.repos.d]# yum -y install httpd
已加载插件:fastestmirror, langpacks
local | 3.6 kB 00:00:00
(1/2): local/primary_db | 5.7 MB 00:00:00
(2/2): local/group_gz | 156 kB 00:00:00
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 httpd.x86_64.0.2.4.6-67.el7.centos 将被 安装
--> 正在处理依赖关系 httpd-tools = 2.4.6-67.el7.centos,它被软件包 httpd-2.4.6-67.el7.centos.x86_64 需要
--> 正在处理依赖关系 /etc/mime.types,它被软件包 httpd-2.4.6-67.el7.centos.x86_64 需要
--> 正在处理依赖关系 libaprutil-1.so.0()(64bit),它被软件包 httpd-2.4.6-67.el7.centos.x86_64 需要
--> 正在处理依赖关系 libapr-1.so.0()(64bit),它被软件包 httpd-2.4.6-67.el7.centos.x86_64 需要
--> 正在检查事务
---> 软件包 apr.x86_64.0.1.4.8-3.el7 将被 安装
---> 软件包 apr-util.x86_64.0.1.5.2-6.el7 将被 安装
---> 软件包 httpd-tools.x86_64.0.2.4.6-67.el7.centos 将被 安装
---> 软件包 mailcap.noarch.0.2.1.41-2.el7 将被 安装
--> 解决依赖关系完成
依赖关系解决
=======================================================================================
Package 架构 版本 源 大小
=======================================================================================
正在安装:
httpd x86_64 2.4.6-67.el7.centos local 2.7 M
为依赖而安装:
apr x86_64 1.4.8-3.el7 local 103 k
apr-util x86_64 1.5.2-6.el7 local 92 k
httpd-tools x86_64 2.4.6-67.el7.centos local 87 k
mailcap noarch 2.1.41-2.el7 local 31 k
事务概要
=======================================================================================
安装 1 软件包 (+4 依赖软件包)
总下载量:3.0 M
安装大小:10 M
Downloading packages:
---------------------------------------------------------------------------------------
总计 6.3 MB/s | 3.0 MB 00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : apr-1.4.8-3.el7.x86_64 1/5
正在安装 : apr-util-1.5.2-6.el7.x86_64 2/5
正在安装 : httpd-tools-2.4.6-67.el7.centos.x86_64 3/5
正在安装 : mailcap-2.1.41-2.el7.noarch 4/5
正在安装 : httpd-2.4.6-67.el7.centos.x86_64 5/5
验证中 : httpd-2.4.6-67.el7.centos.x86_64 1/5
验证中 : mailcap-2.1.41-2.el7.noarch 2/5
验证中 : apr-1.4.8-3.el7.x86_64 3/5
验证中 : httpd-tools-2.4.6-67.el7.centos.x86_64 4/5
验证中 : apr-util-1.5.2-6.el7.x86_64 5/5
已安装:
httpd.x86_64 0:2.4.6-67.el7.centos
作为依赖被安装:
apr.x86_64 0:1.4.8-3.el7 apr-util.x86_64 0:1.5.2-6.el7
httpd-tools.x86_64 0:2.4.6-67.el7.centos mailcap.noarch 0:2.1.41-2.el7
完毕!
[root@bogon yum.repos.d]#
现在把之前剪切到/tmp/bak/,移到mv /tmp/bak/* .
[root@bogon opt]# cd /etc/yum.repos.d/
[root@bogon yum.repos.d]# ls
local.repo
[root@bogon yum.repos.d]# mv /root/aa/* .
[root@bogon yum.repos.d]# ls
CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo
CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo local.repo
[root@bogon yum.repos.d]#
查看是否安装成功
[root@bogon yum.repos.d]# rpm -qa |grep httpd
httpd-tools-2.4.6-67.el7.centos.x86_64
httpd-2.4.6-67.el7.centos.x86_64
[root@bogon yum.repos.d]#
卸载软件
[root@bogon /]# yum -y erase httpd
从下面看到,包已经卸载完,依赖性包没卸载
root@bogon /]# rpm -qa |grep httpd
httpd-tools-2.4.6-67.el7.centos.x86_64
[root@bogon /]#
local.repo的格式都差不多
[root@bogon /]# cd /etc/yum.repos.d/
[root@bogon yum.repos.d]# vim CentOS-Base.repo
清理一下
[root@bogon yum.repos.d]# yum clean all
重启网络服务
[root@bogon yum.repos.d]# service network restart
安装ceph
[root@bogon yum.repos.d]# yum -y install ceph
[root@bogon ceph]# yum -y install epel安装不成功,因为名字错了
但是如果不知道后面是什么,就加-*
[root@bogon ceph]# yum -y install epel-*
得到了扩展源
建缓存,让安装速度提高
[root@bogon yum.repos.d]# yum makecache -y
三、一般yum安装完的话,就会把软件包删掉,如果我们要保留这些软件包的话,可以这样:这样我们不受官网老更新的影响。
vim /etc/yum.conf
把红框和上面一行修改为
cachedir=/rpm_bak
keepcache=1
意思是把软件包保存到/rpm_bak文件夹中
查看是否修改成功
[root@bogon yum.repos.d]# vim /etc/yum.conf
[root@bogon yum.repos.d]# head -10 /etc/yum.conf
建保存目录,那以后安装什么包都会保存到这里,不会被删
[root@bogon yum.repos.d]# mkdir /rpm_bak
查看是否下载成功
[root@localhost yum.repos.d]# cd /rpm_bak
[root@localhost rpm_bak]# ls
base epel extras local timedhosts timedhosts.txt updates
[root@localhost rpm_bak]# cd epel
[root@localhost epel]# ls
[root@localhost epel]# cd packages
[root@localhost packages]# ls
epel-release-7-11.noarch.rpm
清理yum的程序
yum clean all
重新安装
yum reinstall
如果epel安装不成功,就用下面的程序
yum reinstall epel-release -y
更新操作系统
yum update
四、yum连接网上的URL来安装
看看epel.repo文件,红色字的URL跟直接上网打网址的效果是一样的。
[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
CentOS6-Base-163.repo CentOS-CR.repo CentOS-Media.repo epel.repo
CentOS7-Base-163.repo CentOS-Debuginfo.repo CentOS-Sources.repo epel-testing.repo
CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo local.repo
[root@localhost yum.repos.d]# cat epel.repo
[epel]
name=Extra Packages for Enterprise Linux 7 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/7/$basearch
metalink=https://mirrors.fedoraproject.org/metalink?repo=epel-7&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
可以建httpd的yum仓库和yum源
mkdir /cangku_httpd(看截图)
createrepo /cangku_httpd
cd /cangku_httpd
ls
cd /etc/yum.repos.d/
ls
mv * /tmp/bak/
ls
vim httpd.repo
[httpd]
name=httpd server
baseurl=file:///cangke_httpd
enabled=1
gpgcheck=0
yum install httpd -y
添加完后记得要刷新下,命令是createrepo /cangku_httpd
如果仓库url是来自网络的话,可以这样做:
[root@localhost media]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ls
CentOS6-Base-163.repo CentOS-CR.repo CentOS-Media.repo epel.repo
CentOS7-Base-163.repo CentOS-Debuginfo.repo CentOS-Sources.repo epel-testing.repo
CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo local.repo
[root@localhost yum.repos.d]# cat CentOS-Base.repo
复制红框的网址http://mirror.centos.org/centos/
如何知道Cento是哪个版本
[root@localhost yum.repos.d]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)
点击进入下面网址
http://mirror.centos.org/centos/7.4.1708/os/x86_64/repodata/
我们可以用这个网址来配置网络yum名
http://mirror.centos.org/centos/7.4.1708/os/x86_64
建repo
[root@localhost yum.repos.d]# vim centos-7.repo
[centos]
name=centos
baseurl=http://mirror.centos.org/centos/7.4.1708/os/x86_64/
enable=1
gpgcheck=0
[root@localhost yum.repos.d]# cat centos-7.repo
[root@localhost yum.repos.d]# yum install lrzsz –y
本地与虚拟机建远程,安装Xshell 5
192.164.220.120就是IP地址
[root@bogon ~]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.164.220.120 netmask 255.255.255.0 broadcast 192.168.220.255
inet6 fe80::fc58:9f42:ca29:1b05 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:65:77:b2 txqueuelen 1000 (Ethernet)
点击确定后,点击链接并保存,然后输入虚拟机用户名root,和root的密码,得到:
这样我就可以在上面输入命令,而不需要在虚拟机界面了。在百度搜python-3.5.1-tgz,在官网或 http://www.linuxidc.com/Linux/2016-04/129784.htm看到并下载(因为公司都不用3.6,都用2.7和3.5的)
为了把PYTHON 3.5放进去,还要安装一个软件lrzsz-0.12.20-36.el7.x86_64.rpm:
[root@bogon opt]# mount /dev/sr0 /opt
mount: /dev/sr0 写保护,将以只读方式挂载
[root@bogon opt]# cd /opt/Packages/
[root@bogon Packages]# rpm -i lrzsz-0.12.20-36.el7.x86_64.rpm
由于我们在光盘目录里,是只读,所以要到别的目录中,把PYTHON 3.5放进去
[root@bogon Packages]# cd /root
[root@bogon ~]# rz –E
查看大小
[root@bogon ~]# cd /root
[root@bogon ~]# ll -h Python-3.5.0.tgz
-rw-r--r--. 1 root root 20M 11月 11 11:29 Python-3.5.0.tgz
源码安装python到硬盘中
源码(C语言代码)要翻译为二进制,要安装个软件包
由于opt目录挂载到光盘,所以local.repo就够用了
[root@bogon ~]# cd /etc/yum.repos.d/
[root@bogon yum.repos.d]# ls
CentOS6-Base-163.repo CentOS-Debuginfo.repo epel.repo
CentOS7-Base-163.repo CentOS-fasttrack.repo epel-testing.repo
centos-7.repo CentOS-Media.repo local.repo
CentOS-Base.repo CentOS-Sources.repo
CentOS-CR.repo CentOS-Vault.repo
[root@bogon yum.repos.d]#
[root@bogon yum.repos.d]# cat local.repo
[local]
name=local repos
baseurl=file:///opt
enable=1
gpgcheck=0
所以只要local.repo就足够了,其他先移到别的文件夹中
[root@bogon yum.repos.d]# mv * /root/aa
[root@bogon yum.repos.d]# ls
[root@bogon yum.repos.d]# mv /root/aa/local.repo .
[root@bogon yum.repos.d]# ls
local.repo
[root@bogon yum.repos.d]#
[root@bogon yum.repos.d]# yum clean all
看看软件包组有什么
[root@bogon yum.repos.d]# yum grouplist
已加载插件:fastestmirror, langpacks
没有安装组信息文件
Maybe run: yum groups mark convert (see man yum)
local | 3.6 kB 00:00
(1/2): local/group_gz | 156 kB 00:00
(2/2): local/primary_db | 5.7 MB 00:00
Determining fastest mirrors
可用的环境分组:
最小安装
基础设施服务器
计算节点
文件及打印服务器
基本网页服务器
虚拟化主机
带 GUI 的服务器
GNOME 桌面
KDE Plasma Workspaces
开发及生成工作站
可用组:
传统 UNIX 兼容性
兼容性程序库
图形管理工具
安全性工具
开发工具
控制台互联网工具
智能卡支持
科学记数法支持
系统管理
系统管理工具
完成
下面命令为了安装把python的源代码变为二进制的包
[root@bogon yum.repos.d]# yum groupinstall '开发工具' -y
解压
[root@bogon ~]# ls
aa initial-setup-ks.cfg 公共 视频 文档 音乐
anaconda-ks.cfg Python-3.5.0.tgz 模板 图片 下载 桌面
[root@bogon ~]# tar xf Python-3.5.0.tgz
[root@bogon ~]# cd Python-3.5.0/
configure是脚本文件
[root@bogon Python-3.5.0]# ls
aclocal.m4 Include Modules Python
config.guess install-sh Objects README
config.sub Lib Parser setup.py
configure LICENSE PC Tools
configure.ac Mac PCbuild
Doc Makefile.pre.in Programs
Grammar Misc pyconfig.h.in
[root@bogon Python-3.5.0]#
源码包安装到/usr/local/python3.5目录下
./configure --prefix=/usr/local/python3.5
编译、编译后自动安装,如果编译不成功,就不会安装
make && make install
报错:说没有zlib,所以安装zlib
我安装时遇到:
Ignoring ensurepip failure: pip 7.1.2 requires SSL/TLS
[root@bogon Python-3.5.0]#
说明要安装
由于yum install SSL-* -y没结果,于是改为
yum install *SSL-* -y有结果
然后重新进去[root@bogon Python-3.5.0]目录下,运行make install
结果还是Ignoring ensurepip failure: pip 7.1.2 requires SSL/TLS
百度写yum install openssl-devel;可以了,pip是Python2里面的一个安装命令
[root@bogon Python-3.5.0]# cd /usr/local/python3.5/
下面表示安装成功,bin目录是可执行文件
[root@bogon python3.5.1]# ls
bin include lib share
[root@bogon python3.5.1]# cd bin
[root@bogon bin]# ls
2to3 pip3 python3.5 pyvenv
2to3-3.5 pip3.5 python3.5-config pyvenv-3.5
easy_install-3.5 pydoc3 python3.5m
idle3 pydoc3.5 python3.5m-config
idle3.5 python3 python3-config
执行python3.5,得到python的界面
[root@bogon bin]# ./python3.5
>>> print('hello word')
hello word
>>>
退出用exit()或ctrl+D
如果我不在bin目录下打开python 3.5,则可以这样做,先定义路径,下面的方法只在当前终端有效
[root@bogon /]# PATH=/usr/local/python3.5.1/bin:$PATH
[root@bogon /]# echo $PATH
/usr/local/python3.5.1/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
[root@bogon /]# python3.5
Python 3.5.1 (default, Nov 11 2017, 22:40:35)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
下面的方法是永久有效
在文件vim /etc/profile的最后加上,然后把path变为环境变量,即export PATH
PATH=/usr/local/python3.5.1/bin:$PATH
export PATH
这样关闭后打开都可以
[root@bogon ~]# python3.5
Python 3.5.1 (default, Nov 11 2017, 22:40:35)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
大概步骤
Centos7自带
python2.7,所以python要加型号