லினக்ஸ் தொகுப்பு நிர்வாகத்திற்கான 20 YUM கட்டளைகள்
இந்த கட்டுரையில், ரெட்ஹாட் உருவாக்கிய YUM (யெல்லோடாக் அப்டேட்டர் மாற்றியமைக்கப்பட்ட) கருவியைப் பயன்படுத்தி லினக்ஸ் கணினிகளில் எவ்வாறு நிறுவுவது, புதுப்பிப்பது, அகற்றுவது, தொகுப்புகளைக் கண்டுபிடிப்பது, தொகுப்புகள் மற்றும் களஞ்சியங்களை எவ்வாறு நிர்வகிப்பது என்பதைக் கற்றுக்கொள்வோம். இந்த கட்டுரையில் காட்டப்பட்டுள்ள எடுத்துக்காட்டு கட்டளைகள் எங்கள் CentOS 6.3 சேவையகத்தில் நடைமுறையில் சோதிக்கப்படுகின்றன, நீங்கள் இந்த பொருளை ஆய்வு நோக்கத்திற்காகவோ, சான்றிதழ்களுக்காகவோ அல்லது புதிய தொகுப்புகளை நிறுவுவதற்கான வழிகளை ஆராய்ந்து உங்கள் கணினியைப் புதுப்பித்த நிலையில் வைத்திருக்கலாம். இந்த கட்டுரையின் அடிப்படைத் தேவை என்னவென்றால், நீங்கள் கட்டளைகளைப் பற்றிய அடிப்படை புரிதல் மற்றும் வேலை செய்யும் லினக்ஸ் இயக்க முறைமை ஆகியவற்றைக் கொண்டிருக்க வேண்டும், அங்கு கீழே பட்டியலிடப்பட்டுள்ள அனைத்து கட்டளைகளையும் ஆராய்ந்து பயிற்சி செய்யலாம்.
YUM என்றால் என்ன?
YUM (Yellowdog Updater Modified) என்பது ஒரு திறந்த மூல கட்டளை வரி மற்றும் RPM (RedHat Package Manager) அடிப்படையிலான லினக்ஸ் அமைப்புகளுக்கான வரைகலை அடிப்படையிலான தொகுப்பு மேலாண்மை கருவியாகும். பயனர்கள் மற்றும் கணினி நிர்வாகியை ஒரு கணினியில் மென்பொருள் தொகுப்புகளை எளிதாக நிறுவ, புதுப்பிக்க, நீக்க அல்லது தேட இது அனுமதிக்கிறது. இது ஒரு திறந்த மூலமாக ஜி.பி.எல் (பொது பொது உரிமம்) இன் கீழ் சேத் விடால் உருவாக்கி வெளியிடப்பட்டது, அதாவது பிழைகளை சரிசெய்ய மற்றும் தனிப்பயனாக்கப்பட்ட தொகுப்புகளை உருவாக்க குறியீட்டை பதிவிறக்கம் செய்து அணுக எவரும் அனுமதிக்கலாம். 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
நீங்கள் MySQL தொகுப்பின் காலாவதியான பதிப்பைக் கொண்டுள்ளீர்கள், அதை சமீபத்திய நிலையான பதிப்பிற்கு புதுப்பிக்க விரும்புகிறீர்கள். பின்வரும் கட்டளையை இயக்கினால் அது தானாகவே அனைத்து சார்பு சிக்கல்களையும் தீர்க்கும் மற்றும் அவற்றை நிறுவும்.
# 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
உங்கள் தேடலை மிகவும் துல்லியமாக்க, உங்களுக்குத் தெரிந்தால், தொகுப்பு பெயரை அவற்றின் பதிப்போடு வரையறுக்கவும். தொகுப்பின் ஒரு குறிப்பிட்ட பதிப்பான opensh-4.3p2 ஐத் தேட, கட்டளையைப் பயன்படுத்தவும்.
# 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
ஒரு குறிப்பிட்ட கோப்பு எந்த தொகுப்புக்கு சொந்தமானது என்பதைக் கண்டறிய Yum வழங்குகிறது செயல்பாடு பயன்படுத்தப்படுகிறது. எடுத்துக்காட்டாக, /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
அனைத்து பாதுகாப்பு மற்றும் பைனரி தொகுப்பு புதுப்பிப்புகளுடன் உங்கள் கணினியைப் புதுப்பித்த நிலையில் வைத்திருக்க, பின்வரும் கட்டளையை இயக்கவும். இது உங்கள் கணினியில் அனைத்து சமீபத்திய இணைப்புகளையும் பாதுகாப்பு புதுப்பிப்புகளையும் நிறுவும்.
# 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
ஒரு குறிப்பிட்ட தொகுப்பு குழுவை நிறுவ, நாங்கள் விருப்பத்தை groupinstall ஆக பயன்படுத்துகிறோம். எடுத்துக்காட்டாக, “MySQL தரவுத்தளத்தை” நிறுவ, கீழேயுள்ள கட்டளையை இயக்கவும்.
# 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 கட்டளையில் –enablerepo விருப்பத்தைப் பயன்படுத்த வேண்டும். எடுத்துக்காட்டாக, PhpMyAdmin 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 பயன்பாடு தனிப்பயன் ஷெல்லை வழங்குகிறது, அங்கு நீங்கள் பல கட்டளைகளை இயக்க முடியும்.
# 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 >
இயல்பாகவே, ஒவ்வொரு துணை கோப்பகத்திலும் அனைத்து களஞ்சிய இயக்கப்பட்ட தொகுப்பு தரவுகளையும்/var/cache/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
Yum கட்டளைகளை அவற்றின் எடுத்துக்காட்டுகளுடன் முன்னெடுப்பதற்கான அனைத்து அடிப்படைகளையும் மறைக்க முயற்சித்தோம். Yum கட்டளைகளுடன் தொடர்புடைய எதையும் தவறவிட்டிருக்கலாம். எங்கள் கருத்து பெட்டி மூலம் எங்களை புதுப்பிக்கவும். எனவே, பெறப்பட்ட பின்னூட்டத்தின் அடிப்படையில் நாங்கள் அதைப் புதுப்பித்துக்கொண்டே இருக்கிறோம்.