ন্যূনতম সেন্টোস ডকারের ধারকটিতে ম্যান পৃষ্ঠাগুলি ইনস্টল করা যায় না


13

আমার ন্যূনতম সেন্টোস 7 ডকার চিত্র রয়েছে এবং আমি আমার ডকফাইফিলটি ডিবাগ করতে সহায়তা করার জন্য এতে কিছু ম্যান পৃষ্ঠা পেতে চেষ্টা করছি। বাক্সের বাইরে, এতে খুব বেশি কিছু নেই:

# man ls
No manual entry for ls

প্রতি এই Serverfault উত্তর , আমি ইনস্টল man-pagesআরপিএম, এবং যে জরিমানা যেতে করলো:

# yum install -y man-pages
Loaded plugins: fastestmirror, ovl
Loading mirror speeds from cached hostfile
 * base: mirror.vtti.vt.edu
 * extras: centos.mbni.med.umich.edu
 * updates: centos.netnitco.net
Resolving Dependencies
--> Running transaction check
---> Package man-pages.noarch 0:3.53-5.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

======================================================================================================
 Package                  Arch                  Version                     Repository           Size
======================================================================================================
Installing:
 man-pages                noarch                3.53-5.el7                  base                5.0 M

Transaction Summary
======================================================================================================
Install  1 Package

Total download size: 5.0 M
Installed size: 4.6 M
Downloading packages:
man-pages-3.53-5.el7.noarch.rpm                                                | 5.0 MB  00:00:01     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : man-pages-3.53-5.el7.noarch                                                        1/1 
  Verifying  : man-pages-3.53-5.el7.noarch                                                        1/1 

Installed:
  man-pages.noarch 0:3.53-5.el7                                                                       

Complete!

যাহোক:

# man ls
No manual entry for ls

আমি ম্যান পৃষ্ঠাটি অন্তর্ভুক্ত করার কথা ছিল rpmকিনা তা যাচাই করতাম এবং দেখে মনে হয় এটির মতো:man-pagesls

# rpm -ql man-pages | grep -w ls
/usr/share/man/man1p/ls.1p.gz

তবে বাস্তবে এটি ইনস্টল করা হয়েছিল বলে মনে হচ্ছে না:

# man 1p ls
No manual entry for ls in section 1p
# ls -l /usr/share/man/man1p/
total 0

এবং এটি ফাইল সিস্টেমের অন্য কোথাও বলে মনে হয় না।

# find / -name ls.1\*
#

আমি ফাইলগুলিতে তৈরি করতে পারি /usr/share/man/man1p/, সুতরাং এটি সম্ভবত কিছু ডকার ভার্চুয়াল ফাইল সিস্টেম অদ্ভুততা নয়।

এর সেরা অংশটি হ'ল আমি এই মুহূর্তে যা চেয়েছিলাম useraddতা হ'ল কমান্ডের ম্যান পেজ , যা এমনকি আরপিএম-এ নেই। এটা ভিতরে shadow-utils

# yum whatprovides /usr/share/man/man8/useradd.8.gz
Loaded plugins: fastestmirror, ovl
Loading mirror speeds from cached hostfile
 * base: mirror.vtti.vt.edu
 * extras: mirror.tzulo.com
 * updates: centos.netnitco.net
2:shadow-utils-4.1.5.1-18.el7.x86_64 : Utilities for managing accounts and shadow password files
Repo        : base
Matched from:
Filename    : /usr/share/man/man8/useradd.8.gz

যা ইতিমধ্যে ইনস্টল করা আছে।

# yum install shadow-utils
Loaded plugins: fastestmirror, ovl
Loading mirror speeds from cached hostfile
 * base: mirror.vtti.vt.edu
 * extras: centos.mbni.med.umich.edu
 * updates: centos.netnitco.net
Package 2:shadow-utils-4.1.5.1-18.el7.x86_64 already installed and latest version
Nothing to do

