แนะนำ, 2024

ตัวเลือกของบรรณาธิการ

สำรองข้อมูลไดเรกทอรีใน Linux โดยใช้ Shell Script

มีหลายตัวเลือกในการสำรองข้อมูลของคุณใน Linux คุณสามารถใช้โปรแกรมซอฟต์แวร์ที่มีอิสระเช่น fwbackups และ Sbackup อย่างไรก็ตามมีวิธีง่าย ๆ ในการสำรองข้อมูลไดเรกทอรีโดยไม่ต้องติดตั้งซอฟต์แวร์เพิ่มเติม

เราจะสร้างเชลล์สคริปต์โดยใช้ตัวแปรคำสั่ง tar และคำสั่ง date เพื่อสร้างไฟล์สำรองวันที่ของไดเรกทอรีที่มีไดเรกทอรีย่อย

เชลล์สคริปต์เป็นไฟล์ที่มีรายการคำสั่งที่ทำงานตามลำดับ หากคุณมีชุดคำสั่งที่คุณใช้เป็นประจำจะมีประโยชน์ในการสร้างเชลล์สคริปต์ที่มีคำสั่งเหล่านี้ จากนั้นคุณจะต้องเรียกใช้ไฟล์สคริปต์เพื่อเรียกใช้คำสั่ง

การสร้างไฟล์เชลล์สคริปต์

สำหรับตัวอย่างนี้เราจะสร้างเชลล์สคริปต์เพื่อสำรองข้อมูลไดเรกทอรีที่มีไฟล์สำหรับคู่มือผู้ใช้ เรากำลังใช้สภาพแวดล้อม Gnome ใน Ubuntu

ขั้นแรกเข้าสู่โฮมไดเร็กตอรี่ของคุณโดยเลือก โฮมโฟลเดอร์ จากเมนู สถานที่ เบราว์เซอร์ไฟล์ จะเปิดขึ้นสู่โฮมไดเร็กตอรี่ของคุณ

เรากำลังจะสร้างไฟล์ว่างใหม่ซึ่งเราจะป้อนคำสั่งสำหรับการสำรองข้อมูล คลิกขวาในบานหน้าต่างด้านขวาและเลือก สร้างเอกสาร | ล้างไฟล์ จากเมนูป๊อปอัพ

ไฟล์จะถูกเพิ่มในรายการและพร้อมที่จะเปลี่ยนชื่อ พิมพ์ชื่อไฟล์โดยให้นามสกุลไฟล์เป็น. sh

สำหรับตัวอย่างนี้เราตั้งชื่อไฟล์ของเรา user_guide_backups.sh

ตอนนี้เราต้องเพิ่มคำสั่งลงในไฟล์ คลิกขวาที่ชื่อไฟล์และเลือก เปิดด้วย gedit จากเมนูป๊อปอัพ

ไฟล์จะเปิดขึ้นใน gedit ป้อนบรรทัดต่อไปนี้ลงในไฟล์และคลิก บันทึก จุดประสงค์ของแต่ละบรรทัดอยู่ด้านล่าง

หมายเหตุ: คุณสามารถคัดลอกข้อความต่อไปนี้และวางลงใน gedit อย่าลืมเปลี่ยน ชื่อผู้ใช้ของคุณ

 #! / bin / bash SRCDIR = "/ home // Documents / my_work /" DESTDIR = "/ home // สำรอง /" FILENAME = ug - $ (วันที่ +% - Y% -m% -d) - $ (วันที่ +% - T) .tgz tar - สร้าง --gzip --file = $ DESTDIR $ FILENAME $ SRCDIR 

คำอธิบายทีละบรรทัด

ตารางต่อไปนี้อธิบายสิ่งที่แต่ละบรรทัดอยู่ในไฟล์สคริปต์เชลล์

