Cài đặt lại trên centos 6.5


10

Tôi đang cố gắng cài đặt Redis trên centos 6.5 (x64) với dòng sau:

yum install redis

Nhưng tôi đang nhận được màn hình sau:

[root@NodeJs ~]# yum install redis
Loaded plugins: fastestmirror
Setting up Install Process
Loading mirror speeds from cached hostfile
 * base: nl.mirror.eurid.eu
 * epel: nl.mirror.eurid.eu
 * extras: mirror.denit.net
 * updates: nl.mirror.eurid.eu
Resolving Dependencies
--> Running transaction check
---> Package redis.x86_64 0:2.8.14-2.el7 will be installed
--> Processing Dependency: systemd for package: redis-2.8.14-2.el7.x86_64
--> Processing Dependency: systemd for package: redis-2.8.14-2.el7.x86_64
--> Processing Dependency: libjemalloc.so.1()(64bit) for package: redis-2.8.14-2.el7.x86_64
--> Running transaction check
---> Package jemalloc.x86_64 0:3.6.0-1.el7 will be installed
---> Package redis.x86_64 0:2.8.14-2.el7 will be installed
--> Processing Dependency: systemd for package: redis-2.8.14-2.el7.x86_64
--> Processing Dependency: systemd for package: redis-2.8.14-2.el7.x86_64
--> Finished Dependency Resolution
Error: Package: redis-2.8.14-2.el7.x86_64 (epel)
           Requires: systemd
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

Làm thế nào tôi có thể giải quyết vấn đề này?


1
systemdkhông được bao gồm trong EPEL6. [1]: stackoverflow.com/questions/28347694/
Kẻ

1
Ồ, tôi phải nâng cấp lên centos 7 phải không?
Tokgay Toklar

Đó là một lựa chọn, nhưng bạn có thể thử câu trả lời của Michael Hampton trước. Nó không được bao gồm trong EPEL6, nhưng có thể cài đặt nó trên CentOS6 bằng cách cài đặt gói khác.
030

1
Tôi đã thêm nhận xét vào câu trả lời của anh ấy, xin hãy nhìn vào đây
Tolgay Toklar

1
câu hỏi tuyệt vời! + 1
l --''''''--------- '' '' '' '' '' ''

Câu trả lời:


18

Bạn đã cài đặt kho EPEL cho EL7, nhưng thực tế bạn đang chạy EL6. Loại bỏ epel-releasegói, nghĩa là, sudo yum search epel && sudo yum remove epel-releasevà thay thế nó bằng gói chính xác.

Theo tài liệu này, Redis có thể được cài đặt trên CentOS6 bằng cách ban hành các lệnh sau:

// --- Compiling ---
$ wget http://download.redis.io/releases/redis-2.8.3.tar.gz
$ tar xzvf redis-2.8.3.tar.gz
$ cd redis-2.8.3
$ make
$ make install

// --- or using yum ---
$ rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
$ rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-6.rpm

$ yum --enablerepo=remi,remi-test install redis 

1
Làm thế nào tôi có thể thay thế nó? Bạn có thể đưa ra một ví dụ không ?
Tokgay Toklar

1
Cập nhật: Tôi đang sử dụng centos 6.6 có vấn đề gì không?
Tokgay Toklar

1
Tôi đã thử tùy chọn thứ hai: Khóa công khai cho jemalloc-3.6.0-1.el7.x86_64.rpm chưa được cài đặt
Tolgay Toklar

1
@TolgayToklar Bạn vẫn có kho EPEL cho EL7 được cài đặt và bạn vẫn cần xóa nó.
Michael Hampton

1
yum siêu dữ liệu sạch
Uday Hiwarale

18

Đây là kinh nghiệm thành công của tôi khi cập nhật Redis (2.4.10) trên CentOS 6.5.

Cách cập nhật Redis trên CentOS 6.5

  1. Trước tiên, hãy đảm bảo các repos sau, EPELREMI, được cài đặt:

    sudo rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
    sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-6.rpm
    
  2. Kiểm tra phiên bản Redis trong REMIrepo: (Kể từ tháng 6 năm 2015, phiên bản là 2.8.13 )

    yum --enablerepo=remi info redis
    
  3. Sau đó cài đặt phụ thuộc liên quan ( jemalloc) từ EPELrepo:

    sudo yum --enablerepo=epel install jemalloc
    
  4. Trước khi cài đặt, bạn nên dừng trình nền Redis cũ:

    sudo service redis stop
    
  5. Sau đó cài đặt phiên bản mới hơn của Redis:

    sudo yum --enablerepo=remi install redis
    
  6. Chỉnh sửa tập tin cấu hình Redis nếu cần:

    sudo vi /etc/redis.conf
    
  7. Khởi động lại Redis daemon và làm cho nó tự động khởi động khi khởi động lại:

    sudo service redis start
    sudo chkconfig redis on
    
  8. Cuối cùng, hãy kiểm tra phiên bản Redis hiện đang cài đặt:

    redis-cli info | grep redis_version
    

Làm xong!


Điều này thật tuyệt, cảm ơn! Tôi đã phải chỉnh sửa /etc/redis.confloại bỏ tất cả vm-và các hash-chỉ thị được chuẩn bị trước
pruett

Cảm ơn, tôi đã không nhận ra rằng đã có sẵn trong remi. Kể từ ngày 22 tháng 10 năm 2015, phiên bản v3.0.5 của nó và đã cài đặt hoàn hảo (w / cPanel) rpms.famillecollet.com/enterprise/6/remi/x86_64/repoview/ . Nếu bạn sử dụng PHP đừng quên thêm mô-đun qua pecl install redis.
dhaupin

Tôi cũng sẽ thêm một bước (n tùy chọn) vào đó sau bước 1, chỉnh sửa /etc/yum.repos.d/remi-safe.repothêm một dòng includepkgs=redisđể chỉ gói redis được cập nhật từ repi repo khi đến lúc chạy yum update.
Dale Anderson

Vẫn hoạt động vào năm 2019.
rolkos

7

Gói EPEL redis là loại lỗi thời, trên RHEL6, bạn có thể sử dụng Kho lưu trữ của Remi's: http://rpms.famillecollet.com/ . Chúng được cập nhật, cũng với các phiên bản mới nhất từ ​​phiên bản 3.0 và 2.8.

Có một cái nhìn ở đây cho một mô tả của các gói mới nhất.


//, Kho lưu trữ Remi sẽ cố gắng cập nhật mọi gói khác, tuy nhiên, nếu có yum update, mặc dù, phải không?
Nathan Basan 6/11/2015

1
//, Làm thế nào tôi có thể tránh vấn đề đó?
Nathan Basan 6/11/2015

@NathanBasan đáng để bạn hỏi điều này trong một câu hỏi riêng biệt (nhiều người chắc chắn cũng sẽ có cùng một câu hỏi) nhưng vì sự hài lòng tức thì, bạn thêm một includepkgs=redisdòng vào [remi-safe]phần /etc/yum.repos.d/remi-safe.repođể đảm bảo chỉ cập nhật gói redis.
Dale Anderson
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.