Linux系统下读取U盘信息


1. 插入u盘前读取当前Linux系统的分区:cat /proc/partitions,显示如下结果:

major minor  #blocks  name

   8     0    8388608 sda
   8     1     104391 sda1
   8     2    1020127 sda2
   8     3    7261380 sda3

      2.插入u盘后再次输入指令,显示如下:

major minor  #blocks  name

   8     0    8388608 sda
   8     1     104391 sda1
   8     2    1020127 sda2
   8     3    7261380 sda3
   8    16    3913728 sdb
   8    17    3913188 sdb1

其中sdb1就是新插入的u盘,前面的sda1-sda3是系统原有的(因为是虚拟机所以只有8个G),然后就是挂载了,经常出现可以挂载成功,但是进入u盘目录以后输入指令查看时假死机(无法退出控制台)的问题。一般解决方式如下:

以root身份修改/usr/share/hal/fdi/90defaultpolicy/sorage-policy.fdi文件,找到这一行:
<merge key="storage.policy.default.mount_option.exec" type="bool">true</merge>
在其下添加一行
<merge key="storage.policy.default.mount_option.iocharset=utf8" type="bool">true</merge>

存盘退出,在root用户下执行
# /sbin/service haldaemon restart
# /sbin/service messagebus restart
注销后重新登陆控制台进行挂载,指令如下:

mount -t vfat -o iocharset=utf8 /dev/sdb1 /mnt/u

然后就可以到/mnt/u下读取相应的信息了。如果是ntfs格式的,则用如下指令:

mount -t ntfs -o iocharset=utf8 /dev/sdb1 /mnt/u (我没用过,一般内核不支持)

控制台crt的apperance里设置成utf-8则会解决中文乱码的问题。

相关内容