2.1. घूर्णनशील एनएफएस पुरालेख
इस खंड में, दादा-पिता-पुत्र रोटेशन योजना (मासिक-साप्ताहिक-दैनिक) को लागू करने के लिए शेल स्क्रिप्ट को थोड़ा संशोधित किया जाएगा:
• रोटेशन एक करेगा दैनिक रविवार से शुक्रवार तक बैकअप।
• शनिवार को ए साप्ताहिक बैकअप आपको महीने में चार साप्ताहिक बैकअप देकर पूरा किया जाता है।
• मासिक महीने के विषम या सम होने के आधार पर दो मासिक बैकअप को घुमाते हुए महीने के पहले दिन बैकअप किया जाता है।
यहाँ नई स्क्रिप्ट है:
#! / Bin / bash
####################################
#
# एनएफएस माउंट स्क्रिप्ट का बैकअप लें
#दादा-पिता-पुत्र रोटेशन.
#
####################################
#बैकअप क्या करें।
बैकअप_फाइल्स = "/ होम / वर / स्पूल / मेल / आदि / रूट / बूट / ऑप्ट"
# बैकअप कहां लेना है. dest='/mnt/backup'
# संग्रह फ़ाइल नाम के लिए सेटअप चर। दिन=$(तारीख +%ए)
होस्टनाम=$(होस्टनाम -s)
# पता लगाएं कि यह महीने का कौन सा सप्ताह 1-4 है। दिन_संख्या=$(तारीख +%-d)
यदि (( $day_num <= 7 )); फिर Week_file='$hostname-week1.tgz'
एलिफ़ (( $day_num > 7 && $day_num <= 14 )); फिर Week_file='$hostname-week2.tgz'
एलिफ़ (( $day_num > 14 && $day_num <= 21 )); फिर Week_file='$hostname-week3.tgz'
एलिफ (( $day_num > 21 && $day_num < 32 )); फिर Week_file='$hostname-week4.tgz'
fi
# पता लगाएं कि महीना विषम है या सम। महीना_संख्या=$(तारीख +%एम)
महीना=$(एक्सपीआर $महीना_संख्या % 2) यदि [ $महीना -eq 0 ]; तब
महीना_फ़ाइल='$hostname-month2.tgz'
अन्य
fi
महीना_फ़ाइल='$hostname-month1.tgz'
# संग्रह फ़ाइल नाम बनाएँ. यदि [ $day_num == 1 ]; फिर Archive_file=$month_file
एलिफ़ [ $दिन != "शनिवार" ]; फिर Archive_file='$hostname-$day.tgz'
अन्यथा संग्रह_फ़ाइल=$सप्ताह_फ़ाइल
fi
# प्रिंट प्रारंभ स्थिति संदेश।
इको "$backup_files को $dest/$archive_file पर बैकअप किया जा रहा है" दिनांक
गूंज
# टार का उपयोग करके फ़ाइलों का बैकअप लें।
tar czf $dest/$archive_file $backup_files
# अंतिम स्थिति संदेश प्रिंट करें। गूंज
गूंज "बैकअप समाप्त" तिथि
# फ़ाइल आकार जांचने के लिए $dest में फ़ाइलों की लंबी सूची। ls -lh $dest/
स्क्रिप्ट को धारा 1.2, "स्क्रिप्ट को निष्पादित करना" [पृ.] के समान तरीकों का उपयोग करके निष्पादित किया जा सकता है। 325]।
किसी आपदा की स्थिति में बैकअप मीडिया को ऑफ-साइट ले जाना अच्छा अभ्यास है। शेल स्क्रिप्ट उदाहरण में बैकअप मीडिया एक अन्य सर्वर है जो एनएफएस शेयर प्रदान करता है। पूरी संभावना है कि एनएफएस सर्वर को किसी अन्य स्थान पर ले जाना व्यावहारिक नहीं होगा। कनेक्शन की गति के आधार पर यह संग्रह फ़ाइल को WAN लिंक पर किसी अन्य स्थान के सर्वर पर कॉपी करने का विकल्प हो सकता है।
एक अन्य विकल्प संग्रह फ़ाइल को बाहरी हार्ड ड्राइव पर कॉपी करना है जिसे बाद में ऑफ-साइट ले जाया जा सकता है। चूंकि बाहरी हार्ड ड्राइव की कीमत में कमी जारी है, इसलिए प्रत्येक संग्रह स्तर के लिए दो ड्राइव का उपयोग करना लागत प्रभावी हो सकता है। यह आपको एक बाहरी ड्राइव को बैकअप सर्वर से और एक को किसी अन्य स्थान पर संलग्न करने की अनुमति देगा।