1. linux怎麼識別硬碟
操作方法
01
首先我們開啟centos7系統,並使用root賬戶登錄。然後通過fdisk命令查看系統的磁碟信息。我們執行命令"fdisk -l"查看系統的磁碟信息。具體展示如下圖所示。
02
然後我們執行命令"badblocks -v /dev/sda1 > result.txt ",執行檢測,並將操作結果重定向到result.txt內。具體操作如下圖所示。
03
下面我們介紹另外一種方法,採用Smartctl軟體,首先我們執行命令「yum install smartmontools」進行安裝,具體操作如下圖所示。
04
然後我們執行命令「smartctl --help」查看幫助文檔,具體操作如下圖所示。
05
然後執行命令「systemctl start smartd.service」啟動服務,並且檢驗服務是否啟動成功。具體操作如下圖所示。
06
然後我們檢查磁碟的 Smart 功能是否啟用,我們採用命令「smartctl -i /dev/sda」。具體展示如下圖所示。
07
當然我們可以通過命令「smartctl -s on /dev/sda」開啟磁碟的smart功能。具體操作如下圖所示。
08
然後執行命令「smartctl -a /dev/sda」顯示磁碟的詳細smart信息。
09
然後執行命令「smartctl --test=short /dev/sda」執行磁碟的短期檢測。具體展示如下圖所示。
特別提示
當然smartctl 還有很多命令格式,本篇只作為入門級查看,更深一步請大家查看幫助文檔。
2. 誰能給我推薦一套穩定,支持多用戶、Linux平台的郵件伺服器
幾年以前,Linux環境下可以選擇的可以免費郵件伺服器軟體只有Sendmail,但是由於Sendmail的缺陷,一些開發者先後開發了若干種其他的郵件伺服器軟體。當前,運行在Linux環境下免費的郵件伺服器,或者稱為MTA(Mail Transfer Agent)有若干種選擇,比較常見的有Sendmail、Qmail、Postfix、exim及Zmailer等等。本文希望通過對幾種影響相對來說比較大的主流Linux環境下的MTA的特點進行闡述,並對其優缺點一一分析比較,使用戶在選擇Linux環境下的免費MTA時有一個選擇的依據。
Postfix
Postfix是一個由IBM資助下由Wietse Venema 負責開發的自由軟體工程的一個產物,其目的是為用戶提供除sendmail之外的郵件伺服器選擇。Postfix力圖做到快速、易於管理、提供盡可能的安全性 ,同時盡量做到和sendmail郵件伺服器保持兼容性以滿足用戶的使用習慣。起初,Postfix是以VMailer這個名字發布的,後來由於商標上的原因改名為Postfix。
主要設計目標
Postfix工程的目標是實現一個郵件伺服器,提供給用戶除sendmail以外的選擇。其設計目標包括:
性能。 Postfix要比同類的伺服器產品速度快三倍以上,一個安裝Postfix的台式機一天可以收發百萬封信件。Postfix設計中採用了web伺服器的的設計技巧以減少進程創建開銷,並且採用了其他的一些文件訪問優化技術以提高效率,但同時保證了軟體的可靠性。
兼容性。Postfix設計時考慮了保持Sendmail的兼容性問題,以使移植變的更加容易。Postfix支持/var[/spool]/mail, /etc/aliases, NIS, 及 ~/.forward等文件。然而Postfix為保證管理的簡單性,所以沒有支持配置文件sendmail.cf。
安全和健壯性。Postfix設計上實現了程序在過量負載情況下仍然保證程序的可靠性。當出現本地文件系統沒有可用空間或沒有可用內存的情況時,Postfix就會自動放棄,而不是重試使情況變的更糟。
靈活性。Postfix結構上由十多個小的子模塊組成,每個子模塊完成特定的任務,如通過SMTP協議接收一個消息,發送一個消息,本地傳遞一個消息,重寫一個地址等等。當出現特定的需求時,可以用新版本的模塊來替代老的模塊,而不需要更新整個程序。而且它也很容易實現關閉某個功能。
安全性。Postfix使用多層防護措施防範攻擊者來保護本地系統,幾乎每一個Postfix守護進程都能運行在固定低許可權的chroot之下,在網路和安全敏感的本地投遞程序之間沒有直接的路徑—一個攻擊者必須首先突破若干個其他的程序,才有可能訪問本地系統。Postfix甚至不絕對信任自己的隊列文件或IPC消息中的內容以防止被欺騙。Postfix在輸出⑺駝嚀峁┑南�⒅�盎崾紫裙�訟�ⅰ6�襊ostfix程序沒有set-uid。
Postfix的一些特點
支持多傳輸域:sendmai支持在Internet, DECnet, X.400及UUCP之間轉發消息。 Postfix則靈活的設計為無須虛擬域(vistual domai)或別名來實現這種轉發。但是在早期的發布里僅僅支持STMP和有限度地支持UUCP,但對於我國用戶來說,多傳輸域的支持沒有什麼意義。
虛擬域:在大多數通用情況下,增加對一個虛擬域的支持僅僅需要改變一個Postfix查找信息表。其他的郵件伺服器則通常需要多個級別的別名或重定向來獲得這樣的效果。
UCE控制(UCE,unsolicited commercial email): Postfix能限制哪個主機允許通過自身轉發郵件,並且支持限定什麼郵件允許接進。Postfix實現通常的控制功能:黑名單列表、RBL查找、HELO/發送者DNS核實。基於內容過濾當前沒有實現。
表查看: Postfix沒有實現地址重寫語言,而是使用了一種擴展的表查看來實現地址重寫功能。表可以是本地 dbm或 db文件等格式。
Postfix體系結構及與Sendmail的比較
Postfix是基於半駐留,互操作的進程的體系結構,每個進程完成特定的任務,沒有任何特定的進程衍生關系(父子關系)。而且,獨立的進程來完成不同的功能相對於「單塊」程序具有更好的隔離性。此外,這種實現方式具有這樣的優點:每個服務如地址重寫等都能被任何一個Postfix部件所使用,無須進程創建等開銷,而僅僅需要重寫一個地址,當然並不是只有postfix採用這種方式。
Postfix是按照這種方式實現的:一個駐留主伺服器根據命令運行Postfix守護進程,守護進程完成發送或接收網路郵件消息,在本地遞交郵件等等功能。守護進程的數目由配置參數來決定的,並且根據配置決定守護進程運行的次數(re-used times),當空閑時 間到達配置參數指定的限度時,自動消亡。這種方法明顯地降低了進程創建開銷,但是單個進程之間仍然保持了良好的隔離性。
Postfix的設計目標就是成為Sendmail的替代者。由於這個原因,Postfix系統的很多部分,如本地投遞程序等,可以很容易地通過編輯修改類似inetd的配置文件來替代。
Postfix的核心是由十多個半駐留程序實現的。為了保證機密性的原因,這些Postfix進程之間通過Unix的socket或受保護的目錄之下的FIFO進行通信。即使使用這種方法來保證機密性,Postfix進程並不盲目信任其通過這種方式接收到的數據。
Postfix進程之間傳遞的數據量是有限制的。在很多情況下,Postfix進程之間交換的數據信息只有隊列文件名和接收者列表,或某些狀態信息。一旦一個郵件消息被保存進入文件,其將在其中保存到被一個郵件投遞程序讀出。
Postfix採用一些通常的措施來避免丟失信息:在收到確認以前通過調用flush和fsync()保存所有的數據到磁碟中。檢查所有的系統調用的返回結果來避免錯誤狀況。
大多數構建郵件伺服器者都會選擇sendmail,公平的來講sendmail是一個不錯的MTA(Mail Transfer Agent),最初開發時Eric Allman的設計考慮主要放在了郵件傳遞的成功性。不幸的是,Sendmai開發時沒有太多的考慮Internet環境下可能遇到的安全性問題。Sendmail在大多數系統上只能以根用戶身份運行,這就意味著任何漏洞都可能導致非常嚴重的後果,除了這些問題之外,在高負載的情況Sendmail運行情況不是很好。
安全
Postfix則並一定要以root的身份運行,而只需要一個主(master)程序以root身份運行,其生成進程來處理接入、發出及本地郵件投遞工作。通過使用一系列模塊部件,每個任務由一個單獨的程序來運行(這樣使審計變的容易一些)。例如發出郵件被卸載到一個隊列目錄,在這里「pcikup」程序取到該郵件然後將郵件傳遞給「cleanup」程序,其再將郵件傳遞給「trivial-rewrite」,其負責處理郵件頭,最後若郵件目的是別的系統則將郵件傳遞給「smtp」程序。而且相對於Sendmail來說Postfix也更容易設置chroot『ed環境。只要簡單地通過編輯master.cf(一般位於/etc/postfix內)文件即可實現,並且Postfix將運行chroot『ed,以限定在其定義的隊列目錄之下(通常位於/var/spool/postfix),同樣可以在master.cf中對Postfix的單一模塊設置進程限制。用戶可以限制Postfix以哪個用戶的身份運行,一般來說是以「postfix」用戶(概念上該用戶和Apache的nobody類似)運行,該用戶可以訪問特定的隊列目錄。Postfix其他的主要優點是起配置文件的清晰易懂性。
與Sendmail的比較 如sendmail之類的郵件系統是按照一個單塊的結構設計實現的,該「單塊」程序實現所有的功能。當然這種結構有利於在系統的不同部分之間共享數據。但是這種結構容易出現一些致命的錯誤。而如qmail的郵件系統上使用一種分層次的結構,按照固定得順序運行不同功能的子模塊進程,執行完畢之後就將其釋放。這種方法有良好的「絕緣」性,但是增加了進程創建開銷和進程間通信開銷。但是通過合理的規劃子模塊進程的運行順序可以將開銷保持在可以接受的范圍內。
使用其他的MTA替代Sendmail是一件非常麻煩的事情,用戶往往又要花大量的時 間去熟悉新的MTA的配置和使用。而使用Postfix,你可以利用很多以有的配置文件。如(access, aliases, virtusertable等等),只需要簡單的在master.cf中定義一下即可。此外,Postfix在行為上也很象Sendmail,用戶可以使用sendmail命令來啟動Postfix。
當然,使用一個軟體來替代另外一個軟體需要解決特定的問題。部分原因是因為Postfix的安全特性,在配置Postfix時可能會遇到一些問題。最典型的問題是向root用戶發送郵件。Postfix一般不提高自身的許可權(向root用戶發送郵件所必須的)來投遞郵件。用戶需要在別名文件中為root定義別名,如:root: someuser。這同樣會對若干個郵件列表模塊發生影響,特別是SmartList。一般來說實現郵件列表最好使用Majordomo,它易於配置。
Sendmail一個很突出的問題就是可擴展性和性能問題。例如用戶若希望每天重新啟動Sendmail來實現自動更新配置文件(如為虛擬主機重定向郵件)就會出現問題。Sendmail生成新的進程來處理發送和接收郵件,這些進程會一直存在直到傳輸結束,之後Sendmail才能退出,這樣你的腳本程序將不能正確的重起Sendmail。而對於Postfix,用戶則只需要發出命令postfix reload即可,Postfix將會重新載入其配置文件。
另外,對於有數以萬計的用戶的郵件伺服器來說,使用文件來存儲如匹配用戶發出郵件地址(例如bob發出的信的發信人修改為[email protected])。對於大量用戶來講,該文件就會變的很巨大,從而影響系統的運行效率。而Postfix則可以和一個資料庫後台集成起來(當前只支持MySQL)來存放其配置信息,資料庫方式要比文件方式在可擴展性方面強大很多。
遵從IBM的開放源代碼版權許可證,用戶可以自由地分發該軟體,進行二次開發。其唯一的限制就是必須將對Postfix做的修改返回給IBM公司。因為IBM資助了Wietse的開發。
與Qmail的比較
Qmail的缺點就是配置方式和Sendmail不一致,不容易維護。而且Qmail的版權許可證含義非常模糊,甚至沒有和軟體一起發布。應用作者的話:若你希望分發自己修改版本的Qmail,你必須得到我的許可。
Qmail qmail是有Dan Bernstein開發的可以自由下載的MTA,其第一個beta版本0.70.7發布於1996年1月24日,1997年2月發布了1.0版,當前版本是1.03。
Qmail的特點
安全性 為了驗證Qmail的安全性,Qmail的支持者甚至出資$1000懸賞尋找Qmail的安全漏洞,一年以後,該獎金沒有被領取,而被捐獻給自由軟體基金會。目前,Qmail的作者也出資$500來尋求Qmail的安全漏洞。
速度mail在一個中等規模的系統可以投遞大約百萬封郵件,甚至在一台486一天上能處理超過10萬封郵件,起支持並行投遞。Qmail支持郵件的並行投遞,同時可以投遞大約20封郵件。目前郵件投遞的瓶頸在於SMTP協議,通過STMP向另外一台互聯網主機投遞一封電子郵件大約需要花費10多秒鍾。Qmail的作者提出了QMTP(Quick Mail Transfer Protocol)來加速郵件的投遞,並且在Qmail中得到支持。Qmail的設計目標是在一台16M的機器上最終達到每天可以投遞大約百萬級數目的郵件。
可靠性:為了保證可靠性,Qmail只有在郵件被正確地寫入到磁碟才返回處理成功的結果,這樣即使在磁碟寫入中發生系統崩潰或斷電等情況,也可以保證郵件不被丟失,而是重新投遞。
特別簡單的虛擬域管理,甚至有一個第三方開發的稱為vpopmail的add-on來支持虛擬POP域。使用這個軟體包,POP3用戶不需要具有系統的正式帳戶。
使用ezmlm支持用戶自控制的郵件列表功能。
郵件用戶和系統帳戶隔離,為用戶提供郵件帳戶不需要為其設置系統帳戶,從而增加了安全性。
Sendmail vs Qmail
首先:sendmail是發展歷史悠久的MTA,當前的版本是8.10.2。當然,Sendmail在可移植性、穩定性及確保沒有bug方面有一定的保證。但是Internet上有很多帖子都是關於如果攻擊Sendmail,這對於管理員來說是一個噩夢。Sendmail在發展過程中產生了一批經驗豐富的Sendmail管理員,並且Sendmail有大量完整的文檔資料,除了Sendmail的寶典:O『Reilly『s sendmail book written by Bryan Costales with Eric Allman以外,網路上有大量的tutorial、FAQ和其他的資源。這些大量的文檔對於很好的利用Sendmail的各種特色功能是非常重要的。但是Sendmai當前來說是一個成熟的MTA。
當然,Sendmail具有一些缺點,其特色功能過多而導致配置文件的復雜性。當然,通過使用m4宏使配置文件的生成變的容易很多。但是,要掌握所有的配置選項是一個很不容易的事情。Sendmail在過去的版本中出現過很多安全漏洞,所以使管理員不得不趕快升級版本。而且Sendmail的流行性也使其成為攻擊的目標,這有好處也有壞處:這意味著安全漏洞可以很快地被發現,但是同樣使Sendmail更加穩定和安全。另外一個問題是Sendmail一般預設配置都是具有最小的安全特性,從而使Sendmail往往容易被攻擊。如果使用Sendmail,應該確保明白每個打開的選項的含義和影響。一旦你理解了Sendmail的工作原理,就Sendmail的安裝和維護就變的非常容易了。通過Sendmail的配置文件,用戶實現完成一切可以想像得到的需求。
Qmail是一個選擇,其在設計實現中特別考慮了安全問題。如果你需要一個快速的解決方案如,一個安全的郵件網關,則Qmail是一個很好的選擇。Qmail和Sendmail的配置文件完全不同。而對於Qmail,其有自己的配置文件,配置目錄中包含了5-30個不同的文件,各個文件實現對不同部分的配置(如虛擬域或虛擬主機等)。這些配置說明都在man中有很好的文檔,但是Qmail的代碼結構不是很好。
Qmail要比Sendmail小很多,其缺乏一些現今郵件伺服器所具有的特色功能。如不象Sendmail,qmail不對郵件信封的發送者的域名進行驗證,以確保域名的正確性。自身不提供對RBL的支持,而需要add-on來實現。,而Sendmail支持RBL。同樣Qmail不能拒絕接收目的接收人不存在信件,而是先將郵件接收下來,然後返回查無此用戶的的郵件。Qmail最大的問題就出在發送郵件給多個接收者的處理上。若發送一個很大的郵件給同一個域中的多個用戶,Sendmail將只向目的郵件伺服器發送一個郵件拷貝。而Qmail將並行地連接多次,每次都發送一個拷貝給一個用戶。若用戶日常要發送大郵件給多個用戶,使用Qmail將浪費很多帶寬。可以這么認為:Sendmail優化節省帶寬資源,Qmail優化節省時 間。若用戶系統有很好的帶寬,Qmail將具有更好的性能,而如果用戶系統的帶寬資源有限,並且要發送很多郵件列表信息,則Sendmail效率更高一些。Qmail不支持.forward(.forward在很多情況下對用戶很有用處);不使用/var/spool/mail,而是將郵件存放在用戶home目錄。下面是一些使用Qmail不容易完成的工作,要使用Qmail完成這些工作,可能需要用戶自己動手實現或者使用第三方提供的不夠可靠的模塊。
Qmail的源代碼相對於Sendmail來說要更加容易理解,這對於希望深入到內部了解MTA機制的人員來說是一個優點。Qmail在安全性方面也要穩定一些。Qmail有很好的技術支持,但是沒有象Sendmail那樣被廣泛地應用和大量的管理員用戶群。Qmail的安裝不象Sendmail那樣自動化,需要手工步驟。而且Qmail的文檔不如Sendmail那樣完整和豐富。
Qmail的add-ons比Sendmail要少一些。一般來說對於經驗稍微少一些的管理員,選擇Qmail相對要好一些。Qmail要簡單一些,而且其特色功能能滿足一般用戶的需求。Sendmail類似於office套件,80%的功能往往都不被使用。這就使Qmail在一些場合可能被更受歡迎一些,其具有一些Sendmail所沒有的更流行和實用的特色功能,如mail具有內置的pop3支持。Qmail同樣支持如主機或用戶的偽裝、虛擬域等等。Qmail的簡單性也使配置相對容易一些。
Qmail被認為相對於Sendmail更加安全和高效,運行Qmail的一台pentium機器一天可以處理大約200,0000條消息。
Qmail相對於其他的MTA要簡單很多,主要體現在1)其他的MTA的郵件轉發、郵件別名和郵件列表都是採用相互獨立的機制,而qmail採用一種簡單的轉發(forwarding)機制來允許用戶處理自己的郵件列表(2)其他的MTA都提供快速而不安全的方式及慢的隊列方式的郵件投遞機制;而qmail發送是由新郵件的出現而觸發的,所以其投遞只有一種模式:快速的隊列方式(3)其他的MTA實際上包括一個特定版本的inetd來監控MTA的平均負載,而qmail設計了內部機制來限制系統負載,所以qmail-smtpd能安全地從系統的inet來運行
sendmail有很多的商業支持,而且由於大量的用戶群,在互聯網上有大量的潛在技術支持。而Qmail只有很有限的技術支持。有家公司inter7.com提供對Qmail的支持,該公司同樣提供了免費的add-ons,包括一個基於web的管理工具-QmailAdmin及一個通過vpopmail的對虛擬域的支持,甚至具有一個基於web的客戶借介面—SqWebMail。
Qmail還具有一些其他的缺憾。如它不是完全遵從標准,它不支持DSN,作者認為DSN是一個即將消亡的技術,而Qmail的VERP可以完成同樣的工作,而又不象DSN依賴於其他主機的支持。Qmail另外一個問題是其不遵從支持7bit系統標准,而每次都發送8bit。若郵件接收一方不能處理這種情況,就會出現郵件亂碼的情況。
從安全性來講,Sendmail要比Qmail差一些,Sendmail在發展中出現過很多很著名的安全漏洞;而Qmail相對要短小精悍,但是仍然提供了基本的STMP功能。而Qmail的代碼注釋要少一些。Qmail的一個很好的特色是其支持一種可選的基於目錄的郵件存儲格式,而不是使用一個很大的文件來存儲用戶所有的郵件。若用戶的郵件伺服器進行很多的POP3服務,則這種郵件存儲格式可以提高效率。但是遺憾的是Pine自身並不支持這種存儲格式,如果需要可以使用一些補丁來達到這個目的。
Qmail的優點是:每個用戶都可以創建郵件列表而無須具有根用戶的許可權,如用戶foo可以創建名為foo-slashdot, foo-linux,foo-chickens 的郵件列表,為了提供更好的功能,有一個叫ezmlm(EZ Mailing List Maker)的工具可以支持自動注冊和注銷、索引等Majordomo所具有的各種功能,但是都是CLI驅動的,只需要編輯很少的文件。Qmail非常適合在小型系統下工作,一般只支持較少的用戶或用來管理郵件列表。Qmail速度快並且簡單mail是當你希望安全切容易配置的最佳的選擇;Qmail可以在2個小時內搞定配置,而Sendmail可能在兩天內都搞不定。
rocketmail internic 等都使用qmail來構建
ZMailer
ZMailer是一個高性能、多進程的Unix系統郵件程序。 [ a.k.a. MTA per X.400 parlance ],其可以從下面的伺服器ftp://ftp.funet.fi/pub/unix/mail/zmailer/ 自由下載。其也是按照單塊模式設計的。如Hotmail等郵件系統就是用Zmailer構建的。
Exim Exim是由Cambridge 大學開發的遵從GPL的MTA,其風格上類似與Smail 3,但是比Smail 3更加完善。當前最新版本是3.15。其主站點為http://www.exim.org/。其最大的特點就是配置簡單性,但是其安全性不如Qmail及Postfix。
下面是對幾種MTA的特點的比較,綜合的來講,Qmail和Postfix都是很不錯的MTA,選擇的標准往往是個人的喜好問題,Postfix發展歷史要比Qmail遲一些。
MTA 成熟性 安全性 特色 性能 Sendmail兼容性 模塊化設計 qmail medium high high high addons yes Sendmail high low high low x no Postfix low high high high yes yes exim medium low high medium yes no
當然除了這里介紹的幾種MTA以外,還有 Smail, Post.Office,the Sun Internet Mail Server (SIMS), MMDF, CommuniGate,PMDF, Netscape Messaging Server,Obtuse smtpd/smtpfwdd,Intermail,MD Switch等其他商業或者免費的MTA可以選擇。
幾年以前,Linux環境下可以選擇的可以免費郵件伺服器軟體只有Sendmail,但是由於Sendmail的缺陷,一些開發者先後開發了若干種其他的郵件伺服器軟體。當前,運行在Linux環境下免費的郵件伺服器,或者稱為MTA(Mail Transfer Agent)有若干種選擇,比較常見的有Sendmail、Qmail、Postfix、exim及Zmailer等等。本文希望通過對幾種影響相對來說比較大的主流Linux環境下的MTA的特點進行闡述,並對其優缺點一一分析比較,使用戶在選擇Linux環境下的免費MTA時有一個選擇的依據。
Postfix
Postfix是一個由IBM資助下由Wietse Venema 負責開發的自由軟體工程的一個產物,其目的是為用戶提供除sendmail之外的郵件伺服器選擇。Postfix力圖做到快速、易於管理、提供盡可能的安全性 ,同時盡量做到和sendmail郵件伺服器保持兼容性以滿足用戶的使用習慣。起初,Postfix是以VMailer這個名字發布的,後來由於商標上的原因改名為Postfix。
主要設計目標
Postfix工程的目標是實現一個郵件伺服器,提供給用戶除sendmail以外的選擇。其設計目標包括:
性能。 Postfix要比同類的伺服器產品速度快三倍以上,一個安裝Postfix的台式機一天可以收發百萬封信件。Postfix設計中採用了web伺服器的的設計技巧以減少進程創建開銷,並且採用了其他的一些文件訪問優化技術以提高效率,但同時保證了軟體的可靠性。
兼容性。Postfix設計時考慮了保持Sendmail的兼容性問題,以使移植變的更加容易。Postfix支持/var[/spool]/mail, /etc/aliases, NIS, 及 ~/.forward等文件。然而Postfix為保證管理的簡單性,所以沒有支持配置文件sendmail.cf。
安全和健壯性。Postfix設計上實現了程序在過量負載情況下仍然保證程序的可靠性。當出現本地文件系統沒有可用空間或沒有可用內存的情況時,Postfix就會自動放棄,而不是重試使情況變的更糟。
靈活性。Postfix結構上由十多個小的子模塊組成,每個子模塊完成特定的任務,如通過SMTP協議接收一個消息,發送一個消息,本地傳遞一個消息,重寫一個地址等等。當出現特定的需求時,可以用新版本的模塊來替代老的模塊,而不需要更新整個程序。而且它也很容易實現關閉某個功能。
安全性。Postfix使用多層防護措施防範攻擊者來保護本地系統,幾乎每一個Postfix守護進程都能運行在固定低許可權的chroot之下,在網路和安全敏感的本地投遞程序之間沒有直接的路徑—一個攻擊者必須首先突破若干個其他的程序,才有可能訪問本地系統。Postfix甚至不絕對信任自己的隊列文件或IPC消息中的內容以防止被欺騙。Postfix在輸出⑺駝嚀峁┑南�⒅�盎崾紫裙�訟�ⅰ6�襊ostfix程序沒有set-uid。
Postfix的一些特點
支持多傳輸域:sendmai支持在Internet, DECnet, X.400及UUCP之間轉發消息。 Postfix則靈活的設計為無須虛擬域(vistual domai)或別名來實現這種轉發。但是在早期的發布里僅僅支持STMP和有限度地支持UUCP,但對於我國用戶來說,多傳輸域的支持沒有什麼意義。
虛擬域:在大多數通用情況下,增加對一個虛擬域的支持僅僅需要改變一個Postfix查找信息表。其他的郵件伺服器則通常需要多個級別的別名或重定向來獲得這樣的效果。
UCE控制(UCE,unsolicited commercial email): Postfix能限制哪個主機允許通過自身轉發郵件,並且支持限定什麼郵件允許接進。Postfix實現通常的控制功能:黑名單列表、RBL查找、HELO/發送者DNS核實。基於內容過濾當前沒有實現。
表查看: Postfix沒有實現地址重寫語言,而是使用了一種擴展的表查看來實現地址重寫功能。表可以是本地 dbm或 db文件等格式。
3. Linux解壓和壓縮命令都有哪些,有什麼區別呢
您好,以下是壓縮和解壓的命令大全:
-c: 建立壓縮檔案
-x:解壓
-t:查看內容
-r:向壓縮歸檔文件末尾追加文件
-u:更新原壓縮包中的文件
這五個是獨立的命令,壓縮解壓都要用到其中一個,可以和別的命令連用但只能用其中一個。下面的參數是根據需要在壓縮或解壓檔案時可選的。
-z:有gzip屬性的
-j:有bz2屬性的
-Z:有compress屬性的
-v:顯示所有過程
-O:將文件解開到標准輸出
下面的參數-f是必須的
-f: 使用檔案名字,切記,這個參數是最後一個參數,後面只能接檔案名。
# tar -cf all.tar *.jpg
這條命令是將所有.jpg的文件打成一個名為all.tar的包。-c是表示產生新的包,-f指定包的文件名。
# tar -rf all.tar *.gif
這條命令是將所有.gif的文件增加到all.tar的包裡面去。-r是表示增加文件的意思。
# tar -uf all.tar logo.gif
這條命令是更新原來tar包all.tar中logo.gif文件,-u是表示更新文件的意思。
# tar -tf all.tar
這條命令是列出all.tar包中所有文件,-t是列出文件的意思
# tar -xf all.tar
這條命令是解出all.tar包中所有文件,-x是解開的意思
壓縮
tar –cvf jpg.tar *.jpg //將目錄里所有jpg文件打包成tar.jpg
tar –czf jpg.tar.gz *.jpg //將目錄里所有jpg文件打包成jpg.tar後,並且將其用gzip壓縮,生成一個gzip壓縮過的包,命名為jpg.tar.gz
tar –cjf jpg.tar.bz2 *.jpg //將目錄里所有jpg文件打包成jpg.tar後,並且將其用bzip2壓縮,生成一個bzip2壓縮過的包,命名為jpg.tar.bz2
tar –cZf jpg.tar.Z *.jpg //將目錄里所有jpg文件打包成jpg.tar後,並且將其用compress壓縮,生成一個umcompress壓縮過的包,命名為jpg.tar.Z
rar a jpg.rar *.jpg //rar格式的壓縮,需要先rar for
zip jpg.zip *.jpg //zip格式的壓縮,需要先zip for
解壓
tar –xvf file.tar //解壓 tar包
tar -xzvf file.tar.gz //解壓tar.gz
bunzip2 -kv *bz2
tar -xjvf file.tar.bz2 //解壓 tar.bz2
tar –xZvf file.tar.Z //解壓tar.Z
unrar e file.rar //解壓rar
unzip file.zip //解壓zip
總結
1、*.tar 用 tar –xvf 解壓
2、*.gz 用 gzip -d或者gunzip 解壓
3、*.tar.gz和*.tgz 用 tar –xzf 解壓
4、*.bz2 用 bzip2 -d或者用bunzip2 解壓
5、*.tar.bz2用tar –xjf 解壓
6、*.Z 用 uncompress 解壓
7、*.tar.Z 用tar –xZf 解壓
8、*.rar 用 unrar e解壓
9、*.zip 用 unzip 解壓
望採納和點贊哦!
4. linux系統怎麼解壓zip文件
1、首先進入linux系統以後右鍵單擊桌面,選擇Open In Terminal選項
5. linux怎麼安裝oracle11g
一:查看本地ssh服務
Linux系統下安裝啟動ssh服務,下面以CentOS版本Linux系統為例:
1.檢查是否裝了SSH包
rpm -qa |grep ssh
2.沒有安裝SSH直接YUM安裝
yum install openssh-server
3.檢查SSH服務是否為開機啟動
chkconfig --list sshd
4.設置開機啟動SSH服務
chkconfig --level 2345 sshd on
5.重新啟動下SSH服務
service sshd restart
6.驗證是否啟動了22埠
netstat -antp |grep sshd
#22埠為ssh默認埠,確認SSH服務開啟狀態
二:查看本地IP
終端中,輸入ifconfig命令
1 安裝系統 都選英文
2 去掉火牆 和 selinux
chkconfig iptables off
chkconfig ip6tables off
chkconfig abrt-ccpp off
chkconfig auditd off
chkconfig certmonger off ----未執行成功
chkconfig cups off
chkconfig postfix off
修改配置文件需要重啟機器:
修改/etc/selinux/config 文件
將SELINUX=enforcing改為SELINUX=disabled
3 安裝 yum
系統安裝yum 在/home/soft/ 下建立 yum 文件夾,把系統光碟都到此目錄
--先安裝三個包
cd /home/soft/yum/Packages
rpm -ivh deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm
rpm -ivh python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm
rpm -ivh createrepo-0.9.9-17.el6.noarch.rpm
createrepo . --運行
cd /etc/yum.repos.d
cp rhel-source.repo /etc/yum.repos.d/zj.repo
--將原來的repo文件改名字
mv rhel-source.repo rhel-source.repo111
vi zj.repo
[rhel-source]
name=Red Hat Enterprise Linux $releasever - $basearch - Source
baseurl=file:///home/soft/yum/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
[rhel-source-beta]
name=Red Hat Enterprise Linux $releasever Beta - $basearch - Source
baseurl=file:///home/soft/yum/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta,file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
--清楚yum緩存
yum clean all
3 安裝ftp
rpm -ivh vsftpd-2.2.2-11.el6.x86_64.rpm 或者 yum install vsftpd
chkconfig vsftpd on
service vsftpd restart
--修改 etc/vsftpd 目錄下
ftpuser user_list 把root 去掉
vsftpd.conf 把匿名去掉
#anonymous_enable=YES
-- passive mode 被動模式
4 安裝vnc rpm -qa |grep vnc
--vnc 服務 埠是 1
rpm -ivh tigervnc-server-1.1.0-5.el6.x86_64.rpm --需要先安裝下面的包
xorg-x11-fonts-misc is needed by tigervnc-server-1.1.0-5.el6.x86_64
rpm -ivh xorg-x11-fonts-misc-7.2-9.1.el6.noarch.rpm
--或者直接yum安裝
yum install tigervnc-server
--修改配置文件將用戶名稱加入到配置文件:
(註:這里的「用戶名」是指linux系統用戶的名稱)
[gavin@centos ~]# vi /etc/sysconfig/vncservers
#
# Uncomment the line below to start a VNC server on display :1
# as my 'myusername' (adjust this to your own). You will also
# need to set a VNC password; run 'man vncpasswd' to see how
# to do that.
#
# DO NOT RUN THIS SERVICE if your local area network is
# untrusted! For a secure way of using VNC, see
# http://www.uk.research.att.com/vnc/sshvnc.html>.
# VNCSERVERS="1:myusername"
# VNCSERVERS="1:gavin 2:john" # use the method for more user
VNCSERVERS="1:root 2:root 3:root"
# VNCSERVERARGS[1]="-geometry 800x600"
VNCSERVERARGS[1]="-geometry 1024x768"
--設置口令
vncpasswd
4.93 bjsqrac1 4.94 bjsqrac2
--啟動服務
啟動VNC服務
[gavin@centos ~]# /sbin/service vncserver start
--修改桌面系統
cd /root
cd ~/.vnc/
[gavin@centos .vnc]$ vi xstartup
#!/bin/sh
# Uncomment the following two lines for normal desktop:
#unset SESSION_MANAGER
#exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
#xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
gnome-session & #set starting GNOME desktop
#startkde & #kde desktop
#twm & #Text interface
編輯 /root/.vnc/xstartup
[root@localhost ~]# vi /root/.vnc/xstartup
去掉下面一行的注釋:
unset SESSION_MANAGER
執行下面的命令重啟vnc server:
[root@localhost ~]# vncserver -kill :1
[root@localhost ~]# vncserver :1
--重啟vncserver
[gavin@centos ~]# /sbin/service vncserver restart
chkconfig vncserver on --vnc自動啟動
2 關閉linux防火牆
--修改/etc/selinux/config,確保SELINUX設置為DISABLED
--關閉IPTABLES:
service iptables stop
service ip6tables stop
/sbin/chkconfig iptables off
/sbin/chkconfig ip6tables off
2 檢查包安裝情況
rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers lio lio-devel libgcc libstdc++ libstdc++-devel ksh make libXp openmotif22 sysstat smartmontools unixODBC unixODBC-devel
--系統安裝包
yum install compat-libstdc++-33
yum install elfutils-libelf-devel
--下面用 yum安裝
yum install gcc
yum install gcc-c++
yum install glibc-devel
yum install glibc-headers
yum install lio-devel
yum install libstdc++-devel
yum install ksh
yum install libXp
yum install unixODBC
yum install openmotif22
yum install unixODBC-devel
--安裝和libcap 所有有關的包
yum install libcap.i686
yum install libcap-devel.x86_64
yum install libcap-devel.i686
yum install libcap-ng.i686
yum install libcap-ng-devel.i686
--linux 6 檢查的時候一些 i386的包需要安裝,但是安裝i386 的時候提示有高版本存在,不能安裝,我採取忽略,繼續安裝,但是要保證高版本的包一定要安裝上
一、修改操作系統核心參數
在Root用戶下執行以下步驟:
1)修改用戶的SHELL的限制,修改/etc/security/limits.conf文件
輸入命令:vi /etc/security/limits.conf,按i鍵進入編輯模式,將下列內容加入該文件。
oracle soft nproc 2047oracle hard nproc 16384oracle soft nofile 1024oracle hard nofile 65536編輯完成後按Esc鍵,輸入「:wq」存檔退出
2)修改/etc/pam.d/login 文件,輸入命令:vi /etc/pam.d/login,按i鍵進入編輯模式,將下列內容加入該文件。
session required /lib/security/pam_limits.sosession required pam_limits.so編輯完成後按Esc鍵,輸入「:wq」存檔退出
3)修改linux內核,修改/etc/sysctl.conf文件,輸入命令: vi /etc/sysctl.conf ,按i鍵進入編輯模式,將下列內容加入該文件
fs.file-max = 6815744fs.aio-max-nr = 1048576kernel.shmall = 2097152kernel.shmmax = 2147483648kernel.shmmni = 4096kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 4194304net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048576編輯完成後按Esc鍵,輸入「:wq」存檔退出
4)要使 /etc/sysctl.conf 更改立即生效,執行以下命令。 輸入:sysctl -p 顯示如下:
linux:~ # sysctl -pnet.ipv4.icmp_echo_ignore_broadcasts = 1net.ipv4.conf.all.rp_filter = 1fs.file-max = 6815744fs.aio-max-nr = 1048576kernel.shmall = 2097152kernel.shmmax = 2147483648kernel.shmmni = 4096kernel.sem = 250 32000 100 128net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 4194304net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 10485765)編輯 /etc/profile ,輸入命令:vi /etc/profile,按i鍵進入編輯模式,將下列內容加入該文件。
if [ $USER = "oracle" ]; thenif [ $SHELL = "/bin/ksh" ]; thenulimit -p 16384ulimit -n 65536elseulimit -u 16384 -n 65536fifi編輯完成後按Esc鍵,輸入「:wq」存檔退出
6)創建相關用戶和組,作為軟體安裝和支持組的擁有者。
創建Oracle用戶和密碼,輸入命令:
/usr/sbin/groupadd -g 501 oinstall
/usr/sbin/groupadd -g 502 dba
然後會讓你輸入密碼,密碼任意輸入2次,但必須保持一致,回車確認。
7)創建資料庫軟體目錄和數據文件存放目錄,目錄的位置,根據自己的情況來定,注意磁碟空間即可,這里我把其放到oracle用戶下,例如:
輸入命令:
mkdir /home/oracle/appmkdir /home/oracle/app/oraclemkdir /home/oracle/app/oradatamkdir /home/oracle/app/oracle/proct8)更改目錄屬主為Oracle用戶所有,輸入命令:
chown -R oracle:oinstall /home/oracle/app9)配置oracle用戶的環境變數,首先,切換到新創建的oracle用戶下,
輸入:su – oracle ,然後直接在輸入 : vi .bash_profile
按i編輯 .bash_profile,進入編輯模式,增加以下內容:
export ORACLE_BASE=/home/oracle/appexport ORACLE_HOME=$ORACLE_BASE/oracle/proct/11.2.0/dbhome_1export ORACLE_SID=orclexport PATH=$PATH:$HOME/bin:$ORACLE_HOME/binexport LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib編輯完成後按Esc鍵,輸入「:wq」存檔退出
二、安裝過程
1)當上述系統要求操作全部完成後,注銷系統,在圖形界面以Oracle用戶登陸。首先將下載的Oracle安裝包復制到linux中,用SSH其他ftp工具拷貝。
打開一個終端,運行unzip命令解壓oracle安裝文件,如:
輸入命令:
解壓完成後 cd 進入其解壓後的目錄database
輸入命令:
cd database
使用ls命令可以查看解壓後database所包含的文件,如下圖:
2)執行安裝,輸入命令:./runInstaller
安裝完成後,系統會提示你需要用root許可權執行2個shell腳本。按照其提示的路徑,找到其所在的位置,如:我的就在/home/oracle/app/oracle/proct/11.2.0/dbhome_1/root.sh
和 /home/oracle/oraInventory/orainstRoot.sh 新開啟一個終端,輸入命令: