配置yum,nc,telnet


一、學習中問題  

最近學習在學習Hadoop的一個子項目Zookeeper,在測試其中的“四字命令”---”echo ruok|nc localhost 2181“時發現命令無法被識別,如下圖所示:

[root@hadoop ~]# echo ruok|nc localhost 2181
-bash: nc: command not found

從提示信息中我們可以知道,是由於nc命令無法被找到。出現該情況有兩種可能:

  (1)沒有配置nc命令的環境變量;
  (2)該系統沒有安裝nc命令;

我查看了一下在/usr/bin目錄中並沒有nc命令,所以我可以認為出現該情況的原因是第二種情況

二、解決辦法

由於我的Linux(CentOS6.4)沒有安裝該命令,所以我需要安裝一下該命令,安裝辦法有兩種在線安裝和下載后安裝。我先嘗試的是通過使用yum命令進行在線安裝,由於我的系統配置問題並有成功,所以使用了第二種方法安裝成功后,后來經過上網查閱,解決了在使用一種方法時所遇到的問題。在此,記錄和大家分享一下,首先先介紹下載安裝的辦法。

(1)下載安裝

下載地址: http://sourceforge.net/projects/netcat/files/netcat/0.7.1/netcat-0.7.1-1.i386.rpm/download

安裝方法: 

1) 下載后得到一個rpm包,如:netcat-0.7.1-1.i386.rpm
2)  將該包通過Wincp將其上傳到Linux目錄中,我上傳的目錄是/root/Downloads
3)  進入該目錄,執行命令:rpm -ihv netcat-0.7.1-1.i386.rpm,進行安裝
4)  安裝成功后可以執行命令:nc --help,進行測試

(2)在線安裝

在線安裝需要我們使用yum命令,由於nc命令通過上述方法已經安裝好了,就不在以nc命令為例了。我們以另一種遠程聯機指令telnet為例。首先我們執行命令:echo ruok|telnet localhost 2181,同樣提示該命令無法找到如下圖所示:

[root@hadoop ~]# echo ruok|telnet localhost 2181
-bash: telnet: command not found

所以我們也學要安裝一下,在這我使用第一種辦法,步驟如下:

1)配置yum

yum是一種在線安裝和更新軟件的工具,使用該工具要保證網絡連接,還要有一個可用的軟件源,可以使用163或sohu的軟件源,軟件源地址如下:

a:163的網址:http://mirrors.163.com/ ,進入后點擊右列的“fedora使用幫助”,有使用說明
b:sohu的網址:http://mirrors.sohu.com/
c: Centos自帶的源

在此我使用的是Centos自帶的源,如果使用163下載源,則步驟如下:

a:下載fedora-163.repo和fedora-updates-163.repo, 通過winCP放入Linux中/etc/yum.repos.d/目錄
b:運行以下命令生成緩存:yum clean all、yum makecache

在執行上述兩條命令后結果如下:

2)執行命令:yum list telnet*;查看telnet相關的安裝包,結果如下:

[root@hadoop ~]# yum makecache
Loaded plugins: fastestmirror, refresh-packagekit, security Repository updates is listed more than once in the configuration Determining fastest mirrors Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=i386&repo=os error was 14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'" Error: Cannot find a valid baseurl for repo: base

注意:

又出現了問題,出現如下錯誤信息,是因為DNS配置錯誤,我裝的是Cent OS 6.4 ,沒有圖形界面,這個版本默認安裝后,配置文件中沒有配置DNS。

解決辦法:

使用vi打開DNS的配置文件進行修改,執行命令: vi  /etc/resolv.conf,添加及幾行內容,下面是一個例子文件:

nameserver 8.8.8.8
nameserver 8.8.4.4
search localdomain

合法的參數及其意義如下:


nameserver 表明DNS 服務器的IP 地址。可以有很多行的nameserver,每一個帶一個I P 地址。在查詢時就按nameserver 在本文件中的順序進行,且只有當第一個nameserver 沒有反應時才查詢下面的nameserver.
domain 聲明主機的域名。很多程序用到它,如郵件系統;當為沒有域名的主機進行DNS 查詢時,也要用到。如果沒有域名,主機名將被使用,刪除所有在第一個點( . )前面的內容。
search 它的多個參數指明域名查詢順序。當要查詢沒有域名的主機,主機將在由search 聲明的域中分別查找。domain 和search 不能共存;如果同時存在,后面出現的將會被使用。
sortlist 允許將得到域名結果進行特定的排序。它的參數為網絡/掩碼對。允許任意的排列順序。

再次執行命令:yum list telnet*,結果如下:

Cannot retrieve metalink for repository: Fedora. Please verify its path and try again 

注意:

  出現該提示信息的原因是,原因是我在以前/etc/yum.repos.d/下建立了一個163的源,那個文件可能不正確,將那個源移除,再運行yum makecache時就可以了。 

再次執行命令:yum list telnet*,結果如下:

[root@hadoop network-scripts]# yum list telnet*
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
 * base: centos.ustc.edu.cn
 * extras: centos.ustc.edu.cn
 * updates: centos.ustc.edu.cn
Available Packages
telnet.i686                                                                       1:0.17-47.el6_3.1                                                                 base telnet-server.i686                                                                1:0.17-47.el6_3.1                                                                 base
[root@hadoop network-scripts]#

這次運行成功,telnet.i686表示客戶端,telnet-server.i686表示服務端。我們需要的是客戶端,安裝telnet.i686即可。

3)執行命令:yum install telnet.i686,進行安裝,結果如下:

[root@hadoop network-scripts]# yum install telnet.i686
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
 * base: centos.ustc.edu.cn
 * extras: centos.ustc.edu.cn
 * updates: centos.ustc.edu.cn
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package telnet.i686 1:0.17-47.el6_3.1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================================================================
 Package                               Arch                                Version                                            Repository                           Size
========================================================================================================================================================================
Installing:
 telnet                                i686                                1:0.17-47.el6_3.1                                  base                                 57 k

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

Total download size: 57 k
Installed size: 102 k
Is this ok [y/N]: y
Downloading Packages:
telnet-0.17-47.el6_3.1.i686.rpm                                                                                                                  |  57 kB     00:00
warning: rpmts_HdrFromFdno: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
Importing GPG key 0xC105B9DE:
 Userid : CentOS-6 Key (CentOS 6 Official Signing Key) <centos-6-key@centos.org>
 Package: centos-release-6-4.el6.centos.10.i686 (@anaconda-CentOS-201303020136.i386/6.4)
 From   : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
Is this ok [y/N]: y
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Warning: RPMDB altered outside of yum.
  Installing : 1:telnet-0.17-47.el6_3.1.i686                                                                                                                        1/1
  Verifying  : 1:telnet-0.17-47.el6_3.1.i686                                                                                                                        1/1

Installed:
  telnet.i686 1:0.17-47.el6_3.1

Complete!
View Code

4)驗證,執行命令:telnet --help,如下所示,表示安裝成功。

[root@hadoop network-scripts]# telnet --help
telnet: invalid option -- '-'
Usage: telnet [-8] [-E] [-L] [-S tos] [-a] [-c] [-d] [-e char] [-l user]
        [-n tracefile] [-b hostalias ] [-r]
 [host-name [port]]
[root@hadoop network-scripts]#


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM