嵌入式Linux自动挂载U盘

合集下载

linux挂载优盘并显示中文

linux挂载优盘并显示中文

linux挂载优盘并显示中文
载优盘。

为设备建立一个空目录,如/mnt/usb。

然后将设备挂载到该目录下,就可以像使用
本地硬盘一样使用U盘了。

使用如下命令:
# mkdir /mnt/usb
# mount –t vfat /dev/sda1 /mnt/usb
在这里用-t vfat指定优盘使用分区类型是Windows的分区格式。

# cd
/mnt/usb
# ls
优盘使用后,一定要卸载,如果直接拔出,可能回损坏优盘上的数据。

卸载前需要离开/mnt/usb目录,并且确定没有程序在使用这个目录,否则会卸载失败。

离开/mnt/usb目录的命令:
# umount /mnt/usb
如果每次使用优盘都输入一串命令,不够方便,可以使用下面的方法:在系统文件分区文件/etc/fstab中,增加如下命令:
/dev/sdb1 /mnt/usb vfat defaults,codepage=936,isocharser=cp936 0
以后使用优盘就方便多了,可以直接在Shell提示符中挂载,输入命令: # mount /mnt/usb
或者使用硬盘管理工具,挂载优盘。

小技巧:在优盘中使用中文命名的文件,如果按前面的命令,则中文显示会不正确。

为了能
够正常地显示中文,需要在命令后面加几个参数。

完整的命令如下: # mount –t vfat –O isocharset=gb2312,umask=0,codepage=936 /dev/sda1 /mnt/usb。

Linux系统写入U盘方法教程

Linux系统写入U盘方法教程

Linux系统写入U盘方法教程之前我们介绍过怎么把Windows系统放进U盘备份,那么对于Linux系统方法也一样吗?有一些地方不同的,需要注意,所以下面我们就来教大家如何在U盘中安装Linux系统,把Linux系统写入U盘。

操作步骤第一步:首先插入u盘到电脑主机usb接口处(建议插入到主机箱后置的usb接口),然后打开UltraISO软件,再打开选择需要写入u 盘的Ubuntu 10.04或者其他版本的Linux系统的iso镜像包3 第二步:点击“启动光盘”,然后鼠标移动选择到“写入硬盘映像”并点击鼠标左键弹出一个写入硬盘映像的窗口,值得注意的是:硬盘驱动器那里我们要看清楚,是我们刚才插入usb接口的那个u盘,也就是我们需要写入的u盘,千万别搞错了。

写入方式我们默认即可,然后点击“便捷启动”,选择到“写入新的驱动器引导区”,再鼠标右移选择到“Syslinux”项,点击鼠标!u启动温馨提示:“Syslinux”这一项选择很重要,网络上流传的很多关于此类的教程由于都忽略了这一步,导致最终制作失败。

点击“是(Y)”继续接下来会弹出一个“写入引导扇区成功”的提示窗口第三步:也就是继续上一步的操作,我们点击“写入”继续,意思是把整个iso镜像包写入到我们的u盘里面点击了“写入”按钮以后将会弹出一个确定窗口,其表达的意思是让您进一步确认是否将iso镜像包写入到该u盘里面,我们只要点击“是(Y)”按钮即可,如下图:现在开始写入Linux系统的iso镜像包到u盘在写入u盘的时候我们要注意的是:尽量不要去做其他操作,建议耐心等待其写入成功!OK,大功告成,u盘写入Ubuntu Linux系统就完成了,我们接下来可以做的就是利用这个制作好引导的u盘来安装Ubuntu系统了。

补充:系统常用维护技巧1,在“开始” 菜单中选择“控制面板” 选项,打开“控制面板” 窗口,单击“管理工具” 链接2,在打开的“管理工具” 窗口中双击“事件查看器” 图标3,接着会打开“事件查看器” 窗口4,在右侧窗格中的树状目录中选择需要查看的日志类型,如“事件查看器本地--Win日志--系统日志,在接着在中间的“系统” 列表中即查看到关于系统的事件日志5,双击日志名称,可以打开“事件属性” 对话框,切换到“常规” 选项卡,可以查看该日志的常规描述信息6,切换到“详细信息” 选项卡,可以查看该日志的详细信息7,打开“控制面板” 窗口,单击“操作中心” 链接,打开“操作中心” 窗口,展开“维护” 区域8,单击“查看可靠性历史记录” 链接,打开“可靠性监视程序” 主界面,如图所示,用户可以选择按天或者按周为时间单位来查看系统的稳定性曲线表,如果系统近日没出过什么状况,那么按周来查看会比较合适。

centos挂载u盘的方法

centos挂载u盘的方法
其中,`/dev/sdX`是U盘的设备名称,`/mnt/usb`是挂 载点。保存并关闭文件。
在文件中添加一行,格式如下:`/dev/sdX /mnt/usb auto defaults 0 0`
现在,每次插入U盘时,系统会自动将其挂载到指定目 录。
04
挂载后操作
查看U盘内容
01
打开终端
通过按下Ctrl+Alt+T组合键打开 终端。
插入U盘后,打开文件管理器 (如Nautilus)。
在文件管理器中,找到并点击" 计算机",然后右键点击"可移动
磁盘"。
选择"挂载",然后选择一个挂载 点(例如/mnt/usb)。
挂载成功后,可以在文件管理 器中访问U盘中的文件。
设置自动挂载
打开终端,使用以下命令编辑自动挂载的配置文件: `sudo nano /etc/fstab` NhomakorabeaVS
详细描述
首先,请确保U盘已正确插入计算机,并 在终端中使用`lsusb`命令检查设备是否被 正确识别。如果设备未被识别,可能需要 更新USB驱动程序。此外,确保您具有足 够的权限来挂载设备,如果没有,请使用 sudo命令。
无法复制文件到U盘
总结词
无法复制文件到U盘可能是由于文件系统不 兼容、U盘只读或写保护等原因。
介绍CentOS系统
CentOS是一种流行的Linux发行版, 它以稳定性和可靠性著称,广泛应用 于服务器和云计算环境。
CentOS系统具有强大的软件包管理 功能和丰富的软件源,可以方便地安 装和管理各种软件和工具。同时,它 还具有良好的安全性和稳定性,能够 满足企业级应用的需求。
02
U盘挂载前的准备工作

USB设备检测

USB设备检测

USB设备检测的一般过程USB设备检测也是通过/proc目录下的USB文件系统进行的。

为了使一个USB设备能够正常工作,必须要现在系统中插入USB桥接器模块。

在检测开始时,一般要先检测是否存在/proc/bus/usb目录,若不存在则尝试插入USB桥接模块。

现在一般的USB桥接器模块有两种类型,UHCI和OHCI。

在决定插入那一个桥接器模块时,可以察看/proc/pci文件来决定。

打开此文件,您若发现USB节为I/O at 0xHHHH格式(例如出现I/O at 0xe000 [0xe01f]),HHHH为16进制数,则桥接器类型为UHCI。

若是它为32 bit memory at 0xHH000000形式(例如出现32 bit memory at 0xee000000),HH为16进制数,则桥接器类型为OHCI。

但是若您的桥接器类型不满足上述任何一种情况,唯一的解决办法就是您尝试插入这两种模块,直到成功为止。

一般而言,UHCI 类型的桥接器它的插入模块是uhci或usb-uhci(由内核版本决定);而对于OHCI类型的桥接器它的插入模块是ohci或usb-ohci。

您在正确的插入了桥接器模块之后,这时/proc文件系统下就会出现USB设备目录,不过这时这个目录是空的,没有任何文件。

这时您就必须挂接usbdevfs文件系统,然后通过此文件系统检测连接的设备。

在成功挂接usb文件系统之后,就会生成文件/proc/bus/usb/devices,/proc/bus/usb/drivers和目录/proc/bus/usb/busNo。

