USB/SD Card
<h4>1、系统插入 USB 设备后,内核会有如下提示:</h4>
<p>从<code>dmesg</code>命令输出信息可以显示插入的 USB 设备名:</p>
<pre><code class="language-shell">30.940132] usb 1-1.1: new high-speed USB device number 3 using ehci-platform
31.039777] usb 1-1.1: New USB device found, idVendor=090c, idProduct=1000, bcdDevice=11.00
31.039935] usb 1-1.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
31.039971] usb 1-1.1: Product: Flash Drive 31.040001 usb 1-1.1: Manufacturer: Samsung
31.040029] usb 1-1.1: SerialNumber: 0360223090003758
31.042141] usb-storage 1-1.1:1.0: USB Mass Storage device detected
31.044394] scsi host0: usb-storage 1-1.1:1.0
32.785388] scsi 0:0:0:0: Direct-Access Samsung Flash Drive 1100 PQ: 0 ANSI: 6
32.791455] sd 0:0:0:0: [sda] 125313283 512-byte logical blocks: (64.2 GB/59.8 GiB)
32.793077] sd 0:0:0:0: sd 0:0:0:0: [sda] Write Protect is off
32.793165] 32.794912] [sda] Mode Sense: 43 00 00 00
32.794912] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn&#039;t support DPO or FUA
32.829602] sda: sda1 32.835231 sd 0:0:0:0: [sda] Attached SCSI removable disk</code></pre>
<p>从上图可以看出,插入的 USB 设备为<code>sda1</code>。</p>
<h4>2、使用 lsblk 命令查找 USB 设备名:</h4>
<p><code>lsblk</code>命令用于列出所有可用块设备的信息,而且还能显示他们之间的依赖关系。如下所示:</p>
<pre><code class="language-shell">root@rk3568:/# lsblk --插入USB设备前的分区情况
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
mmcblk0 179:0 0 29.1G 0 disk
|-mmcblk0p1 179:1 0 4M 0 part
|-mmcblk0p2 179:2 0 4M 0 part
|-mmcblk0p3 179:3 0 4M 0 part
|-mmcblk0p4 179:4 0 64M 0 part
|-mmcblk0p5 179:5 0 64M 0 part
|-mmcblk0p6 179:6 0 32M 0 part
`-mmcblk0p7 179:7 0 28.9G 0 part /
mmcblk0boot0 179:32 0 4M 1 disk
mmcblk0boot1 179:64 0 4M 1 disk
root@rk3568:/#
root@rk3568:/#
root@rk3568:/# lsblk --插入USB设备后的分区情况
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 1 59.8G 0 disk
`-sda1 8:1 1 59.8G 0 part
mmcblk0 179:0 0 29.1G 0 disk
|-mmcblk0p1 179:1 0 4M 0 part
|-mmcblk0p2 179:2 0 4M 0 part
|-mmcblk0p3 179:3 0 4M 0 part
|-mmcblk0p4 179:4 0 64M 0 part
|-mmcblk0p5 179:5 0 64M 0 part
|-mmcblk0p6 179:6 0 32M 0 part
`-mmcblk0p7 179:7 0 28.9G 0 part /
mmcblk0boot0 179:32 0 4M 1 disk
mmcblk0boot1 179:64 0 4M 1 disk </code></pre>
<h4>3、查看USB设备内的文件:</h4>
<p>从上面的信息可以看出,虽然 USB 设备已插入到主板,但是挂载点<code>mountpoint</code> 是空的,就是还没有完成挂载,必须先挂载后才能使用。</p>
<pre><code class="language-shell">root@rk3568:/# mkdir -p /mnt/USB1 --创建挂载U盘的文件夹
root@rk3568:/# mount /dev/sda1 /mnt/USB1 --挂载U盘
root@rk3568:/# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/root 29G 3.4G 24G 13% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 782M 1.4M 780M 1% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 391M 44K 391M 1% /run/user/0
/dev/sda1 15G 153M 15G 2% /mnt/USB1</code></pre>
<h3>SD card 的使用</h3>
<h4>1、查看SD卡信息:</h4>
<pre><code class="language-shell">fdisk -l</code></pre>
<pre><code class="language-shell">Device Boot Start End Sectors Size Id Type
/dev/mmcblk1p1 245760 61065215 60819456 29G 7 HPFS/NTFS/exFAT</code></pre>
<p>如图,板子上装了一个 32G 的 SD卡,这里可以看到设备的名称是 <code>/dev/mmcblk1p1</code>。</p>
<h4>2、挂载 SD卡:</h4>
<p>挂载与卸载命令:</p>
<pre><code class="language-shell">mount &lt;设备名称&gt; &lt;挂载路径&gt; --挂载命令
umount &lt;挂载路径&gt; --卸载命令</code></pre>
<p>挂载当前 SD卡设备节点:</p>
<pre><code class="language-shell">mount /dev/mmcblk1p1 /mnt/sdcard</code></pre>
<p>查看系统当前文件系统磁盘使用情况:</p>
<pre><code class="language-shell">root@rk3568:/# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/root 29G 3.4G 24G 13% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 782M 1.4M 780M 1% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 391M 44K 391M 1% /run/user/0
/dev/sda1 15G 153M 15G 2% /media/sda1
/dev/mmcblk1p1 30G 3.8G 26G 13% /mnt/sdcard</code></pre>
<h4>3、卸载 SD卡</h4>
<pre><code class="language-shell">umount /mnt/sdcard</code></pre>
<p>然后再次查看系统上的文件系统磁盘使用情况:</p>
<pre><code class="language-shell">root@rk3568:/# umount /mnt/sdcard
root@rk3568:/# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/root 29G 3.4G 24G 13% /
devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 782M 1.4M 780M 1% /run
tmpfs 5.0M 4.0K 5.0M 1% /run/lock
tmpfs 391M 44K 391M 1% /run/user/0
/dev/sda1 15G 153M 15G 2% /media/sda1</code></pre>
<p>此时,SD卡已经被卸载掉,故不再显示。</p>