日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Unix文件備份利用While解決文件等待問題

瀏覽:285日期:2024-06-07 13:35:08

前幾天有個朋友向筆者求助,他說他在Unix系統(tǒng)管理的時候遇到了一個問題。他在Unix系統(tǒng)中部署了一個數(shù)據(jù)庫系統(tǒng)。現(xiàn)在他希望能夠對這個數(shù)據(jù)庫實現(xiàn)異地備份。他的解決思路是,先利用數(shù)據(jù)庫自身的功能進行本地備份(數(shù)據(jù)庫沒有自動進行異地備份的功能),然后再將這個備份文件復制到異地去。如果備份是確定的,即按照計劃來進行備份,如每天晚上12點備份,這是好解決的。只需要利用Unix系統(tǒng)自帶的CRON任務計劃功能即可以解決。但是現(xiàn)在的問題是,有時候這個備份具有不確定性。如數(shù)據(jù)庫管理員有時候也需要進行臨時的備份,為此他希望對于這些臨時備份也能夠自動實現(xiàn)異地備份。所以,此時利用cron任務計劃功能就無能為力了。

  一、解決思路。

針對這些臨時性的備份任務,如果少的話,那么可以對其進行手工異地備份。然后利用cron任務計劃執(zhí)行有計劃的異地備份工作。如果臨時性備份比較頻繁,而用戶又確實對異地備份的功能比較急切的話,那么就只能夠采用其他折中的處理方式。筆者下面的這個解決思路,希望能夠幫助解決這個問題。這個思路比較簡單,即讓操作系統(tǒng)隔一段固定的時間(如10分鐘)就去檢查一下是否有生成了備份文件。如果生成了的話,則系統(tǒng)就將這個備份文件移動(不是復制)到異地進行備份。

不過筆者這里要介紹的是另外一種解決方式,即利用while循環(huán)來解決這個文件等待的問題。其實,這個文件等待也不是這個系統(tǒng)工程師遇到的問題,而是具有一定的普遍性。如一個應用程序需要從一個文件中讀取數(shù)據(jù),而這個文件又是另一個應用程序或者同一個應用程序的不同進程所產(chǎn)生的。為此,必須在另外一個程序或者進程創(chuàng)建完這個文件之后,原先的應用程序才能夠得到順利的運行。所以,如果從程序設計的角度,就是需要使用某個腳本,去偵測這個特定的文件是否已經(jīng)成功創(chuàng)建。如果創(chuàng)建的話,執(zhí)行某個命令,讓其自動調(diào)用某個程序。如在實現(xiàn)無人值守安裝時,需要一個參數(shù)文件。此時系統(tǒng)工程師可以編寫一個腳本,先判斷這個參數(shù)文件是否存在。如果存在的話,則馬上進行安裝。如果不存在的話,則進行等待。直到這個配置文件正常建立,然后啟動安裝進程(此時系統(tǒng)工程師不需要重新啟動腳本程序)。

二、具體實現(xiàn)。

以上介紹的這個思路,主要是利用while循環(huán)來實現(xiàn)的。利用while循環(huán),操作系統(tǒng)會重復的執(zhí)行一組命令,直到控制命令返回一個假false的狀態(tài)值。如果要實現(xiàn)上面這個無人值守的安裝進程,可以通過如下的腳本來實現(xiàn)。

While [! –r profile.txt] #循環(huán)條件語句

do #循環(huán)操作語句

sleep 30

done

./setup.sh

在編寫這個腳本的時候,各個部分的含義是什么,又有哪些注意事項呢?具體來說,系統(tǒng)工程師需要掌握下面的內(nèi)容。這些是寫好一個while循環(huán)結構最基本的東西。

