分区格式化

查看磁盘状态

df -h       (这个命令显示系统已经挂载的各硬盘及他们所在的挂载点)
fdisk -l    (这个命令可以将还没挂载的block也列出来,fdisk /dev/sdb 就可以针对u盘等设备格式化或分区了,常用的有p显示分区,d删除分区,n新建分区)


给盘分区并格式化

sudo umount /dev/sdb (若是有多个分区就挨个umount /dev/sdb1 , umount /dev/sdb2)

sudo fdisk /dev/sdb
p 打印分区表
d 删除原有分区
n 新建分区 2048-->2048*64(2048代表了扇区号偏移,一个扇区=512Bytes,这里给出64M Bytes. 此sd卡的 1个cluster = 2048 个 sector = 2048*512 Bytes = 1M Bytes,)
n 新建分区 2048*64-->末尾
w 保存退出

sudo mkfs.vfat -F 32 /dev/sdb1
sudo mkfs.ext4 /dev/sdb2
sudo apt-get install ntfsprogs
sudo mkfs.ntfs /dev/sdb3

sudo mount /dev/sdb1 a
sudo mount /dev/sdb2 b

 
挂载某个文件系统的block设备到linux文件系统

mount -t vfstype -o options device dir
-t iso9660
-t msdos
-t vfat  (fat32)
-t ntfs   (ntfs)
-t smbfs  (windows/linux共享文件系统)
-t nfs    (linux网络文件系统)
-t ext3
 
-o loop 将一个文件作为硬盘分区挂载(loop 设备是一种伪设备(pseudo-device),或仿真设备,能使我们像访问块设备一样访问一个文件。一个 loop 设备必须要和一个文件进行连接,使用 losetup 完成,losetup /dev/loop0 vexpress.img,losetup -d /dev/loop0 则删除此连接)
-o ro    以只读方式挂载
-o rw   以读写方式挂载
-o iocharset  指定访问文件系统所用的字符集

eg.

mount -o remount,rw /system    
mount -o loop a.img /mnt/floopy
mount /dev/sda4 /mnt
umount /media/root/xxx


case1 当vmware硬盘空间不够的时候,可以新增磁盘(默认设置即可),
进入系统

1、fdisk -l      查看新增的磁盘设备,将其格式化,
2、重新挂载到根文件系统某个目录下(比如/root/code_zx/tvos_zxsta2_1/)。
3、修改/etc/fstab,在末尾加一句:
/dev/sdb  /root/code_zx ext4 defaults 0 1        (将硬盘 /dev/sdb 自动mount到 /root/code_zx。如果还有/dev/sdc设备,也这么加,0 1 不用更改)
这样这些外扩的block设备启动后就会被linux自动挂载到指定的地方了
4、df -h 查看系统已挂载的block设备


 
case2:

dd if=/dev/zero of=vexpress.img bs=512 count=$((2*1024*100))      创建一个100M大小的映像文件作为虚拟磁盘
#fdisk vexpress.img        给这个映像文件创建分区(使用n命令创建分区,各种下一步就行,q退出)(不创建分区貌似也可以啊)
losetup /dev/loop0 vexpress.img  连接 loop 设备 和 映像文件文件,后面我们便可以像访问块设备一样访问 vexpress.img 文件
mkfs.ext3 /dev/loop0   格式化 /dev/loop0 为 ext3(此时在ubuntu上理论上会自动挂载了,/media/root/xxxx,那其实就没必要再mount了)
mount -o loop vexpress.img abc/    将vexpress.img挂载到abc目录上(mount -o loop 挂载的img文件应该包含一个文件系统才能成功)

硬盘拷贝后,可能有expand需要,可以使用gparted,sudo apt-get install gparted,然后打开图形界面即可,很好用。完成格式化后,将多出来的/dev/sdx挂载进来即可

如何分析image文件?

嵌入式烧写到sd卡的image文件通常包含boot和rootfs,可以通过fdisk abc.img查看分区信息

Command (m for help): p

Disk noogie.img: 79 MB, 79691776 bytes
128 heads, 32 sectors/track, 38 cylinders, total 155648 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

     Device Boot      Start         End      Blocks   Id  System
abc.img1   *          32      155647       77808    c  W95 FAT32 (LBA)

计算offset=32*512=16384Bytes,然后就可以将其mount到本地 

sudo mount -o loop,offset=16384 abc.img /mnt/

若是查看没有分区的块,只能使用 xxd 了

(16条消息) linux系统中如何打开察看img文件内容_flfihpv259的博客-CSDN博客_linux查看img文件

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值