热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

USB热插拔与linux文件系统问题。

DSL路由带USB功能。(用户是LAN侧通过运行\\192.168.1.1访问)正常的热插拔没有问题但是进行如下操作就有问题了。1。用户首先通过LAN侧通过运行\\192.168.1
DSL路由带USB功能。(用户是LAN侧通过运行\\192.168.1.1访问)
正常的热插拔没有问题

但是进行如下操作就有问题了。
1。 用户首先通过LAN侧通过运行\\192.168.1.1,并输入用户名和密码访问。
2。 用户创建一个文本文档,并修改了一点。
3。用户保存文件,并关闭文件,但是没用关闭打开的USB上文件的文件夹
4。直接拔出U盘

出现问题:USB放到电脑上看刚写入的文件没用保存。


其它信息:如果拷贝较大的文件,则不会丢失文件。

怀疑:linux文件系统对USB的读写有个缓存

想要尝试:让linux系统不要对USB的数据进行缓存,立即写入USB。


困难:刚开始接触linux下的开发,不知道该怎么做。

希望各位支招。


谢谢!

5 个解决方案

#1


没有做过,不过觉得能不能在检测到用户关闭文件的时候,系统自动关闭USB上文件的文件夹,感觉比“让linux系统不要对USB的数据进行缓存”要简单一点吧,只是个外行建议呵呵。

#2


引用 1 楼 baiyicheng 的回复:
没有做过,不过觉得能不能在检测到用户关闭文件的时候,系统自动关闭USB上文件的文件夹,感觉比“让linux系统不要对USB的数据进行缓存”要简单一点吧,只是个外行建议呵呵。

谢谢你的回答,算是一个建议
不过,你觉得打开一个文件夹,然后打开文件,当你关闭文件的时候文件夹也关闭了,这样合理吗?
再者,如果客户文件都不关闭,只是保存一下文件而已呢?

#3


mount 选项 增加 sync dirsync 这样到选项

#4


引用 3 楼 yanghuajia 的回复:
mount 选项 增加 sync dirsync 这样到选项


谢谢,我找点资料看看,如果这样可以,那是最好的,就不用通过fflush等去搞了。

#5


to:yanghuajia
你太棒了,搞定!
非常感谢!

推荐阅读
  • 深入解析Linux中的slabtop命令
    本文将详细介绍如何在Linux系统中使用slabtop命令,帮助读者更好地理解和监控内核slab缓存的使用情况。通过本文的学习,您将掌握slabtop命令的基本用法及其高级功能。 ... [详细]
  • top 命令是一个强大的工具,可以实时动态地监控系统的整体运行状况。它整合了多种信息,提供了一个全面的系统性能和运行信息视图。通过 top 命令的交互界面,用户可以使用热键进行各种管理操作。 ... [详细]
  • 在开发板的启动选项中看到如下两行:7:LoadBootLoadercodethenwritetoFlashviaSerial.9:LoadBootLoadercodethenwri ... [详细]
  • 本文详细介绍了如何在Linux系统中使用nslookup命令查询DNS服务器地址,这对于Linux服务器的运维管理是非常重要的基础知识。 ... [详细]
  • HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送www方式的数据。HTTP协议采用了请求响应模型。客服端向服务器发送一 ... [详细]
  • 本文介绍了 Linux 系统中用于定期执行任务的 cron 服务及其配置方法。通过 crond 和 crontab 命令,用户可以轻松地安排系统和用户级别的周期性任务。 ... [详细]
  • 本文详细介绍了 MySQL InnoDB 存储引擎的事务机制,包括 ACID 特性、redo 日志、undo 日志以及 checkpoint 的作用和实现方式。 ... [详细]
  • 在Ubuntu 18.04上使用Nginx搭建RTMP流媒体服务器
    本文详细介绍了如何在Ubuntu 18.04上使用Nginx和nginx-rtmp-module模块搭建RTMP流媒体服务器,包括环境搭建、配置文件修改和推流拉流操作。适用于需要搭建流媒体服务器的技术人员。 ... [详细]
  • Linux网络配置文件详解及常见命令
    本文详细介绍了Linux系统中网络配置文件的作用及其配置方法,并提供了常用的网络管理命令,帮助用户更好地理解和管理网络配置。 ... [详细]
  • AcetoneISO:Ubuntu Linux下的全能虚拟光驱工具
    AcetoneISO 是一款功能强大的虚拟光驱软件,适用于 Linux 和 Mac 系统。它支持多种映像文件格式的挂载和转换,并提供丰富的文件管理功能。 ... [详细]
  • oracle 对硬件环境要求,Oracle 10G数据库软硬件环境的要求 ... [详细]
  • 电商高并发解决方案详解
    本文以京东为例,详细探讨了电商中常见的高并发解决方案,包括多级缓存和Nginx限流技术,旨在帮助读者更好地理解和应用这些技术。 ... [详细]
  • 环境变量是用于描述系统运行环境的一系列变量,如PATH指定了命令的搜索路径,SHELL指定了默认的Shell。本文介绍了如何加载和管理这些环境变量,以及普通变量与环境变量的区别。 ... [详细]
  • 本文详细介绍了在 React Native 开发过程中遇到的 'Could not connect to development server' 错误及其解决方法。该问题不仅影响开发效率,而且难以通过网络资源找到确切的解决方案。本文将提供详细的步骤,帮助开发者快速解决这一常见问题。 ... [详细]
  • 在 CentOS 6.7 系统维护中,常用的巡检命令包括:`uname -a` 用于查看内核、操作系统和 CPU 信息;`head -n 1 /etc/issue` 用于查看操作系统的版本;`cat /proc/cpuinfo` 用于获取详细的 CPU 信息;`hostname` 用于显示当前主机名;`ls` 命令则用于列出目录内容。这些命令可以帮助系统管理员快速了解系统的运行状态和配置信息,确保系统的稳定性和安全性。 ... [详细]
author-avatar
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有