লিনাক্স প্যাকেজ পরিচালনার জন্য 20 টি ইউএম কমান্ড


এই নিবন্ধে, আমরা রেডহ্যাট দ্বারা বিকাশযুক্ত ইউইউএম (ইয়েলোডগ আপডেটার মডিফাইড) সরঞ্জামটি ব্যবহার করে লিনাক্স সিস্টেমে কীভাবে ইনস্টল, আপডেট, অপসারণ, প্যাকেজগুলি সন্ধান করতে, প্যাকেজগুলি এবং সংগ্রহস্থল পরিচালনা করতে শিখব। এই নিবন্ধে প্রদর্শিত উদাহরণ কমান্ডগুলি আমাদের সেন্টোস 6.3 সার্ভারে ব্যবহারিকভাবে পরীক্ষিত হয়, আপনি এই উপাদানগুলি অধ্যয়নের উদ্দেশ্যে, শংসাপত্রগুলির জন্য বা নতুন প্যাকেজ ইনস্টল করার উপায়গুলি আবিষ্কার করতে এবং আপনার সিস্টেমকে আপ টু ডেট রাখতে পারেন। এই নিবন্ধটির মূল প্রয়োজনীয়তা হ'ল, আপনার অবশ্যই কমান্ড এবং একটি ওয়ার্কিং লিনাক্স অপারেটিং সিস্টেমের বুনিয়াদি বোধগম্যতা থাকতে হবে, যেখানে আপনি নীচে তালিকাভুক্ত সমস্ত কমান্ড অন্বেষণ করতে এবং অনুশীলন করতে পারবেন।

ইউএম কি?

ইউইউএম (ইয়েলোডগ আপডেটার মডিফাইড) একটি ওপেন সোর্স কমান্ড-লাইন এবং আরপিএম (রেডহ্যাট প্যাকেজ ম্যানেজার) ভিত্তিক লিনাক্স সিস্টেমের জন্য গ্রাফিকাল ভিত্তিক প্যাকেজ পরিচালন সরঞ্জাম। এটি ব্যবহারকারী এবং সিস্টেম প্রশাসককে কোনও সিস্টেমে সহজেই ইনস্টল, আপডেট, অপসারণ বা অনুসন্ধান করার অনুমতি দেয়। এটি জিপিএল (জেনারেল পাবলিক লাইসেন্স) এর অধীনে ওপেন সোর্স হিসাবে শেঠ ভিডাল দ্বারা বিকাশিত এবং প্রকাশ করা হয়েছে, এর অর্থ যে কেউ বাগ ডাউনলোড করতে ও কাস্টমাইজড প্যাকেজগুলি বিকাশের জন্য কোডটি ডাউনলোড এবং অ্যাক্সেসের অনুমতি দিতে পারে। প্যাকেজগুলি তাদের নির্ভরতার সমস্যাগুলি সমাধান করে স্বয়ংক্রিয়ভাবে প্যাকেজ ইনস্টল করতে YUM অসংখ্য তৃতীয় পক্ষের সংগ্রহস্থল ব্যবহার করে।

ফায়ারফক্স 14 নামে একটি প্যাকেজ ইনস্টল করতে, কেবল নীচের কমান্ডটি চালান এটি স্বয়ংক্রিয়ভাবে ফায়ারফক্সের জন্য প্রয়োজনীয় সমস্ত নির্ভরতা খুঁজে পাবে এবং ইনস্টল করবে।

# yum install firefox
Loaded plugins: fastestmirror
Dependencies Resolved

================================================================================================
 Package                    Arch        Version                    Repository            Size        
================================================================================================
Updating:
firefox                        i686        10.0.6-1.el6.centos     updates             20 M
Updating for dependencies:
 xulrunner                     i686        10.0.6-1.el6.centos     updates             12 M

Transaction Summary
================================================================================================
Install       0 Package(s)
Upgrade       2 Package(s)

