树莓派那里有个例子
1. 查看磁盘状态
df -h
(这个命令显示系统已经挂载的各硬盘及他们所在的挂载点)fdisk -l
(这个命令可以将还没挂载的block也列出来,fdisk /dev/sdb 就可以针对u盘等设备格式化或分区了,常用的有p显示分区,d删除分区,n新建分区)
2. 给盘分区并格式化
若盘已经挂载则 sudo umount /dev/sdb
(若是有多个分区就挨个umount /dev/sdb1 , umount /dev/sdb2
)
2.1. 分区(一个磁盘应该至少有一个分区,不然可能会出问题)
1
2
3
4
5
6sudo 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 保存退出2.2. 创建分区完毕后,/dev/sdb代表整个物理存储介质,/dev/sdb1则代表了该介质上的一个小分区。linux能自动将某个设备挂载起来前提是该设备上已经有文件系统了,因此我们下面开始格式化)
1
2
3
4sudo mkfs.vfat -F 32 /dev/sdb1
sudo mkfs.ext4 /dev/sdb2
sudo apt-get install ntfsprogs
sudo mkfs.ntfs /dev/sdb3完成,umount
3. 挂载到本地
1 | sudo mount /dev/sdb1 a |
挂载某个文件系统的block设备到linux文件系统1
2
3
4
5
6
7
8mount -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.1
2
3
4mount -o remount,rw /system
mount -o loop a.img /mnt/floopy
mount /dev/sda4 /mnt
umount /media/root/xxx
例子1就是当vmware硬盘空间不够的时候,可以新增磁盘(默认设置即可)
1 | 进入系统 |
例子2:
1 | dd if=/dev/zero of=vexpress.img bs=512 count=$((2*1024*100)) 创建一个100M大小的映像文件作为虚拟磁盘 |