首先,需要直到常見循環(huán)條件語句的書寫。一般來說,任何Unix命令或者test內(nèi)容都可以作為循環(huán)條件。也就是說,只要掌握了Unix常用的命令,既可以寫好循環(huán)語句。話雖然這么說,但是有時候寫這個循環(huán)語句的時候,系統(tǒng)工程師往往需要有一定的創(chuàng)意,或者說需要有經(jīng)驗的積累。確實,最終的循環(huán)語句都是基本的操作系統(tǒng)命令所組成的。但是有時候往往需要對他們進行靈活的組合。如筆者上面用的這個循環(huán)條件語句,相對來說比較簡單,但是并不一定每個系統(tǒng)工程師都可以像得到。筆者這個! –r profile.txt循環(huán)條件語句的含義,就是不能夠讀某個文件。一般情況下建立的文件當前用戶都是可讀的。如果系統(tǒng)判斷不可讀的話,那么百分之百可以確定是這個文件不存在(只要權限沒有調(diào)整過)。換句話說,有時候系統(tǒng)工程師往往需要換一種角度去考慮問題。如按照這個案例,需要將“文件不存在轉換為“文件不可讀。此時這個循環(huán)條件語句就容易寫了??上У氖?,不少系統(tǒng)工程師缺少的就是這種轉換的能力。這部進行需要踏實的基礎,而且還需要一定的創(chuàng)新能力以及相當?shù)墓ぷ鹘?jīng)驗的積累。為此筆者建議,要用好Unix操作系統(tǒng)或者Linux操作系統(tǒng),那么在平時的工作中就要有意識的鍛煉自己這種能力。

其次需要了解操作語句的編寫技巧。有時候為了實現(xiàn)某些特定的需求,往往在while循環(huán)結構內(nèi)部的操作語句部分,不會寫一些實際的操作語句。而是將操作語句寫在循環(huán)的外部。如上面這個案例中,筆者在內(nèi)部的操作語句部分,使用了語句sleep 30。這是什么意思呢?如果結合整個While循環(huán)結構,他的意思就是,如果條件滿足的話(profile配置文件不可讀,即不存在),則每個30秒執(zhí)行以下這個循環(huán)。如果條件不滿足的話(profile配置文件可讀,即存在),則跳出這個循環(huán),然后執(zhí)行后續(xù)的語句。也就是說,此時筆者將真正要執(zhí)行的操作(啟動某個安裝進程),放在了循環(huán)的外部。而在循環(huán)內(nèi)部使用sleep 30,用來控制循環(huán)執(zhí)行的時間。當然,在這個循環(huán)內(nèi)部也可以寫一些實際性的操作。如在屏幕上或者安裝日志中顯示一些“找不到配制文件等類似的錯誤信息。往往這些類似友好的提示信息,可以提高程序的友好性。類似的處理機制還有很多。系統(tǒng)工程師需要在日常的工作中注意總結。另外,如果多看看其他工程師編寫的腳本程序,往往能夠從中獲取不少有價值性的內(nèi)容。模仿往往是在最短時間內(nèi)增強自己業(yè)務能力的捷徑。

最后就是需要注意書寫格式與規(guī)范方面的內(nèi)容。在編寫循環(huán)結構時,無論是while循環(huán)還是for循環(huán),如果能夠有意識的采用TAB鍵或者空格鍵,可以明顯的提高代碼的可讀性。如循環(huán)內(nèi)部結構的執(zhí)行語句最好能夠跟do或者done等關鍵字分行寫,并且采用縮進的格式。雖然即時不遵守這些規(guī)則,腳本程序也沒有實質(zhì)性的影響。但是,對后續(xù)維護閱讀的時候,會增加不少的困難。特別是當循環(huán)內(nèi)部語句比較多的時候。所以對于這些代碼編寫規(guī)范,系統(tǒng)工程師最好還是需要遵守。畢竟對于一些復雜的功能,需要團隊合作才能夠實現(xiàn)。如果大家都能夠遵守同一的書寫規(guī)范,那么無疑可以提高團隊的協(xié)作型。還有就是需要注意語法方面的內(nèi)容,不do后面沒有分號結尾符等等。這些語法性的錯誤系統(tǒng)在執(zhí)行時會告知,所以問題不大。只是會增加返工的幾率與工作量而已。

三、利用while實現(xiàn)無限循環(huán)。