Total download size: 32 M
Is this ok [y/N]: y
Downloading Packages:
(1/2): firefox-10.0.6-1.el6.centos.i686.rpm                                |  20 MB   01:10
(2/2): xulrunner-10.0.6-1.el6.centos.i686.rpm                              |  12 MB   00:52
------------------------------------------------------------------------------------------------
Total                                                           63 kB/s |  32 MB   02:04

Updated:
  firefox.i686 0:10.0.6-1.el6.centos

Dependency Updated:
  xulrunner.i686 0:10.0.6-1.el6.centos

Complete!

উপরের কমান্ডটি আপনার সিস্টেমে কোনও প্যাকেজ ইনস্টল করার আগে নিশ্চিতকরণ জিজ্ঞাসা করবে। আপনি যদি কোনও নিশ্চিতকরণ না জিজ্ঞাসা করে প্যাকেজগুলি স্বয়ংক্রিয়ভাবে ইনস্টল করতে চান তবে নীচের উদাহরণ হিসাবে প্রদর্শিত বিকল্প -y ব্যবহার করুন।

# yum -y install firefox

একটি প্যাকেজ সম্পূর্ণরূপে তাদের সম্পূর্ণ নির্ভরতা অপসারণ করতে, নীচের মত করে নিম্নলিখিত কমান্ডটি চালান।

# yum remove firefox
Loaded plugins: fastestmirror
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package firefox.i686 0:10.0.6-1.el6.centos set to be erased
--> Finished Dependency Resolution

Dependencies Resolved

====================================================================================================
 Package                    Arch        Version                        Repository            Size        
====================================================================================================
Removing:
 firefox                    i686        10.0.6-1.el6.centos            @updates              23 M

Transaction Summary
====================================================================================================
Remove        1 Package(s)
Reinstall     0 Package(s)
Downgrade     0 Package(s)

Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Erasing        : firefox-10.0.6-1.el6.centos.i686                                                                                                                          1/1

Removed:
  firefox.i686 0:10.0.6-1.el6.centos

Complete!

একইভাবে উপরের কমান্ডটি প্যাকেজ অপসারণের আগে নিশ্চিতকরণ জিজ্ঞাসা করবে। নিশ্চিতকরণ প্রম্পটটি অক্ষম করতে কেবল নীচের মত দেখানো বিকল্প -y যুক্ত করুন।

# yum -y remove firefox

ধরা যাক আপনার মাইএসকিউএল প্যাকেজের পুরানো সংস্করণ রয়েছে এবং আপনি এটি সর্বশেষতম স্থিতিশীল সংস্করণে আপডেট করতে চান। কেবলমাত্র নিম্নলিখিত কমান্ডটি চালান এটি সমস্ত নির্ভরতা সম্পর্কিত সমস্যাগুলি স্বয়ংক্রিয়ভাবে সমাধান করবে এবং সেগুলি ইনস্টল করবে।

# yum update mysql
Loaded plugins: fastestmirror
Dependencies Resolved

============================================================================================================
 Package            Arch                Version                    Repository                    Size
============================================================================================================
Updating:
 vsftpd             i386                2.0.5-24.el5_8.1           updates                       144 k

Transaction Summary
============================================================================================================
Install       0 Package(s)
Upgrade       1 Package(s)

Total size: 144 k
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Updating       : vsftpd                                                                     1/2
  Cleanup        : vsftpd                                                                     2/2

Updated:
  vsftpd.i386 0:2.0.5-24.el5_8.1

Complete!

নামের সাথে নির্দিষ্ট প্যাকেজটি অনুসন্ধান করতে তালিকার ফাংশনটি ব্যবহার করুন। উদাহরণস্বরূপ, ওপেনশ নামে পরিচিত প্যাকেজটি অনুসন্ধান করতে কমান্ডটি ব্যবহার করুন।

