Ubuntu를 새로 설치 한 후 수행 한 모든 작업을 백업하려면 가능한 옵션은 무엇입니까? 무엇을 모두 백업해야합니까? 변경 한 모든 설정, 설치 한 모든 패키지 등을 가져오고 싶습니다.
dpkg --get-selections
솔루션이 이것을 커버 하기 때문에 .
Ubuntu를 새로 설치 한 후 수행 한 모든 작업을 백업하려면 가능한 옵션은 무엇입니까? 무엇을 모두 백업해야합니까? 변경 한 모든 설정, 설치 한 모든 패키지 등을 가져오고 싶습니다.
dpkg --get-selections
솔루션이 이것을 커버 하기 때문에 .
답변:
프로그램 목록을 백업하는 빠른 방법은 다음을 실행하는 것입니다.
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의 사용 가능한 패키지 목록을 업데이트해야 할 수도 있고 선택 사항 만 무시할 수도 있습니다 (자세한 내용은 이 데비안 버그 참조 ). 다음 sudo dpkg --set-selections < ~/Package.list
과 같이 전에이 작업을 수행해야 합니다.
apt-cache dumpavail > ~/temp_avail
sudo dpkg --merge-avail ~/temp_avail
rm ~/temp_avail
다시 설치하기 전에 일부 프로그램의 설정을 백업해야 할 수도 있습니다. / etc의 폴더와 사용자 디렉토리의 모든 내용 (노틸러스에서 볼 수있는 것만이 아니라)을 가져 와서 쉽게 수행 할 수 있습니다.
rsync --progress /home/`whoami` /path/to/user/profile/backup/here
다시 설치 한 후 다음을 사용하여 복원 할 수 있습니다.
rsync --progress /path/to/user/profile/backup/here /home/`whoami`
이것은 컴퓨터에 한 명의 사용자 만 있고 ( /'whoami'
그렇지 않으면 제거 ) 두 설치 모두에서 동일한 사용자 이름을 사용했다고 가정합니다 (그렇지 않으면 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
dpkg: warning: package not in database at line XXX: xrdp
그리고 이름 "dselect를"없음 패키지 없다
Log Out
기본 메뉴 표시 줄의 톱니 바퀴 아이콘을 통해. 그런 다음를 통해 CLI로 전환하십시오 CTRL-ALT-F1
. 백업에서 .config / dconf / user를 복원합니다. 를 통해 GUI로 다시 전환하고 다시 CTRL-ALT-F7
로그인하십시오. Voila : 모든 Unity 관련 설정이 다시 적용됩니다! 설명 시도 : 활성 Unity GUI 세션 동안 dconf 파일이 잠겨 있거나 무시 될 수 있으므로 순수한 CLI 모드로 전환해야합니까?
대상 : 컴퓨터를 정상적으로 정기적으로 사용하고 홈 폴더 외부에서 구성을 최소화하거나 전혀 수행하지 않은 사용자는 시작 스크립트와 서비스를 엉망으로 만들지 않았습니다. 모든 사용자 정의를 수행하고 홈 폴더에 보관하여 소프트웨어를 설치했을 때의 상태로 소프트웨어를 복원하려는 사용자.
적합하지 않은 대상 : 서버 괴짜, 소스로 소프트웨어를 설치 한 고급 사용자 (패키지 목록을 복원하면 시스템이 손상 될 수 있음), 일부 응용 프로그램의 시작 스크립트를 필요에 맞게 변경 한 사용자 주의 : 집 밖에서 수정 한 내용을 덮어 쓰게 될 가능성이 큽니다.
시스템 준비가 완료되고 설치된 소프트웨어에 만족하면 명령을 사용하여 설치된 패키지 목록을 가져 와서 dpkg --get-selections
출력을 로그 파일에 저장할 수 있습니다.
backup
집에 폴더 만들기
sudo mkdir ~/backup
현재 설치된 패키지 목록을 저장하십시오.
dpkg --get-selections > ~/backup/installed_packages.log
적절한 소스 파일을 백업하십시오
sudo cp /etc/apt/sources.list ~/backup/sources.bak
그리고 귀하의 아파트의 신뢰할 수있는 키 목록 사본
sudo apt-key exportall > ~/backup/repositories.keys
Deja-dup의 Ubuntu에 통합 백업 도구를 사용하여 홈 폴더를 백업하십시오.
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으로 생성 된 백업을 복원하십시오.
이 작업이 완료되면 패키지를 저장된 선택 항목으로 되돌리고 구성을 복원하고 작업 데스크톱을 구현할 수 있습니다. 하나의 추가 응용 프로그램을 설치하지 않고 Ubuntu 기본 도구를 사용하지 않아도됩니다.
남은 것은 정리하고 모든 것이 작동하는지 확인하는 것입니다.
Ask Ubuntu에는 문제가 생겼을 때 도움이 될 수있는 몇 가지 게시물이 있으며 데스크탑을 하드 리셋해야합니다. 무언가 잘못되었을 때 자기 자신이 그렇게해야하는 것을 발견 한 경우 다음 게시물을 살펴보십시오.
백업에는 몇 가지 계획이 있으며 몇 가지 실행 가능한 전략이 있습니다. 가장 적합한 방법을 결정해야합니다.
"가장 좋은 방법"에 대해주의하십시오. 한 사람에게 가장 효과적인 방법은 다른 사람에게는 가장 좋지 않을 수도 있습니다.
하루가 끝나면 "최상의 방법"은 테스트되어 작동하는 것으로 알려져 있습니다. 필요하기 전에 백업 전략을 테스트해야합니다
한 가지 방법은 파티션의 이미지를 간단히 복사하고 압축하는 것입니다. dd에서 partimage, clonezilla에 이르기까지 여러 도구를 사용하여이 작업을 수행 할 수 있습니다.
이 전략의 장점은 (상대적으로) 쉽고 비교적 완벽하다는 것입니다. 단점은 백업 이미지가 크다는 것입니다.
데이터와 설정 만 백업하여 더 작은 백업을 만들 수 있습니다. 이 작업을 수행하는 도구는 dd에서 tar, rsync에 이르기까지 여러 가지가 있습니다.
여기서 중요한 것은 백업해야 할 것을 아는 것입니다.
장점-백업이 더 작습니다.
단점-이 방법은 수동 방법이므로 중요한 파일 (/ etc / passwd)을 잊어 버리기 쉽습니다.
백업 대상 목록은 항상 검토하여 목록이 완전한지 확인해야합니다.
1) 설치된 패키지 목록
패키지 목록 # 새로 설치된 배포판에 다시 설치하기 위해 설치된 모든 apt-get 설치된 패키지의 기존 설치 텍스트 목록을 만듭니다.
# 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
(당신은 내가 뭔가를 잊어 버린 경우 내가 그것을 추가 할 것입니다, 더 / 등의해야 할 수도 있습니다)
서버에서 /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 또는 소프트웨어 관리자 외부에서 다운로드하거나 사용자 정의한 시스템의 모든 것.
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을 사용하여 (매일 / 매시간) 백업을 실행하여 백업을 자동화 할 수 있습니다.
1) 라이브 CD를 사용하여 fdisk.bak의 정보에서 gparted 또는 fdisk를 사용하여 파티션을 복원하십시오
. 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, 예비 컴퓨터 또는 예비 파티션 또는 하드 드라이브에서 시스템 복원을 테스트하십시오.
apt-clone
APT 복제 . 이 패키지는 apt 기반 시스템에서 패키지를 복제 / 복원하는 데 사용할 수 있습니다. 패키지, source.list, 키 링 및 자동 설치 상태를 저장 / 복원합니다. 또한 dpkg-repack을 사용하여 더 이상 다운로드 할 수없는 패키지를 저장 / 복원 할 수 있습니다.
APT-Clone은 ubiquity
업그레이드 프로세스를 위해 (Ubuntu 설치 관리자)에서 사용합니다.
설치
sudo apt-get install apt-clone
백업 만들기
sudo apt-clone clone path-to/apt-clone-state-ubuntu-$(lsb_release -sr)-$(date +%F).tar.gz
백업 복원
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 형식 볼륨을 생성하고이를 원격 또는 로컬 파일 서버에 업로드하여 디렉토리를 백업합니다. 이중성이 librsync를 사용하기 때문에 증분 아카이브는 공간 효율적이며 마지막 백업 이후 변경된 파일 부분 만 기록합니다. duplicity는 GnuPG를 사용하여 이러한 아카이브를 암호화 및 / 또는 서명하기 때문에 서버에 의한 감시 및 / 또는 수정으로부터 안전합니다.
설치
sudo apt-get install duplicity
지원
duplicity full path-to/source_folder/ file:///path_to/duplicity_backups/
또는 증분 백업 (마지막 백업과의 차이점 만 백업 함) :
duplicity incremental path-to/source_folder/ file:///path_to/duplicity_backups/
복원
duplicity restore file:///path_to/duplicity_backups/ path-to/target_folder/
참고: man duplicity
dpkg --get-selections
솔루션 보다 훨씬 낫습니다 . 1. 모든 리포지토리 정보를 유지합니다. 2. 자동으로 설치된 패키지를 추적합니다. 3. 로컬로 설치된 DEB 파일을 리 패킹 할 수 있습니다. 이것이 정답입니다!
이 질문에 잠시 답변을했지만 아무도 키퍼를 언급하지 않은 것으로 나타났습니다. 를 실행 apt-get install etckeeper
하고에서 VCS를 구성 /etc/etckeeper/etckeeper.conf
하면 그때부터 / etc 디렉토리를 훨씬 잘 제어 할 수 있습니다. / etc 디렉토리 내에서 구성을 복원하는 데 에도 사용할 수 있습니다 .
예를 들어 (git를 VCS로 구성했다고 가정) /etc/.git
디렉토리를 백업하십시오 . 구성을 새로운 / etc로 복원해야 할 때마다 백업 된 /etc/.git 디렉토리를 새로운 / etc 디렉토리에 복사하십시오. 이제 복원 관리를위한 많은 옵션이 있습니다.
git diff
git checkout -b new; git add -A; git commit -m 'new etc'
git clean -f
... 앱틱 소개.
로컬이나 클라우드에 저장된 백업 디렉토리 만 있으면됩니다. Aptik
PPA, 다운로드 한 패키지, 소프트웨어 선택, 응용 프로그램 설정 및 테마 및 아이콘을 백업합니다. 매우 유용합니다.
ppa를 통해 설치할 수 있습니다.
sudo apt-add-repository –y ppa:teejee2008/ppa
sudo apt-get update
sudo apt-get install aptik
희망이 있습니다. :)
sudo apt-add-repository –y ppa:teejee2008/ppa
이어야합니다 sudo apt-add-repository ppa:teejee2008/ppa
. 1 개의 인수 만 허용되었습니다.
모든 설치된 프로그램의 백업 목록을 만들려면 : http://savvyadmin.com/backup-and-restore-package-lists-in-ubuntu/
당신은 분명히 백업 소프트웨어 소스가 필요합니다 그 설치된 패키지 중 일부에서 것을 : 백업 소프트웨어 소스
프로그램 설정과 관련하여 대부분의 설정은 .
홈 폴더의 숨겨진 폴더와 파일에 있습니다. 난 그냥 그들 모두를 백업합니다.
저장 공간이 중요하지 않은 경우 dd 또는 dc3dd를 사용하면 지정한 대상 디스크 또는 파티션의 모든 내용이 절대적으로 백업됩니다. 마운트 된 드라이브에서 시도하지 않으려면 부팅 가능한 USB 또는 DVD (또는 "Try 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 = 및 of = 매개 변수를 교체하여 전체 디스크 또는 파티션을 복원 할 수 있습니다.
sudo dd if=/path/<source>.img of=/dev/<target>
복원하려는 이미지 파일은 어디에 있고 <target>은 복원하려는 드라이브 또는 파티션입니다.
장점 : 백업 및 복원이 용이합니다. 다른 솔루션과 달리 계획 방식에있어 많은 것을 요구하지는 않습니다. 필요한지 여부에 대해 걱정할 필요가없는 모든 것을 백업하기 때문입니다.
단점 : 시간이 많이 걸리고 (컴퓨터 시간이 아닌 컴퓨터 시간) 매일 백업에 적합하지 않습니다 (증분 옵션 없음)
출처 : 경험; 작업을 시작하기 전에이 방법을 사용하여 클라이언트 시스템을 백업하고 약간의 클라이언트 데이터를 잃어 버리지 않았습니다.
복원 준비가 된 앱과 해당 데이터를 오프라인으로 유지하고 싶습니다.
이는 "포맷 및 설치"의 목적을 상실합니다. 그렇게하려면 기존 Ubuntu 설치에서 업그레이드하십시오.
Ubuntu의 "설치"는 Software Center (또는 Synaptic 또는 apt-get
)에 들어가는 것처럼 간단 하고 대부분의 프로그램 자체가 자주 업데이트되므로 프로그램을 백업하고 Ubuntu를 다시 설치 한 다음 백업에서 설치하는 것이 실제로 중요하지 않습니다. 리포지토리에서 최신 버전을 가져옵니다.
데이터 및 프로그램 설정이 백업되는 한 괜찮습니다. 여전히 시스템에있는 모든 것의 포괄적 인 목록을 원한다면 패키지가 없는지 알기 만하면 터미널로 가서 type을 입력 dpkg --list > mypackages.txt
하고 해당 텍스트 파일을 안전한 곳에 두십시오. 여기에는 현재 시스템에 설치된 모든 패키지가 들어 있습니다.
나는 그것이 새로운 HDD, SSD 또는 새로운 시스템이거나 오래된 우분투에 있다고 가정합니다. 이제 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에 백업 , 플래시 스틱, 플로피 (긁힘이 생겼음) 또는 CD 또는 시스템 또는 외장 HDD 드라이브의 다른 HDD에 굽거나 원하는 백업 프로그램을 사용하십시오.
그런 다음 복원을 사용하여 백업을 되돌리고 사용한 백업 프로그램을 선택하면 이제 \ home이 돌아옵니다.
마지막으로 dkpg
명령을 반대로 수행하십시오 .
sudo dpkg --get-selections < app-backup-list.txt
sudo apt-get -y update
sudo apt-get dselect-upgrade
참고 :
집을 복원하면 응용 프로그램의 모든 설정을 가져옵니다. SSD를 설치하고 모든 파일을 복사했지만 여전히 경우를 대비하여 백업을 수행했습니다.
추신 : 실제로 백업, 방대한 앱의 머신 코드 등을 피합니다. 다운로드 폴더가 깨끗한 지 확인하십시오. 머신 코드 나 비디오가 가득하지 않은 경우 download
k3B를 사용하여 폴더를 DVD에 굽습니다.
이 답변은 더 이상 사용자 @Izzy에 따라 작동하지 않습니다
나는 위와 같은 질문을했다! 그런 다음이 웹 사이트를 찾았습니다.
나는 프로그램을 백업하기 위해 웹 사이트가 말한 것을 복사 할 것입니다 :
"/ home 파티션 백업과 함께 Synaptic Package Manager를 사용하여 설치된 모든 패키지 (응용 프로그램 및 해당 종속성)의 백업 목록을 정기적으로 만듭니다. 이렇게하려면 Ubuntu 기반 배포판이나 Synaptic을 사용하는 배포판을 사용해야합니다. 다른 패키지 관리자를 사용하는 다른 배포판 에서이 작업을 수행하는 데 익숙하지 않습니다. 그러나 Bodhi Linux, Linux Mint 또는 기타 우분투 / 데비안 파생어에서는 시냅틱을 엽니 다. 파일> 마킹 저장으로 이동하십시오. '변경 사항뿐만 아니라 전체 상태 저장'이라는 작은 상자를 선택한 다음 원하는 위치 (바람직하게는 / home 백업을 저장 한 위치)에 파일을 저장하십시오. 그런 다음 운영 체제를 다시 설치해야 할 때 모든 업데이트를 적용한 후 Synaptic을 열고 파일> 표시 읽기로 이동하여 저장된 패키지 파일을 선택할 수 있습니다. 인터넷에 연결되어 있으면 원래 설치 한 모든 응용 프로그램 및 기타 패키지가 자동으로 다운로드되어 설치됩니다. 이것은 확실히 많은 시간과 문제를 줄여 주므로 모든 응용 프로그램을 검색하고 다시 설치할 필요가 없습니다."
건배
GUI를 사용하여 설치된 모든 패키지를 백업하려면 Ubuntu Software Center를 사용할 수 있습니다. 메뉴로 이동 한 다음 로그인하여 모든 패키지를 동기화하십시오. 다시 설치해야 할 경우 컴퓨터에서 모든 패키지를 선택하고 동일한 메뉴에서 '설치'를 클릭하십시오.
명령 줄 (CLI)에서 OneConf (oneconf)를 사용할 수도 있습니다.
나는 1 년 동안 점검하지 않았다. 어쩌면 이것에는 백업을 나열하는 패키지 대신 일부 설정과 같은 더 많은 옵션이 있습니다.
sudo dpkg -l > installed_software.txt
!