এবং, প্রকৃতপক্ষে, বাইনারিগুলি (যেমন /usr/sbin/useradd) রয়েছে। ম্যান পেজ না।

# ls -l /usr/share/man/man8/useradd.8.gz
ls: cannot access /usr/share/man/man8/useradd.8.gz: No such file or directory

সুতরাং আমার প্রশ্নগুলি হ'ল:

  1. shadow-utilsআমি যখন বাইনারিগুলি খুঁজে পেতে পারি তখন কেন আরপিএম- তে থাকা ম্যান পেজগুলির মধ্যে আমি কেন খুঁজে পাচ্ছি না?
  2. কেন (সফলভাবে) man-pagesআরপিএম ইনস্টল করে সেই আরপিএম থাকা ফাইলগুলি ইনস্টল করে না?

আপডেট করুন: প্রতি হারুন Marasco এর উত্তর এবং msuchy এর মন্তব্য , আমি চেষ্টা yum reinstall shadow-utils। যেমনটি yum install man-pages, এটি সাফল্যের সাথে শেষ হয়েছে বলে মনে হয় তবে বাস্তবে কোনও ফাইল এতে লাগায় না /usr/share/man/


সেন্টোস 6 ডকার ইমজে একইরকম প্রশ্ন: unix.stackexchange.com/questions/182500/no-manual-entry- for
man

সেন্টোস a সহ একটি ভ্যাগ্রান্ট সেটআপে আমার কাছে ঘটেছিল - আমি দেখতে পেয়েছি যে প্যাকেজটি ইনস্টল হওয়ার আগে ইনস্টল হওয়া কিছু প্যাকেজের man-pagesম্যান পেজ নেই। সমাধানটি হ'ল এই জাতীয় প্যাকেজগুলি পুনরায় ইনস্টল করা হবে, উদাহরণস্বরূপ yum reinstall yum rpmtwo দুটি কভার করা।
রিচভেল

উত্তর:


12

আপনার চিত্রটি সম্ভবত হয়েছেnodocs লেনদেন পতাকা ইস কনফিগারেশন (Cf. সেট /etc/yum.conf)।

আপনি ম্যান পেজগুলির জন্য যে প্যাকেজগুলি চান সেগুলি ইনস্টল করার আগে (পুনরায়) বিশ্বব্যাপী (বা yum কমান্ড লাইনে) এটি সরিয়ে ফেলতে পারেন।

উদাহরণ স্বরূপ:

yum --setopt=tsflags='' reinstall shadow-utils

দক্ষিণ-শীর্ষ সম্মেলনের উত্তরে--setopt=tsflags='' যেমন পরামর্শ দেওয়া উচিত ? ( জন্য )=-
ডেভিড মোলস

1
@ ডেভিডমোলস, হ্যাঁ, এটি একটি টাইপো ছিল - রেফারেন্সড প্রজেক্টটোমিক ডকুমেন্টেও সঠিক সুইচ সিনট্যাক্স ব্যবহার করা হয়েছিল।
ম্যাক্সচলেপজিগ

ধন্যবাদ। আমি সবেমাত্র এটি স্থির করেছিলাম তবে 6-চরিত্রের সীমা। :)
ডেভিড মোলস

ছায়া-ব্যবহারগুলি পুনরায় ইনস্টল করবেন কেন?
টাইনা

@ টিনা কারণ এটি প্যাকেজ useraddযা কমান্ড সরবরাহ করে (যা প্রশ্নের মধ্যে উল্লেখ করা হয়েছিল)।
ম্যাক্সচলেপজিগ

5

এখানে কিছুই কাজ করেনি এবং সর্বোপরি স্বীকৃত উত্তরটিতে একটি টাইপ রয়েছে। আমার এখানে মন্তব্য করার মতো পর্যাপ্ত রেপ নেই, তাই কারও সাহায্য করার ক্ষেত্রে আমি এটি উত্তর হিসাবে এখানে যুক্ত করছি।

