升级CentOS7 到 CentOS8

1. 前言

在本文中,您将了解如何将CentOS 7升级到CentOS 8.5版本。注意的是,本文介绍的方式仅仅是用于测试,生产环境上应该慎重使用。

2. Step 1: 安装EPEL仓库

执行以下命令安装EPEL仓库,用于补充软件库:

1
# yum install epel-release -y

3. Step 2: 安装yum-utils工具

yum-utils 工具用于管理 yum 源,执行以下命令安装它:

1
# yum install yum-utils

此时需要执行该命令解析RPM包。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# yum install rpmconf
# rpmconf -a

Configuration file '/etc/php.ini'
-rw-r--r-- 1 root root 63217 5月 17 2019 /etc/php.ini
-rw-r--r-- 1 root root 63250 3月 2 2021 /etc/php.ini.rpmnew

==> Package distributor has shipped an updated version.
What would you like to do about it ? Your options are:
Y or I : install the package maintainer's version
N or O : keep your currently-installed version
D : show the differences between the versions
M : merge configuration files
Z : background this process to examine the situation
S : skip this file
The default action is to keep your current version.
*** aliases (Y/I/N/O/D/M/Z/S) [default=N] ?

提示的时候根据需要的版本进行不同的选择, 接下来,对所有不需要的包进行清理。

1
2
# package-cleanup --leaves
# package-cleanup --orphans

4. Step 3: 在CentOS 7中安装dnf工具

dns可以理解为下一代的yum,它在CentOS 8上被设置为默认的软件包安装工具。

通过以下命令安装它:

1
# yum install dnf

您还需要使用以下命令删除yum包管理器。

1
# dnf -y remove yum yum-metadata-parser

5. Step 4: 把CentOS 7升级至CentOS 8

现在我们已经准备好升级CentOS 7到CentOS 8,但是在升级之前,请使用新安装的dnf包管理器升级系统。

1
# dnf upgrade

接下来,使用如下所示的dnf安装CentOS 8的软件包。这需要一段时间。这里使用的阿里云的地址
https://mirrors.aliyun.com/centos/8-stream/BaseOS/x86_64/os/Packages/

1
2
3
# dnf install https://mirrors.aliyun.com/centos/8-stream/BaseOS/x86_64/os/Packages/centos-stream-repos-8-6.el8.noarch.rpm
# dnf install https://mirrors.aliyun.com/centos/8-stream/BaseOS/x86_64/os/Packages/centos-stream-release-8.6-1.el8.noarch.rpm
# dnf install https://mirrors.aliyun.com/centos/8-stream/BaseOS/x86_64/os/Packages/centos-gpg-keys-8-6.el8.noarch.rpm

接下来,升级适配于CentOS 8的EPEL软件仓库。

1
dnf -y upgrade https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

成功升级EPEL软件仓库之后,删除所有临时文件。

1
dnf clean all

删除CentOS 7的旧内核

1
rpm -e `rpm -q kernel`

接下来,一定要删除冲突的软件包。

1
rpm -e --nodeps sysvinit-tools

之后,启动CentOS 8系统升级。

1
dnf -y --releasever=8 --allowerasing --setopt=deltarpm=false distro-sync

注意:如果您得到关于冲突包的错误,例如在我的升级过程中,存在关于现有python36-rpmconf包的冲突。我删除了这个包,类似地,如果有任何冲突,只需删除这些包并尝试运行上面的升级命令。

6. Step 5: 为CentOS 8安装新内核

执行以下命令为CentOS 8安装新内核:

1
dnf -y install kernel-core

最后,为CentOS 8安装最基础的软件包。

1
dnf -y groupupdate "Core" "Minimal Install"

现在您可以通过运行CentOS检查安装的版本。

1
cat /etc/redhat-release

看看是不是已经升级到8.5版本了?如果你在上面的输出信息中看到8.5,证明你已经成功地从CentOS 7升级到CentOS 8.5版本了。

7: 结论

通过本文的指导,您应该已经成功把CentOS 7升级到CentOS 8.5版本了。但我还是强烈建议您先测试一段时间然后再考虑是否要应用于生产环境。


