USB 디스크 에 grub 설치 하기

7287 단어 grub질문
실패 사례
USB 를 1 개 구역 으로 나 누고 파일 시스템 형식 은 vfat 형식 입 니 다.
1.컴퓨터 저장 장치 정보 보기
여기 U 디스크 는/dev/sdb 이 고 파 티 션/dev/sdb 4 만 있 습 니 다.
2.USB 분할
[root@localhost ~]# fdisk -l
...
Disk /dev/sdb: 4008 MB, 4008706048 bytes
255 heads, 63 sectors/track, 487 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb4   *           1         488     3914689    c  W95 FAT32 (LBA)
Partition 4 has different physical/logical endings:
     phys=(486, 254, 63) logical=(487, 91, 53)

[root@localhost ~]# ls /dev/sd* | grep "sdb"
/dev/sdb
/dev/sdb4

3.파 티 션 포맷
The kernel still uses the old table.
The new table will be used at the next reboot.
그래서 USB 마 운 트 해제:데스크 톱 에서 오른쪽 단 추 를 누 르 면'파일 볼 륨 삭제'
[root@localhost ~]# fdisk /dev/sdb

Command (m for help): m
Command action
   a   toggle a bootable flag
   b   edit bsd disklabel
   c   toggle the dos compatibility flag
   d   delete a partition
   l   list known partition types
   m   print this menu
   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel
   t   change a partition's system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)

Command (m for help): d        # delete the old partition(s)
Selected partition 4

Command (m for help): n        # create new partition(s)
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-487, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-487, default 487):
Using default value 487

Command (m for help): w        #        
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16:       .
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.

USB 를 꽂다
[root@localhost ~]# ls /dev/sd*
/dev/sda  /dev/sda1  /dev/sda2  /dev/sda3  /dev/sda4  /dev/sda5  /dev/sda6  /dev/sda7  /dev/sda8    # no /dev/sdb

포맷 파 티 션
4.567913.이 때 파 티 션 이 마 운 트 되 었 습 니 다.포맷 하려 면 파 티 션 을 마 운 트 해제 해 야 합 니 다.
파 티 션 을 마 운 트 해제 하고 파 티 션 을 포맷 합 니 다.
[root@localhost ~]# ls /dev/sd*
/dev/sda  /dev/sda1  /dev/sda2  /dev/sda3  /dev/sda4  /dev/sda5  /dev/sda6  /dev/sda7  /dev/sda8  /dev/sdb  /dev/sdb1

4.활성화 시 안내 구역(그렇지 않 으 면 안내 할 수 없 음)
[root@localhost ~]# mkfs.vfat /dev/sdb1
mkfs.vfat 2.11 (12 Mar 2005)
mkfs.vfat: /dev/sdb1 contains a mounted file system.

오류:파일/media/disk/boot/grub/stage 1 을 제대로 읽 지 못 했 습 니 다.
이 문제 가 발생 한 이 유 는/dev/sdb 1 의 형식 이 vfat 형식 이기 때 문 입 니 다.vfat 형식의 파 티 션 에 grub 을 설치 하 는 것 은 지원 되 지 않 습 니 다.
성공 사례
U 판 을 2 개의 구역 으로 나 누고 첫 번 째 구역 은 vfat 형식 이 며 두 번 째 구역 은 ext 2 형식 이 며 grub 은 두 번 째 구역 에 설치 하고 두 번 째 구역 을 안내 구역 1,구역 으로 한다.
[root@localhost ~]# umount /dev/sdb1
[root@localhost ~]# mkfs.vfat /dev/sdb1
mkfs.vfat 2.11 (12 Mar 2005)

2.파 티 션 포맷
USB 마 운 트 해제:데스크 톱 에서 오른쪽 단 추 를 누 르 고"파일 볼 륨 삭제"
USB 를 꽂다
[root@localhost ~]# fdisk /dev/sdb

Command (m for help): a
Partition number (1-4): 1    # /dev/sdb1       

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.



[root@localhost ~]# df -l
                   1K-                     %    
/dev/sda7             40631956   3154200  35380472   9% /
tmpfs                  1036808         0   1036808   0% /dev/shm
/dev/sdb1              3904152         4   3904148   1% /media/disk
/dev/sda5             52427180  33302524  19124656  64% /mnt


[root@localhost ~]# grub-install --root-directory=/media/disk --no-floppy /dev/sdb1
The file /media/disk/boot/grub/stage1 not read correctly.

3,활성화/dev/sd2
[root@localhost ~]# fdisk /dev/sdb

Command (m for help): d
Selected partition 1

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-487, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-487, default 487): +3072M

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (375-487, default 375):
Using default value 375
Last cylinder or +size or +sizeM or +sizeK (375-487, default 487):
Using default value 487

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: Re-reading the partition table failed with error 16:       .
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.

4、USB 에 grub 설치
USB 각 파 티 션 의 마 운 트 상황 보기
[root@localhost ~]# ls /dev/sd*
/dev/sda  /dev/sda1  /dev/sda2  /dev/sda3  /dev/sda4  /dev/sda5  /dev/sda6  /dev/sda7  /dev/sda8  /dev/sdb  /dev/sdb1  /dev/sdb2

[root@localhost ~]# umount /dev/sdb1
[root@localhost ~]# umount /dev/sdb2
[root@localhost ~]# mkfs.vfat /dev/sdb1
mkfs.vfat 2.11 (12 Mar 2005)
[root@localhost ~]# mkfs.ext2 /dev/sdb2
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
113568 inodes, 226918 blocks
11345 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=234881024
7 block groups
32768 blocks per group, 32768 fragments per group
16224 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840

Writing inode tables: done                            
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 24 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

5.USB 에 설 치 된 MBR
[root@localhost ~]# fdisk /dev/sdb

Command (m for help): a
Partition number (1-4): 2

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

[root@localhost ~]# fdisk -l
...
Disk /dev/sdb: 4008 MB, 4008706048 bytes
255 heads, 63 sectors/track, 487 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         374     3004123+  83  Linux
/dev/sdb2   *         375         487      907672+  83  Linux        #      

응용 프로그램:하드디스크 의 Linux 를 U 디스크 grub 으로 시작 합 니 다.
주의:상기 방안 이 반드시 하 드 디스크 의 Linux 를 시작 할 수 있 는 것 은 아 닙 니 다.필자 가 테스트 한 U 디스크 는 안 됩 니 다.
알 수 없 는 브랜드 USB(4G)
구역 1
섹 션 2
하 드 디스크 의 Linux 를 시작 할 수 있 습 니까?
vfat(3G)
ext2(grub)
...할 수 없다
ext2(grub, 512M)
vfat
능.
Kingston(4G)
구역 1
섹 션 2
하 드 디스크 의 Linux 를 시작 할 수 있 습 니까?
ext2(grub, 512M)
vfat
능.
ext2
없다
능.
참고 자료
Booting from USB, http://wiki.linuxquestions.org/wiki/Booting_from_USB 에 GRUB 를 USB 디스크 에 설치 하고,http://bbs.chinaunix.net/thread-2295595-1-1.html

좋은 웹페이지 즐겨찾기