เทอร์มินัล Linux มีคุณสมบัติ "ประวัติ" ด้วยคุณสมบัตินี้การดำเนินการคำสั่งทุกอย่างที่คุณป้อนจะได้รับการสำรองไว้ในภายหลัง เนื่องจากคำสั่งเทอร์มินัลทั้งหมดของคุณจะถูกบันทึกไว้ใน "ประวัติ" จึงจำเป็นต้องสำรองข้อมูลไว้เพื่อความปลอดภัย
ในคู่มือนี้เราจะแสดงวิธีสำรองประวัติเทอร์มินัล Linux และวิธีคืนค่าการสำรองข้อมูลด้วย ดังนั้นเปิดโปรแกรมจำลองเทอร์มินัล Linux ที่คุณโปรดปรานและทำตาม!
ที่เก็บประวัติเทอร์มินัล Linux อยู่ที่ไหน
สถานี Linux เก็บประวัติไว้ในไฟล์ ไฟล์นี้มีชื่อว่า“ .bash_history” ทุกคนสามารถแก้ไขได้และจะถูกเก็บไว้ในโฮมไดเร็กตอรี่ เนื่องจากไฟล์ประวัติเทอร์มินัลสำหรับ Linux ถูกเก็บไว้ในไดเรกทอรีผู้ใช้ผู้ใช้ทุกคนในระบบจึงมีไฟล์
สิทธิ์พิเศษไม่ได้ปกป้องประวัติศาสตร์เหล่านี้ไฟล์และผู้ใช้ในระบบสามารถดูประวัติของผู้อื่นด้วยคำสั่งง่าย ๆ ตัวอย่างเช่นหากฉันต้องการดูประวัติ terminal / command-line ของชื่อผู้ใช้“ ผู้ใช้” บนระบบ Linux ของฉันฉันจะทำ:

cat /home/user/.bash_history
ผู้ใช้ยังสามารถดูประวัติของผู้ใช้ปัจจุบันที่พวกเขาลงชื่อเข้าใช้ในเชลล์เทอร์มินัล Linux เพียงแค่ดำเนินการคำสั่ง“ ประวัติ”
history
เหนือสิ่งอื่นใดเนื่องจาก“ ประวัติ” เป็นเพียงไฟล์จึงสามารถค้นหาได้เหมือนกับไฟล์ข้อความทั่วไปโดยใช้ฟังก์ชัน grep ตัวอย่างเช่นหากต้องการค้นหาอินสแตนซ์ของ“ git clone” ในชื่อผู้ใช้ด้วยคำสั่งด้านล่าง
cat /home/user/.bash_history | grep "git clone"
นอกจากนี้ยังทำงานเป็นผู้ใช้ที่ล็อกอินด้วยคำสั่ง“ history”
history | grep "search term"
บันทึกประวัติเทอร์มินัลลงในข้อมูลสำรอง
ในส่วนก่อนหน้าของคู่มือนี้ฉันได้พูดคุยเกี่ยวกับวิธีการ“ ประวัติ” สำหรับเทอร์มินัล Linux เป็นเพียงไฟล์ข้อความที่ซ่อนอย่างเรียบร้อยที่มีคำสั่งที่ผู้ใช้ป้อนทั้งหมด ดีเพราะมันเป็นแค่ไฟล์นั่นหมายความว่ามันง่ายมากที่จะสำรองข้อมูลเพื่อความปลอดภัย
ในการสร้างการสำรองข้อมูลใช้ประโยชน์จาก แมว คำสั่ง ทำไม? กับ แมวคุณสามารถดูไฟล์ข้อความทั้งหมดได้ในเทอร์มินัล เราสามารถใช้คำสั่งนี้ร่วมกับสัญลักษณ์“>” เพื่อเปลี่ยนทิศทางการแสดงผลไปยังไฟล์สำรอง
ตัวอย่างเช่นหากต้องการสำรองข้อมูลประวัติปัจจุบันของคุณให้เรียกใช้ แมว คำสั่งกับ“ ~ / .bash_history” และบันทึกลงในไฟล์ที่มีป้ายกำกับ“ history_backup”

