2013年7月6日 星期六

Linux 中安裝軟體、so共享檔的 12 種方式

◆ NoGPG

    問題:The name org.freedesktop.PackageKit was not provided by any .service files
    解決:在terminal 中,進入「xxx.rpm」同一目錄下,直接執行「 yum localinstall --nogpgcheck xxx.rpm」,xxx是套件名稱


◆ repo 方式

    ‧先把repo複製到yum.repos.d 目錄之下
        wget /etc/yum.repos.d http://www.xxx.com.xx/<檔案名稱>.repo
        範例:    wget /etc/yum.repos.d http://repos.fedorapeople.org/repos/spot/firefox5/fedora-firefox5.repo'

    ‧本來安裝失敗的狀況,再次安裝就會成功
        範例    :yum install firefox5



◆ yum 直接安裝方式

    直接在Terminal打入 => yum install <軟體名稱>



◆ yum 指定 repo 之安裝方式

    yum --enablerepo=remi install firefox.x86_64


◆ tar.gz 安裝方式

    方法一:Terminal 方式 (解壓縮至桌面)
            a.[root@localhost ~]# tar -zxvf <檔案名稱.tar.gz>
            b.[root@localhost ~]# cd /root/Desktop/<檔案名稱>
            c.[root@localhost <檔案名稱>]# ./configure --prefix=/opt/<檔案名稱>  <== 安裝至 /opt/之下
            d.[root@localhost <檔案名稱>]# make
            e.[root@localhost <檔案名稱>]# make install


    方法二:用Nautilus
            (1)
                a.滑鼠右鍵點按,選擇解壓縮
                b.執行安裝執行檔 (檔名通常是install or setup or install.sh)

            (2)
                a.進入Terminal 模式
                b.[root@localhost ~]# cd /<檔案解壓縮之目錄>/<檔案名稱>
                c.[root@localhost <檔案名稱>]# ./configure --prefix=/opt/<檔案名稱>  <== 安裝至 /opt/之下
                d.[root@localhost <檔案名稱>]# make
                e.[root@localhost <檔案名稱>]# make install
               


◆ tar.bz2 安裝方式

        除了在Treminal 模式下的解壓縮語法不同之外,其餘皆與tar.gz相同
        解壓縮語法:tar -jxvf <檔案名稱.tar.bz2>



◆ ISO 檔安裝方式

    掛載成虛擬光碟機: mount -o loop -t iso9660 <檔案名稱>.iso /mnt/iso
    缷載虛擬光碟機 : umount /mnt/iso



◆ RPM 檔解除相依套件之安裝方式

    語法:rpm -ivh --aid --nodeps  <軟體名稱>