挂接usbdevfs文件您可以通过如下操作实现:mount -t usbdevfs none /proc/bus/usb或在/etc/fstab上加入none /proc/bus/usb usbdevfs defaults 0 0然后通过/proc/bus/usb/devices文件的内容,您就可以获得连接的设备信息,包括设备标识和制造商标是等信息。

linux 系统mount挂载的用法 -回复

linux 系统mount挂载的用法 -回复

linux 系统mount挂载的用法-回复Linux 系统中的mount 挂载指令是非常常用和强大的工具,用于将存储设备或网络资源与操作系统文件系统绑定在一起。

挂载操作让用户能够访问这些设备上的文件和目录,并在需要时可以进行读写操作。

本文将详细介绍Linux 系统中mount 挂载的用法,以帮助读者全面了解并正确使用这个重要的指令。

第1 步- 确定挂载点在进行挂载之前,需要先选择一个挂载点。

挂载点是一个现有的目录,用于将要挂载的设备或资源添加到文件系统中。

通常,挂载点被放置在/mnt 或/media 目录下,但实际上可以将其放置在文件系统的任何位置。

例如,我们可以使用以下命令在/mnt 目录下创建一个名为usb 的挂载点:sudo mkdir /mnt/usb第2 步- 确定挂载设备或资源在挂载之前,需要确定要挂载的设备或资源的路径。

这可以是一个硬盘分区、U 盘、光驱、网络共享、NFS、FTP 或者SSH 文件系统等等。

例如,如果要挂载一个分区,可以使用以下命令查看系统中的所有分区及其标识符:sudo fdisk -l根据输出结果,可以找到要挂载的设备和其标识符(例如/dev/sdb1)。

第3 步- 进行挂载有了挂载点和设备或资源的路径后,就可以通过mount 指令将其挂载到指定的挂载点上了。

挂载指令的基本语法如下:sudo mount <设备或资源路径> <挂载点路径>例如,要将/dev/sdb1 分区挂载到/mnt/usb 挂载点上,可以使用以下命令:sudo mount /dev/sdb1 /mnt/usb如需写入权限,可以通过添加-o 选项来指定:sudo mount -o rw /dev/sdb1 /mnt/usb此外,还可以添加其他选项,例如指定文件系统类型、只读挂载、禁止执行等,具体可以使用man mount 命令查看mount 指令的手册。

第4 步- 查看挂载情况完成挂载后,可以使用以下命令查看当前系统中的挂载情况:mount该命令将列出所有已挂载的设备或资源以及其挂载点的详细信息。

用Shell编写一个程序实现USB设备自动挂载

用Shell编写一个程序实现USB设备自动挂载

用Shell编写一个程序实现USB设备自动挂载。

程序功能如下:1.运算程序时,提示输入“y”或“n”确定是不是挂载USB设备。

2.如果输入“y”,则挂载该USB设备。

3.用户输入“y”或“n”,确定是不是复制文本。

4.如果输入“y”,则显示文件列表,然后提示用户是否复制文件。

5.程序根据用户输入的文件名复制相应文件,然后提示是否将计算机里的文件复制到USB 中。

6.完成文件复制后,提示用户是否卸载USB设备。

vi usb.sh#!/bin/bashecho “Welcom e to use AUTOUSB”echo “do you want to load usb (y or n)”read ANSW】if [ $ANSWER=”y” –o $ANSWER=”Y”then mount –t vfat /ev/sda1 /mnt/usbecho “do you want to copy files to /root(y or n)”read ANSWERwhile [ $ANSWER=”Y” –o $ANSWER=”y”]dols –a /mnt/usbecho “Type the filename you want to copy”read FILEcp /mnt/usb/”$FILE” /rootif [ $? –eq 0 ];thenecho “copy file finished”elseecho “copy error”fiecho “any other files (y/n)?”read ANSWERdone。

Udev实现U盘或SD卡的自动挂载

Udev实现U盘或SD卡的自动挂载