# yum list openssh
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.neu.edu.cn
 * epel: mirror.neu.edu.cn
 * extras: mirror.neu.edu.cn
 * rpmforge: mirror.nl.leaseweb.net
 * updates: mirror.nus.edu.sg
Installed Packages
openssh.i386                                       4.3p2-72.el5_6.3                                                                      installed
Available Packages                                 4.3p2-82.el5                                                                          base

আপনার সন্ধান আরও নিখুঁত করতে প্যাকেজের নামটি তাদের সংস্করণ দিয়ে সংজ্ঞায়িত করুন, যদি আপনি জানেন তবে। উদাহরণস্বরূপ, প্যাকেজের নির্দিষ্ট সংস্করণ ওপেনশ -৪.৩p2 অনুসন্ধান করতে কমান্ডটি ব্যবহার করুন।

# yum list openssh-4.3p2

আপনি যদি প্যাকেজের সঠিক নামটি মনে না রাখেন তবে আপনার নির্দিষ্ট প্যাকেজের নামের সাথে মেলে সমস্ত উপলভ্য প্যাকেজ অনুসন্ধান করতে অনুসন্ধান ফাংশনটি ব্যবহার করুন। উদাহরণস্বরূপ, শব্দের সাথে মেলে এমন সমস্ত প্যাকেজ অনুসন্ধান করা।

# yum search vsftpd
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.neu.edu.cn
 * epel: mirror.neu.edu.cn
 * extras: mirror.neu.edu.cn
 * rpmforge: mirror.nl.leaseweb.net
 * updates: ftp.iitm.ac.in
============================== Matched: vsftpd ========================
ccze.i386 : A robust log colorizer
pure-ftpd-selinux.i386 : SELinux support for Pure-FTPD
vsftpd.i386 : vsftpd - Very Secure Ftp Daemon

বলুন যে আপনি কোনও প্যাকেজ ইনস্টল করার আগে তার তথ্য জানতে চান। একটি প্যাকেজের তথ্য পেতে কেবল নীচের আদেশটি জারি করুন।

# yum info firefox
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.neu.edu.cn
 * epel: mirror.neu.edu.cn
 * extras: mirror.neu.edu.cn
 * rpmforge: mirror.nl.leaseweb.net
 * updates: ftp.iitm.ac.in
Available Packages
Name       : firefox
Arch       : i386
Version    : 10.0.6
Release    : 1.el5.centos
Size       : 20 M
Repo       : updates
Summary    : Mozilla Firefox Web browser
URL        : http://www.mozilla.org/projects/firefox/
License    : MPLv1.1 or GPLv2+ or LGPLv2+
Description: Mozilla Firefox is an open-source web browser, designed for standards
           : compliance, performance and portability.

Yum ডাটাবেসে সমস্ত উপলব্ধ প্যাকেজ তালিকাভুক্ত করতে, নীচের কমান্ডটি ব্যবহার করুন।

# yum list | less

সিস্টেমে সমস্ত ইনস্টল করা প্যাকেজ তালিকাভুক্ত করতে কমান্ডের নীচে ইস্যু করুন, এটি ইনস্টল করা সমস্ত প্যাকেজ প্রদর্শন করবে।

# yum list installed | less

নির্দিষ্ট প্যাকেজের কোন প্যাকেজের অন্তর্ভুক্ত তা অনুসন্ধান করতে ইউম ফাংশন সরবরাহ করা হয়। উদাহরণস্বরূপ, আপনি যদি প্যাকেজের /etc/httpd/conf/httpd.conf নামটি জানতে চান।

# yum provides /etc/httpd/conf/httpd.conf
Loaded plugins: fastestmirror
httpd-2.2.3-63.el5.centos.i386 : Apache HTTP Server
Repo        : base
Matched from:
Filename    : /etc/httpd/conf/httpd.conf

httpd-2.2.3-63.el5.centos.1.i386 : Apache HTTP Server
Repo        : updates
Matched from:
Filename    : /etc/httpd/conf/httpd.conf