◆ 多RPM 檔安裝方式 (以 OpenOffice 為例)

    1、移除舊程式
   
            yum remove openoffice*


    2、解壓縮tar.gz下載檔

            tar -xvf OpenOffice_3.4.1*
           

    3、修改 /etc/yum.conf 設定,增限制指令使不自動更新 (視狀況再決定是否要這一條)

            [main]
            exclude=openoffice.org-ure* libreoffice-ure*


    4、安裝或更新

            安裝:rpm -ivh RPMS/*.rpm  RPMS/desktop-integration/openoffice.org3.4-redhat-*.rpm
            更新:rpm -Uvh RPMS/*.rpm  RPMS/desktop-integration/openoffice.org3.4-redhat-*.rpm



◆ 單一RPM 檔安裝方式

  ‧直接用滑鼠雙擊即可

  ‧若是金鑰 阻礙安裝,須用Terminal,採「NoGPG」的方式處理

  ‧若滑鼠雙擊出現錯誤訊息,須用Terminal 方式來安裝

    語法:rpm -ivh xxxxxxxxxxx.rpm
    注意:安裝完畢通常在「Applications」(程式集)中可以找到該執行程式,若沒看到可以找/usr/bin or /opt


    語法:rpm -ivh -replacepkgs xxxxxxxxxxx.rpm
    注意:-replacepkgs 是無論遇到什麼都強制安裝

   -----------------------------------------------------------------------------------------------
   http://www.pconline.com.cn/pcjob/system/linux/others/0411/502888.html


    在Linux操作系統中,有一個系統軟件包,它的功能類似於Windows裡面的「添加/刪除程序」,但是功能又比「添加/刪除程序」強很多,
    它就是Red Hat Package Manager(簡稱RPM)。此工具包最先是由Red Hat公司推出的,後來被其他Linux開發商所借用。由於它為Linux使
    用者省去了很多時間,所以被廣泛應用於在Linux下安裝、刪除軟件。下面就給大家介紹一下它的具體使用方法。


  1.我們得到一個新軟件,在安裝之前,一般都要先查看一下這個軟件包裡有什麼內容,假設這個文件是:Linux-1.4-6.i368.rpm,我們可
        以用這條命令查看:

            rpm -qpi Linux-1.4-6.i368.rpm

            系統將會列出這個軟件包的詳細資料,包括含有多少個文件、各文件名稱、文件大小、創建時間、編譯日期等信息。

  2.上面列出的所有文件在安裝時不一定全部安裝,就像Windows下程序的安裝方式分為典型、完全、自定義一樣,Linux也會讓你選擇安裝
        方式,此時我們可以用下面這條命令查看軟件包將會在系統裡安裝哪些部分,以方便我們的選擇:

            rpm -qpl Linux-1.4-6.i368.rpm

  3.選擇安裝方式後,開始安裝。我們可以用rpm-ivh Linux-1.4-6.i368.rpm命令安裝此軟件。在安裝過程中,若系統提示此軟件已安裝過
        或因其他原因無法繼續安裝,但若我們確實想執行安裝命令,可以在 -ivh後加一參數「-replacepkgs」:

            rpm -ivh -replacepkgs Linux-1.4-6.i368.rpm

  4.有時我們卸載某個安裝過的軟件,只需執行rpm-e <文件名>命令即可。

  5.對低版本軟件進行升級是提高其功能的好辦法,這樣可以省去我們卸載後再安裝新軟件的麻煩,要升級某個軟件,只須執行如下命令:

            rpm -uvh <文件名>

            注意:此時的文件名必須是要升級軟件的升級補丁

  6.另外一個安裝軟件的方法可謂是Linux的獨到之處,同時也是RMP強大功能的一個表現:通過FTP站點直接在線安裝軟件。當找到含有你所
        需軟件的站點並與此網站連接後,執行下面的命令即可實現在線安裝,譬如在線安裝Linux-1.4-6.i368.rpm,可以用命令:

            rpm -i ftp://ftp.pht.com/pub/linux/redhat/...-1.4-6.i368.rpm

  7.在我們使用電腦過程中,難免會有誤操作,若我們誤刪了幾個文件而影響了系統的性能時,怎樣查找到底少了哪些文件呢?RPM軟件包提
        供了一個查找損壞文件的功能,執行此命令:rpm -Va即可,Linux將為你列出所有損壞的文件。你可以通過Linux的安裝光盤進行修復。

  8.Linux系統中文件繁多,在使用過程中,難免會碰到我們不認識的文件,在Windows下我們可以用「開始/查找」菜單快速判斷某個文件屬
        於哪個文件夾,在Linux中,下面這條命令行可以幫助我們快速判定某個文件屬於哪個軟件包:

            rpm -qf <文件名>

  9.當每個軟件包安裝在Linux系統後,安裝文件都會到RPM數據庫中「報到」,所以,我們要查詢某個已安裝軟件的屬性時,只需到此數據
        庫中查找即可。注意:此時的查詢命令不同於1和8介紹的查詢,這種方法只適用於已安裝過的軟件包!命令格式:

            rpm -參數 <文件名>



◆ bin 安裝方式 (以java JRE 為例)

    1.變更執行者之權限
        方法一:
            a.在終端機上鍵入: su
            b.輸入 root 密碼
          
        方法二:
          a.在每一次執行程式前,加 sudo => $ sudo yum install <軟體名稱>
          b.然後系統要求使用者輸入自己的密碼 => 輸入自己密碼


    2.變更至要在其中執行安裝的目錄
   
            若要將軟體安裝到 /usr/java/ 目錄中,請鍵入: cd /usr/java

            備註:    若要將 Java 安裝在全系統範圍的位置,則必須以 root 使用者身份登入,才能取得所需的權限。若不
                    具有root存取權,請將 JRE 安裝到主目錄或擁有其寫入權限的子目錄中。

    3.變更檔案的存取權限為可執行

            鍵入: chmod a+x jre-7u<版本>-linux-amd64-rpm.bin

    4.驗證您具有執行此檔案的權限

            鍵入: ls -l

    5.啟動安裝程序

            a.鍵入: ./jre-7u<版本>-linux-amd64-rpm.bin

                    備註:如果檔案位於目前目錄中,須在檔案前須加「./」

            b.Java將顯示二進位檔授權合約。在結尾處輸入 [yes] 以繼續進行安裝。


    6.安裝檔案會在目前目錄下解壓縮,並新建一個rpm檔案  ==>    jre-7u<版本>-linux-amd64.rpm


    7.在終端機上執行 RPM 指令以安裝套裝軟體

            a.鍵入: rpm -ivh jre-7u<版本>-linux-amd64.rpm

            b.說明:Java 安裝於目前目錄下的 jre-7u<版本> 子目錄。在本範例中,Java 將安裝到 /usr/java 目錄中。


    8.驗證 jre-7u<版本> 子目錄是否存在於目前目錄之下

            鍵入:  ls -l


◆ .so 安裝方式 (以 libstdc++.so.6 為例)

    1.查看so檔所支援的程式版本,可以打入 strings /usr/lib/libstdc++.so.6 | grep -i glibc

    2.若 「libstdc++.so.6 (它是連結指標)」所指向的版本,若不支援所要的「GLIBCXX_3.4.15」時,可以考慮把它換成新版
   
    3.抓回新版「libstdc++6-0.17.x86_64.rpm」後 (可在這裡抓 => http://rpm.pbone.net)
        a.把新版檔案複製到自訂的目錄中,解壓縮它
        b.查看這目錄中是否有一個檔案? => libstdc++.so.6.0.17
        c.若新版 so 檔存在,再查看它是否有支援 「GLIBCXX_3.4.15」
        d.進入Terminal 打入語法查看 : strings libstdc++.so.6.0.17 | grep -i glibc
        e.若有支援則此新版so檔複製到 /usr/lib64 之內
   
    4.  a.重做軟聯結,覆蓋舊 libstdc++.so.6 所指向檔(這裡假設所指向檔是 libstdc++.so.6.0.12)
        b.軟聯結語法: ln -sf <目的檔名> <連結檔名>  => ln -sf libstdc++.so.6.0.17 libstdc++.so.6

    #參考:http://www.linuxidc.com/Linux/2013-05/84641.htm
             http://blog.csdn.net/sndybo/article/details/8494095
.