原文地址 : 升级CentOS7 到 CentOS8
本站是作者语雀文档的镜像站, 如对文章有任何疑问请移步语雀进行 提问

[译] 在 CentOS 7/RockyLinux 上安装和配置 Redis

Redis 是一个开源的内存型数据库。它可以用作数据库,缓存或消息代理,并支持各种数据结构,例如字符串,哈希,列表,集合等。Redis 通过 Redis Sentinel 提供高可用性,包括监视,通知,自动故障转移。它还使用 Redis Cluster 在多个 Redis 节点之间提供自动分区。

阅读更多

[转] 如何在 CentOS 7 上修改主机名

ps : 此工具在 rockylinux 上依然可用

在 CentOS 中,有三种定义的主机名:静态的(static),瞬态的(transient),和灵活的(pretty)。静态主机名也称为内核主机名,是系统在启动时从/etc/hostname 自动初始化的主机名。瞬态主机名是在系统运行时临时分配的主机名,例如,通过 DHCP 或 mDNS 服务器分配。静态主机名和瞬态主机名都遵从作为互联网域名同样的字符限制规则。而另一方面,灵活主机名则允许使用自由形式(包括特殊/空白字符)的主机名,以展示给终端用户(如 server-a)。
在 CentOS 7 中,有个叫 hostnamectl 的命令行工具,它允许你查看或修改与主机名相关的配置。

阅读更多

CentOS 进行服务器完善和升级

系统软件安装以及升级

基础工具安装

1
2
3
4
5
6
# normal tools
$ yum install wget vim yum-utils gcc
# autojump
$ yum install autojump
# zip
$ yum install zip unzip

升级 curl 为最新版本

[转+] CentOS 7 更新 curl 为最新版本

源添加和更换

CentOS 镜像
CentOS,是基于 Red Hat Linux 提供的可自由使用源代码的企业级 Linux 发行版本;是一个稳定,可预测,可管理和可复制的免费企业级计算平台。

1
2
# 更换为 aliyun 提高下载速度, 设置aliyun库
$ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

Remi 镜像
Remi repository 是包含最新版本 PHP 和 MySQL 包的 Linux 源,由 Remi 提供维护
官方源 : https://rpms.remirepo.net/
Aliyun : https://developer.aliyun.com/mirror/remi

1
2
3
4
5
# 设置 remi 库 , 二选一
# official
$ yum install http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
# aliyun mirror
$ yum install https://mirrors.aliyun.com/remi/enterprise/remi-release-7.rpm

系统升级

1
2
3
4
5
# 更新元数据
$ yum makecache
# 更新和升级
$ yum update
$ yum upgrade

关闭 Seliunx

这里遇到一个坑, 如果不关闭 SELinux, 可能会遇到开发的坑.
检查 SELinux 是否在运行:

1
$ getenforce

下次重启前禁用 SELinux:

1
$ setenforce Permissive

重新启动 Nginx,看看问题是否仍然存在。如果您想永久更改 Selinux 设置,可以编辑 /etc/sysconfig/selinux


原文地址 : CentOS 进行服务器完善和升级
本站是作者语雀文档的镜像站, 如对文章有任何疑问请移步语雀进行 提问

[转+] CentOS 7 更新 curl 为最新版本

介绍

由于 CentOS 7 内置的 curl 和 libcurl 源为较旧的 7.29.0,不支持一些新特性且有安全性问题,所以需要更新一下, 这里使用 city-fan 的更新源来更新。
查看默认版本号

1
2
3
# curl -V
curl 7.29.0 (x86_64-redhat-linux-gnu) libcurl/7.29.0 NSS/3.53.1 zlib/1.2.7 libidn/1.28 libssh2/1.8.0
Protocols: dict file ftp ftps gopher http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp

更新 ca-bundle 证书

  1. 备份证书

    1
    # cp /etc/pki/tls/certs/ca-bundle.crt /etc/pki/tls/certs/ca-bundle.crt.bak
  2. 更新并替换

    1
    # curl http://curl.haxx.se/ca/cacert.pem -o /etc/pki/tls/certs/ca-bundle.crt