如上面那個數(shù)據(jù)庫異地備份的案例,其實若能夠通過無限循環(huán)來實現(xiàn)可能會更加的合適。如讓操作系統(tǒng)每隔30分鐘來執(zhí)行一次循環(huán)。循環(huán)內(nèi)不能的操作就是先利用if語句來判斷備份文件是否在30分鐘內(nèi)更新過。如果有更新的話,就將其復制或者移動到遠程的服務器上。不管有沒有更新,這個循環(huán)的話,每30分鐘就需要執(zhí)行一次。此時就需要用到無限循環(huán)。利用while循環(huán)條件的含義,這個無限循環(huán)很容易實現(xiàn),只需要循環(huán)條件語句設置為true即可。即while true ; do 操作語句 ;done &。

在這個循環(huán)結構中,筆者采用true作為循環(huán)條件,其循環(huán)條件永遠為真,那么操作系統(tǒng)就會一直循環(huán)下去,直到用戶手工終止。另外需要注意的是,如果循環(huán)語句比較簡單,可以在同一行中書寫。只是在中間合適的位置(如關鍵字之前)需要加以分號來進行識別。另外,為了避免對其他進程進行干擾,最好將這些無限循環(huán)的操作放置到后臺運行,這可以保障各個進程之間相對的獨立性。此時只需要在done關鍵字后面加入&符號即可,就可以告訴操作系統(tǒng)將這個無限循環(huán)放入到后臺運行。

不過在編寫無限循環(huán)的時候,需要注意死循環(huán)的發(fā)生。如循環(huán)內(nèi)部的某個操作比較耗時。在這個操作還沒有完成之前,新的循環(huán)又開始了。這久而久之,必將耗盡系統(tǒng)資源。為此,在程序內(nèi)部最好還是需要設置一些條件,如CPU等資源的使用程度,來強制結束無限循環(huán)。筆者認為這是比較安全的處理方式,可以有效的避免無限循環(huán)影響操作系統(tǒng)性能。;

