วิธีการสำรองข้อมูลการตั้งค่าและรายการแพ็คเกจที่ติดตั้ง


279

หากฉันต้องการสำรองข้อมูลทุกสิ่งที่ฉันทำตั้งแต่ติดตั้ง Ubuntu ใหม่ตัวเลือกที่เป็นไปได้คืออะไร ฉันควรสำรองข้อมูลอะไรบ้าง ฉันต้องการรับการตั้งค่าทั้งหมดที่ฉันเปลี่ยนแปลงแพ็คเกจทั้งหมดที่ฉันติดตั้ง ฯลฯ


1
ไม่มีใครพูดถึง: sudo dpkg -l > installed_software.txt!
iammilind

4
@iammilind อาจเป็นเพราะ dpkg --get-selectionsโซลูชั่นครอบคลุมเรื่องนี้
belacqua

ระวังข้อผิดพลาดนี้ด้วย: bugs.launchpad.net/ubuntu/+source/policykit-desktop-privileges/ …ฉันลองใช้วิธีแก้ปัญหา upvoted ที่สุดและไม่เคยทำงานเพราะข้อผิดพลาดนั้น (ซึ่งอาจจะมีความเหมาะสมดีกว่าเป็นความคิดเห็น แต่ฉันไม่ได้มีชื่อเสียงพอที่จะโพสต์มันเป็นความคิดเห็น)
โจนาธาน

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

คำตอบ:


296

โปรแกรม

วิธีที่รวดเร็วในการสำรองข้อมูลรายการโปรแกรมคือการเรียกใช้:

dpkg --get-selections > ~/Package.list
sudo cp -R /etc/apt/sources.list* ~/
sudo apt-key exportall > ~/Repo.keys

มันจะสำรองข้อมูลในรูปแบบที่ dpkg สามารถอ่าน*สำหรับหลังจากติดตั้งใหม่เช่นนี้:

sudo apt-key add ~/Repo.keys
sudo cp -R ~/sources.list* /etc/apt/
sudo apt-get update
sudo apt-get install dselect
sudo dselect update
sudo dpkg --set-selections < ~/Package.list
sudo apt-get dselect-upgrade -y

*คุณอาจต้องอัปเดตรายการแพ็คเกจที่มีอยู่ของ dpkg มิเช่นนั้นจะไม่สนใจการเลือกของคุณ (ดูข้อผิดพลาด debian นี้สำหรับข้อมูลเพิ่มเติม) คุณควรทำสิ่งนี้มาก่อนsudo dpkg --set-selections < ~/Package.listเช่นนี้

apt-cache dumpavail > ~/temp_avail
sudo dpkg --merge-avail ~/temp_avail
rm ~/temp_avail

การตั้งค่าและข้อมูลส่วนบุคคล

ก่อนที่คุณจะติดตั้งใหม่คุณควรสำรองข้อมูลการตั้งค่าจากบางโปรแกรมซึ่งสามารถทำได้ง่าย ๆ โดยการคว้าโฟลเดอร์จาก / etc และเนื้อหาทั้งหมดจากไดเรกทอรีผู้ใช้ของคุณ (ไม่ใช่เฉพาะสิ่งที่คุณเห็นใน nautilus!):

rsync --progress /home/`whoami` /path/to/user/profile/backup/here

หลังจากติดตั้งใหม่คุณสามารถคืนค่าได้ด้วย:

rsync --progress /path/to/user/profile/backup/here /home/`whoami`

ดังนั้นทั้งหมดเข้าด้วยกันเป็นสคริปต์หลอก

สิ่งนี้ถือว่ามีผู้ใช้เพียงรายเดียวบนเครื่อง (ลบออกเป็น/'whoami'อย่างอื่น) และคุณใช้ชื่อผู้ใช้เดียวกันในการติดตั้งทั้งสอง (แก้ไข dest ของ rsync เป็นอย่างอื่น)

dpkg --get-selections > ~/Package.list
sudo cp -R /etc/apt/sources.list* ~/
sudo apt-key exportall > ~/Repo.keys
rsync --progress /home/`whoami` /path/to/user/profile/backup/here

##  Reinstall now

rsync --progress /path/to/user/profile/backup/here /home/`whoami`
sudo apt-key add ~/Repo.keys
sudo cp -R ~/sources.list* /etc/apt/
sudo apt-get update
sudo apt-get install dselect
sudo dpkg --set-selections < ~/Package.list
sudo dselect

2
สิ่งนี้จะไม่ทำงานบน Ubuntu 12.10 มันบอกว่าdpkg: warning: package not in database at line XXX: xrdpและไม่มีแพ็คเกจโดยใช้ชื่อ "dselect"
confiq

1
@confiq ตรวจสอบความคิดเห็นสามข้อข้างต้น
Huckle

1
blah ... เพื่อแก้ปัญหาคำเตือน dpkg อ่านนี้: forums.debian.net/viewtopic.php?f=17&t=79006#p432478
confiq