新增 repo 源

新增 repo:

1
2
3
4
5
6
# rpm -Uvh http://www.city-fan.org/ftp/contrib/yum-repo/city-fan.org-release-2-1.rhel7.noarch.rpm
Retrieving http://www.city-fan.org/ftp/contrib/yum-repo/city-fan.org-release-2-1.rhel7.noarch.rpm
warning: /var/tmp/rpm-tmp.ttjkC5: Header V4 DSA/SHA1 Signature, key ID b56a8bac: NOKEY
Preparing... ################################# [100%]
Updating / installing...
1:city-fan.org-release-2-1.rhel7 ################################# [100%]

启用 city-fan.org repo:

1
2
# yum install -y yum-utils
# yum-config-manager --enable city-fan.org

更新 curl

直接使用如下命令进行更新:

1
# yum update curl --enablerepo=city-fan.org  -y

安装完成, 查看版本

1
2
# curl -V
curl 7.79.1 (x86_64-redhat-linux-gnu) libcurl/7.79.1 NSS/3.53.1 zlib/1.2.7 libpsl/0.7.0 (+libicu/50.1.2) libssh2/1.10.0 nghttp2/1.33.0 OpenLDAP/2.4.44

QA:

  1. 如果提示缺少依赖  libnghttp2.so.14()(64bit)

    错误:软件包:libcurl-7.75.0-1.1.cf.rhel7.x86_64 (city-fan.org)
              需要:libnghttp2.so.14()(64bit)

1
# rpm -ivh https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/l/libnghttp2-1.33.0-1.1.el7.x86_64.rpm

这里地址是 centos7 版本, 如果是其他系统, 可以在一下路径自己寻找 https://dl.fedoraproject.org/pub/epel/

参考地址


原文地址 : [转+] CentOS 7 更新 curl 为最新版本
本站是作者语雀文档的镜像站, 如对文章有任何疑问请移步语雀进行 提问

centos 列出所有的配置 Repo 源

原文地址: List All Configured Repositories

怎样才能在 CentOS / Fedora / Red Hat Enterprise / Scientific Linux 操作系统中列出配置的 Repo 源
你需要传递一个 repolistyum 命令, 这个选项将给你列出一个已经在 RHEL / Fedora / SL / CentOS Linux 系统中配置过的 Repo 源, 默认是列出所有的可用 Repo 源, 传递 -v(verbose mode[详细信息]) 将列出更多信息.

阅读更多

[转] DNF包管理命令在 CentOS 8 和 RHEL 8 上的使用

原文地址: https://www.twblogs.net/a/5eedcdc2264079afec950ab1

DNF的英文是 “Dandified Yum”。 是原生的yum软件包管理器(Yum的派生)。DNF命令使用libsolv,hawkey,ibrepo和libcomps等C语言库写。它是在Fedora 18中引入的,自Fedora 22 以来一直是默认的软件包管理器。DNF 是一个软件包管理器,可以在基于 RPM 的 Linux 发行版上,更新删除软件包。它会自动安装计算并确定安装软件包所需要的操作。由于一些问题长期尚未在yum中解决,如性能差,内存使用率高,依赖关系解析速度慢等,yum已被DNF个别解决。这解决了yum中待解决的问题。此外, DNF添加了许多功能,以实现基于RPM的系统中软件包的无缝管理。

阅读更多

CentOS httpd 分析

httpd 文件目录结构

已经安装完成的使用 whereis 确定的 httpd 的位置

1
2
3
4
5
/usr/sbin/httpd     # 执行bin 文件
/usr/lib64/httpd # apache 安装的模块文件的目录
/etc/httpd # 配置文件目录
/usr/share/httpd # 默认的 apache 指向目录
/usr/share/man/man8/httpd.8.gz # 文档