ম্যান পেজ সহ একটি প্যাকেজ ইনস্টল করতে:

yum --setopt=tsflags='' install man-db

তারপর:

yum --setopt=tsflags='' install {your-package-name}

অথবা, আপনি স্থায়ীভাবে yum.conf থেকে লাইনটি সরাতে পারেন যা ম্যান পেজগুলি ইনস্টল করা থেকে বাধা দেয়। এটি করতে, ব্যবহার করুন:

sed -i '/tsflags=nodocs/d' /etc/yum.conf

তারপরে আপনি yum installবা yum reinstallসাধারণভাবে ব্যবহার করতে পারেন ।

সূত্র


+1 এছাড়াও, কেবল নোডোকস লাইনটি মন্তব্য করতে,sed -i 's/tsflags=nodocs/# &/' /etc/yum.conf
মাইকেল

2

আমি জানি এটি একটি পুরানো প্রশ্ন তবে আমি এই ট্র্যাকিংয়ের জন্য যে সময় ব্যয় করেছি তা অবশেষে অন্য কারও কাজে আসবে।

সমস্যাটি ডকার ইমেজে যেভাবে আরপিএম কনফিগার করা হয়েছে তার সাথে সম্পর্কিত, প্রথমে আরপিএমের কনফিগারেশনে excludedocsনির্দেশিকাটি তালিকাভুক্ত রয়েছে কিনা তা পরীক্ষা করে দেখুন :

# rpm --showrc | grep docs

যদি এটি সেখানে থাকে তবে আপনাকে অবশ্যই ফাইলটি সন্ধান করতে হবে যা এটি আমার ক্ষেত্রে এটি নির্দিষ্ট করে এবং এটি /etc/rpm/macros.imgcreateসরিয়ে ফেলতে হবে

ইউমের তারপরে প্রত্যাশা অনুযায়ী সমস্ত ম্যান-পৃষ্ঠা ইনস্টলেশন করা উচিত (প্রদত্ত যে nodocs tsflagউপরে বর্ণিত আপনার উপরেও নেই) ।


1

ডকার চিত্রটি চূড়ান্তভাবে ছিটকে গেছে। আমি বিশ্বাস করি আরপিএম ইনস্টল হওয়ার পরে তারা ম্যান পৃষ্ঠাগুলি সরিয়ে দেয় । আপনি এটি দিয়ে যাচাই করতে পারেন rpm -V shadow-utils। আমি জানি প্যাকেজগুলি আপগ্রেড করতে ডেল্টা আরপিএম ব্যবহার করার চেষ্টা করতে আমার সমস্যা হয়েছে কারণ ম্যান পেজগুলি অনুপস্থিত।

দুঃখের বিষয়, আমি মনে করি যে কোনও কিছুর জন্য ম্যান পেজ পাওয়ার একমাত্র উপায় হ'ল আরপিএমটি পুনরায় ইনস্টল করা বা আরপিএম থেকে ম্যানুয়ালি এটিকে বের করে এনে জায়গায় রেখে দেওয়া।

আমি অনুমান এই সাইটটি দেখুন ।


2
হ্যাঁ. yum reinstall shadow-utilsএটি ঠিক করবে।
মিসুচি

@ এমচি আমি কেবল এটি চেষ্টা করেছি, এবং না, তা হয় না। সম্ভবত man-pagesযথাযথভাবে ইনস্টল করা থেকে বাধা দেয় কিসের সাথে সম্পর্কিত ?
ডেভিড মোলস

@ অ্যারন-ডি-মারাসকো এটি ব্যাখ্যা করে যে কেন তারা শুরু করার জন্য ইনস্টল করা হচ্ছে না, তবে আমি যখন ইনস্টল করার চেষ্টা করব তখন কী চলছে তা ব্যাখ্যা করে না man-pages
ডেভিড মোলস

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.