3
อย่าลืมสำรองข้อมูลและเพิ่มไดเรกทอรี source.d อีกครั้งโดยเฉพาะอย่างยิ่ง ppa จะมีแหล่งข้อมูลเป็นไฟล์แยกต่างหากในนั้น การติดตั้งใหม่จะล้มเหลวหากไม่มีพวกเขา
ลูกโป่ง

2
การบูรณะ รู้สึกผิดหวังเนื่องจากการตั้งค่าที่เกี่ยวข้องกับ DesktopEnv ทั้งหมด (ตัวเรียกใช้งานภาพเคลื่อนไหวปรับแต่งคอมแพคพื้นหลังเดสก์ท็อป) ไม่ได้รับการกู้คืน Commoness: ทั้งหมดอยู่ใน dconf! วิธีแก้ไข: ภายใน GUI Log Outผ่านไอคอนรูปเฟืองในแถบเมนูหลัก จากนั้นสลับไป CLI CTRL-ALT-F1ผ่าน มีการคืนค่า. config / dconf / user จากข้อมูลสำรองของคุณ สลับกลับไปที่ GUI ผ่านCTRL-ALT-F7เข้าสู่ระบบอีกครั้ง Voila: การตั้งค่าที่เกี่ยวข้องกับ Unity ทั้งหมดของคุณจะมีผลอีกครั้ง! คำอธิบายความพยายาม: ในขณะที่เซสชัน Unity GUI ที่ใช้งานอยู่ไฟล์ dconf อาจถูกล็อคหรือเพิกเฉยดังนั้นคุณต้องเปลี่ยนไปใช้โหมด CLI บริสุทธิ์หรือไม่
porg

48

มีไว้สำหรับใคร:ผู้ใช้ที่มีการใช้งานปกติของคอมพิวเตอร์ปกติซึ่งมีการกำหนดค่าน้อยที่สุดหรือไม่มีการกำหนดค่าภายนอกโฟลเดอร์หลักของพวกเขาไม่ได้ทำให้สคริปต์และบริการเริ่มต้นทำงานยุ่ง ผู้ใช้ที่ต้องการให้ซอฟต์แวร์คืนค่าเป็นเมื่อเขาติดตั้งพร้อมการปรับแต่งทั้งหมดที่ทำและเก็บไว้ในโฮมโฟลเดอร์ของพวกเขา

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

สำรองแพ็คเกจปัจจุบันและการตั้งค่าผู้ใช้ของคุณ


เมื่อคุณพร้อมกับระบบของคุณและมีความสุขกับซอฟต์แวร์ที่ติดตั้งคุณสามารถรับรายการของแพ็คเกจที่ติดตั้งโดยใช้คำสั่งdpkg --get-selectionsและบันทึกผลลัพธ์ลงในไฟล์บันทึก

สร้างbackupโฟลเดอร์ในบ้านของคุณ

sudo mkdir ~/backup

บันทึกรายการแพคเกจที่ติดตั้งในปัจจุบัน

dpkg --get-selections > ~/backup/installed_packages.log

ทำการสำรองไฟล์ apt source ของคุณ

sudo cp /etc/apt/sources.list ~/backup/sources.bak

และสำเนารายการคีย์ที่เชื่อถือได้ของ apt ของคุณ

sudo apt-key exportall > ~/backup/repositories.keys

ทำการสำรองข้อมูลโฟลเดอร์บ้านของคุณด้วยเครื่องมือการสำรองข้อมูลแบบรวมใน Ubuntu, Deja-dup

  • ตั้งค่าโฟลเดอร์สำรอง

ป้อนคำอธิบายรูปภาพที่นี่

  • ตรวจสอบว่ามันจะทำการสำรองข้อมูลของโฟลเดอร์บ้านของคุณและเพิ่มโฟลเดอร์ใด ๆ ที่คุณอาจไม่ต้องการเช่นเช่นTrashโฟลเดอร์

ป้อนคำอธิบายรูปภาพที่นี่

  • บนแท็บภาพรวมกดทำการสำรองข้อมูลทันทีเพื่อสำรองโฟลเดอร์หลักของคุณ

ป้อนคำอธิบายรูปภาพที่นี่

  • เครื่องมือการสำรองข้อมูลจะถามว่าคุณต้องการเพิ่มรหัสผ่านในการสำรองข้อมูลของคุณหรือไม่ การสำรองข้อมูลของคุณจะเริ่มหลังจากที่คุณกดดำเนินการต่อ

ป้อนคำอธิบายรูปภาพที่นี่

เมื่อดำเนินการเสร็จแล้วคุณจะมีข้อมูลสำรองของแพ็คเกจและไฟล์กำหนดค่าที่สัมพันธ์กับผู้ใช้ของคุณ หากจำเป็นคุณจะสามารถกู้คืนไฟล์ได้จาก~/backupโฟลเดอร์

กู้คืนข้อมูลสำรองของคุณ


เริ่มต้นด้วยการกู้คืนไฟล์ต้นฉบับจากการสำรองข้อมูล

sudo cp ~/backup/sources.bak /etc/apt/sources.list

ปุ่มสำรองข้อมูล

sudo apt-key add ~/backup/repositories.keys

อัปเดตรายการแหล่งที่มาของคุณ

