اطلاعیه

بستن
No announcement yet.

مدیریت بسته های نرم افزاری در لینوکس

بستن
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    مدیریت بسته های نرم افزاری در لینوکس

    در این مقاله می آموزیم که چگونه از ابزار YUM توسعه یافته توسط Red Hat برای نصب ، بروزرسانی ، حذف ، جستجو، و مدیریت نرم افزار استفاده کنیم . یام (Yellowdog Updater Modified) که به اختصار به آن YUM گفته میشود یک خط فرمان متن باز و ابزاری برای مدیریت بسته گرافیکی مبتنی بر RPM (red hat package manager) در سیستم عامل لینوکس است و به کاربران و مدیران سیستم اجازه می دهد که به راحتی بسته نرم افزاری در سیستم را نصب، بروز رسانی، حذف و یا جستجو کنند. این ابزار متن باز توسعه یافته توسط Seth Vidal دارای مجوز GPL (General Public License) می باشد.

    برای بزرگتر شدن عکس روی آن کلیک کنید  نام:	yum-300x250.jpg نمایش ها:	1 اندازه:	16.0 KB شناسه:	18430
    مدیریت بسته های نرم افزاری در لینوکس


    1 - نصب بسته نرم افزاری با استفاده از YUM :
    برای نصب یک بسته گیت git فقط دستور زیر را اجرا کنید تا به طور خودکار تمام پکیج های وابسته به git پیدا و نصب شود.

    کد PHP:
    [root@devops ~]# yum install git
    Loaded pluginsfastestmirror
    Loading mirror speeds from cached hostfile
    basemirrors.grandcloud.cn
    extrasmirrors.grandcloud.cn
    updatesmirrors.grandcloud.cn
    Setting up Install Process
    Resolving Dependencies
    --> Running transaction check
    ---> Package git.x86_64 0:1.7.1-3.el6_4.1 will be installed
    --> Processing Dependencyperl-Git 1.7.1-3.el6_4.1 for packagegit-1.7.1-3.el6_4.1.x86_64
    --> Processing Dependencyrsync for packagegit-1.7.1-3.el6_4.1.x86_64
    --> Processing Dependencyperl(Git) for packagegit-1.7.1-3.el6_4.1.x86_64
    --> Processing Dependencyperl(Error) for packagegit-1.7.1-3.el6_4.1.x86_64
    --> Running transaction check
    ---> Package perl-Error.noarch 1:0.17015-4.el6 will be installed
    ---> Package perl-Git.noarch 0:1.7.1-3.el6_4.1 will be installed
    ---> Package rsync.x86_64 0:3.0.6-9.el6_4.1 will be installed
    --> Finished Dependency Resolution
    Dependencies Resolved
    ==========================================================================================================
    Package Arch Version Repository Size
    ==========================================================================================================
    Installing:
    git x86_64 1.7.1-3.el6_4.1 base 4.6 M
    Installing 
    for dependencies:
    perl-Error noarch 1:0.17015-4.el6 base 29 k
    perl
    -Git noarch 1.7.1-3.el6_4.1 base 28 k
    rsync x86_64 3.0.6
    -9.el6_4.1 base 334 k
    Transaction Summary
    ==========================================================================================================
    Install 4 Package(s)
    Total download size5.0 M
    Installed size
    15 M
    Is this ok 
    [y/N]: y
    Downloading Packages
    :
    (
    1/4): git-1.7.1-3.el6_4.1.x86_64.rpm 4.6 MB 00:03
    (2/4): perl-Error-0.17015-4.el6.noarch.rpm 29 kB 00:00
    (3/4): perl-Git-1.7.1-3.el6_4.1.noarch.rpm 28 kB 00:00
    (4/4): rsync-3.0.6-9.el6_4.1.x86_64.rpm 334 kB 00:00
    ----------------------------------------------------------------------------------------------------------
    Total 1.1 MB/5.0 MB 00:04
    Running rpm_check_debug
    Running Transaction Test
    Transaction Test Succeeded
    Running Transaction
    Installing 
    1:perl-Error-0.17015-4.el6.noarch 1/4
    Installing 
    rsync-3.0.6-9.el6_4.1.x86_64 2/4
    Installing 
    perl-Git-1.7.1-3.el6_4.1.noarch 3/4
    Installing 
    git-1.7.1-3.el6_4.1.x86_64 4/4
    Verifying 
    rsync-3.0.6-9.el6_4.1.x86_64 1/4
    Verifying 
    git-1.7.1-3.el6_4.1.x86_64 2/4
    Verifying 
    perl-Git-1.7.1-3.el6_4.1.noarch 3/4
    Verifying 
    1:perl-Error-0.17015-4.el6.noarch 4/4
    Installed
    :
    git.x86_64 0:1.7.1-3.el6_4.1
    Dependency Installed
    :
    perl-Error.noarch 1:0.17015-4.el6 perl-Git.noarch 0:1.7.1-3.el6_4.1 rsync.x86_64 0:3.0.6-9.el6_4.1
    Complete
    !
    [
    root@devops ~]

    دستور فوق به تایید نیازخواهد داشت، پس از آن بسته نرم افزار بر روی سیستم شما نصب میشود. اگر برای نصب نرم افزار به طور خودکار هیچ تائیدیه ای از شما خواسته نشد ، همانطور که در مثال زیر نشان داده شده است می توانید از گزینه y- استفاده کنید.

    کد PHP:
    [root@devops ~]# yum -y install gcc 

    2 - حذف بسته های نرم افزاری با استفاده از YUM :
    اگر می خواهید بسته را با تمام وابستگیهای آن به طور کامل حذف کنید ، فقط باید دستور زیر را اجرا کنید :

    کد PHP:
    [root@devops ~]# yum remove git
    Loaded pluginsfastestmirror
    Setting up Remove Process
    Resolving Dependencies
    --> Running transaction check
    ---> Package git.x86_64 0:1.7.1-3.el6_4.1 will be erased
    --> Processing Dependencygit 1.7.1-3.el6_4.1 for packageperl-Git-1.7.1-3.el6_4.1.noarch
    --> Running transaction check
    ---> Package perl-Git.noarch 0:1.7.1-3.el6_4.1 will be erased
    --> Finished Dependency Resolution
    Dependencies Resolved
    ==========================================================================================================
    Package Arch Version Repository Size
    ==========================================================================================================
    Removing:
    git x86_64 1.7.1-3.el6_4.1 @base 15 M
    Removing 
    for dependencies:
    perl-Git noarch 1.7.1-3.el6_4.1 @base 35 k
    Transaction Summary
    ==========================================================================================================
    Remove 2 Package(s)
    Installed size15 M
    Is this ok 
    [y/N]: y
    Downloading Packages
    :
    Running rpm_check_debug
    Running Transaction Test
    Transaction Test Succeeded
    Running Transaction
    Erasing 
    perl-Git-1.7.1-3.el6_4.1.noarch 1/2
    Erasing 
    git-1.7.1-3.el6_4.1.x86_64 2/2
    Verifying 
    git-1.7.1-3.el6_4.1.x86_64 1/2
    Verifying 
    perl-Git-1.7.1-3.el6_4.1.noarch 2/2
    Removed
    :
    git.x86_64 0:1.7.1-3.el6_4.1
    Dependency Removed
    :
    perl-Git.noarch 0:1.7.1-3.el6_4.1
    Complete
    !
    [
    root@devops ~]
    3 - به روز رسانی بسته های نرم افزاری با استفاده از YUM :
    فرض کنید که میخواهید بسته نرم افزار GCC خود را به آخرین نسخه پایدار بروزرسانی کنید . برای اینکار فقط باید فرمان زیر را اجرا کنید، تا به طور خودکار تمام پکیج های وابسته را بروزرسانی و نصب کند.

    کد PHP:
    [root@devops ~]# yum update gcc
    Loaded pluginsfastestmirror
    Loading mirror speeds from cached hostfile
    basemirrors.grandcloud.cn
    extrasmirrors.grandcloud.cn
    updatesmirrors.grandcloud.cn
    Setting up Update Process
    Resolving Dependencies
    --> Running transaction check
    ---> Package gcc.x86_64 0:4.4.7-3.el6 will be updated
    --> Processing Dependencygcc 4.4.7-3.el6 for packagegcc-c++-4.4.7-3.el6.x86_64
    ---> Package gcc.x86_64 0:4.4.7-4.el6 will be an update
    --> Processing Dependencylibgomp 4.4.7-4.el6 for packagegcc-4.4.7-4.el6.x86_64
    --> Processing Dependencycpp 4.4.7-4.el6 for packagegcc-4.4.7-4.el6.x86_64
    --> Processing Dependencylibgcc >= 4.4.7-4.el6 for packagegcc-4.4.7-4.el6.x86_64
    --> Running transaction check
    ---> Package cpp.x86_64 0:4.4.7-3.el6 will be updated
    ---> Package cpp.x86_64 0:4.4.7-4.el6 will be an update
    ---> Package gcc-c++.x86_64 0:4.4.7-3.el6 will be updated
    ---> Package gcc-c++.x86_64 0:4.4.7-4.el6 will be an update
    --> Processing Dependencylibstdc++-devel 4.4.7-4.el6 for packagegcc-c++-4.4.7-4.el6.x86_64
    --> Processing Dependencylibstdc++ = 4.4.7-4.el6 for packagegcc-c++-4.4.7-4.el6.x86_64
    ---> Package libgcc.x86_64 0:4.4.7-3.el6 will be updated
    ---> Package libgcc.x86_64 0:4.4.7-4.el6 will be an update
    ---> Package libgomp.x86_64 0:4.4.7-3.el6 will be updated
    ---> Package libgomp.x86_64 0:4.4.7-4.el6 will be an update
    --> Running transaction check
    ---> Package libstdc++.x86_64 0:4.4.7-3.el6 will be updated
    ---> Package libstdc++.x86_64 0:4.4.7-4.el6 will be an update
    ---> Package libstdc++-devel.x86_64 0:4.4.7-3.el6 will be updated
    ---> Package libstdc++-devel.x86_64 0:4.4.7-4.el6 will be an update
    --> Finished Dependency Resolution
    Dependencies Resolved
    ==========================================================================================================
    Package Arch Version Repository Size
    ==========================================================================================================
    Updating:
    gcc x86_64 4.4.7-4.el6 base 10 M
    Updating 
    for dependencies:
    cpp x86_64 4.4.7-4.el6 base 3.7 M
    gcc
    -c++ x86_64 4.4.7-4.el6 base 4.7 M
    libgcc x86_64 4.4.7
    -4.el6 base 101 k
    libgomp x86_64 4.4.7
    -4.el6 base 118 k
    libstdc
    ++ x86_64 4.4.7-4.el6 base 293 k
    libstdc
    ++-devel x86_64 4.4.7-4.el6 base 1.6 M
    Transaction Summary
    ==========================================================================================================
    Upgrade 7 Package(s)
    Total download size21 M
    Is this ok 
    [y/N]: 
    4 - لیست کردن بسته نرم افزاری نصب شده با استفاده از YUM :
    با استفاده از تابع list، می توانید یک نرم افزار خاص را با نام آن بسته جستجو کنید. به عنوان مثال، برای پیدا کردن بسته gcc از دستور زیر استفاده کنید :

    کد PHP:
    [root@devops ~]# yum list gcc
    Loaded pluginsfastestmirror
    Loading mirror speeds from cached hostfile
    basemirrors.grandcloud.cn
    extrasmirrors.grandcloud.cn
    updatesmirrors.grandcloud.cn
    base                                                                                                         
    3.7 kB     00:00
    extras                                                                                                       
    3.4 kB     00:00
    updates                                                                                                      
    3.4 kB     00:00
    updates
    /primary_db                                                                                           2.1 MB     00:06
    Installed Packages
    gcc
    .x86_64                                                     4.4.7-3.el6                                                     @base
    Available Packages
    gcc
    .x86_64                                                     4.4.7-4.el6                                                     base
    [root@devops ~]
    5 - بررسی تاریخ استفاده از YUM :
    برای مشاهده تاریخ استفاده از دستور یام تا قبل از اجرای دستور زیر :

    کد PHP:
    [root@devops ~]# yum history
    Loaded pluginsfastestmirror
    ID     
    Login user               Date and time    Action(s)      | Altered
    -------------------------------------------------------------------------------
    root <root>              | 2014-03-04 22:24 Erase          |    2
    root <root>              | 2014-03-04 22:22 Install        |    4
    root <root>              | 2014-02-27 18:16 Install        |    2
    root <root>              | 2014-01-07 10:53 Install        |    1
    root <root>              | 2013-07-31 17:58 IU           |   52
    root <root>              | 2013-07-31 17:58 Install        |    1
    root <root>              | 2013-07-31 17:53 Install        |    1
    System <unset>           | 2012-12-17 09:06 Install        |  218
    history 
    list
    [
    root@devops ~]
    6 - پاک کردن کش YUM :
    YUM به طور پیش فرض، تمام داده های کتابخانه نرم افزار libiray sotware را در /var/cache/yum/ ذخیره میکند، اگر می خواهید تمام فایل ذخیره شده را پاک کنید ، باید به صورت دوره ای دستور زیر را اجرا کنید :

    کد PHP:
    [root@devops ~]# yum clean all
    Loaded pluginsfastestmirror
    Cleaning repos
    base extras updates
    Cleaning up Everything
    Cleaning up 
    list of fastest mirrors
    [root@devops ~]
    7 - آپدیت سیستم لینوکس با استفاده از دستور yum update :
    اگر می خواهید سیستم خود را با تمام بسته های باینری و امنیتی بروز نگهدارید، دستور زیر را اجرا کنید.

    کد PHP:
    [root@devops ~]# yum update
    Loaded pluginsfastestmirror
    Determining fastest mirrors
    basemirrors.163.com
    extrasmirrors.163.com
    updatesmirrors.163.com
    base                                                                                                         
    3.7 kB     00:00
    base
    /primary_db                                                                                              4.4 MB     00:04
    extras                                                                                                       
    3.4 kB     00:00
    extras
    /primary_db                                                                                            |  19 kB     00:00
    updates                                                                                                      
    3.4 kB     00:00
    updates
    /primary_db                                                                                           2.1 MB     00:01
    Setting up Update Process
    Resolving Dependencies
    --> Running transaction check
    ---> Package authconfig.x86_64 0:6.1.12-10.el6 will be updated
    ---> Package authconfig.x86_64 0:6.1.12-13.el6 will be an update
    ---> Package bash.x86_64 0:4.1.2-9.el6_2 will be updated
    ---> Package bash.x86_64 0:4.1.2-15.el6_4 will be an update
    ---> Package bfa-firmware.noarch 0:3.0.0.0-1.el6 will be updated
    ...
    Total download size134 M
    Is this ok 
    [y/N]: 
    8 - جستجو پکیج با استفاده از دستور YUM :
    در صورتی که شما نام دقیق پکیج را به یاد داشته باشید، می توانید با استفاده از تابع search همه پکیج های موجود که با نام مورد نظر شما مطابقت دارند را پیدا کنید . به عنوان مثال، برای جستجو یک بسته نرم افزار کلمه ” GCC” را در تابع search قرار دهید :

    کد PHP:
    [root@devops ~]# yum search  gcc
    Loaded pluginsfastestmirror
    Loading mirror speeds from cached hostfile
    basemirrors.163.com
    extrasmirrors.163.com
    updatesmirrors.163.com
    ========================================================= N/S Matchedgcc =========================================================
    gcc-c++.x86_64 C++ support for GCC
    gcc
    -gnat.x86_64 Ada 95 support for GCC
    gcc
    -java.x86_64 Java support for GCC
    gcc
    -objc.x86_64 Objective-C support for GCC
    gcc
    -objc++.x86_64 Objective-C++ support for GCC
    libgcc
    .x86_64 GCC version 4.4 shared support library
    mingw32
    -gcc.x86_64 MinGW Windows cross-compiler (GCC) for C
    compat
    -gcc-34.x86_64 Compatibility GNU Compiler Collection
    compat
    -gcc-34-c++.x86_64 C++ support for compatibility compiler
    compat
    -gcc-34-g77.x86_64 Fortran 77 support for compatibility compiler
    gcc
    .x86_64 Various compilers (CC++, Objective-CJava, ...)
    gcc-gfortran.x86_64 Fortran support
    libgcj
    .x86_64 Java runtime library for gcc
    libgcj
    -devel.x86_64 Libraries for Java development using GCC
    libgcj
    -src.x86_64 Java library sources from GCC4 preview
    libgomp
    .x86_64 GCC OpenMP v3.0 shared support library
    libmudflap
    .x86_64 GCC mudflap shared support library
    libmudflap
    -devel.x86_64 GCC mudflap support
    mingw32
    -gcc-c++.x86_64 MinGW Windows cross-compiler for C++
    mingw32-gcc-gfortran.x86_64 MinGW Windows cross-compiler for FORTRAN
    mingw32
    -gcc-objc.x86_64 MinGW Windows cross-compiler support for Objective C
    mingw32
    -gcc-objc++.x86_64 MinGW Windows cross-compiler support for Objective C++
    Name and summary matches only, use "search all" for everything.
    [
    root@devops ~]
    9 - دریافت اطلاعات بسته نرم افزاری با استفاده از دستور YUM :
    برای دریافت برخی اطلاعات در مورد بسته، فقط فرمان زیر را اجرا کنید :

    کد PHP:
    [root@devops ~]# yum info gcc
    Loaded pluginsfastestmirror
    Loading mirror speeds from cached hostfile
    basemirrors.163.com
    extrasmirrors.163.com
    updatesmirrors.163.com
    Installed Packages
    Name        
    gcc
    Arch        
    x86_64
    Version     
    4.4.7
    Release     
    3.el6
    Size        
    19 M
    Repo        
    installed
    From repo   
    base
    Summary     
    Various compilers (CC++, Objective-CJava, ...)
    URL         http://gcc.gnu.org
    License     GPLv3+ and GPLv3with exceptions and GPLv2with exceptions
    Description 
    The gcc package contains the GNU Compiler Collection version 4.4.
    You'll need this package in order to compile C code.
    Available Packages
    Name        : gcc
    Arch        : x86_64
    Version     : 4.4.7
    Release     : 4.el6
    Size        : 10 M
    Repo        : base
    Summary     : Various compilers (C, C++, Objective-C, Java, ...)
    URL         : http://gcc.gnu.org
    License     : GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions
    Description : The gcc package contains the GNU Compiler Collection version 4.4.
    : You'
    ll need this package in order to compile C code
    ۱۰ – فهرست کردن تمام بسته های موجود در دیتابیس یام با استفاده از دستور YUM list :
    اگر میخواهید تمام پکیج های موجود در دیتابیس YUM را لیست کنید دستور زیر را اجرا کنید :

    کد PHP:
    [root@devops ~]# yum list | more
    Loaded pluginsfastestmirror
    Loading mirror speeds from cached hostfile
    basemirrors.163.com
    extrasmirrors.163.com
    updatesmirrors.163.com
    Installed Packages
    MAKEDEV
    .x86_64                            3.24-6.el6                    @anaconda-CentOS-201207061011.x86_64/6.3
    acl
    .x86_64                                2.2.49-6.el6                  @anaconda-CentOS-201207061011.x86_64/6.3
    aic94xx
    -firmware.noarch                   30-2.el6                      @anaconda-CentOS-201207061011.x86_64/6.3
    atmel
    -firmware.noarch                     1.3-7.el6                     @anaconda-CentOS-201207061011.x86_64/6.3
    attr
    .x86_64                               2.4.44-7.el6                  @anaconda-CentOS-201207061011.x86_64/6.3
    audit
    .x86_64                              2.2-2.el6                     @anaconda-CentOS-201207061011.x86_64/6.3
    audit
    -libs.x86_64                         2.2-2.el6                     @anaconda-CentOS-201207061011.x86_64/6.3
    authconfig
    .x86_64                         6.1.12-10.el6                 @anaconda-CentOS-201207061011.x86_64/6.3
    autoconf
    .noarch                           2.63-5.1.el6                  @base
    automake
    .noarch                           1.11.1-4.el6                  @base
    b43
    -openfwwf.noarch                       5.2-4.el6                     @anaconda-CentOS-201207061011.x86_64/6.3
    basesystem
    .noarch                         10.0-4.el6                    @anaconda-CentOS-201207061011.x86_64/6.3
    bash
    .x86_64                               4.1.2-9.el6_2                 @anaconda-CentOS-201207061011.x86_64/6.3
    bfa
    -firmware.noarch                       3.0.0.0-1.el6                 @an
    11. 
    List all installed packages using YUM command
    List all installed packages tojust execute the following commandit will show all of the installed packages.
    [
    root@devops ~]# yum list installed | more
    Loaded pluginsfastestmirror
    Installed Packages
    MAKEDEV
    .x86_64         3.24-6.el6       @anaconda-CentOS-201207061011.x86_64/6.3
    acl
    .x86_64             2.2.49-6.el6     @anaconda-CentOS-201207061011.x86_64/6.3
    aic94xx
    -firmware.noarch
    30
    -2.el6         @anaconda-CentOS-201207061011.x86_64/6.3
    atmel
    -firmware.noarch  1.3-7.el6        @anaconda-CentOS-201207061011.x86_64/6.3
    attr
    .x86_64            2.4.44-7.el6     @anaconda-CentOS-201207061011.x86_64/6.3
    audit
    .x86_64           2.2-2.el6        @anaconda-CentOS-201207061011.x86_64/6.3
    audit
    -libs.x86_64      2.2-2.el6        @anaconda-CentOS-201207061011.x86_64/6.3
    authconfig
    .x86_64      6.1.12-10.el6    @anaconda-CentOS-201207061011.x86_64/6.3
    ... 
    نویسنده سپیده محراب
    آخرین ویرایش توسط Habili; در تاریخ/ساعت 01-13-2020, 02:24 AM.

درباره انجمن منطقه لینوکسی ها

انجمن منطقه لینوکسی ها با هدف ارتقاء سطح علمی کاربران در سطح جهانی و همچنین کمک به بالا بردن سطح علمی عمومی در زمینه های تخصصی فوق پایه گذاری شده است. انجمن منطقه لینوکسی ها از طریق کارشناسان و متخصصان پاسخگوی سوالات گوناگون کاربران مبتدی یا پیشرفته میباشد تا حد امکان تلاش شده که محیطی متنوع و کاربر پسند و به دور از هرگونه حاشیه جهت فعالیت کاربران در این انجمن ایجاد شود. لذا ما به صورت مستمر برای پیشرفت کمی و کیفی محتوی و اطلاعات انجمنمان میکوشیم که این برای ما ارزشمند و حائز اهمیت است. کلیه حقوق،اطلاعات و مقالات در این انجمن متعلق به سایت منطقه لینوکسی ها میباشد، و هرگونه نسخه برداری بدون ذکر منبع مورد پیگرد قانونی خواهد شد.

شبکه های اجتماعی

ایمیل مدیریت

Habili@linux-zone.org

در حال انجام ...
X