Udev实现U盘或SD卡的自动挂载linux传统上使用静态设备创建的方法,在dev下创建了大量的节点,而不管这些节点相应的硬件设备是否存在。

采用udev的方法,系统检测到设备才会去创建这些设备对应的节点。

这里我们简单的说一下udev的工作原理:udev是依赖于sysfs的,当系统中添加一个新的设备后,内核检测到后就会产生一个hotplug event并查找/proc/sys/kernel/hotplug去找出管理设备连接的用户空间程序,若udev已经启动,内核会通知udev去检测sysfs中关于这个新设备的信息并创建设备节点。

如/dev/vcs,在/sys/class/tty/vcs/dev存放的是”7:0”,既/dev/vcs的主次设备号。

并且udev还会根据/etc/udev/rules.d中的规则文件实现一些相应的功能。

下面我们介绍一下如何实现设备节点的自动创建及u盘或sd卡的自动挂载。

一、.udev的移植因为文件系统中默认是没有对udev进行支持的,所以我们移植一个udev。

1.下载udev源码udev-080.tar.bz2,并解压网址:/pub/linux/utils/kernel/hotplug</P< p>2.交叉编译。

修改makefile,具体修改如下:cross = arm-softfloat-linux-gnu-保存退出。

执行命令:make 进行编译,然后执行arm-softfloat-linux-gnu-strip udev udevd udevstart udevinfo udevtest。

并拷贝这些文件到rootfs/bin目录下面3.添加udev的支持下面三种方法功能相同(1)并修改etc/init.d/rcs脚本,然后添加如下命令:/bin/mount -t sysfs sysfs /sys(首先创建这个目录)/bin/mount -t tmpfs tmpfs /dev/bin/udevd --daemon/bin/udevstart(2)如果linuxrc是二进制文件的话rm /linuxrcvi /linuxrc添加如下内容/bin/mount -t sysfs sysfs /sys(首先创建这个目录)/bin/mount -t tmpfs tmpfs /dev/bin/udevd --daemon/bin/udevstartexec /sbin/init(3)修改/etc/fstab为#device mount-point type options dump fsck orderproc /proc proc defaults 0 0tmpfs /tmp tmpfs defaults 0 0sysfs /sys sysfs defaults 0 0tmpfs /dev tmpfs defaults 0 0修改/etc/init.d/rcs,添加如下内容/bin/udevd --daemon/bin/udevstart有这上面写些,重新启动系统后,我们的文件系统就有了自动创建节点的功能了。

linux系统下如何挂载NTFS移动硬盘

linux系统下如何挂载NTFS移动硬盘

linux系统下如何挂载NTFS移动硬盘前⾔数据迁移是我们经常会遇到的,有时候做⼤数据量迁移时,为了快速迁移⼤数据,有可能在Linux服务器上临时挂载NTFS格式的移动硬盘,⼀般情况下,Linux是识别不了NTFS格式移动硬盘的(需要重编译Linux核⼼才能,加挂NTFS分区),这时候为了能让Linux服务器能够识别NTFS的移动硬盘,就必须安装ntfs-3g(Third Generation Read/Write NTFS Driver)的包。

⼀、NTFS-3G介绍NTFS-3G是⼀个开源项⽬,NTFS-3G是为Linux, Android, Mac OS X, FreeBSD, NetBSD, OpenSolaris, QNX, Haiku,和其他操作系统提供的⼀个稳定的,功能齐全,读写NTFS的驱动程序的。

它提供了安全处理Windows XP,Windows Server 2003,Windows 2000,Windows Vista,Windows Server 2008和Windows 7操作系统下的NTFS⽂件系统。

NTFS-3g是⼀个开源软件,它⽀持在Linux下⾯读写NTFS格式的分区。

它⾮常的快速,同时也很安全。

它⽀持Windows 2000、XP、2003和Vista,并且⽀持所有的符合POSIX标准的磁盘操作。