配置文件目录

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
/etc/httpd  # 配置根目录
/conf
httpd.conf # 配置文件
magic
/conf.d # vhosts 配置文件目录, httpd 附属的一些配置
/conf.modules.d # 加载一些需要的系统模块
00-base.conf
00-dav.conf
00-lua.conf
00-mpm.conf
00-proxy.conf
00-systemd.conf
01-cgi.conf
10-php.conf
logs => /var/log/httpd
modules => /usr/lib64/httpd
run -> /run/httpd

原文地址 : CentOS httpd 分析
本站是作者语雀文档的镜像站, 如对文章有任何疑问请移步语雀进行 提问

centos 7 service 服务

以754的权限保存在目录

放置位置: /usr/lib/systemd/system

/usr/bin/php /webdata/www/t.dailian/artisan workerman start –d

以下测试不成功

阅读更多

centos apache 使用 mod_proxy_fcgi 支持多版本 php

remi 源安装的PHP分析

1
2
3
4
5
6
7
8
/usr/bin/php56  # 执行文件
/opt/remi/php56/root/etc # 配置文件目录
/opt/remi/php56/root/etc/php.ini # 配置文件
/opt/remi/php56/root/usr/bin/php-cgi # cgi 运行文件
/opt/remi/php56/root/usr/sbin/php-fpm # php-fpm
/opt/remi/php56/root/etc/sysconfig/php-fpm # php-fpm 系统变量配置文件
/opt/remi/php56/root/var/run/php-fpm # 运行pid
/opt/remi/php56/root/var/log/php-fpm # 日志

配置文件树状结构

配置根目录 : /opt/remi/php56/root/etc

1
2
3
4
php.ini
php-fpm.conf
/php-fpm.d
www.conf

修改 php-fpm 运行时候的端口配置

修改配置目录下 /php-fpm.d/www.conf

1
2
3
4
5
; 进程池名称, 之前是 www
[php56-fpm]
...
; 监听端口, 之前是 9000
listen = 127.0.0.1:9056

配置 apache 配置文件

目录 /etc/httpd/conf.d/

vim test_host.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
<VirtualHost *:80>
DocumentRoot "/webdata/www/test_host/"
ServerName test_host.com
<FilesMatch "\.php$">
SetHandler "proxy:fcgi://localhost:9056"
</FilesMatch>
<Directory "/webdata/www/test_host/">
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from All
</Directory>
</VirtualHost>

启动 php-fpm, 重启 apache

1
2
/opt/remi/php56/root/usr/sbin/php-fpm
service httpd restart

管理脚本

由于这个remi 的没有启动脚本, 所以新建立一个脚本进行管理

放置位置

/etc/init.d/php56-fpm , 并给定执行权限

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#!/bin/bash
#
# Startup script for the remi PHP56-FPM server.
#
# processname: php-fpm
# config: /opt/remi/php56/root/etc/php.ini

DESC="php56-fpm daemon"
NAME=php56-fpm
# php-fpm路径
DAEMON=/opt/remi/php56/root/usr/sbin/php-fpm
# 配置文件路径
CONFIGFILE=/opt/remi/php56/root/etc/php-fpm.conf
# PID文件路径(在php-fpm.conf设置)
PIDFILE=/opt/remi/php56/root/var/run/php-fpm/php-fpm.pid
SCRIPTNAME=/usr/init.d/$NAME

# Gracefully exit if the package has been removed.
test -x $DAEMON || exit 0

rh_start() {
$DAEMON -y $CONFIGFILE || echo -n " already running"
}

rh_stop() {
kill -QUIT `cat $PIDFILE` || echo -n " not running"
}

rh_reload() {
kill -HUP `cat $PIDFILE` || echo -n " can't reload"
}

case "$1" in
start)
echo -n "Starting $DESC: $NAME"
rh_start
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME"
rh_stop
echo "."
;;
reload)
echo -n "Reloading $DESC configuration..."
rh_reload
echo "reloaded."
;;
restart)
echo -n "Restarting $DESC: $NAME"
rh_stop
sleep 1
rh_start
echo "."
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|restart|reload}" >&2
exit 3
;;
esac
exit 0

运行

