전체 디스크를 포맷하고 Ubuntu를 다시 설치해야합니다.
현재 시스템에 많은 소프트웨어를 설치했습니다. 그리고 모든 업데이트, 드라이버 및 응용 프로그램도 다시 설치해야합니다.
설치된 Ubuntu의 .iso 이미지를 모든 소프트웨어, 환경 설정, 드라이버 등과 함께 만들 수있는 방법이 있습니까?
모든 소프트웨어, 드라이브, 업데이트 및 전체와 함께 전체 OS를 백업 할 수있는 방법이 있습니까?
전체 디스크를 포맷하고 Ubuntu를 다시 설치해야합니다.
현재 시스템에 많은 소프트웨어를 설치했습니다. 그리고 모든 업데이트, 드라이버 및 응용 프로그램도 다시 설치해야합니다.
설치된 Ubuntu의 .iso 이미지를 모든 소프트웨어, 환경 설정, 드라이버 등과 함께 만들 수있는 방법이 있습니까?
모든 소프트웨어, 드라이브, 업데이트 및 전체와 함께 전체 OS를 백업 할 수있는 방법이 있습니까?
답변:
여러 가지 방법이 있습니다. 가장 간단한 방법은 remastersys를 사용하는 것입니다
sudo remastersys dist
remastersys로 작업하기 전에 유비 쿼티 패키지를 설치해야합니다
또는 fsarchiver , redo-backup (라이브 CD)을 사용할 수 있습니다
수행 할 수있는 작업은 홈 디렉토리를 백업하고 설치 한 모든 패키지 목록을 저장하는 것입니다. 설치된 소프트웨어 목록을 저장하려면 다음 명령을 사용하십시오.
sudo dpkg --get-selections > package_list
이 시스템에 설치된 모든 pakcage / 소프트웨어 목록이있는 파일이 생성됩니다. 이 파일을 안전한 곳으로 백업해야합니다.
그런 다음 컴퓨터에 우분투를 다시 설치할 때 다음 명령을 사용하여 모든 소프트웨어를 설치할 수 있습니다
sudo dpkg --set-selections < packages_list
이 명령은 아무것도 설치하지 않습니다. 설치를 위해 패키지를 표시합니다. 설치하려면 다음 명령을 실행하십시오.
sudo apt-get -u dselect-upgrade
시스템이 모든 패키지를 다운로드하여 설치하므로 완료하는 데 시간이 걸립니다. 이 명령이 완료되면 현재 홈 디렉토리를 이전에 백업 한 디렉토리로 바꾸십시오.
이것이 도움이되기를 바랍니다.
"라이브 Ubuntu CD를 사용자 정의하는 방법은 무엇입니까?" 현재 설치에서 라이브 CD를 만드는 방법. 즉, 모든 패키지를 다시 다운로드 할 필요가 없습니다. 이 안내서 는 길고 어려워 보일 수 있지만 대부분 "따라 따라 가기"및 "복사하여 붙여 넣기"입니다. 여기에 약간 복사하고 편집했습니다.
좋은 방법은 현재 설치에서 라이브 CD를 만드는 것입니다. 가상 머신을 사용하여 수행 할 수 있습니다 (게스트 OS 내에 VM 도구를 설치하지 마십시오)
따라서 먼저 필요한 것 (천둥새, 삼바 및 ssh)만으로 새로 설치 (실제로 설치할 수없는 경우 가상 머신을 사용해보십시오)가 필요합니다. 그런 다음 시스템을 조정하고 조정 위치를 기록합니다 (예 : 데스크탑 배경을 변경하거나 설정이 ~ / .gconf에 있거나 파이어 폭스 단축키를 추가 한 경우 ~ / Desktop에 있습니다). 이것은 4 단계에 필요합니다.
몇 가지 변수를 설정하십시오.
export WORK=~/temp
export CD=~/livecd
export FORMAT=squashfs
export FS_DIR=casper
~ / temp를 작업 할 임시 디렉토리의 경로로 바꿉니다. ~ / livecd를 CD 트리의 경로로 바꿉니다.
폴더 구조를 만드십시오. sudo mkdir -p ${CD}/{${FS_DIR},boot/grub} ${WORK}/rootfs
이제 몇 가지 패키지를 설치해야합니다.
sudo apt-get install grub2 xorriso squashfs-tools
이제 현재 설치를 복사하고 필요에 맞게 제외 플래그를 수정합니다.
sudo rsync -av --one-file-system --exclude=/proc/* --exclude=/dev/* \
--exclude=/sys/* --exclude=/tmp/* --exclude=/home/* --exclude=/lost+found \
--exclude=/var/tmp/* --exclude=/boot/grub/* --exclude=/root/* \
--exclude=/var/mail/* --exclude=/var/spool/* --exclude=${WORK}/rootfs \
--exclude=/etc/fstab --exclude=/etc/mtab --exclude=/etc/hosts \
--exclude=/etc/timezone --exclude=/etc/shadow* --exclude=/etc/gshadow* \
--exclude=/etc/X11/xorg.conf* --exclude=/etc/gdm/custom.conf \
/ ${WORK}/rootfs
별도의 부팅 파티션이있는 경우 다음을 실행하십시오. sudo cp -av /boot/* ${WORK}/rootfs/boot
사용자 구성 및 파일을 복사하려면 필요에 따라이 목록을 수정하십시오. CONFIG = '. config .gconf Desktop someotherfolder andanotherfolder'이제 구성 및 파일을 복사합니다.
cd ~ && for i in $CONFIG
do
sudo cp -rpv --parents $i ${WORK}/rootfs/etc/skel
done
이제 우리는 새로운 시스템으로 chroot하고 수정합니다.
sudo mount --bind /dev/ ${WORK}/rootfs/dev
sudo mount -t proc proc ${WORK}/rootfs/proc
sudo mount -t sysfs sysfs ${WORK}/rootfs/sys
sudo mount -t devpts devpts ${WORK}/rootfs/dev/pts
sudo chroot ${WORK}/rootfs /bin/bash
다음 명령은 chroot에서 수행됩니다.
LANG=
apt-get update
apt-get install casper
캐스퍼에는 라이브 스크립트가 포함되어 있습니다. 이제 설치 프로그램 (그놈 버전) apt-get install ubiquity ubiquity-frontend-gtk 또는 KDE를 원하는 경우 :
apt-get install ubiquity ubiquity-frontend-kde
modules.dep 및 initramfs를 업데이트하십시오.
depmod -a $(uname -r)
update-initramfs -u -k $(uname -r)
비 시스템 사용자를 제거합니다. 설정 및 데이터를 사용자의 "골격"에 복사했습니다. 즉, 모든 신규 사용자가 보유하게됩니다.
for i in `cat /etc/passwd | awk -F":" '{print $1}'`
do
uid=`cat /etc/passwd | grep "^${i}:" | awk -F":" '{print $3}'`
[ "$uid" -gt "999" -a "$uid" -ne "65534" ] && userdel --force ${i} 2>/dev/null
done
정리 :
apt-get clean
find /var/log -regex '.*?[0-9].*?' -exec rm -v {} \;
find /var/log -type f | while read file
do
cat /dev/null | tee $file
done
rm /etc/resolv.conf /etc/hostname
chroot를 종료하십시오. exit
이제 커널을 복사합니다 :
export kversion=`cd ${WORK}/rootfs/boot && ls -1 vmlinuz-* | tail -1 | sed 's@vmlinuz-@@'`
sudo cp -vp ${WORK}/rootfs/boot/vmlinuz-${kversion} ${CD}/boot/vmlinuz
sudo cp -vp ${WORK}/rootfs/boot/initrd.img-${kversion} ${CD}/boot/initrd.img
sudo cp -vp ${WORK}/rootfs/boot/memtest86+.bin ${CD}/boot
설치 프로그램이 casper와 같은 것을 설치하지 않도록하십시오.
sudo chroot ${WORK}/rootfs dpkg-query -W --showformat='${Package} ${Version}\n' | sudo tee ${CD}/${FS_DIR}/filesystem.manifest
sudo cp -v ${CD}/${FS_DIR}/filesystem.manifest{,-desktop}
REMOVE='ubiquity casper user-setup os-prober libdebian-installer4'
for i in $REMOVE
do
sudo sed -i "/${i}/d" ${CD}/${FS_DIR}/filesystem.manifest-desktop
done
마운트 한 것을 마운트 해제하십시오 :
sudo umount ${WORK}/rootfs/proc
sudo umount ${WORK}/rootfs/sys
sudo umount ${WORK}/rootfs/dev/pts
sudo umount ${WORK}/rootfs/dev
squashfs로 변환 :
sudo mksquashfs ${WORK}/rootfs ${CD}/${FS_DIR}/filesystem.${FORMAT}
filesystem.size를 작성하십시오.
echo -n $(sudo du -s --block-size=1 ${WORK}/rootfs | tail -1 | awk '{print $1}') | sudo tee ${CD}/casper/filesystem.size
그리고 md5 : find ${CD} -type f -print0 | xargs -0 md5sum | sed "s@${CD}@.@" | grep -v md5sum.txt |sudo tee ${CD}/md5sum.txt
이제 grub.cfg :
sudo nano ${CD}/boot/grub/grub.cfg
(fav 텍스트 편집기로 nano를 바꾸어도 상관 없습니다) 이것을 붙여 넣고 저장하십시오.
set default="0"
set timeout=10
menuentry "Ubuntu GUI" {
linux /boot/vmlinuz boot=casper quiet splash
initrd /boot/initrd.img
}
menuentry "Ubuntu in safe mode" {
linux /boot/vmlinuz boot=casper xforcevesa quiet splash
initrd /boot/initrd.img
}
menuentry "Ubuntu CLI" {
linux /boot/vmlinuz boot=casper textonly quiet splash
initrd /boot/initrd.img
}
menuentry "Ubuntu GUI persistent mode" {
linux /boot/vmlinuz boot=casper boot=casper persistent quiet splash
initrd /boot/initrd.img
}
menuentry "Ubuntu GUI from RAM" {
linux /boot/vmlinuz boot=casper nopersistent toram quiet splash
initrd /boot/initrd.img
}
menuentry "Check Disk for Defects" {
linux /boot/vmlinuz boot=casper integrity-check quiet splash
initrd /boot/initrd.img
}
menuentry "Memory Test" {
linux16 /boot/memtest86+.bin
}
menuentry "Boot from the first hard disk" {
set root=(hd0)
chainloader +1
}
CD / DVD를 만드십시오!
sudo grub-mkrescue -o ~/live-cd.iso ${CD}
가상 머신을 사용하여 테스트하십시오!
가이드가 여기에 있기 때문에 모든 크레딧은 capink에갑니다 .
중국의 일부 친구 는 우분투에서 ucloner 를 사용 하여 OS를 백업합니다.
https://code.google.com/p/ucloner/
UCloner는 Ubuntu Linux 용으로 설계된 백업 / 복원 / 복제 도구입니다. 어떤면에서는 Windows 용 Norton Ghost와 같습니다.
UCloner를 사용하면 Ubuntu 시스템을 squashfs 이미지 파일로 백업 할 수 있습니다. 이 이미지 파일에서 직접 PC를 소위 "Live Ubuntu"환경 ( "casper"패키지 필요)으로 부팅 할 수 있습니다.
활성화 된 우분투 시스템은 UCloner의 도움으로 자체 대상 파티션에 복제 할 수 있습니다. 매트릭스의 스미스 요원을 기억하십니까? 그래, 그거야
명령 행과 그래픽 인터페이스가 있습니다. 명령 행 인터페이스에서 실행할 때 더 유연합니다.
UCloner는 무료 소프트웨어이며 GPL v2에 따라 배포됩니다.
단일 하드 디스크에 Ubuntu가 설치되어 있고 저장 용량이 같거나 더 큰 다른 하드 디스크가있는 경우 디스크 복제는 정말 간단합니다.
sudo dd if=/<from disk> of=<to disk>
예를 들어, sda를 sdb에 복제하려면을 수행하십시오 sudo dd if=/dev/sda of=/dev/sdb
. 모든 파티션, 부팅 관리자 등이 유지됩니다.
올바른 if (입력 파일) 및 (output 파일)을 사용하도록주의하십시오. 입력 파일은 복사하려는 디스크입니다. 순서를 전환하면 빈 디스크를 전체 디스크로 복제하여 두 개의 빈 디스크를 남겨 둡니다. :)
또한 새 디스크에 첫 번째 디스크를 복제하기에 충분한 공간이 있는지 확인하십시오. 그렇지 않으면 마지막에 잘립니다. 경고가 없습니다.
이미지를 만들려면, 단순히 교체 of=/dev/sdb
와 함께 of=/some_place/disk-image.raw
. 다른 디스크에 저장하십시오.
Ubuntu 설치를 다른 위치로 마이그레이션하는 스크립트가 있습니다. 예를 들어 외부 하드 드라이브로 마이그레이션 할 수 있습니다. 깔끔한 점은 이전 드라이브를 포맷하기 전에 독립적으로 부팅하고 작동하는지 확인할 수 있다는 것입니다. 정확한 사본이므로 구성, 재설치 또는 조정할 필요가 없습니다. 대상 파티션을 준비하기 만하면됩니다. 또한 이전 설치를 포맷하기 전에 마이그레이션 된 설치를 테스트 할 수 있도록 현재 설치를 수정하지 않습니다.
http://ubuntuforums.org/showthread.php?t=1519354
(예, wubi 마이그레이션이지만 일반 마이그레이션도 수행합니다. 다른 설치를 백업하고 복원하는 데 항상 사용합니다)