中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux RPM包怎么用

發布時間:2022-01-05 09:29:06 來源:億速云 閱讀:139 作者:iii 欄目:大數據

本篇內容介紹了“Linux RPM包怎么用”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

11 安裝和打包資源代理

如何將它包含在你自己的應用包里或者Linux-HA資源代理庫里面。

11.1 安裝資源代理

如果你希望在你自己的項目中包含你的資源代理,必須將其安裝在正確的位置。資源代理應該安裝在/usr/lib/ocf/resource.d/  目錄,是你項目的名字或者其他你想用的名字。

比如,如果你的foobar 資源代理被打包成你fortytwo項目的一部分,那么其完整的路徑應該是/usr/lib/ocf/resource.d/fortytwo/foobar。確定你的資源代理有755(-rwxr-xr-x)權限。

當以此方式安裝了,OCF兼容的集群資源管理將會正確的定位、解析和執行你的資源代理。比如Pacemaker集群管理會將會將上面的路徑映射為ocf:fortytwo:foobar 資源代理標識。

11.2 打包資源代理

如果你的資源代理是你的項目的一部分,你應該注意本節提到的一些要點。

注意:

如果你希望提交你的資源代理到Linux-HA資源代理庫,可以參考11.3節,提交資源代理。

11.2.1 RPM

推薦將你的資源代理打包為RPM時,使用名字 -resource-agents。確保包可以放在provider目錄里面,并依賴上層目錄和腳本函數。一個RPM spec 代碼如下:

1

2

3

4

5

6

7

8

9

10

11

12

%package resource-agents

Summary: OCF resource  agent for Foobar

Group: System Environment/Base

Requires: %{name} =  %{version}-%{release}, resource-agents


%description resource-agents

This package contains the OCF-compliant  resource agents for Foobar.


%files resource-agents

%defattr(755,root,root,-)

%dir %{_prefix}/lib/ocf/resource.d/fortytwo

%{_prefix}/lib/ocf/resource.d/fortytwo/foobar

注意:

如果RPM spec 文件包含一個%package聲明,RPM會認為這是一個子包,它繼承上層的Name,Version,License等上層的內容。Sub-packages 用上級包的名字跟著它們自己的名字構成。這樣,上面那段代碼定義的Sub-package命名為 foobar-resource-agents(假設包的名字叫foobar)。

11.2.2 Debian

對于Debian的包,像RPM一樣,推薦使用獨立的包來保存你的資源代理,但是又依賴于cluster-agents 包。

注意:這里假設使用debhelper制作deb包。

一個debian/control 代碼例子如下:

1

2

3

4

5

Package: foobar-cluster-agents

Priority: extra

Architecture: all

Depends: cluster-agents

Description: OCF-compliant resource  agents for Foobar

也可以創建一個獨立的 .install 文件。按上面的例子,安裝foobar資源代理,為fortytwo的一個子包,debian/fortytwo-cluster-agents .install 文件應該包含的內容如下:

1

usr/lib/ocf/resource.d/fortytwo/foobar

11.3 提交資源代理

如果不將資源代理作為自己項目的一部分,而上提交到資源代理軟件倉庫(ClusterLabsrepository on GitHub),可以遵循如下步驟。

創建一個上游倉庫的工作拷貝(a Gitclone)

1

git clone  git://github.com/ClusterLabs/resource-agents

然后拷貝你的資源代理到你的heartbeat子目錄

1

2

3

4

cd resource-agents/heartbeat

cp /path/to/your/local/copy/of/foobar .

chmod 0755 foobar

cd ..

下一步,修改resource-agents/heartbeat目錄下的Makefile.am文件,增加你的資源代理ocf_SCRIPTS列表。這可以保證你資源代理被正確的安裝。

最后,在resource-agents/doc/man目錄打開Makefile.am文件,并增加ocf_heartbeat_.7到man_MANS變量。這將自動從資源代理的元數據產生資源代理的手冊頁,并安裝在正確的位置。

現在,添加你的資源代理,和你修改的Makefile:

1

2

3

4

git add heartbeat/foobar

git add heartbeat/Makefile.am

git add doc/man/Makefile.am

git commit

提交時候的消息,最好是提供一句有意義的話。比如

1

git send-email  --to=linux-ha-dev@lists.linux-ha.org

補丁集最好在mailing list上提供一個聲明或者通知。

git send-email 會以一個良好的格式組織本次的更新并提交到郵件列表。具體細節可以參考git-send-mail的手冊頁。

一旦你的提交被接受,上游開發者會講你的補丁推到上游資源庫。這個時候,你可以直接從上游庫更新,刪掉自己的補丁集。

1

2

git reset --hard origin/master

git pull

11.4 維護資源代理

如果你為一個特定的資源代理,或者,你正對某一塊代碼反復貢獻,最好在GitHub上開一個分支。

如果你要這么做:

  • 創建一個GitHub帳號(如果你是新用戶)

  • Fork resource-agents 軟件倉庫

  • 克隆你創建的分支到本地工作版本

如果你開發資源代理,可以經常提交,并早提交。你可以之后經常通過 git rebase i 合并你的提交。

如果你做的提交希望一些人能看到,評審。將他們加入你的GitHub分支,并發送郵件到linux-ha-dev郵件列表,在郵件中指明這些人。

這些都做完之后,按照要求做了改變,你可以發出一個pull請求。有兩種辦法:

  • 你可以使用 git request-pull 應用來獲得一個預先組織好的框架,這個框架對你所做改變做了總結。你可以增加你要的信息,并將其發送的郵件列表。最好在你的郵件主題前綴定為[GIT PULL],這樣上游開發者可以比較容易獲得信息。

  • 你也可以直接給GitHub發出請求,GitHub通過郵件自動通知上游開發者。具體細節可以查看github:help。

“Linux RPM包怎么用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

保亭| 漯河市| 宜章县| 筠连县| 峨山| 金阳县| 滨海县| 正蓝旗| 建昌县| 新乡市| 壶关县| 宣城市| 封开县| 林周县| 石泉县| 虎林市| 岳西县| 镇平县| 瑞金市| 汉寿县| 赤壁市| 咸丰县| 休宁县| 凉山| 西林县| 石门县| 吴桥县| 盐山县| 海口市| 东乌珠穆沁旗| 旌德县| 昌图县| 利津县| 科技| 永兴县| 沿河| 无为县| 石屏县| 三门峡市| 泰来县| 松潘县|