1
2
3
4
service php56-fpm start
service php56-fpm stop
service php56-fpm restart
service php56-fpm reload

参考链接:


原文地址 : centos apache 使用 mod_proxy_fcgi 支持多版本 php
本站是作者语雀文档的镜像站, 如对文章有任何疑问请移步语雀进行 提问

CentOS 查看系统版本号

查看内核版本命令:

-
cat /proc/version

Linux version 2.6.9-22.ELsmp (bhcompile@crowe.devel.redhat.com) (gcc version 3.4.4 20050721

3.4.4-2)) #1 SMP Mon Sep 19 18:00:54 EDT 2005

-
uname -a

Linux q1test01 2.6.9-22.ELsmp #1 SMP Mon Sep 19 18:00:54 EDT 2005 x86_64 x86_64 x86_64 GNU/Linux

-
uname -r

2.6.9-22.ELsmp

查看linux版本

  • lsb_release -a

列出所有版本信息, 这个命令适用于所有的linux,包括Redhat、SuSE、Debian等发行版

1
2
3
4
5
6
LSB Version:    :core-3.0-amd64:core-3.0-ia32:core-3.0-noarch:graphics-3.0-amd64:graphics-3.0-
ia32:graphics-3.0-noarch
Distributor ID: RedHatEnterpriseAS
Description: Red Hat Enterprise Linux AS release 4 (Nahant Update 2)
Release: 4
Codename: NahantUpdate2

提示: lsb_release: command not found 解决

解决方法

1
yum install redhat-lsb -y
  • cat /etc/issue
1
2
Red Hat Enterprise Linux AS release 4 (Nahant Update 2)
Kernel \r on an \m
  • cat /etc/redhat-release

这种方式下可以直接看到具体的版本号,比如 AS4 Update 1

Red Hat Enterprise Linux AS release 4 (Nahant Update 2)

  • rpm -q redhat-release

这种方式下可看到一个所谓的release号

redhat-release-4AS-3

查看系统是64位还是32位:

getconf LONG_BIT 或者 getconf WORD_BIT

file /bin/ls

lsb_release -a


原文地址 : CentOS 查看系统版本号
本站是作者语雀文档的镜像站, 如对文章有任何疑问请移步语雀进行 提问

CentOS下使用yum安装配置和使用svn

安装说明

系统环境:CentOS-6.7

安装方式:yum install (源码安装容易产生版本兼容的问题)

安装软件:系统自动下载SVN软件

检查已安装版本

1
2
3
4
5
6
7
8
9
10
11
#检查是否安装了低版本的SVN
$ rpm -qa subversion
#卸载旧版本SVN
$ yum remove subversion
安装SVN
$ yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql
确认已安装了svn模块
$ cd /etc/httpd/modules
$ ls | grep svn
mod_authz_svn.so
mod_dav_svn.so

验证安装

检验已经安装的SVN版本信息

1
2
3
4
5
6
7
8
9
10
11
12
$ svnserve --version
svnserve,版本 1.6.11 (r934486)
编译于 Jun 23 2012,00:44:03

