Browse Source

修改磁盘脚本的细节

fslongjin 2 years ago
parent
commit
900f186530
3 changed files with 11 additions and 4 deletions
  1. 1 0
      run.sh
  2. 9 3
      tools/create_hdd_image.sh
  3. 1 1
      tools/mount_virt_disk.sh

+ 1 - 0
run.sh

@@ -91,6 +91,7 @@ fi
 # 拷贝应用程序到硬盘
 cd tools
 bash m*
+sudo mkdir -p ${root_folder}/bin/disk_mount
 sudo cp ${root_folder}/bin/user/shell.elf ${root_folder}/bin/disk_mount
 sudo cp ${root_folder}/bin/user/about.elf ${root_folder}/bin/disk_mount
 sudo mkdir ${root_folder}/bin/disk_mount/dev

+ 9 - 3
tools/create_hdd_image.sh

@@ -5,6 +5,12 @@ qemu-img create -f raw disk.img 16M
 # 按顺序输入,并且,每次输入完成后要按下回车)
 fdisk disk.img
 
-echo "Successfully created disk image, please make a FAT32 filesystem on it"
-sudo mkdir -p ../bin
-sudo cp ./disk.img ../bin/
+LOOP_DEVICE=$(sudo losetup -f --show -P disk.img) \
+    || exit 1
+echo ${LOOP_DEVICE}p1
+sudo mkfs.vfat -F 32 ${LOOP_DEVICE}p1
+sudo losetup -d ${LOOP_DEVICE}
+
+echo "Successfully created disk image."
+mkdir -p ../bin
+mv ./disk.img ../bin/

+ 1 - 1
tools/mount_virt_disk.sh

@@ -2,7 +2,7 @@ LOOP_DEVICE=$(sudo losetup -f --show -P ../bin/disk.img) \
     || exit 1
 
 echo ${LOOP_DEVICE}p1
-sudo mkfs.vfat -F 32 ${LOOP_DEVICE}p1
+
 mkdir -p ../bin/disk_mount/
 sudo mount ${LOOP_DEVICE}p1 ../bin/disk_mount/ 
 lsblk