linuxrpm製作
Ⅰ windows環境下能否製作linux的rpm包如果可以的話,需要什麼工具
不能安裝, 因為.rpm的文件是用於linux環境下的源代碼文件, windows是不能安裝的。
Ⅱ 求助linux下rpm安裝文件安裝後的授權文件製作
這是其中一個包 高手幫忙看看 rpm文件怎麼反編譯
Ⅲ linux 製作rpm包
[轉載]
一個打包自己套件的範例
這個就有趣了!我們自己來編輯一下自己製作的RPM怎麼樣?會很難嗎?完全不會!這里簡單的以一個小例子來說明喔!請注意,這個真的只是一個小例子,所以不要覺得奇怪喔!其中,比較需要注意的,由於在上面的步驟說明中,我們知道在將SRPM編譯成為RPM的時候,會以tar這支程式來將檔案解開,因此,我們在進行來源檔案的建立時,就必需要將他打包成為一個tar.gz的tarball的檔案才行!
假設我們編輯了一支script,內容是這樣:
[root@test root]# cd /usr/src/redhat/SOURCES
[root@test SOURCES]# vi showvbird.sh
#!/bin/bash
# This file is just used to demo the RPM packaging.
# the only thing is showing the hostname.
HOST=`/bin/hostname`
/bin/echo $HOST
[root@test SOURCES]# chmod 755 showvbird.sh
[root@test SOURCES]# tar –zcvf showvbird.tar.gz showvbird.sh
# 注意了,我們必需要將他打包才行!
上面的動作中,我們編輯了一個shell script檔案,檔名為showvbird.sh,並且將他打包成為具有gzip壓縮的tarball檔案,也就是showvbird.tar.gz這樣的檔案才行!請注意,這個showvbird.tar.gz檔案『必需』放置在SOURCES目錄之下!
再來則是要編輯那個很重要的*.spec檔案啰!你可以這樣簡單的編寫一下:
[root@test root]# cd /usr/src/redhat/SPECS
[root@test SPECS]# vi showvbird.spec
Summary: This is a demo RPM package.
Name: showvbird
Version: 1.0
Release: 1
Copyright: GPL
Group: VBird's Home
Source: showvbird.tar.gz <==這個就是剛剛建立起來的Tarball檔案!
Url: http://linux.vbird.org
Packager: VBird
%description
This package is just a demo RPM.
%prep
%setup –c
%install
install -m 755 showvbird.sh /usr/local/bin/showvbird.sh
%files
/usr/local/bin/showvbird.sh
好了!開始給他編譯並打包成為RPM檔案啦!
[root @test SPECS]# rpmbuild -bb showvbird.spec
….(略)
Wrote: /usr/src/redhat/RPMS/i586/showvbird-1.0-1.i586.rpm
最後這個被打包成功的檔案就被放置在/usr/src/redhat/RPMS/i586/showvbird-1.0-1.i586.rpm啰!然後給他安裝一下:
[root@test SPECS]# rpm –ivh /usr/src/RPM/RPMS/i586/showvbird-1.0-1.i586.rpm
Preparing... ########################################### [100%]
1:showvbird ########################################### [100%]
[root @test SPECS]# rpm –qi showvbird
Name : showvbird Relocations: (not relocateable)
Version : 1.0 Vendor: (none)
Release : 1 Build Date: Wed 06 Nov 2002 11:27:17 PM CST
Install date: Wed 06 Nov 2002 11:27:42 PM CST Build Host: test.linux.org
Group : VBird's Home Source RPM: showvbird-1.0-1.src.rpm
Size : 143 License: GPL
Packager : VBird
URL : http://linux.vbird.org
Summary : This is a demo RPM package.
Description :
This package is just a demo RPM.
[root @test SPECS]# showvbird.sh
test.linux.org
[root @test SPECS]# rpm –ql showvbird
/usr/local/bin/showvbird.sh <==嘿嘿!已經記錄起來了!自己的軟體耶!
用很簡單的方式,就可以將自己的軟體或者程序給他修改與設定妥當!很不錯吧!以後您就可以自行設定你的RPM啰!當然,也可以手動修改您的SRPM的來源檔內容啰!
Ⅳ linux自己製作RPM,*.spec鳥哥的私房菜里沒有要寫12和13這兩行,結果我卻要寫,那該怎麼寫
又一個被忽悠看鳥哥書的……
你問的東西看這個:
http://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch-specfile-syntax.html#id729642
另外也可以湊合看看這個帖子: http://forum.linuxfans.org/thread-86980-1-1.html
(4年前的,寫的還可以,就是可能會存在和當前版本某些內容不對應的狀況)
鳥哥的書需要有一定知識的人去看。而且也只是一個手邊參考書,不過就是說個大概,應付差事而已的內容。更詳細的內容需要自己另外去找的。
Ⅳ linux中rpm命令的作用
RPM軟體包:這種軟體包的擴展名為 「.rpm」 ,只能在使用RPM機制的Linux操作系統中安裝,如RHEL、Fedora、centOS等。RPM軟體包一般針對特定版本的操作系統量身定製,因此依賴性較強。
源代碼安裝包:這種軟體包是程序員開發完成的原始代碼,一般被製作成 「.tar.gz」 或 「.tar.bz2」 等格式的壓縮包文件,因多數使用 tar 命令打包而成的,所以經常被稱為 「tarball」。《Linux就該這么學》一起學習更多知識。
使用RPM軟體包管理命令——RPM
一、RPM命令具有非常強大的功能,結合不同的命令選項及子選項主要可以實現以下三類功能。
1、查詢、驗證RPM軟體包的相關信息。
2、安裝、升級、卸載RPM軟體包。
3、維護RPM資料庫信息等綜合管理操作。
二、查詢RPM軟體包信息的各選項如下:
-q:查詢已知名稱的軟體包是否已經安裝;
-qp:針對尚未安裝的RPM軟體包文件進行查詢;
-qa:顯示當前系統中以RPM方式安裝的所有軟體列表;
-qi:查看指定軟體包的名稱、版本、許可協議、用途描述等詳細信息(–info);
-ql:顯示指定的軟體包在當前系統中安裝的所有目錄、文件列表(–list);
-qf:查看指定的文件或目錄是哪個軟體包所安裝的(–file);
-qpi:查看指定軟體包的名稱、版本、許可協議、用途描述等詳細信息;
-qpl:查看該軟體包準備要安裝的所有目標目錄、文件列表;
三、安裝、升級、卸載 rpm軟體包
在日常系統管理工作中,安裝、升級及卸載軟體包是管理應用程序是最基本的工作內容。那麼我們來看一下,使用 rpm 命令實現這些操作時,基本的命令選項:
-i:在當前系統中安裝(install)一個新的RPM軟體包;
-e:卸載指定名稱的軟體包;
-U:檢查並升級系統中的某個軟體包,若該軟體包原來並未安裝,則等同於「-i」 選項;
-F:檢查並更新系統中的某個軟體包,若該軟體包原來並未安裝,則放棄安裝;
-h:在安裝或升級過程中,以 # 號顯示安裝進度;
-v:顯示軟體安裝過程中的詳細信息;
–force:強制安裝某個軟體包,當需要替換以安裝的軟體包及文件,或者安裝一個比當前使用的軟體版本更舊的軟體時,可以使用此選項;
–nodeps:在安裝或升級、卸載一個軟體包時,不檢查與其他軟體包的依賴關系。
四、維護RPM資料庫
(1)重建rpm資料庫
rpm資料庫用於記錄在Linux操作系統中安裝、卸載、升級應用程序的相關信息,由rpm軟體包管理系統自動完成維護、一般不需要我們用戶干預。當RPM資料庫發生損壞(可能是由於誤刪文件、非法關機、病毒破壞等導致),且操作系統無法自動修復時,將導致無法正常使用 rpm 命令,這時我們可以執行以下操作:
Ⅵ linux環境下rpm到底是什麼呀,還需要安裝嗎
rpm 叫做 RedHat Package Manager 。
也就是紅帽子軟體包管理器。
因為 Linux 是由一大堆軟體組成的,而且軟體之間也有調用問題。所以基本上所有的 Linux 都要用輔助軟體來管理這堆軟體。
rpm 就是這種軟體的一個,他是由 RedHat 公司設計製作的。
至於包,就是軟體包。這個包可以認為是一種包裹。不過對於用戶來說,不過是一個特殊的文件而已。
這個包裹里裝的是軟體的數據,軟體包管理器會讀取這個文件。從裡面獲取這個軟體的一些信息和這個軟體的各種文件。
這樣,通過軟體包管理器讀取各種軟體的「軟體包」文件,來安裝軟體。
rpm 軟體包就是特指 rpm 這個軟體包管理器的 rpm 為擴展名的文件。
rpm ,如果沒有說軟體包,一般指的是這個 rpm 軟體,不是指軟體包。這事兩個東西。
就如同 MP3 。單說 MP3 就是指 MP3 播放器,MP3 音樂就是指 MP3 文件格式存放的音樂文件。
現在你知道什麼是 rpm 和 rpm 軟體包了。
這個問題你應該能自己給自己解釋了。
如果還不能解釋。那你就去重新學習計算機基礎知識吧。
PS:軟體包管理器是一個 Linux 的最基本組成,沒有軟體包管理的 Linux ,是不能用軟體包安裝的。除了 rpm ,還有很多其他的軟體包管理器,比如 debian 、ubuntu 的 deb 軟體包管理器。有些 Linux 不是使用軟體包管理器,而是軟體管理器,他的這種軟體管理器是沒有單獨的軟體包文件存在的,有的是一個在線或者本地的信息資料庫加軟體壓縮包。
Ⅶ linux上tar包,rpm,deb包,都怎麼能製作成二進制的安裝文件啊、可以嗎
tar即源代碼的軟體安裝。rpm,deb屬於編譯後的軟體安裝。rpm,deb不需要重新編譯直接安裝。
Ⅷ 弱弱的問一下,linux下製作安裝包都有哪些格式,各適合什麼情況下用我知道的有run包,bin包還有rpm包。
安裝包只是一個打包的格式而已吧...你說的.bin和.run實際應該是可執行文件/腳本....
不同類型的包是由不同包管理器使用.
發行版 包管理器
archlinux : pacman/yaourt : package.tar.xz
ubuntu/debian apt-get/dpkg: package.deb
rhel/fedora/centos rpm/yum : package.rpm, package.drpm[增量rpm包]
slackware .... slackpkg: package.tgz...
gentoo(funtoo) emerge : 沒有特定包格式只有ebuild文件.
包管理器/源 是每個發行版最重要的特徵之一,因此很多情況下,不同發行版的包管理器不一樣,其對應的安裝包格式也不一樣...某些發行版基於已有發行版構建,那基本他們維護著不同的源.否則新的發行版就沒有意義了,很容易就直接更新成為另外一個發行版了...
不管怎麼樣,包管理器可以解壓這些安裝包(如果有特定安裝包的話)到系統中,在此之前首先檢查依賴關系是否滿足(上述列舉的例子中,slackware除外),刪除某些包時做同樣的檢查。.我個人覺得只是不同發行版的包管理器決定了這些包的格式,如果是不是基於源碼的發行版,不同包格式只是代表著不同的打包方式而已。
與其討論這些包適合什麼樣的情況不如討論各發行版的包管理器不同特點。每個不同的包管理器涉及內容較為豐富,個人了解有限,可以參考這里:
http://tieba..com/p/2461670683
現在好多發行版都可以安裝多個包管理器..你可以試試....
Ⅸ 如何編譯內核及製作RPM包
前言
要編譯自內核能各種同答案列舉:
1 研究習內核源碼
2 支持新硬體或者打某項內核功能
3 升級內核更新版本
4 按自要求定製優化內核功能
種種...
折騰需要理由我說面直接進入主題
編譯式
編譯內核種式kernel.org載選擇載需要版本內核源碼
:linux-2.6.32-rc1.tar.bz2載內核源碼/home/user/目錄進入載目錄解壓壓縮包
#cd /home/user/
#tar -xjvf linux-2.6.32-rc1.tar.bz2
二 准備編譯環境
始前首先確認面軟體包已經安裝(編譯標普華4.0直接全部安裝CD3保證條件)
* rpmdevtools
* yum-utils
fedora系統使用命令安裝:
#yum install yum-utils rpmdevtools
1. rpmbuild命令工作所需目錄樹面命令完該操作手建立目錄樹
命令建立:
#rpmdev-setuptree
命令/usr/src/rpmbuild/目錄目錄結構(位置沒則能前用戶目錄).
# tree /usr/src/rpmbuild/
rpmbuild/
|-- BUILD
|-- RPMS
|-- SOURCES
|-- SPECS
`-- SRPMS
面部rpmbuild環境建立rpm
3. 安裝內核源碼包需要依賴組件(跳步操作)
su -c 'yum-builddep kernel-.src.rpm'
4.安裝內核源碼系統默認目錄/usr/src/neoshine:
rpm -Uvh kernel-.src.rpm
三 配置內核(config配置文件)
面介紹何解源碼包並修改配置重新打包源碼
1. 解源碼包並打所補丁BUILD目錄
cd ~/rpmbuild/SPECS
rpmbuild -bp --target=`uname -m` kernel.spec
kernel源碼找:
/usr/src/neoshine/rpmbuild/BUILD/kernel-/linux-. directory
配置內核源碼
1. 進入內核源碼:
cd ~/rpmbuild/BUILD/kernel-2.6.$ver/linux-2.6.$ver.$arch/
2. 復制/boot/config*配置文件源碼目錄,config文件已經配或者其備份kernel配置文件:
cp /boot/config2.6- 2.6.$ver.$arch .config
3. 先檢查kernel配置新增選項:
make oldconfig
4. 定製內核功能關閉initrd支持選項執行圖形化內核配置工具:
make menuconfig
註:generic setup選項找initial RAM system and RAM disk(initramfs and initrd) support 項取消編譯同確保跟文件系統應驅系統所存儲器應驅都已經編譯內核(否則啟系統).
5. .config文件第行改面內容(注意:沒行面編譯報錯)
# i386
6. 拷貝.configSOURCES/:
cp .config ../SOURCES/config-$arch
四 編譯新內核
1. 面始准備編譯新內核包
打SPEC/kernel.spec
vim SPEC/kernel.spec
改變面行內容定製自內核擴展名(fc10類):
%define buildid .
步新內核rpm包程需要編譯內核源碼包
使用面命令新內核源碼包
rpmbuild -bb --with baseonly --without debuginfo --target=`uname -m` kernel.spec
參數說明:bb表示編譯二進制包即源碼包without debuginfo 表示沒調試信息
target=`uname -r`表示應前平台內核包
面命令功執行完BUILD/i686目錄新內核安裝包
五 安裝新內核
rpm -ivh kernel-$ver-$arch.rpm
步操作自安裝內核boot目錄安裝應內核模塊/lib/moles/目錄並且新內核應grub引導菜單
修改grub引導菜單格式
title new kernel
kernel /boot/vmlinuz-$ver-$arch root=/dev/sdax(hdax)
注意處要使用uuid指定跟文件系統(能掛載根區導致內核死機)要再加顯示相關參數(內核支持應設置看黑黑屏幕)
至禁用initrd新內核配置安裝完畢
Ⅹ 請教如何製作 LINUX的RPM包
試試RPMBuilder吧,開源C++的,基於Linux。很easy:
>rpmbuilder # 執行第一次是為了生成RPMBuilder.xml配置文件
>vi RPMBuilder.xml # 簡單配置一下
>rpmbuilder # 開始打包
搞定!
去下邊的link去下載rpm包,安裝,直接用~
Links:
https://sourceforge.net/projects/xml2rpm/files/rpmbuilder-1.0.1/