Centos'a man sayfaları nasıl kurulur?


18

Not: Bu Centos 7 için geçerlidir. Bir Debian cevabı arıyorsanız, bu soruya bakın . Bu cevaplar burada tekrarlanmayacak.

Centos 7 kurulumundan sonra man sayfalarına erişemiyorum:

# man ls
-bash: man: command not found

Yum üzerinden yüklemeye çalıştım

# yum install man-pages
... ok

Ama yine:

# man ls
-bash: man: command not found

Neden?


1
man(1)Sistemin çok temel bir parçası olduğu gibi bu son derece garip . Yeniden yüklemeyi deneyebilirsiniz, yani gidin yum reinstall /usr/bin/man.
vonbrand

Yanıtlar:


17

Adam komutunu kullanabilmek için, ayrıca yüklemeniz gerekir manönce veya sonra paketi man-pagesbiri

# yum install man-pages
... ok
# yum install man
... ok

Şimdi manyüklendi

# man ls


NAME
      ls - list directory contents

SYNOPSIS
      ls [OPTION]... [FILE]...

DESCRIPTION
      List information about the FILEs (the current directory by default).  Sort entries alphabetically if none of -cftuvSUX nor --sort.

      Mandatory arguments to long options are mandatory for short options too. ...

2
Görünüşe göre bu bir docker konteyner içindeki centOS üzerinde çalışmaz. Bunu bir centOS VM'de çalışmak için aldığımı biliyorum, ama neden kapta çalışmadığından emin değilim.
jarse fasulyesi

9
Tamam, cevabımı buldum. Docker centos görüntüleri /etc/yum.conf içinde ayarlanan tsflags = nodocs ile önceden oluşturulmuştur. Bkz. Hub.docker.com/_/centos
jersey fasulye

Evet haklısın! Tamamlayıcı için +1. Teşekkürler!
Rémi

6

Docker kapsayıcısında aynı sorunu yaşadım tsflags=nodocsve /etc/yum.confdosyaya yorum yaparak çözdüm , sonra man sayfalarını ve man-db'yi kaldırdım ve tekrar yükledim. Bu şekilde iyi çalışıyor.

$ vi /etc/yum.conf

tsflagsDosyayı arayın ve önüne bir yorum (#) ekleyin:

#tsflags=nodocs

Şimdi sisteminizde önceden kurulmuşsa man-db'yi ve man-sayfalarını kaldırın:

$ yum remove man-pages man-db

Sonra tekrar yükleyin:

$ yum install man-pages man-db

Sıralama!


Bu windows benim WSL centos75 kurulum için gizli sos oldu.
Choy

4

CentOS 7 sözdizimi:

# yum install man-pages man-db man

CentOS 6 sözdizimi:

$ sudo yum install man man-pages

Kaynak


0

R.S tarafından işaret edildiği gibi , CentOS resmi Docker görüntülerinde manuel sayfa yüklemesi devre dışı bırakılmıştır. Bu, Fedora resmi Docker görüntüleri için de geçerlidir.

Bunu yapmanın en kolay yolu sed, her iki sistemde de çalışacak olan aşağıdaki komuttur:

sed -i -e '/tsflags=nodocs/s/^/#/' /etc/yum.conf /etc/dnf/dnf.conf || true

Bu, iki dosyadan birini okuyamayacağını söyleyen bir hata mesajı oluşturur, ancak hangisi varsa tsflags=nodocssatırı yorumlamak için güncellenir . || trueUç teminat altın at Hatalara bakmaksızın komut verir başarısı, komut durdurulması önlemek için.

Bu, a'daki bir RUNkomutta kullanılabilir Dockerfile, bu durumda başka paketler yüklemeden önce kullanmalısınız. Zaten kurduğunuz paketler için normalde onlarla birlikte gelen tüm manuel sayfalar kaldırılmaya devam edecek ve manuel sayfaları getirmek için paketin yeniden yüklenmesi gerekecektir. Temel sistemin manuel sayfalarının (örneğin ls) birçoğu man-pagespakette yer alır, ancak gitkendi paket sayfalarını içeren diğer paketlerin de yeniden yüklenmesi gerekir.

Paketleri kaldırıp yeniden yüklemek bağımlılık sorunları yaratabilir. Bunlardan kaçınmak için şunu kullanın:

yum -y reinstall man-pages git
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.