httpd-2.2.3-65.el5.centos.i386 : Apache HTTP Server
Repo        : updates
Matched from:
Filename    : /etc/httpd/conf/httpd.conf

httpd-2.2.3-53.el5.centos.1.i386 : Apache HTTP Server
Repo        : installed
Matched from:
Other       : Provides-match: /etc/httpd/conf/httpd.conf

আপনার সিস্টেমে ইনস্টল হওয়া প্যাকেজগুলির মধ্যে কতগুলি আপডেট উপলব্ধ রয়েছে তা জানতে নিম্নলিখিত কমান্ডটি ব্যবহার করে দেখুন।

# yum check-update

সমস্ত সুরক্ষা এবং বাইনারি প্যাকেজ আপডেটের সাথে আপনার সিস্টেমকে আপ টু ডেট রাখার জন্য নিম্নলিখিত কমান্ডটি চালান run এটি আপনার সিস্টেমে সমস্ত সাম্প্রতিক প্যাচ এবং সুরক্ষা আপডেট ইনস্টল করবে।

# yum update

লিনাক্সে, প্যাকেজের সংখ্যা নির্দিষ্ট গ্রুপে বান্ডিল করা হয়। Yum এর সাথে পৃথক প্যাকেজ ইনস্টল করার পরিবর্তে আপনি একটি নির্দিষ্ট গ্রুপ ইনস্টল করতে পারেন যা গ্রুপের সাথে সম্পর্কিত সমস্ত প্যাকেজ ইনস্টল করবে। উদাহরণস্বরূপ, সমস্ত উপলব্ধ গ্রুপগুলি তালিকাভুক্ত করার জন্য নিম্নলিখিত কমান্ডটি জারি করুন।

# yum grouplist
Installed Groups:
   Administration Tools
   DNS Name Server
   Dialup Networking Support
   Editors
   Engineering and Scientific
   FTP Server
   Graphics
   Java Development
   Legacy Network Server
Available Groups:
   Authoring and Publishing
   Base
   Beagle
   Cluster Storage
   Clustering
   Development Libraries
   Development Tools
   Eclipse
   Educational Software
   KDE (K Desktop Environment)
   KDE Software Development

একটি নির্দিষ্ট প্যাকেজ গ্রুপ ইনস্টল করতে, আমরা গ্রুপ ইনস্টল হিসাবে বিকল্পটি ব্যবহার করি। উদাহরণস্বরূপ, "মাইএসকিউএল ডেটাবেস" ইনস্টল করতে কেবল নীচের কমান্ডটি প্রয়োগ করুন।

# yum groupinstall 'MySQL Database'
Dependencies Resolved

=================================================================================================
Package								Arch      Version			 Repository        Size
=================================================================================================
Updating:
 unixODBC                           i386      2.2.11-10.el5      base              290 k
Installing for dependencies:
 unixODBC-libs                      i386      2.2.11-10.el5      base              551 k

Transaction Summary
=================================================================================================
Install       1 Package(s)
Upgrade       1 Package(s)

Total size: 841 k
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing     : unixODBC-libs	1/3
  Updating       : unixODBC         2/3
  Cleanup        : unixODBC         3/3

Dependency Installed:
  unixODBC-libs.i386 0:2.2.11-10.el5

Updated:
  unixODBC.i386 0:2.2.11-10.el5

Complete!

যে কোনও বিদ্যমান ইনস্টল করা গ্রুপ প্যাকেজ আপডেট করতে, নীচের চিত্রের মতো নিম্নলিখিত কমান্ডটি চালান।

# yum groupupdate 'DNS Name Server'

Dependencies Resolved
================================================================================================================
 Package			Arch	        Version				Repository           Size
================================================================================================================
Updating:
 bind                           i386            30:9.3.6-20.P1.el5_8.2          updates              981 k
 bind-chroot                    i386            30:9.3.6-20.P1.el5_8.2          updates              47 k