標簽: Unix系統(tǒng)
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产亚洲精品v| 免费av一区二区三区四区| 日本精品不卡| 欧美精品99| 日韩福利视频一区| 欧美日韩a区| 国产精品伊人| 国产精品资源| 欧美日韩xxxx| 国产精品久久久久77777丨| 欧美日韩视频免费看| 国产日韩一区二区三区在线| 欧美久久久网站| 另类欧美日韩国产在线| 免费在线欧美黄色| 国产一区二区三区四区大秀| 国产第一亚洲| 精品国产不卡| 国产aⅴ精品一区二区三区久久| 国产精品久久观看| 极品日韩av| 丝袜美腿亚洲一区二区图片| 中文字幕日韩高清在线| 亚洲精品九九| 久久国内精品视频| 国产aⅴ精品一区二区四区| 日韩精品水蜜桃| 丝袜美腿高跟呻吟高潮一区| 日韩**一区毛片| 国产女人18毛片水真多18精品| 欧美国产另类| av资源新版天堂在线| 国产在线欧美| 视频一区欧美日韩| 国产精品宾馆| 日韩毛片在线| 免费精品视频| 欧美精品影院| 99久久亚洲精品蜜臀| 激情综合网站| 中文字幕日本一区| 麻豆成人在线观看| 欧美日韩三区| 欧美一区自拍| 欧美日韩精品免费观看视完整| 免费日韩精品中文字幕视频在线| 日韩中文字幕一区二区高清99| 久久久精品区| 99国产成+人+综合+亚洲欧美| 日韩av中文在线观看| 特黄毛片在线观看| 视频一区欧美日韩| 欧美xxxx中国| 一本综合精品| 国产一区丝袜| 在线观看亚洲精品福利片| 欧美成人一二区| 日韩视频久久| 精品一区二区三区在线观看视频| 欧美日韩中文字幕一区二区三区| 中文无码久久精品| 精品一区二区三区亚洲| 亚洲国产成人精品女人| 国产精品久久久亚洲一区| 蜜桃av在线播放| 日本一区二区中文字幕| av高清不卡| 欧美亚洲tv| 在线视频精品| 欧美精品二区| 亚洲深夜av| 成人在线超碰| 日韩美女国产精品| 不卡一区综合视频| 久久三级毛片| 日韩和欧美的一区| 欧美日韩激情| 久久免费精品| 91麻豆精品激情在线观看最新| 亚洲一级二级| 精品一区二区三区免费看 | 久久不卡国产精品一区二区| 激情综合自拍| 久久男人av| 亚洲精品免费观看| 国产尤物精品| 四虎4545www国产精品| 国产精品第一| 日韩国产欧美视频| 伊人影院久久| 精品久久中文| 日韩一区二区三免费高清在线观看| 日韩精品2区| 欧美黄色精品| 国产精品探花在线观看| 日韩精品一二三| 成人片免费看| 精品国产亚洲日本| 97成人超碰| 日韩午夜av| 五月天综合网站| 成人国产精品| 麻豆久久久久久| 欧美日韩亚洲一区二区三区在线| 亚洲日产av中文字幕| 亚州av乱码久久精品蜜桃| 日韩欧美午夜| 欧美亚洲综合视频| 日本欧美在线看| 亚洲尤物在线| 宅男噜噜噜66国产日韩在线观看| 精品三区视频| 久久香蕉精品香蕉| 久久99国产精品视频| 国产欧美日本| 欧美激情精品| 国产精品一区二区免费福利视频| 首页欧美精品中文字幕| 首页欧美精品中文字幕| 久热re这里精品视频在线6| 午夜电影亚洲| 日韩高清不卡| 日韩欧美一区二区三区在线观看| 女生影院久久| 91精品国产调教在线观看| 欧美韩日一区| 国产精品久久久免费| 国产欧美日韩精品高清二区综合区| 日韩有吗在线观看| 欧美精品国产| 国产精品对白| 欧美激情另类| 欧美肉体xxxx裸体137大胆| 亚洲男女av一区二区| 制服诱惑一区二区| 噜噜噜躁狠狠躁狠狠精品视频| 日韩精品水蜜桃| 欧美日韩视频| 免费在线观看视频一区| 蜜桃一区二区三区在线| 蜜桃视频免费观看一区| 日韩中文字幕亚洲一区二区va在线 | 99热精品久久| 蜜桃精品在线| 夜夜精品视频| 日韩精品欧美大片| 日韩国产欧美三级| 国产亚洲欧美日韩精品一区二区三区| 97精品久久| 国产精品对白| 精品午夜视频| 成人在线超碰| 久久久国产亚洲精品| 九色porny丨国产首页在线| 久久国产99| 欧美一级全黄| 国产极品一区| 美女福利一区二区三区| 亚洲午夜精品久久久久久app| 精品捆绑调教一区二区三区| 悠悠资源网久久精品| 日韩影院免费视频| 欧美在线首页| 国产欧美一区二区三区精品酒店| 久久国产中文字幕| 亚洲深深色噜噜狠狠爱网站 | 日本视频中文字幕一区二区三区| 日韩高清不卡在线| 国产精品久久久免费| 欧美xxxx中国| 亚洲精华国产欧美| 亚洲+小说+欧美+激情+另类| 欧美久久精品| 99久久久国产精品美女| 午夜一级在线看亚洲| 日本亚洲三级在线| 久久三级中文| 欧美不卡视频| 蜜臀精品一区二区三区在线观看| 日韩av午夜在线观看| 亚洲女同av| 少妇精品久久久一区二区三区| 欧美91在线|欧美| 欧美99久久| 老司机精品视频网| 国产综合亚洲精品一区二| 日韩高清在线不卡| 欧美丰满日韩| 蜜桃久久av一区| 欧美极品一区二区三区| 欧美日韩色图| 久久精品97| 久久精品国产大片免费观看| 美日韩精品视频| 美女性感视频久久| 亚洲精华国产欧美| 国精品产品一区| 丝袜国产日韩另类美女| 久久精品资源| 亚洲69av|