บรรทัดที่ # ลักษณะ
1 บรรทัดนี้ต้องเป็นบรรทัดแรกในสคริปต์ทุบตีเปลือกซึ่งเป็นประเภทเริ่มต้นของสคริปต์
2 บรรทัดนี้ตั้งค่าตัวแปรชื่อ SRCDIR และตั้งค่าให้กับไดเร็กทอรีที่จะสำรองข้อมูล
หมายเหตุ: ให้แน่ใจว่าได้เปลี่ยน ด้วย ชื่อผู้ใช้ ของคุณ
3 บรรทัดนี้ตั้งค่าตัวแปรที่เรียกว่า DESTDIR และตั้งค่าของมันไปยังไดเรกทอรีที่ไฟล์สำรองจะถูกเขียน
หมายเหตุ: ให้แน่ใจว่าได้เปลี่ยน ด้วย ชื่อผู้ใช้ ของคุณ
4 บรรทัดนี้ตั้งค่าตัวแปรชื่อ FILENAME และตั้งค่าโดยใช้ข้อความและตัวแปรที่มีคำสั่ง date เพื่อเพิ่มวันที่และเวลาปัจจุบันให้กับชื่อไฟล์ ตัวอย่างเช่นชื่อไฟล์อาจเป็น ug-20100212-13: 03: 45.tgz
หมายเหตุ: เมื่อใช้ตัวแปรให้เริ่มต้นด้วยเครื่องหมายดอลลาร์ ( $ ) ทุกครั้ง หากคุณใช้คำสั่งเป็นส่วนหนึ่งของตัวแปรให้ล้อมรอบคำสั่งและตัวเลือกสำหรับคำสั่งในวงเล็บ
5 บรรทัดนี้คือคำสั่ง tar ที่ มีฟังก์ชันและตัวเลือกต่อไปนี้ถูกเพิ่ม

-สร้าง ฟังก์ชันนี้สร้างไฟล์เก็บถาวรใหม่ (หรือตัดทอนไฟล์เก่าถ้าชื่อไฟล์ที่ระบุมีอยู่แล้ว) และเขียนไฟล์ที่มีชื่อหรือไดเรกทอรีลงไป
-gzip ตัวเลือกนี้บอกให้ tar บีบอัดไฟล์ในไฟล์เก็บถาวรโดยใช้ยูทิลิตี gzip
-ไฟล์ ตัวเลือกนี้ให้ tar ชื่อไฟล์ที่จะใช้ ในกรณีนี้เรารวบรวมชื่อไฟล์โดยใช้ ตัวแปร DESTDIR, FILENAME และ SRCDIR

การแก้ไขการอนุญาตในไฟล์เชลล์สคริปต์

ก่อนที่จะเรียกใช้สคริปต์ของคุณคุณต้องแน่ใจว่าไฟล์นั้นมีการอนุญาตที่ถูกต้อง ในการทำเช่นนี้ให้เปิด โฟลเดอร์บ้าน ของคุณอีกครั้งตามที่กล่าวไว้ข้างต้นและคลิกขวาที่ไฟล์สคริปต์เชลล์ เลือก คุณสมบัติ จากเมนูป๊อปอัพ

กล่องโต้ตอบ คุณสมบัติ จะปรากฏขึ้น ตรวจสอบให้แน่ใจว่าได้เลือกกล่องกาเครื่องหมาย ดำเนินการ

คลิก ปิด

เรียกใช้ Shell Script

ในการรันเชลล์สคริปต์ให้เปิดหน้าต่างเทอร์มินัลโดยเลือก Accessories | Terminal จากเมนู Applications

เมื่อหน้าต่าง Terminal เปิดขึ้นมาคุณควรอยู่ใน Home Folder ของคุณตามค่าเริ่มต้น พิมพ์ pwd บนบรรทัดคำสั่งแล้วกด Enter เพื่อยืนยันข้อเท็จจริงนี้ ที่พรอมต์ให้พิมพ์. /user_guide_backups.sh แล้วกด Enter

คุณควรมีไฟล์ . tgz ในโฟลเดอร์ Backups ในโฟลเดอร์ Home ของคุณ หากคุณคลิกขวาที่ชื่อไฟล์คุณจะเห็นหลายตัวเลือกสำหรับการเปิดการเก็บถาวรในหนึ่งในโปรแกรมเก็บถาวรที่มีอยู่หรือแตกไฟล์โดยตรงไปยังโฟลเดอร์ Backups โดยใช้คำสั่ง Extract Here

ข้อมูลมากกว่านี้

ลิงค์ด้านล่างให้ข้อมูลเพิ่มเติมเกี่ยวกับเชลล์สคริปต์คำสั่ง tar และ วันที่ และคำสั่ง Linux อื่น ๆ

การเขียนสคริปต์

คำแนะนำฉบับย่อสำหรับการเขียนสคริปต์โดยใช้ bash shell

Bash Shell Scripting - คู่มือ 10 วินาที | ทุกอย่างเกี่ยวกับ Linux

คู่มืออ้างอิง Bash

คำสั่ง Linux

tar MAN หน้า

วันที่หน้า MAN

คำสั่ง bash - Linux MAN Pages

การสำรวจหน้าเหล่านี้จะช่วยให้คุณสร้างสคริปต์เปลือก bash ที่มีประโยชน์ของคุณเอง

Top