cat ~/.bash_history > history_backup
นอกจากนี้คุณยังสามารถเรียกใช้ ประวัติศาสตร์ ใช้คำสั่งร่วมกับ“>” และบันทึกด้วยวิธีนั้น
history > history_backup
สุดท้ายเป็นไปได้ที่จะสำรองประวัติบรรทัดคำสั่ง / เทอร์มินัลของผู้ใช้รายอื่นที่ไม่ได้ลงชื่อเข้าใช้โดยใช้คำสั่งด้านล่าง
หมายเหตุ: อย่าลืมเปลี่ยน "ชื่อผู้ใช้" เป็นผู้ใช้ที่คุณต้องการบันทึกประวัติ
cat /home/username/.bash_history > history_backup
สำรองข้อมูลรายการประวัติบางอย่างเท่านั้น
คุณอาจต้องการสำรองคำสั่งเฉพาะในประวัติเทอร์มินัล Linux ของคุณ วิธีการทำเช่นนี้คือการดูไฟล์ประวัติและรวมเข้ากับ grep คำสั่งซึ่งจะกรองคำหลักที่เฉพาะเจาะจง
ตัวอย่างเช่นเพื่อเฉพาะคำสั่งสำรองในประวัติเทอร์มินัล Linux ของคุณที่มี โคลนคอมไพล์ หรือ คอมไพล์ คำสั่งคุณสามารถเรียกใช้การทำงานด้านล่าง
บันทึก: ในตัวอย่างเหล่านี้เราใช้“ >>” แทน“>” เหตุผลของ“ >>” ก็คือมันจะไม่เขียนทับเนื้อหาของการสำรองข้อมูลไฟล์ประวัติและสามารถเรียกใช้ซ้ำหลายครั้งเพื่อเพิ่มลงใน การสำรองข้อมูล
cat ~/.bash_history | grep "git" >> history_backup
หรือ
cat /home/username/.bash_history | grep "git" >> history_backup
กรองด้วย grep ยังสามารถใช้กับ ประวัติศาสตร์ คำสั่งเช่นนั้น
history | grep "git" >> history_backup
หากต้องการสำรองคำหลักบางคำจากไฟล์ประวัติให้แทนที่“ git” ในตัวอย่างด้านบนด้วยคำสั่งที่คุณต้องการสำรองข้อมูล รู้สึกอิสระที่จะเรียกใช้คำสั่งนี้อีกครั้งเท่าที่จำเป็น
วิธีคืนค่าการสำรองข้อมูลประวัติ
การกู้คืนการสำรองข้อมูลประวัตินั้นง่ายเหมือนการลบไฟล์ต้นฉบับและวางการสำรองไว้ หากต้องการลบไฟล์ประวัติดั้งเดิมให้ใช้ RM คำสั่งในหน้าต่างเทอร์มินัลเพื่อลบ“ .bash_history”
rm ~/.bash_history
เมื่อไฟล์ประวัติดั้งเดิมถูกลบออกจากโฟลเดอร์โฮมของผู้ใช้ที่คุณต้องการเรียกคืนประวัติให้ใช้ mv คำสั่งเปลี่ยนชื่อ“ history_backup” เป็น“ .bash_history”
mv history_backup ~/.bash_history
ตอนนี้ไฟล์ประวัติใหม่อยู่ในตำแหน่งที่รันแล้ว ประวัติ -rw คำสั่งเพื่อโหลดฟังก์ชั่นประวัติของเครื่อง
history -rw
จากนั้นคุณจะสามารถดูประวัติเทอร์มินัลด้วย:
history
คืนค่าการสำรองข้อมูลสำหรับผู้ใช้รายอื่น
ต้องการเรียกคืนการสำรองข้อมูลประวัติจากผู้ใช้รายอื่นในระบบหรือไม่ ในการดำเนินการนี้ให้เริ่มโดยลงชื่อเข้าใช้ของผู้ใช้โดยใช้ su คำสั่ง
su username
หลังจากเข้าสู่ผู้ใช้ให้ลบไฟล์ประวัติปัจจุบันที่อยู่ในโฮมไดเร็กตอรี่ของผู้ใช้ (~)
rm ~/.bash_history
จากนั้นเปลี่ยนชื่อไฟล์สำรองข้อมูลประวัติเป็นไฟล์“ .bash_history” ใหม่ในไดเรกทอรีของผู้ใช้
mv /path/to/backup/file/history-backup ~/.bash_history
เขียนการเปลี่ยนแปลงด้วย:
history -rw
เมื่อเสร็จแล้วให้เรียกใช้ ประวัติศาสตร์ เพื่อดูคำสั่งที่กู้คืนในหน้าต่างเทอร์มินัล
ความคิดเห็น