Linux突然断电后文件丢失的问题

由于项目需要,在CentOS6.3系统中,使用我编写的shell脚本更新过软件,操作人员会习惯性立马断电重启。但重启后,软件都无法正常使用。甲方各种跟我要原因啊……真是把我逼惨了。

各种问度娘有没有啊,根本没有解决方法。

在虚拟机里做了几次脚本升级实验,根本没问题。后来,一想他们更新完那就立马给设备断电重启,就尝试一下给虚拟机也做断电实验试试。果然如此,经过排查断电重启后部分的软件大小都变成 0byte。所以启动的软件的自启动根部不能起作用。

真的是因为更新完软件立马断电的原因。

接下来就是着手解决这个立马断电的情况下也能保存文件的方法了。

下面的网上搜索到的资料:

在Linux/Unix系统中,在文件或数据处理过程中一般先放到内存缓冲区中,等到适当的时候再写入磁盘,以提高系统的运行效率。

解决办法:使用 sync 命令,强制将缓冲区的数据写入磁盘了。

将这条命令写进软件升级脚本的末尾两次,确保升级脚本复制完软件之后立马写入硬盘。至此,问题完整解决。

其实,这条命令在一些脚本都看见过。当时也觉得很好奇这条命令做什么用的,但是也没有深究。现在真是吃一堑长一智。幸好,甲方对我快速能解决掉这个问题没有什么意见。

时间: 2024-08-11 05:45:32

Linux突然断电后文件丢失的问题的相关文章

电脑强行关机后文件丢失怎么办

我们在长时间使用电脑时,总会有长时间没有反应的程序使电脑很难继续使用 下去,工作很多还没做完,时间紧张的人有时候就会选择强行关机.可是,有 很多时候强行关机不仅仅是伤害电脑,影响电脑寿命还会造成文件丢失,让人 烦恼不已.现在,小编告诉大家如何关闭长时间没有反应的程序,和如果强行 关机后文件丢失了该怎么办. 首先说一下如何关闭长时间没有反应的程序: 第一步.快速关闭没有响应的程序——在“开始→运行”框中输 入“Regedit”,打开“注册表编辑器”,在HKEY-CURRENT-USER下新建串值

Error: Linux下 mysql.sock文件丢失被删除解决方法

在默认情况下,Mysql安装以后会在/tmp目录下生成一个mysql.sock文件,如该文件丢失则Mysql将不能够正常启动,解决方法:使用mysqld_safe 启动即可解决: #basedir:mysql安装路径,默认在/usr/local/mysql下:datadir:数据库存放路径,默认在/usr/local/mysql/data #使用下面的命令启动后,会在/tmp/下生成一个mysql.sock文件#./ 即为:/usr/local/mysql/bin $ ./mysqld_safe

一键重装系统后文件丢失怎么办

在使用电脑时大家经常会遇到各种问题,比如电脑运行速度过慢.容易卡机.无用软件过多等等,这时大家通常会采取重装系统的方法来解决这诸多问题,而现在重装系统也非常的简单,网络上有很多一键重装系统工具,大家可以通过这些工具实现电脑的快速重装.但是,因为大家的误操作或不注意,可能会将重要文件也一并重装掉,那么,一键重装系统后重要文件丢失怎么办? 说到电脑文件恢复问题,我们就不可避免想到专业的数据恢复工具——迅捷数据恢复软件,这款软件功能强大,无论是windows XP.windows 2000.windo

电脑卡机后文件丢失怎么恢复

我想很多朋友在使用电脑时都会遇到电脑卡机的情况,有些倒霉的,将会引发各种问题,如文件丢失.分区丢失等等,而电脑卡机的原因可能有: (1)删除系统软件导致系统崩溃 (2)缺少对电脑的保护,CPU使用时间过长 (3)同时开太多窗口,进程运行太多 那么当遇到这些情况时大家如何应对呢? 1.保持良好的操作习惯,开启过多的浏览窗口会容易造成死机,当某某程序出现无响应时,一定要耐心等它响应. 2.不要轻易终止程序,否则会导致以后程序频频无响应,甚至出现定格.死机,当某些程序同时共用一个内存点时,容易出现“假

[网络课摘抄]8.1模拟控制文件丢失后的数据库恢复(完全恢复)

1.环境准备 1.1确认数据库版本 1.2确认数据库归档 1.3备份数据库文件 2模拟控制文件丢失后的数据库恢复(完全恢复). 2.1查看控制文件位置 2.2执行操作后删除控制文件 2.3启动数据库 启动数据库的时候发现数据库发生了报错,提示无法确认控制文件,检查告警文件,我们现在检查一下告警文件里的信息: 2.4重建控制文件 对于日志和数据文件都完整的情况下,如果只是控制文件丢失,那么重建控制文件是最好的一种解决方式,一般重建控制文件能够解决99%的问题,现在我们就重建控制文件. 2.5尝试打

ORACLE数据库文件丢失后的恢复测试

一.测试环境 数据库版本是11GR2,在做完一份完全备份之后,关机,做一份快照,每一次开机之后都执行数次alter system switch logfile以产生归档日志. 之后的测试都是基于这么一个完全备份来恢复. CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/backup/%F'; backup incremental level 0 format '/backup/%T_%f' database; 二.

linux中grub文件丢失或者错误解决方法

首先我们来看下以下别人博客的解决方案: 第一种情况: 是由于grub中的grub.conf文件损坏,开机后直接进入到了grub>命令行模式下.下面将图解此过程 这时可以使用help看一下grub可支持命令有那些,以便供修复时使用. 第二个使用的命令是find (hd0,0)/按tab如果能补全就表示系统在此分区上. 各个参数说明: 这时要注意,当你指定内核后,但未指定内核后面的参数(ro root=(此处未指定的话))将无法正常启动,报:请给root参数,一般情况下是系统是可以自动探测到,但这个

照片或特殊文件丢失后 采用winhex脚本进行数据恢复方法

照片或特殊文件丢失后 采用winhex脚本进行数据恢复方法 1:打开winhex,打开一个正常的图片文件如:JPG CR2 BMP;  视频类文件  MP4 WAV RMVB MTS MOV ; 办法文档文件如DOC XLS PPT MDB等.查看文件前8-16位字节,然后保存下来.这就是我们要找的文件头. 最好,使用同一个相机生成的照片,或同一电脑保存的文档进行取样. 2:确定文件头后,我们就可以用winhex打开要恢复的硬盘或分区,进行全盘扇区扫描式查找.查找到的文件一定要保存到另外一块硬盘

MyISAM表的.frm文件丢失后的恢复方法

MyISAM表的.frm文件丢失后的恢复方法: 1.创建实验用的MyISAM表t1,并插入数据: mysql> create table t1(id int) engine=myisam; Query OK, 0 rows affected (0.01 sec) mysql> insert into t1 values(1),(2),(3),(4),(5),(6),(7),(8); Query OK, 8 rows affected (0.00 sec) Records: 8  Duplica