Updating for dependencies:
 bind-libs                      i386            30:9.3.6-20.P1.el5_8.2          updates              864 k
 bind-utils                     i386            30:9.3.6-20.P1.el5_8.2          updates              174 k

Transaction Summary
================================================================================================================
Install       0 Package(s)
Upgrade       4 Package(s)

Total size: 2.0 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Updating       : bind-libs            1/8
  Updating       : bind                 2/8
  Updating       : bind-chroot          3/8
  Updating       : bind-utils           4/8
  Cleanup        : bind                 5/8
  Cleanup        : bind-chroot          6/8
  Cleanup        : bind-utils           7/8
  Cleanup        : bind-libs            8/8

Updated:
  bind.i386 30:9.3.6-20.P1.el5_8.2                  bind-chroot.i386 30:9.3.6-20.P1.el5_8.2

Dependency Updated:
  bind-libs.i386 30:9.3.6-20.P1.el5_8.2             bind-utils.i386 30:9.3.6-20.P1.el5_8.2

Complete!

সিস্টেম থেকে যে কোনও ইনস্টল থাকা গোষ্ঠী মুছতে বা মুছে ফেলার জন্য নীচের কমান্ডটি ব্যবহার করুন।

# yum groupremove 'DNS Name Server'

Dependencies Resolved

===========================================================================================================
 Package                Arch              Version                         Repository          Size
===========================================================================================================
Removing:
 bind                   i386              30:9.3.6-20.P1.el5_8.2          installed           2.1 M
 bind-chroot            i386              30:9.3.6-20.P1.el5_8.2          installed           0.0

Transaction Summary
===========================================================================================================
Remove        2 Package(s)
Reinstall     0 Package(s)
Downgrade     0 Package(s)

Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Erasing        : bind                                                   1/2
warning: /etc/sysconfig/named saved as /etc/sysconfig/named.rpmsave
  Erasing        : bind-chroot                                            2/2

Removed:
  bind.i386 30:9.3.6-20.P1.el5_8.2                                        bind-chroot.i386 30:9.3.6-20.P1.el5_8.2

Complete!

আপনার সিস্টেমে সমস্ত সক্ষম Yum সংগ্রহস্থল তালিকা করতে, নিম্নলিখিত বিকল্পটি ব্যবহার করুন।

# yum repolist

repo id                     repo name                                            status
base                        CentOS-5 - Base                                      enabled:  2,725
epel                        Extra Packages for Enterprise Linux 5 - i386         enabled:  5,783
extras                      CentOS-5 - Extras                                    enabled:    282
mod-pagespeed               mod-pagespeed                                        enabled:      1
rpmforge                    RHEL 5 - RPMforge.net - dag                          enabled: 11,290
updates                     CentOS-5 - Updates                                   enabled:    743
repolist: 20,824

নিম্নলিখিত কমান্ডটি সিস্টেমে সমস্ত সক্ষম ও অক্ষম yum সংগ্রহস্থল প্রদর্শন করবে।

# yum repolist all

repo id                     repo name                                            status
C5.0-base                   CentOS-5.0 - Base                                    disabled
C5.0-centosplus             CentOS-5.0 - Plus                                    disabled
C5.0-extras                 CentOS-5.0 - Extras                                  disabled
base                        CentOS-5 - Base                                      enabled:  2,725
epel                        Extra Packages for Enterprise Linux 5 - i386         enabled:  5,783
extras                      CentOS-5 - Extras                                    enabled:    282
repolist: 20,824

নির্দিষ্ট সক্ষম বা অক্ষম সংগ্রহস্থল থেকে একটি নির্দিষ্ট প্যাকেজ ইনস্টল করতে, আপনাকে অবশ্যই আপনার yum কমান্ডে ableenablerepo বিকল্পটি ব্যবহার করতে হবে। উদাহরণস্বরূপ, পিএইচপিএমআইএডমিন 3.5.2 প্যাকেজ ইনস্টল করার জন্য, কমান্ডটি কার্যকর করুন।