sudo apt-get update

คืนค่าแพ็คเกจจากที่บันทึกไว้ installed_packages.log

sudo dpkg --clear-selections
sudo dpkg --set-selections < ~/backup/installed_packages.log && sudo apt-get dselect-upgrade

sudo dpkg --clear-selections จะทำเครื่องหมายแพ็คเกจปัจจุบันทั้งหมดที่ติดตั้งเพื่อลบด้วยวิธีนี้เมื่อคุณกู้คืนรายการแพ็กเกจที่บันทึกไว้แพ็กเกจที่ไม่ได้อยู่ในรายการจะถูกลบออกจากระบบของคุณ

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

mkdir ~/.old-gnome-config/ && mv ~/.gnome* ~/.old-gnome-config/ && mv ~/.gconf* ~/.old-gnome-config/ && mv ~/.metacity ~/.old-gnome-config/ && mv ~/.cache ~/.old-gnome-config/ && mv ~/.dbus ~/.old-gnome-config/ && mv ~/.dmrc ~/.old-gnome-config/ && mv ~/.mission-control ~/.old-gnome-config/ && mv ~/.thumbnails ~/.old-gnome-config/   && ~/.config/dconf/* ~/.old-gnome-config/

หลังจากเสร็จสิ้นการคืนค่าการสำรองข้อมูลที่สร้างด้วย Deja-dup

  • เปิดเครื่องมือการสำรองข้อมูลและบนแท็บภาพรวมให้กดคืนค่า

ป้อนคำอธิบายรูปภาพที่นี่

  • ทำตามคำแนะนำเพื่อเรียกคืนไฟล์กลับสู่ตำแหน่งเดิม

ป้อนคำอธิบายรูปภาพที่นี่

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

สิ่งเดียวที่เหลือคือการทำความสะอาดและตรวจสอบว่าทุกอย่างทำงานได้ดี

มีบางอย่างผิดปกติเดสก์ท็อปของฉันหายไป


มีบางโพสต์ใน Ask Ubuntu ที่สามารถแนะนำคุณในกรณีที่มีบางอย่างผิดปกติและคุณต้องรีเซ็ตฮาร์ดเดสก์ท็อปของคุณ หากมีสิ่งผิดปกติเกิดขึ้นและคุณคิดว่าตนเองต้องการทำเช่นนั้นโปรดดูโพสต์เหล่านี้:


28

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

ระมัดระวังเกี่ยวกับ "วิธีที่ดีที่สุด" สิ่งที่ดีที่สุดสำหรับคนคนหนึ่งอาจไม่ดีที่สุดสำหรับคนอื่น

ในตอนท้ายของวัน "วิธีที่ดีที่สุด" เป็นวิธีที่ได้รับการทดสอบและเป็นที่รู้จักในการทำงาน คุณต้องทดสอบกลยุทธ์การสำรองข้อมูลของคุณก่อนที่คุณต้องการ

การใช้ภาพ

วิธีหนึ่งคือเพียงคัดลอกและบีบอัดอิมเมจพาร์ติชันของคุณ คุณสามารถทำได้ด้วยเครื่องมือหลายอย่างตั้งแต่ dd ไปจนถึง partimage จนถึง clonezilla

partimage
clonezilla

ข้อดีของกลยุทธ์นี้คือมันค่อนข้างง่ายและสมบูรณ์มาก ข้อเสียคือภาพสำรองมีขนาดใหญ่

การสำรองข้อมูลขนาดเล็ก

คุณสามารถสำรองข้อมูลได้น้อยลงเพียงสำรองข้อมูลและตั้งค่า มีเครื่องมือหลายอย่างที่จะทำเช่นนี้ทุกอย่างตั้งแต่ dd ถึง tar ถึง rsync

กุญแจสำคัญในที่นี้คือการรู้ว่าคุณต้องสำรองข้อมูลอะไรบ้าง

ข้อได้เปรียบ - การสำรองข้อมูลจะมีขนาดเล็กลง
ข้อเสีย - นี่เป็นวิธีการด้วยตนเองดังนั้นจึงง่ายที่จะลืมเกี่ยวกับไฟล์สำคัญ (/ etc / passwd)

รายการสิ่งที่ต้องสำรองจะต้องได้รับการตรวจสอบอีกครั้งเพื่อให้แน่ใจว่ารายการนั้นสมบูรณ์

1) รายการแพ็คเกจที่ติดตั้ง

รายการแพคเกจ # สร้างรายการข้อความของการติดตั้งที่มีอยู่ของแพคเกจติดตั้ง apt-get ทั้งหมด # เพื่อติดตั้งใหม่ใน distro ที่ติดตั้งใหม่

# make the list
[old distro] sudo dpkg --get-selections > packages

จากนั้นคุณจะทำการติดตั้งใหม่และเรียกคืนแพ็คเกจของคุณ คำสั่งต่อไปนี้ยังอัพเดตแพ็กเกจทั้งหมดบนระบบของคุณ (ดังนั้นกู้คืนและอัพเดตแบบเต็มทั้งหมดในครั้งเดียว)

# Now put them back on the new distro
[new distro] sudo dpkg --set-selections < packages

[new distro] sudo apt-get dselect-upgrade

2) ข้อมูล โดยทั่วไปจะเป็น / home ข้อมูลผู้ใช้และการปรับแต่งส่วนใหญ่จะอยู่ในไดเรกทอรีหลักของผู้ใช้ของคุณ หากคุณบันทึกข้อมูลในตำแหน่งอื่นให้รวมไว้ (เช่น / media / data)

3) การตั้งค่าระบบ นี่คือที่ที่จะมีการเปลี่ยนแปลงบางอย่าง ส่วนตัวถ้าฉันแก้ไขการตั้งค่าระบบใด ๆฉันจะเก็บสำเนาของไฟล์การกำหนดค่าดั้งเดิมและไฟล์ที่กำหนดเองของฉันใน / root ดังนั้นหากฉันแก้ไข/etc/fstabให้เก็บสำเนาไว้ใน / root / etc / fstab และเก็บต้นฉบับไว้ใน /root/etc/fstab.orig

นอกจากนี้คุณยังจะต้อง/etc/passwd, /etc/shadow, /etc/group, /etc/sudoers, /etc/hostnameและ/etc/hosts(คุณอาจต้องเพิ่มเติมใน etc / ถ้าฉันลืมสิ่งที่ฉันจะเพิ่ม)

บนเซิร์ฟเวอร์คุณอาจต้องรวม/var/wwwหรือไดเรกทอรีข้อมูลอื่น ๆ

ผมเข้าใจนี้จะใช้เวลาความพยายามบางอย่างดังนั้นมันอาจจะง่ายต่อการรวมทั้งหมดของ/etc

4) สำเนาฮาร์ดดิสก์ของคุณตารางพาร์ทิชัน

sudo fdisk -l > fdisk.bak

คุณสามารถใช้ข้อมูลนี้เพื่อกู้คืนตารางพาร์ติชันของคุณหากคุณเปลี่ยนฮาร์ดไดรฟ์ของคุณ

5) สำเนาMBRของคุณ

sudo dd if=/dev/sda of=MBR.bak bs=512 count=1

จากนั้นคุณจะคืนค่าด้วย

sudo dd if=MBR.bak of=/dev/sda bs=512 count=1

6) ไฟล์ / ไดเร็กตอรี่อื่น ๆ - ขึ้นอยู่กับระบบและการปรับแต่งของคุณคุณอาจจำเป็นต้องรวมไดเรคทอรี่เพิ่มเติม ข้อควรพิจารณาอาจรวมถึง/opt, /usr/local/ usr / share` และ / หรือไฟล์ .desktop ของคุณ สิ่งใดในระบบของคุณที่คุณดาวน์โหลดหรือปรับแต่งนอกเหนือจาก apt-get หรือซอฟต์แวร์ manager

7) ใส่สิ่งเหล่านั้นลงในไฟล์เก็บถาวร

sudo tar -cvpzf backup.tar.gz /home /root /etc ./MBR.bak ./fsdisk.bak ./packages

8) rsync

ในฐานะที่เป็นทางเลือกแทน tar คุณสามารถใช้ rsync

ดู - https://help.ubuntu.com/community/rsync

การสำรองข้อมูลเครือข่าย

อีกตัวเลือกหนึ่งคือการใช้ NFS หรือ Samba เพื่อสำรองข้อมูล

cron

คุณสามารถสำรองข้อมูลอัตโนมัติโดยการเขียนสคริปต์สำรองและเรียกใช้ (ทุกวัน / ชั่วโมง) ด้วย cron

ฟื้นฟู

1) การใช้ซีดีสดคืนค่าพาร์ติชันของคุณโดยใช้ gparted หรือ fdisk จากข้อมูลใน fdisk.bak
2) ติดตั้ง Ubuntu
3) บูตติดตั้งใหม่อัพเดทแพ็คเกจของคุณ
4) กู้คืนข้อมูลและการตั้งค่าของคุณ

tar -xvpzf /home/test/backup.tar.gz -C / 

จากนั้นรีบูท

ดูเพิ่มเติมที่ - https://help.ubuntu.com/community/BackupYourSystem/TAR

กลยุทธ์อื่น ๆ

มีกลยุทธ์เพิ่มเติมมากมายสำหรับการสำรองข้อมูลบางอย่างสำหรับการสำรองไดเรกทอรีบ้านของคุณเท่านั้นบางกราฟิก

ดู: https://help.ubuntu.com/community/BackupYourSystem

การทดสอบ

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

ทดสอบการกู้คืนระบบของคุณใน VM คอมพิวเตอร์สำรองหรือพาร์ติชันสำรองหรือฮาร์ดไดรฟ์


1
คำตอบที่ดี! หนึ่งเพิ่มเติมจากเว็บไซต์ PartImage: PartImage ไม่สนับสนุนพาร์ติชัน Ext4 และ Ubuntu จะใช้รูปแบบระบบไฟล์ Ext4 เป็นค่าเริ่มต้น ฉันบอกกับ PartClone (ซึ่งรองรับ Ext4) เป็นทางเลือกที่ดี คุณอาจต้องการตรวจสอบ CloneZilla
Little Ancient Forest Kami

22

ติดตั้งการเลือกแพคเกจโดยใช้ apt-clone

APT-Clone แพคเกจนี้สามารถใช้ในการโคลน / กู้คืนแพ็คเกจบนระบบที่ใช้ apt มันจะบันทึก / กู้คืนแพคเกจ, source.list, พวงกุญแจและสถานะที่ติดตั้งโดยอัตโนมัติ นอกจากนี้ยังสามารถบันทึก / กู้คืนแพ็กเกจที่ไม่สามารถดาวน์โหลดได้อีกต่อไปโดยใช้ dpkg-repack

APT-Clone ใช้ubiquity(ตัวติดตั้ง Ubuntu) สำหรับกระบวนการอัปเกรด

  1. ติดตั้ง

    sudo apt-get install apt-clone
    
  2. ทำการสำรองข้อมูล

    sudo apt-clone clone path-to/apt-clone-state-ubuntu-$(lsb_release -sr)-$(date +%F).tar.gz
    
  3. คืนค่าการสำรองข้อมูล

    sudo apt-clone restore path-to/apt-clone-state-ubuntu.tar.gz
    

    คืนค่าเป็นรีลีสที่ใหม่กว่า:

    sudo apt-clone restore-new-distro path-to/apt-clone-state-ubuntu.tar.gz $(lsb_release -sc)
    

อ้างอิง: man apt-clone


ข้อมูลบ้าน, การกำหนดค่า/etc, .. โดยใช้duplicity

Duplicityสำรองไดเร็กทอรีโดยสร้างวอลุ่ม tar-format ที่เข้ารหัสและอัพโหลดไปยังรีโมตไฟล์หรือโลคัลเซิร์ฟเวอร์ไฟล์ เนื่องจากความซ้ำซ้อนใช้ librsync การเก็บถาวรแบบเพิ่มจึงมีพื้นที่ที่มีประสิทธิภาพและบันทึกเฉพาะส่วนของไฟล์ที่มีการเปลี่ยนแปลงนับตั้งแต่การสำรองข้อมูลครั้งล่าสุด เนื่องจากความซ้ำซ้อนใช้ GnuPG เพื่อเข้ารหัสและ / หรือลงนามในเอกสารสำคัญเหล่านี้พวกเขาจะปลอดภัยจากการสอดแนมและ / หรือดัดแปลงโดยเซิร์ฟเวอร์

  1. ติดตั้ง

    sudo apt-get install duplicity
    
  2. การสำรองข้อมูล

    duplicity full path-to/source_folder/ file:///path_to/duplicity_backups/
    

    หรือการสำรองข้อมูลเพิ่มเติม (มันจะสำรองเฉพาะความแตกต่างจากการสำรองข้อมูลล่าสุด):

    duplicity incremental path-to/source_folder/ file:///path_to/duplicity_backups/
    
  3. ฟื้นฟู

    duplicity restore file:///path_to/duplicity_backups/ path-to/target_folder/
    

อ้างอิง: man duplicity


9
APT-Clone นั้นดีกว่าdpkg --get-selectionsโซลูชันเนื่องจาก: 1. เก็บรักษาข้อมูลที่เก็บทั้งหมดไว้ 2. จะติดตามว่ามีการติดตั้งแพคเกจใดโดยอัตโนมัติ 3. อนุญาตให้บรรจุไฟล์ DEB ที่ติดตั้งไว้ในเครื่องอีกครั้ง นี่ควรเป็นคำตอบที่ยอมรับได้!
Andrea Lazzarotto

1
มันเยี่ยมมาก! ฉันหวังว่างานเหล่านี้กับ 16.04 มันเป็นสิ่งที่ฉันกำลังมองหา แต่ฉันสงสัยว่า Apt-Clone จะลบแพ็คเกจที่ไม่ได้อยู่ในการกำหนดค่าที่คืนค่าหรือไม่
Dorian

@XToro ไม่มันจะไม่ลบ (btw ถ้ามันถูกลบแพคเกจโดยค่าเริ่มต้นมันจะเกิดความเสียหายการอัพเกรดเพราะส่วนใหญ่ของการอัพเกรดมีการติดตั้งแพ็กเกจใหม่และบางส่วนที่ลดลง)
user.dz

1
@Sneetsher นั่นเป็นความอัปยศ ฉันอยากจะเอาแพคเกจทั้งหมดที่ไม่อยู่ในรายการแล้วติดตั้งรายการที่ระบุพร้อมกับการอ้างอิง ปัญหาของฉันเกี่ยวกับสาเหตุที่ฉันต้องการใช้คือลบแพ็คเกจที่ไม่ต้องการหลังจากเล่นกับสิ่งต่าง ๆ เช่นการติดตั้ง DE ใหม่ มีของเหลือมากมายอยู่เสมอหลังจากลบ DE
Dorian

@ XToro ฉันชอบที่ฉันต้องการก่อนหน้านี้ แต่ฉันไปรอบ ๆ โดยการทดสอบในกล่องเสมือน คุณจำเป็นต้องมีสคริปต์ดัดแปลงมาจาก คำตอบของ Huckle มันจะดีกว่าที่จะถามคำถามใหม่และพูดถึงปัญหากับเรื่องนี้ หากคุณไม่สามารถหรือไม่ต้องการด้วยเหตุผลบางอย่างฉันจะทำอย่างไร
user.dz

15

แม้ว่าคำถามนี้จะได้รับคำตอบมาระยะหนึ่งแล้ว แต่ฉันสังเกตว่าไม่มีใครพูดถึงผู้รักษา เรียกใช้apt-get install etckeeperกำหนดค่า VCS ของคุณ/etc/etckeeper/etckeeper.confแล้วคุณจะสามารถควบคุมไดเรกทอรี / etc ได้ดียิ่งขึ้น นอกจากนี้ยังสามารถใช้เพื่อกู้คืนการกำหนดค่าของคุณภายในไดเรกทอรี / etc

ตัวอย่างเช่น (สมมติว่าคุณกำหนดค่า git เป็น VCS ของคุณ) สำรองข้อมูล/etc/.gitไดเรกทอรีของคุณ เมื่อใดก็ตามที่คุณต้องการกู้คืนการกำหนดค่าของคุณไปยัง fresh / etc คุณก็อปปี้ไดเร็กตอรี่ /etc/.git ที่สำรองไว้ไปยังไดเร็กตอรี่ fresh / etc. ตอนนี้คุณมีตัวเลือกมากมายสำหรับจัดการการคืนค่าของคุณ:

  • ดูความแตกต่าง
    • git diff
  • เก็บความแตกต่างทั้งหมดในไดเรกทอรี "สด" ในสาขา git
    • git checkout -b new; git add -A; git commit -m 'new etc'
  • ย้อนกลับเป็นการสำรองข้อมูลของคุณโดยไม่มีเงื่อนไข
    • git clean -f

12

สำหรับผู้ที่ต้องการความดี เรียบร้อย GUI ...

... แนะนำ Aptik

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

คุณสามารถติดตั้งผ่าน ppa:

sudo apt-add-repository –y ppa:teejee2008/ppa
sudo apt-get update
sudo apt-get install aptik

หวังว่านี่จะช่วยได้:)


2
sudo apt-add-repository –y ppa:teejee2008/ppasudo apt-add-repository ppa:teejee2008/ppaควรจะเป็น ยอมรับข้อโต้แย้งเพียง 1 ข้อเท่านั้น
erm3nda

1
นี่คือตัวเลือกที่สมจริงที่สุดสำหรับคนที่ต้องการทำการสำรองข้อมูลแบบเลือกได้ทั้งระบบและผู้ใช้ Btw เวอร์ชั่นปัจจุบันรองรับการตั้งค่ามากกว่าสิ่งที่แสดงบนหน้าจอนั้น
erm3nda

วิธีการเรียกใช้ aptik เป็น gui ฉันเพิ่งติดตั้งพร้อมคำสั่งที่ให้ไว้และดูเหมือนว่าจะทำงานเป็นยูทิลิตี้คอนโซลซึ่งไม่สามารถใช้งานได้ในเมนูแสดงแอปพลิเคชัน คุณอาจแก้ไข aptik repo ในโพสต์ของคุณ btw
ดูแลเว็บ

ใน Ubuntu ติดตั้ง aptik-gtk สำหรับส่วนหน้า GUI
Tim Richardson

9

ในการสร้างรายการสำรองข้อมูลของโปรแกรมที่ติดตั้งทั้งหมดของคุณ: http://savvyadmin.com/backup-and-restore-package-lists-in-ubuntu/
คุณจะต้องสำรองข้อมูลแหล่งซอฟแวร์ของคุณอย่างชัดเจนว่าแพ็กเกจที่ติดตั้งเหล่านั้นมาจาก : ซอฟต์แวร์สำรองข้อมูล

สำหรับการตั้งค่าโปรแกรมของคุณส่วนใหญ่จะอยู่ใน.โฟลเดอร์(เริ่มต้นด้วย) และไฟล์ในโฟลเดอร์บ้านของคุณ ฉันจะสำรองข้อมูลทั้งหมดไว้


1
และไดเรกทอรีสำรอง / อื่น ๆ ด้วย
Extender

3

หากพื้นที่เก็บข้อมูลไม่เป็นปัญหาการใช้ dd หรือ dc3dd จะสำรองข้อมูลทุกอย่างบนดิสก์เป้าหมายหรือพาร์ติชันที่คุณกำหนด คุณไม่ต้องการลองสิ่งนี้บนไดรฟ์ที่เมาท์ดังนั้นคุณต้องทำสิ่งนี้จาก USB หรือ DVD ที่สามารถบู๊ตได้ (หรือสื่อการติดตั้งที่เลือก "ลอง Ubuntu"):

sudo dd if=/dev/<source> of=/path/<target>.img

ดิสก์หรือพาร์ติชันที่คุณต้องการสำรองข้อมูลและเป้าหมายคือชื่อไฟล์สำรองข้อมูล (มักจะเหมือนกัน) ( sda, sda1)

dc3dd ทดแทนสำหรับ DD ถ้าคุณต้องการรายงานความคืบหน้า ในการเข้าถึงไฟล์เฉพาะในการสำรองข้อมูลโดยทั่วไปแล้วคุณสามารถทำการเมานท์ไฟล์. img ที่ได้ผลลัพธ์เป็นอุปกรณ์ลูปโดย:

mount -o loop,ro,offset=32256 filename.img /mnt/dir สิ่งนี้ใช้ได้กับไดรฟ์ที่มีพาร์ติชันเดียวที่คุณสำรองข้อมูลไดรฟ์ทั้งหมด

หรือmount -o loop,ro filename.img /mnt/dirถ้าคุณสำรองพาร์ติชัน

คุณสามารถกู้คืนดิสก์หรือพาร์ติชันทั้งหมดได้โดยการเปลี่ยนพารามิเตอร์ if = และของ = ตามที่อยู่ใน:

sudo dd if=/path/<source>.img of=/dev/<target>

ไฟล์รูปภาพที่คุณต้องการกู้คืนอยู่ที่ไหนและ <target> คือไดรฟ์หรือพาร์ติชันที่คุณต้องการกู้คืน

ข้อดี:ง่ายต่อการสำรองและกู้คืนทุกอย่างได้ง่าย ไม่เหมือนกับโซลูชันอื่น ๆ ที่ไม่ได้มีวิธีการวางแผนมากนักเนื่องจากคุณสำรองข้อมูลทุกอย่างที่คุณไม่ต้องกังวลว่าคุณจะต้องการหรือไม่

ข้อเสีย:ใช้เวลานาน (เวลาคอมพิวเตอร์ไม่ใช่ของคุณ) และไม่เหมาะสำหรับการสำรองข้อมูลรายวัน (ไม่มีตัวเลือกเพิ่มเติม)

ที่มา: ประสบการณ์; ฉันใช้วิธีนี้ในการสำรองข้อมูลระบบไคลเอนต์ก่อนเริ่มงานและไม่เคยสูญเสียข้อมูลลูกค้าสักเล็กน้อย


2

ฉันต้องการมีแอพและข้อมูลของพวกเขาที่พร้อมใช้งานและออฟไลน์ด้วย

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

เนื่องจาก "การติดตั้ง" ในอูบุนตูนั้นเหมือนกับการเข้าสู่ Software Center (หรือ Synaptic หรือapt-get) และโปรแกรมส่วนใหญ่มักจะอัพเดทตัวเองบ่อยครั้งจึงไม่มีจุดที่แท้จริงในการสำรองโปรแกรมติดตั้ง Ubuntu แล้วติดตั้งจากการสำรองข้อมูลแทน รับรุ่นล่าสุดจากที่เก็บ

ตราบใดที่ข้อมูลและการตั้งค่าโปรแกรมของคุณได้รับการสำรองไว้คุณก็น่าจะใช้ได้ หากคุณยังต้องการรายการที่ครอบคลุมของทุกสิ่งในระบบของคุณเพื่อให้คุณรู้ว่าแพ็คเกจหายไปเพียงแค่ไปที่เทอร์มินัลและประเภทdpkg --list > mypackages.txtแล้ววางไฟล์ข้อความนั้นไว้ที่ใดที่หนึ่งที่ปลอดภัย - มีทุกแพ็คเกจที่ติดตั้งบนระบบปัจจุบันของคุณ


2

ฉันจะถือว่าเป็น HDD, SSD หรือระบบใหม่หรือคุณมีบน Ubuntu เก่า ตอนนี้คุณต้องการอัพเกรดเป็น Ubuntu 12.04 (Precise Pangolin) ไหม

ฉันจะถือว่าคุณเกลียดการติดตั้งทั้งหมดอีกครั้งหรือตั้งค่าใหม่? ไม่ต้องการ.

เปิดเทอร์มินัลโดยกดCtrl+ Alt+ Tและเรียกใช้คำสั่งต่อไปนี้:

sudo dpkg --get-selections > app-backup-list.txt

จากนั้น cp ไฟล์ข้อความไปยังโฮมไดเร็กตอรี่ของคุณโดย:

sudo cp app-backup-list.txt /home/username

ถัดไปเรียกใช้แอปพลิเคชันสำรองข้อมูลจากการตั้งค่าระบบในแถบด้านข้าง

สำรองข้อมูล/homeไปยัง Ubuntu One แฟลชติดฟลอปปี้ (อุ้ยอ้ายรอยขีดข่วนนั้น) หรือเบิร์นลงบนซีดีหรือ HDD อื่น ๆ ในระบบหรือไดรฟ์ HDD ภายนอกหรือใช้โปรแกรมสำรองข้อมูลใด ๆ ที่คุณต้องการ

จากนั้นย้อนกลับการสำรองข้อมูลโดยใช้การคืนค่าเลือกโปรแกรมสำรองข้อมูลที่คุณใช้และตอนนี้ \ home กลับมา

สุดท้ายให้ย้อนกลับdkpgคำสั่ง:

sudo dpkg --get-selections < app-backup-list.txt
sudo apt-get -y update
sudo apt-get dselect-upgrade

หมายเหตุ :

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

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


1

ฉันพบวิธีแก้ไขปัญหาอื่น:

ตรวจสอบAPTonCD มันจะสำรองแอปพลิเคชันทั้งหมดของคุณและวางไว้ในอิมเมจ ISO


0

ฉันพบกระบวนการที่ง่ายที่สุดคือการใช้สองโปรแกรม:

ย้อนเวลาในการสำรองข้อมูล / บ้านและ / ฯลฯ

Aptik เพื่อสำรองโปรแกรม


0

แก้ไข:

คำตอบนี้ไม่ทำงานอีกต่อไปตาม user @Izzy


ฉันมีคำถามเดียวกันข้างต้น !! ฉันพบเว็บไซต์นี้แล้ว:

คลิกที่นี่

ฉันจะคัดลอกสิ่งที่เว็บไซต์แจ้งเพื่อสำรองโปรแกรม:

"นอกเหนือจากการสำรองข้อมูลพาร์ติชั่น / โฮมของฉันฉันยังใช้ Synaptic Package Manager เพื่อสร้างรายการสำรองข้อมูลของแพ็คเกจที่ติดตั้งทั้งหมดของฉันเป็นระยะ ๆ ในการทำเช่นนี้คุณจะต้องใช้ distro บน Ubuntu หรืออันที่ใช้ Synaptic ฉันไม่คุ้นเคยกับการทำสิ่งนี้ใน distros อื่น ๆ ที่ใช้ตัวจัดการแพ็คเกจอื่น แต่ใน Bodhi Linux, Linux Mint หรืออนุพันธ์ Ubuntu / Debian อื่น ๆ เพียงเปิด Synaptic; ไปที่ไฟล์> บันทึกการทำเครื่องหมาย ตรวจสอบให้แน่ใจว่าได้ทำเครื่องหมายในช่องเล็ก ๆ ที่ระบุว่า 'บันทึกสถานะเต็มไม่เพียง แต่เปลี่ยนแปลง' จากนั้นบันทึกไฟล์นั้นไปยังทุกที่ที่คุณต้องการ จากนั้นเมื่อคุณต้องการติดตั้งระบบปฏิบัติการใหม่หลังจากใช้การอัปเดตทั้งหมดคุณสามารถเปิด Synaptic ไปที่ไฟล์> อ่านเครื่องหมายและเลือกไฟล์แพ็คเกจที่บันทึกไว้ ตราบใดที่คุณเชื่อมต่อกับอินเทอร์เน็ตอินเทอร์เน็ตจะทำการดาวน์โหลดและติดตั้งแอพพลิเคชั่นและแพ็คเกจอื่น ๆ ที่คุณได้ติดตั้งไว้ สิ่งนี้ช่วยประหยัดเวลาและปัญหาได้อย่างมากดังนั้นคุณไม่ต้องค้นหาและติดตั้งแอปพลิเคชันทั้งหมดอีกครั้ง"

ไชโย


ที่ดูเหมือนจะไม่ทำงานแบบนั้นอีกต่อไป เพิ่งตรวจสอบบนเครื่อง Ubuntu 12.04: ไม่มีกล่องโต้ตอบที่ "บันทึกเครื่องหมาย" ใช้ "บันทึกเครื่องหมายเป็น" ฉันได้รับไฟล์ว่าง คำแนะนำ: "เครื่องหมาย" เป็นแพ็คเกจที่คุณเพิ่งทำเครื่องหมายเพื่อติดตั้ง / อัปเดต แต่ยังไม่ได้ติดตั้ง / อัปเดต ดังนั้นจะไม่สามารถสร้างรายการสำรองได้
อิซซี่

@ Izzy ขอบคุณที่แจ้งให้เราทราบ ฉันอัปเดตคำตอบ
Suhaib

ขอบคุณ Suhaib - แต่คุณช่วยตรวจสอบได้มั้ย อาจจะเป็นแค่ฉันหรือฉันเข้าใจผิดบางอย่าง?
Izzy

-1

ในการสำรองแพ็คเกจที่ติดตั้งไว้ทั้งหมดของคุณด้วย GUI คุณสามารถใช้ Ubuntu Software Center ไปที่เมนู (จากนั้นเข้าสู่ระบบ) และซิงค์แพ็คเกจทั้งหมดของคุณ เมื่อคุณจะต้องติดตั้งใหม่ให้เลือกแพ็คเกจทั้งหมดจากเครื่องและคลิก 'ติดตั้ง' จากเมนูเดียวกัน

จากบรรทัดคำสั่ง (CLI) คุณยังสามารถใช้ OneConf (oneconf)

ฉันไม่ได้ตรวจสอบหนึ่งปี บางทีนี่อาจมีตัวเลือกเพิ่มเติมเช่นการตั้งค่าบางอย่างแทนที่จะเป็นเพียงแพ็คเกจที่แสดงรายการสำรองข้อมูล


2
คุณกรุณายืนยันสิ่งนี้ได้ไหม
Braiam
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.