安卓SATA自动挂载实例

平台:IMX6

OS:安卓4.2和安卓4.4


查看挂载log信息: logcat -s Vold MountService 
        手动挂载: mount -t ntfs /dev/block...  /mnt/...
                         mount -t v /dev/block...  /mnt/...

4.2系统:
+++ b/imx6/etc/init.rc
     mkdir /mnt/udisk 0000 system system
     symlink /mnt/udisk /udisk

+    mkdir /mnt/sata 0000 system system
+    symlink /mnt/sata /sata
+
     mkdir /system
     mkdir /data 0771 system system
     mkdir /cache 0770 system cache

+++ b/qiyang_6dq/overlay/frameworks/base/core/res/res/xml/storage_list.xml
@@ -45,5 +45,9 @@
              android:storageDescription="@string/storage_usb"
              android:primary="false"
              android:removable="true" />
+   <storage android:mountPoint="/mnt/sata"
+             android:storageDescription="@string/storage_sata"
+             android:primary="false"
+             android:removable="true" />
 </StorageList>
+++ b/qiyang_6dq/vold.fstab
@@ -27,6 +27,7 @@
 dev_mount udisk /mnt/udisk auto /devices/platform/fsl-ehci
 #mount SDHC4 SD card /mnt/sdcard as primary storage forMX6Q SABER_LITE RevC
 dev_mount extsd /mnt/extsd auto /devices/platform/sdhci-esdhc-imx.2/mmc_host/mmc1
+dev_mount sata /mnt/sata auto /devices/platform/ahci.0
 #mount SDHC3 TF card to /mnt/extsd as external storage forMX6Q SABER_LITE RevC
vi frameworks/base/core/res/res/values/strings.xml
<string name="storage_sata">SATA</string>

4.4.2:
    diff --git a/imx6/etc/init.rc b/imx6/etc/init.rc
index a4a73dc..b27eb22 100755
--- a/imx6/etc/init.rc
+++ b/imx6/etc/init.rc
@@ -78,6 +78,8 @@ loglevel 3
     symlink /mnt/media_rw/extsd /storage/extsd
     mkdir /mnt/media_rw/udisk 0755 system systems
     symlink /mnt/media_rw/udisk /storage/udisk
+    mkdir /mnt/media_rw/sata 0755 system system
+    symlink /mnt/media_rw/sata /storage/sata   
/qiyang_6dq/overlay/frameworks/base/core/res/res/xml/storage_list.xml
index 3639bdc..dc18f6d 100644
--- a/qiyang_6dq/overlay/frameworks/base/core/res/res/xml/storage_list.xml
+++ b/qiyang_6dq/overlay/frameworks/base/core/res/res/xml/storage_list.xml
@@ -45,5 +45,9 @@
              android:storageDescription="@string/storage_usb"
              android:primary="false"
              android:removable="true" />
+   <storage android:mountPoint="/storage/sata"         
+             android:storageDescription="@string/storage_sata"
+             android:primary="false"                       
+             android:removable="true" />           
 </StorageList>
 // 挂载的点是在storage下。

在调试4.4系统的时候一直挂载不上,解决如下:

挂载ntfs的硬盘,只有获取root权限之后才可以手动挂载。
logcat -s Vold MountService
log部分:
/Vold ( 2478): /dev/block/vold/8:1 contain a NTFS filesystem
W/Vold ( 2478): The SD card is world-writable because the 'persist.sampling_profiler' system property is set to '1'.
D/Vold ( 2478): Mounting ntfs with options:utf8,uid=1023,gid=1023,fmask=0,dmask=0,shortname=mixed,nodev,nosuid,dirsync,noexec
E/Vold ( 2478): Unable to create LOST.DIR (Read-only file system)
W/Vold ( 2478): blkid failed to identify /dev/block/vold/8:1

通过log信息可知节点dev/block/vold/8:1不是对应硬盘的信息,对比4.2的安卓系统。是dev/block/vold/8:2。
也可用命令查看:

到vold目录下,通过doMount关键字找到相应操作挂载的地方,system/vold/Volume.cpp 的464行。
添加当获取到的主次设备号为8;1是,把他设置为8:2.
if (n > 1){
if ((MINOR(deviceNodes[i]) == 1) && (MAJOR(deviceNodes[i]) == 8)) {

sprintf(devicePath, "/dev/block/vold/%d:%d", MAJOR(deviceNodes[i]),
2);
}
}else {
sprintf(devicePath, "/dev/block/vold/%d:%d", MAJOR(deviceNodes[i]),
MINOR(deviceNodes[i]));
}




要在Ubuntu上实现SATA自动挂载,可以按照以下步骤进行操作。 首先,创建一个预备目录,用于挂载磁盘。可以通过使用命令行或图形界面来创建目录。例如,使用命令行可以输入以下命令来创建目录: ``` mkdir /home/xxxx/mount/xxxx_test ``` 然后,需要确定磁盘的UUID。可以使用以下命令来查看磁盘的UUID: ``` sudo blkid ``` 找到对应的磁盘,复制其UUID。 接下来,编辑/etc/fstab文件,将磁盘的信息添加到该文件中。可以使用以下命令来编辑/etc/fstab文件: ``` sudo nano /etc/fstab ``` 在文件末尾添加以下行,将磁盘的UUID、挂载路径和其他选项填入: ``` UUID=22AA4C3AAA4C0CAB /home/xxxx/mount/xxxx_test ntfs defaults,utf8,uid=1000,gid=1000 0 0 ``` 保存并关闭/etc/fstab文件。 最后,重新启动系统,磁盘将会自动挂载到指定的目录。 通过以上步骤,你就可以实现Ubuntu SATA自动挂载。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Ubuntu实现开机自动挂载磁盘](https://blog.csdn.net/weixin_44503976/article/details/127331331)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [ubuntu挂载硬盘-linux系统操作技巧](https://download.csdn.net/download/wasnot8101/86542760)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kevin@1024

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值