我想問我的系統管理員安裝各種Perl模塊,如Moose
和Data::Alias
。該系統是運行Perl 5.8.8的Red Hat Enterprise Linux 5。我能想到的唯一問題是,一些已經安裝的模塊可能需要升級,從而冒着破壞某些東西的風險。還有什麼我應該關心的?在服務器上安裝額外的Perl模塊時應該擔心什麼?
回答
我不知道貴公司的政策,但它可能會是一個更好的主意,不要亂用你的系統perl
並在不同的位置安裝額外的庫及其先決條件(甚至專門perl
),並使用lib
。
我們的系統管理員是關心確保所請求的Perl模塊不會破壞系統中的其他任何東西的人。
因此,我們問,然後他們可以說「不,這將打破X,請安裝在用戶空間。」或者「出於兼容性原因,我們將在非標準位置安裝Y」。在做出這個決定時,我不知道他們考慮的所有事情。我應該知道的唯一事情就是當模塊安裝/更新時,我的應用程序是否會中斷。
如果您的系統管理員作爲開發人員將此職責(即瞭解整個系統的影響)傳遞給您,那麼與Sinan's suggestion配合使用並安裝非標準模塊需要更安全你自己的位置。不得不在同一時間成爲系統管理員和開發人員,同時付錢只是一件事,這並不好玩。
感謝您的補充見解。 – 2009-12-01 15:38:23
這是特別是如果你使用的是共享主機或有一個託管服務提供商是持懷疑態度的安裝Perl模塊的一個經常被問到的問題。
有一個解決方法,一個方法來解決混合系統模塊和自己的模塊的這個問題,並修復被稱爲本地:: lib中。 local::lib爲您提供了一種方法,可以將模塊本地安裝在您指定的庫中,您可以控制該模塊。您可以使用/ home/you/perl5 /或任何您認爲可行的路徑。
PS - 穆斯模塊將最有可能不與其他干擾的Perl 5個模塊,因爲駝鹿有乾淨獨立的命名空間。但是,它確實需要很多來自CPAN的模塊,因此請提前警告您的系統管理員。 :)
另外,問你的系統管理員的Perl升級到5.10,帶來很多好的新東西到Perl的核心,並允許您使用一些閃亮的新的Perl技術。
謝謝。我真正希望的是服務器運行Debian Lenny,以便5.10是標準的。 我想過建議升級到5.10,但擔心它可能是其他開發商產生負面影響。 – 2009-12-01 15:47:34
是的,考慮到其他用戶的方式,將避免問題。 :)一個人只是希望每個人都這樣做。 好消息是,perl很難向後兼容,所以我不認爲會有很多中斷。但是,如果沒有很多測試,當然很難知道。 – jeremiah 2009-12-03 12:17:13
訣竅是不要擺脫舊的設置,直到你知道你的新設置工作。蹭的是,CPAN工具鏈並不在意,並且會很樂意在新的文件上安裝新的文件,而不會給你一種卸載你的破壞的方法。
如果我正在開發一個我要升級模塊的大型項目,我喜歡將這些新模塊放在他們自己的新目錄中。我可以通過將PERL5LIB
設置爲新目錄來測試,如果不能解決問題,我只需簡單更改環境就可以回到舊版本。
有些人對源代碼管理做類似的事情。他們將模塊目錄放入版本控制系統中。當他們安裝新模塊時,他們檢查源代碼。當某些事情中斷時,他們只是回滾更改。他們還可以標記版本,以便他們可以回滾到任何工作點。
非常感謝。這對我來說非常有用。 – 2009-12-01 22:08:34
- 1. 如何在受限制的服務器上安裝Perl模塊?
- 2. 在Apache Tomcat服務器上安裝Perl模塊,
- 3. 安裝額外的Apache模塊
- 4. RIA Services是否需要在服務器上額外安裝?
- 5. 使用aptitude安裝額外的PHP模塊(在安裝php後)?
- 6. 在什麼時候我應該擔心numpy值下溢?
- 7. Perl模塊安裝?
- 8. 我應該安裝什麼網絡服務器?
- 9. 當安裝兩個版本的模塊時,Perl會做什麼?
- 10. 在Windows上安裝Sqitch Perl CPAN模塊
- 11. 如何在Windows上安裝perl模塊?
- 12. 計算機精度:我應該什麼時候擔心它?
- 13. 的Perl模塊安裝
- 14. perl的安裝模塊
- 15. 我應該擔心從Web服務返回的URL中的'&'
- 16. 我應該在已安裝Cpanel的服務器上安裝Docker嗎?
- 17. 如何在MAMP服務器上安裝mod_ftp模塊
- 18. 在網絡服務器上安裝python模塊
- 19. 我應該在構建服務器上安裝SDK嗎?
- 20. 爲什麼我應該在安裝maven facet時添加動態web模塊?
- 21. Perl DBD :: Oracle模塊安裝
- 22. Windows服務器上安裝的ffmpeg模塊爲PHP
- 23. Perl:安裝CPAN模塊時出錯
- 24. 安裝DBI Perl模塊時出錯
- 25. 在安裝Perl模塊時安裝純C二進制文件
- 26. 在WAMP服務器上安裝時,我應該在magento 1.4.2.0的基準URL字段中編寫什麼內容?
- 27. 擔心在Apache服務器上的python線程
- 28. 安裝新模塊時dmake實際上在做什麼?
- 29. 在調用本地Web服務時,我應該擔心HTTP開銷嗎?
- 30. 安全。客戶端應該做什麼以及服務器上有什麼?
謝謝。這不是我想要的答案,但它是我需要的答案。 :) – 2009-12-01 15:14:39
不是你需要的那個答案嗎? :) – 2009-12-01 15:42:23
非常真實,好點! – 2009-12-01 16:12:23