# yum --enablerepo=epel install phpmyadmin

Dependencies Resolved
=============================================================================================
 Package                Arch           Version            Repository           Size
=============================================================================================
Installing:
 phpMyAdmin             noarch         3.5.1-1.el6        epel                 4.2 M

Transaction Summary
=============================================================================================
Install       1 Package(s)

Total download size: 4.2 M
Installed size: 17 M
Is this ok [y/N]: y
Downloading Packages:
phpMyAdmin-3.5.1-1.el6.noarch.rpm                       | 4.2 MB     00:25
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : phpMyAdmin-3.5.1-1.el6.noarch             1/1
  Verifying  : phpMyAdmin-3.5.1-1.el6.noarch             1/1

Installed:
  phpMyAdmin.noarch 0:3.5.1-1.el6

Complete!

ইয়াম ইউটিলিটি একটি কাস্টম শেল সরবরাহ করে যেখানে আপনি একাধিক কমান্ড প্রয়োগ করতে পারেন।

# yum shell
Loaded plugins: fastestmirror
Setting up Yum Shell
> update httpd
Loading mirror speeds from cached hostfile
 * base: mirrors.sin3.sg.voxel.net
 * epel: ftp.riken.jp
 * extras: mirrors.sin3.sg.voxel.net
 * updates: mirrors.sin3.sg.voxel.net
Setting up Update Process
>

ডিফল্টরূপে yum সমস্ত উপ-ডিরেক্টরিতে সমস্ত সংগ্রহস্থল সক্ষম প্যাকেজ ডেটা রাখে, সক্ষম করা সংগ্রহস্থল থেকে সমস্ত ক্যাশেড ফাইল সাফ করার জন্য আপনাকে সমস্ত ক্যাশে পরিষ্কার করার জন্য নীচের কমান্ডটি নিয়মিত চালনা করতে হবে এবং নিশ্চিত করতে হবে যে অপ্রয়োজনীয় স্থান ব্যবহার করছে কিছুই নেই। আমরা নীচের কমান্ডটির আউটপুট দিতে চাই না, কারণ আমরা ক্যাশেড ডেটা যেমন আছে তেমন রাখতে চাই।

# yum clean all

Yum কমান্ডের অতীতের সমস্ত লেনদেন দেখতে, নীচের কমান্ডটি ব্যবহার করুন।

# yum history

Loaded plugins: fastestmirror
ID     | Login user               | Date and time    | Action(s)      | Altered
-------------------------------------------------------------------------------
    10 | root               | 2012-08-11 15:19 | Install        |    3
     9 | root               | 2012-08-11 15:11 | Install        |    1
     8 | root               | 2012-08-11 15:10 | Erase          |    1 EE
     7 | root               | 2012-08-10 17:44 | Install        |    1
     6 | root               | 2012-08-10 12:19 | Install        |    2
     5 | root               | 2012-08-10 12:14 | Install        |    3
     4 | root               | 2012-08-10 12:12 | I, U           |   13 E<
     3 | root               | 2012-08-09 13:01 | Install        |    1 >
     2 | root               | 2012-08-08 20:13 | I, U           |  292 EE
     1 | System            | 2012-08-08 17:15 | Install        |  560
history list

আমরা yam কমান্ডগুলিকে তাদের উদাহরণগুলির সাথে অগ্রিম করার জন্য সমস্ত বেসিকটি কভার করার চেষ্টা করেছি। যদি yum কমান্ড সম্পর্কিত কোনও কিছু বাদ পড়ে থাকতে পারে। আমাদের মন্তব্য বাক্সের মাধ্যমে আমাদের আপডেট করুন। সুতরাং, আমরা প্রাপ্ত মতামতের ভিত্তিতে একই আপডেট করে চলি keep