ntfs-3g的⽬的是为了持续的发展,各硬件平台和操作系统的⽤户需要可靠的互通与⽀持ntfs的驱动,ntfs-3g可以提供可信任的、功能丰富的⾼性能解决⽅案。

经过了12年多的发展,ntfs-3g已经逐渐稳定;资料介绍⼆、安装与挂载步骤⼀:解压安装NTFS-3G。

# tar -xvzf ntfs-3g_ntfsprogs-2012.1.15.tgz# cd ntfs-3g_ntfsprogs-2012.1.15# ./configure# make# make install之后系统会提⽰安装成功,下⾯就可以⽤ntfs-3g来实现对NTFS分区的读写了步骤⼆:配置挂载NTFS格式的移动硬盘1. ⾸先得到NTFS分区的信息# sudo fdisk -l | grep NTFS[root@DB-Server klb]# sudo fdisk -l | grep NTFS/dev/sdc1 * 1 244 1955776+ 7 HPFS/NTFS2. 设置挂载点,⽤如下命令实现挂载# mount -t ntfs-3g例如得到的NTFS分区信息为/dev/sdc1,挂载点设置在/mnt/usb下,可以⽤# mount -t ntfs-3g /dev/sdc1 /mnt/usb 或者直接⽤# ntfs-3g ntfs-3g /dev/sdc1 /mnt/usb3. 如果想实现开机⾃动挂载,可以在/etc/fstab⾥⾯添加如下格式语句ntfs-3g silent,umask=0,locale=zh_CN.utf8 0 0这样可以实现NTFS分区⾥中⽂⽂件名的显⽰。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

在ARM嵌入式Linux下,要让U盘自动挂载,可以用到mdev方式实现(mdev是busybox 中的一个udev管理程序的一个精简版,它可以实现设备节点的自动创建和设备的自动挂载),下面是实现的步骤:
1、确认Busybox做的根文件系统如下选项有选中:
Linux System Utilities --->
[*] mdev
[*] Support /etc/mdev.conf
[*] Support command execution at device addition/removal
2、由于是利用到Linux内核的hotplug功能,要确定CONFIG_HOTPLUG=y。

3、修改根文件系统里面的etc/init.d/rcS文件,添加如下内容:
mount -t tmpfs mdev /dev
mount -t sysfs sysfs /sys
mkdir /dev/pts
mount -t devpts devpts /dev/pts
# mdev for /dev
echo /sbin/mdev > /proc/sys/kernel/hotplug
mdev -s
echo "***************Starting mdev.........[OK]"
4、添加对热插拔事件的相应,支持U盘自动挂载:
修改根文件系统中的etc/mdev.conf文件,内容如下:
sd[a-z][0-9] 0:0 666 @/etc/mdev/udisk_insert
sd[a-z] 0:0 666 $/etc/mdev/udisk_remove
注:@表示是在插入(创建设备结点)后执行后面的脚本,$表示在拔出(删除设备结点)前执行后面的脚本。

