데비안 6.0을 설치할 때 수동으로 파티션을 나누었는데 분명히 엉망이었습니다. 복구 모드에서 컴퓨터를 부팅하고 fdisk 출력에 기본 파티션이 없는 경우에만 OS가 로드됩니다. AFAIK - PC를 부팅하려면 기본 파티션이 하나 이상 있어야 합니다. 맞나요? 확장 파티션을 기본 파티션으로 변환할 수 있는 방법이 있습니까?
현재 내 파티션 테이블은 다음과 같습니다.
cme@cmehost:~$ sudo fdisk -c -l /dev/sda
Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00010629
Device Boot Start End Blocks Id System
/dev/sda1 1 1216 9764864 82 Linux swap / Solaris
/dev/sda2 1216 60802 478618625 5 Extended
/dev/sda5 * 1216 6091 39158784 83 Linux
/dev/sda6 6092 60802 439458816 83 Linux
이것은 내 /boot/grub/grub.cfg
파일입니다:
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#
### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
load_env
fi
set default="0"
if [ "${prev_saved_entry}" ]; then
set saved_entry="${prev_saved_entry}"
save_env saved_entry
set prev_saved_entry=
save_env prev_saved_entry
set boot_once=true
fi
function savedefault {
if [ -z "${boot_once}" ]; then
saved_entry="${chosen}"
save_env saved_entry
fi
}
function load_video {
insmod vbe
insmod vga
insmod video_bochs
insmod video_cirrus
}
insmod part_msdos
insmod ext2
set root='(hd1,msdos5)'
search --no-floppy --fs-uuid --set 19b27164-6e7a-4d55-89be-9986c2a5fe73
if loadfont /usr/share/grub/unicode.pf2 ; then
set gfxmode=640x480
load_video
insmod gfxterm
fi
terminal_output gfxterm
insmod part_msdos
insmod ext2
set root='(hd1,msdos5)'
search --no-floppy --fs-uuid --set 19b27164-6e7a-4d55-89be-9986c2a5fe73
set locale_dir=($root)/boot/grub/locale
set lang=en
insmod gettext
set timeout=5
### END /etc/grub.d/00_header ###
### BEGIN /etc/grub.d/05_debian_theme ###
insmod part_msdos
insmod ext2
set root='(hd1,msdos5)'
search --no-floppy --fs-uuid --set 19b27164-6e7a-4d55-89be-9986c2a5fe73
insmod png
if background_image /usr/share/images/desktop-base/spacefun-grub.png; then
set color_normal=light-gray/black
set color_highlight=white/black
else
set menu_color_normal=cyan/blue
set menu_color_highlight=white/blue
fi
### END /etc/grub.d/05_debian_theme ###
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-amd64' --class debian --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(hd1,msdos5)'
search --no-floppy --fs-uuid --set 19b27164-6e7a-4d55-89be-9986c2a5fe73
echo 'Loading Linux 2.6.32-5-amd64 ...'
linux /boot/vmlinuz-2.6.32-5-amd64 root=UUID=19b27164-6e7a-4d55-89be-9986c2a5fe73 ro quiet
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.32-5-amd64
}
menuentry 'Debian GNU/Linux, with Linux 2.6.32-5-amd64 (recovery mode)' --class debian --class gnu-linux --class gnu --class os {
insmod part_msdos
insmod ext2
set root='(hd1,msdos5)'
search --no-floppy --fs-uuid --set 19b27164-6e7a-4d55-89be-9986c2a5fe73
echo 'Loading Linux 2.6.32-5-amd64 ...'
linux /boot/vmlinuz-2.6.32-5-amd64 root=UUID=19b27164-6e7a-4d55-89be-9986c2a5fe73 ro single
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-2.6.32-5-amd64
}
### END /etc/grub.d/10_linux ###
### BEGIN /etc/grub.d/20_linux_xen ###
### END /etc/grub.d/20_linux_xen ###
### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###
### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###
### BEGIN /etc/grub.d/41_custom ###
if [ -f $prefix/custom.cfg ]; then
source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###
확인해 보니 /var/log/boot
비어 있었습니다. 확인해야 할 다른 파일이 있나요? :)
고쳐 쓰다 흠 - 나는 이것이 하드웨어 문제일지도 모른다고 믿기 시작했습니다. 설치 프로그램은 grub 메뉴에 전혀 들어가지 않기 때문입니다. 어쨌든 폭파하고 다시 설치해보겠습니다. 별거 아닙니다. :)
업데이트 2 - 솔루션
알았어 - 정리됐어! 내가 발견한 문제는 unetbootin이 USB 드라이브에서 컴퓨터에 다양한 운영 체제를 설치할 수 있도록 설계되었다고 솔직하게 믿었다는 것입니다. 이것은...글쎄...완전히 잘못된 것입니다. Unetbootin은 라이브 USB 드라이브를 생성하여 컴퓨터를 부팅할 수 있는 소프트웨어입니다.
그래서 저는 설치용 썸 드라이브를 다음과 같이 다시 만들었습니다.
cat image.iso > /dev/sdb1
sync
또는
dd if=image.iso of=/dev/sdb1
물론 이후에는 모든 것이 훌륭하고 쉽게 설치되었습니다.
모두에게 혼란을 드려 죄송합니다. ;)
답변1
나는 Fahim의 의견에 더 이상 동의할 수 없었습니다.
"어려운 방법으로 할 수 있는데 왜 가장 쉬운 솔루션을 선택합니까?"
진지하게, CD를 넣고 모든 것을 지우고 설치 프로그램이 /(루트) 및 스왑(2x RAM)의 2개 파티션을 선택하거나 사용하도록 하십시오. 완벽한. 나는 백업과 재설치를 더 쉽게 하기 위해 /home을 다른 파티션에 두는 것을 좋아합니다.