版权所有 (C) 2000-2009 CollabNet。
Subversion 是开放源代码软件,请参阅 [http://subversion.tigris.org/](http://subversion.tigris.org/) 站点。
此产品包含由 CollabNet( [http://www.Collab.Net/](http://www.collab.net/)) 开发的软件。

下列版本库后端(FS) 模块可用:
* fs_base : 模块只能操作BDB版本库。
* fs_fs : 模块与文本文件(FSFS)版本库一起工作。
Cyrus SASL 认证可用。

代码库创建

SVN软件安装完成后还需要建立SVN库

1
2
[root@zck modules]# mkdir -p /opt/svn/repositories
[root@zck modules]# svnadmin create /opt/svn/repositories

执行上面的命令后,自动建立repositories库,查看/opt/svn/repositories 文件夹发现包含了conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立。

配置代码库

进入上面生成的文件夹conf下,进行配置

[root@zck modules]# cd /opt/svn/repositories/conf

用户密码passwd配置

1
2
[root@zck password]# cd /opt/svn/repositories/conf
[root@admin conf]# vi + passwd

修改passwd为以下内容:

1
2
3
4
[users]
# harry = harryssecret
# sally = sallyssecret
zhoulf=123456

权限控制authz配置

1
2
3
4
5
6
7
8
[root [@admin](http://my.oschina.net/wekit) conf]# vi + authz
目的是设置哪些用户可以访问哪些目录,向authz文件追加以下内容:
#设置[/]代表根目录下所有的资源
[/]
zhoulf=rw
服务svnserve.conf配置

[root [@admin](http://my.oschina.net/wekit) conf]# vi + svnserve.conf

追加以下内容:

1
2
3
4
5
6
7
8
9
10
11
[general]
#匿名访问的权限,可以是read,write,none,默认为read
anon-access=none
#使授权用户有写权限
auth-access=write
#密码数据库的路径
password-db=passwd
#访问控制文件
authz-db=authz
#认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字
realm=/opt/svn/repositories

配置防火墙端口

1
2
3
4
5
[root@zck conf]# vi /etc/sysconfig/iptables
添加以下内容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
保存后重启防火墙
[root@zck conf]# service iptables restart

启动SVN

1
svnserve -d -r /opt/svn/repositories

查看SVN进程

1
2
[root@zck conf]# ps -ef|grep svn|grep -v grep
root 12538 1 0 14:40 ? 00:00:00 svnserve -d -r /opt/svn/repositories

检测SVN 端口

1
2
[root@zck conf]# netstat -ln |grep 3690
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN

停止重启SVN

1
2
[root@zck password]# killall svnserve //停止
[root@zck password]# svnserve -d -r /opt/svn/repositories // 启动

测试

SVN服务已经启动,使用客户端测试连接。

客户端连接地址:svn://192.168.15.231

用户名/密码: zhoulf/123456

测试创建文件夹等操作。


原文地址 : CentOS下使用yum安装配置和使用svn
本站是作者语雀文档的镜像站, 如对文章有任何疑问请移步语雀进行 提问

vagrant centos7 虚拟机升级内核之后无法挂载 vagrant 目录

错误信息

The error output from the last command was:

/sbin/mount.vboxsf: mounting failed with the error: No such device

解决方案

这个出现的原因是 升级 linux 内核 将导致 虚拟机的Guest无法访问, 知道重建并且运行 以下的命令

It turns out, upgrading the Linux kernel will cause the Virtual Box Guest Additions to stop working until they are rebuilt by running the following command in the VM

阅读更多

vargrant 搭建 centos 虚拟机手记

搭建 vargrant 虚拟机

安装位置 D:\vagrant\centos

Vagrantfile 配置文件

1
2
3
4
5
6
7
8
9
10
11
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "centos"
config.vm.box_url = "../box/centos65.box"
config.vm.network :private_network, ip: "192.168.18.23"
# 目录挂载
config.vm.synced_folder "G:/wamp/www", "/home/www"
# 映射 2201 来访问 guest 机器上的 22 端口
config.vm.network "forwarded_port", guest: 22, host: 2201
end

账号

vagrant 账号, 使用 密钥来登陆

root 账号, 密码是 vagrant

centos 安装软件

1
2
3
4
5
6
7
8
9
10
# 先确定是否有 fastestmirror 这个插件, 对于以后安装速度有影响的
# 没有的话,需要安装
yum install yum-plugin-fastestmirror
# 由于这里已经有阿里云的镜像站. 所以速度非常快,无需配置多余的 fastmirror 插件

# 升级系统
yum upgrade

# 更新最新软件
yum update

原文地址 : vargrant 搭建 centos 虚拟机手记
本站是作者语雀文档的镜像站, 如对文章有任何疑问请移步语雀进行 提问

/var/run/yum.pid 已被锁定 解决办法

1
2
3
4
5
6
7
8
# yum install glibc.i686
已加载插件:fastestmirror, langpacks
/var/run/yum.pid 已被锁定,PID 为 49901 的另一个程序正在运行。
Another app is currently holding the yum lock; waiting for it to exit...
  另一个应用程序是:PackageKit
    内存:103 M RSS (432 MB VSZ)
    已启动: Mon Jan 11 10:43:58 2016 - 02:36之前
    状态  :睡眠中,进程ID:49901

解决办法:直接在终端运行 rm -f /var/run/yum.pid 将该文件删除,然后再次运行yum

1
2
3
4
5
6
7
# rm -f /var/run/yum.pid 
# yum install glibc.i686
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.163.com
 * extras: mirrors.163.com
 * updates: mirrors.163.com

原文地址 : /var/run/yum.pid 已被锁定 解决办法
本站是作者语雀文档的镜像站, 如对文章有任何疑问请移步语雀进行 提问

[译] ifconfig 命令在 CentOS 7 中不存在

原文地址: ifconfig command not found on CentOS 7

众所周知, CentOS 7 已经发布, 并且包含了很多心的功能, 在使用 centos 7 的时候我遇到了第一个挑战, 在我上一篇文章  finding the CentOS release version on CentOS 7, 同样也发现了网络的变化

几天后我使用  minimal installed CentOS 7 , 在 CentOS 6.x 发布的时候我习惯的使用命令ifconfig, ifconfig命令提供了我们服务器的网络信息. 在 CentOS 6.x 之前, ifconfig命令默认是集成在系统中的. 但是在 CentOS 7 安装完成之后却没有发现这个命令. 这个会给你一个错误信息

ifconfig command not found.

在系统中使用 ifconfig 命令, 使用以下命令.

阅读更多

[转] 删除 CentOS 的旧内核,清理 CentOS 的 /boot 分区

原文地址 : 删除CentOS的旧内核,清理CentOS的/boot分区

Linux系统在分区的时候一般不会分配过多的磁盘空间给启动分区/boot,通常情况下是300MB左右。在使用yum update升级内核(kernel)后,CentOS并不会自动删除旧内核,在启动选项中会有多个内核选项,会出现/boot分区逐渐减小、空间不足、无法更新内核的情况。如果出现这些问题,可以手动使用以下命令删除多余的内核,清理/boot分区。方法如下:

1.查看系统当前使用的内核(kernel)版本。

阅读更多

[转+]Yum 的变量

原文地址 : Yum的变量

新机器使用yum出现了报错,发现本来应该替换的$releasever变量变成了%24releasever

http://mirrors.aliyun.com/centos/%24releasever/addons/x86_64/repodata/repomd.xml: [Errno 14] HTTP Error 404: Not Found  Trying other mirror.  Error:  Cannot retrieve repository metadata (repomd.xml)  for repository: addons.  Please verify its path and  try again

下面我们来看看这个是怎么回事,最好的参考文档当然是man,通过man yum.conf 查看这个$releasever

阅读更多

CentOS yum的详细使用方法

yum是什么

yum = Yellow dog Updater, Modified

主要功能是更方便的添加/删除/更新RPM包.

它能自动解决包的倚赖性问题.

它能便于管理大量系统的更新问题yum特点

可以同时配置多个资源库(Repository)

简洁的配置文件(/etc/yum.conf

自动解决增加或删除rpm包时遇到的倚赖性问题

使用方便

保持与RPM数据库的一致性

rpm包的更新

1
2
3
4
5
6
7
8
# 检查可更新的rpm包
yum check-update
# 更新所有的rpm包
yum update
# 更新指定的rpm包,如更新kernel
yum update kernel
# 大规模的版本升级,与yum update不同的是,连旧的淘汰的包也升级
yum upgrade

rpm包的安装和删除

1
2
3
4
5
# 安装rpm包,如xmms-mp3
yum install xmms-mp3
# 删除rpm包,包括与该包有倚赖性的包
# 同时会提示删除licq-gnome,licq-qt,licq-text
yum remove licq

yum暂存(/var/cache/yum/)的相关参数

1
2
3
4
5
6
7
8
9
10
# 清除暂存中rpm包文件
yum clean packages
# 清除暂存中rpm头文件
yum clean headers
# 清除暂存中旧的rpm头文件
yum clean oldheaders
# 清除暂存中旧的rpm头文件和包文件
yum clean
# 相当于yum clean packages + yum clean oldheaders
yum clean all

包列表

1
2
3
4
5
6
7
8
9
10
11
12
# 列出资源库中所有可以安装或更新的rpm包
yum list
# 列出资源库中特定的可以安装或更新以及已经安装的rpm包
# 可以在rpm包名中使用匹配符,如列出所有以mozilla开头的rpm包
yum list mozilla#yum list mozilla*
# 列出资源库中所有可以更新的rpm包
yum list updates
# 列出已经安装的所有的rpm包
yum list installed
# 列出已经安装的但是不包含在资源库中的rpm包
yum list extras
# 注:通过其它网站下载安装的rpm包

rpm包信息显示(info参数同list)

1
2
3
4
5
6
7
8
9
10
11
12
# 列出资源库中所有可以安装或更新的rpm包的信息
yum info
# 列出资源库中特定的可以安装或更新以及已经安装的rpm包的信息
# 可以在rpm包名中使用匹配符,如列出所有以mozilla开头的rpm包的信息
yum info mozilla#yum info mozilla*
# 列出资源库中所有可以更新的rpm包的信息
yum info updates
# 列出已经安装的所有的rpm包的信息
yum info installed
# 列出已经安装的但是不包含在资源库中的rpm包的信息
# 通过其它网站下载安装的rpm包的信息
yum info extras

搜索rpm包

如果您不知道软件的名称,使用 search 或 provides 功能。另外,可以在任何 yum 搜索选项中使用通配符和正则表达式,来扩大搜索范围。

search 功能检测所有可用的软件的名称、描述、概述和已列出的维护者,查找匹配的值。例如,要从所有软件包中搜索与 PalmPilots 相关的内容,输入:

1
yum search PalmPilot

provides 功能检测软件包中包含的文件以及软件提供的功能。与 search 相比,这个选项要求 yum 下载并读取一个很大的索引文件。

1
yum provides realplay

yum常用的命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# 安装xxx软件
yum install xxx
# 查看xxx软件的信息
yum info xxx
# 删除软件包
yum remove xxx
# 列出软件包
yum list
# 清除缓冲和就的包
yum clean
# 以xxx为关键字搜索包(提供的信息为关键字)
yum provides xxx
# 搜索软件包(以名字为关键字)
yum search xxx
# 这三个都是一组为单位进行升级 列表和删除的操作
yum groupupdate xxx
yum grouplist xxx
yum groupremove xxx
# 系统升级
yum update
# 列出所有升级源上的包
yum list available
# 列出所有升级源上的可以更新包
yum list updates
# 列出已经安装的包
yum list installed
# 升级内核
yun update kernel

yum常用的源

  • 自动选择最快的源

    由于yum中有的mirror速度是非常慢的,如果yum选择了这个mirror,这个时候yum就会非常慢,对此,可以下载fastestmirror插件,它会自动选择最快的mirror:
1
yum install yum-fastestmirror

配置文件:(一般不用动)/etc/yum/pluginconf.d/fastestmirror.conf

你的yum镜像的速度测试记录文件:/var/cache/yum/timedhosts.txt

  • 使用图形界面的yum

    如果觉得命令行的yum不方便,那么可以使用图形化的yumex,这个看起来更方便,因为可以自由地选择软件仓库:
1
yum install yumex

然后在系统工具中就可以看到yum extender了。实际上系统自带的“添加/删除程序“也可以实现图形化的软件安装,但有些yumex的功能它没有。


原文地址 : CentOS yum的详细使用方法
本站是作者语雀文档的镜像站, 如对文章有任何疑问请移步语雀进行 提问

CentOS Faq

1. 如何清空dns 缓存

1
2
3
4
$ yum -y install nscd
$ systemctl enable nscd
$ systemctl start nscd
$ nscd -i hosts

原文地址 : CentOS Faq
本站是作者语雀文档的镜像站, 如对文章有任何疑问请移步语雀进行 提问