5、添加对应的脚本文件:
根文件系统中的etc/mdev/udisk_insert文件内容:
#!/bin/sh
if [ -d /sys/block/*/$MDEV ] ; then
mkdir -p /media/$MDEV
mount /dev/$MDEV /media/$MDEV -t vfat -o utf8=1
fi
根文件系统中的etc/mdev/udisk_remove文件内容:
#!/bin/sh
umount -l /media/$MDEV
rm -rf /media/$MDEV
至此,就可以实现自动的插拔挂载。

1)确保内核支持热插拔
# cd linux-2.6.30.4# vi .config
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_ALL is not set
# CONFIG_KALLSYMS_EXTRA_PASS is not set
# CONFIG_STRIP_ASM_SYMS is not set
CONFIG_HOTPLUG=y //确保这项为y
CONFIG_PRINTK=y
CONFIG_NET=y //确保这项也为y
确保以上两项都选上,不然/proc/sys/kernel/目录不会出现hotplug文件!
2)确保busybox支持mdev
mdev是busybox中udev设备文件系统的精简版
# make menuconfig
确保以下几项被选中:
Linux System Utilities --->
mdev
Support /etc/mdev.conf
Support subdirs/symlinks
Support regular expressions substitutions when renaming dev
Support command execution at device addition/removal
Support loading of firmwares
3)根文件系统
etc/fatab文件的内容为:
proc /proc proc defaults 0 0
sysfs /sys sysfs defaults 0 0
tmpfs /var tmpfs defaults 0 0
tmpfs /tmp tmpfs defaults 0 0
tmpfs /dev tmpfs defaults 0 0
etc/init.d/rcS添加如下的内容:mount -a
mkdir /dev/pts
mount -t devpts devpts /dev/pts
echo /sbin/mdev > /proc/sys/kernel/hotplug
mdev -s
4)解析
执行mdev -s:
以"-s" 为参数调用位于/sbin 目录下的mdev(其实mdev是个软链接,其作用是传递参数给/bin 目录下的busybox 程序并调用它),
mdev 扫描/sys/class 和/sys/block 目录中所有的类设备目录,如果在类设备目录中含有名为"dev" 的文件,且文件中包含的是设备号,则mdev 就利用这些信息为这个设备在/dev 目录下创建设备节点文件。

一般只在启动时才执行一次"mdev -s" 。

热插拔事件:
由于启动时执行了命令:echo /sbin/mdev > /proc/sys/kernel/hotplug ,
那么当有热插拔事件产生时,内核就会调用位于/sbin 目录下的mdev。

这时mdev 通过环境变量中的ACTION 和DEVPA TH,来确定此次热插拔事件的动作以及影响了/sys 中的那一个类设备目录。

接着会看看这个类设备目录中是否有名为"dev" 的文件,如果有就利用这些信息为这个设备在/dev 目录下创建或删除设备节点文件并执行相应的动作ACTION 。

5)添加对热插拔事件的响应,实现U盘和SD卡的自动挂载与缷载
# vi /etc/mdev.conf
内容为:
sd[a-z][0-9] 0:0 666 @ /etc/hotplug/usb/udisk_insert
sd[a-z] 0:0 666 $ /etc/hotplug/usb/udisk_remove
mmcblk[0-9]p[0-9] 0:0 666 @ /etc/hotplug/sd/sd_insert
mmcblk[0-9] 0:0 666 $ /etc/hotplug/sd/sd_remove
# vi /etc/hotplug/usb/udisk_insert
内容为:
#!/bin/sh
mkdir -p /media/udisk
mount /dev/sda /media/udisk
# vi /etc/hotplug/usb/udisk_remove
内容为:
#!/bin/sh
umount /media/udisk
为以上两个脚本加上可执行权限:
# chmod +x /etc/hotplug/usb/udisk_insert
# chmod +x /etc/hotplug/usb/udisk_remove
以下是转贴,仅供参考我的项目中,主要是参考了友善之臂官网根文件系统中的/etc/mdev.conf和/bin/hotplug.sh。

对于有些U盘和SD卡,mini2440开发板自带的Linux系统不能有效的自动挂载在文件系统里面,这是因为mini2440的/etc/mdev.conf 和/bin/hotplug.sh这两个文件写的不太完善,我经过测试,发现其中的内容需要改进,在/etc/mdev.conf文件中,只需将以下内容写至末尾即可:
mmcblk[0-9] 0:0 0666 =sdcard * /bin/hotplug.sh
sd[a-z][0-9] 0:0 0666 =udisk * /bin/hotplug.sh
在/bin/hotplug.sh文件中则需要把以下内容加在“case $MDEV in” 的后面:
sd[a-z][1-9])
DEVNAME=udisk
MOUNTPOINT=/udisk
;;
mmcblk[0-9]p[0-9])
DEVNAME=sdcard
MOUNTPOINT=/sdcard
;;
mmcblk[0-9])
DEVNAME=sdcard
MOUNTPOINT=/sdcard
;;
这样再重启系统就可以自动挂载任何U盘或SD卡了!。

相关文档
最新文档