• 虚拟机添加新磁盘挂载,导致以前的文件丢失解决办法


    刚开始创建虚拟机时,由于磁盘分配的空间比较小,所以很快就用完了:

    [root@host1 ~]# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sda3        18G   18G     0 100% /
    tmpfs           996M     0  996M   0% /dev/shm
    /dev/sda1       190M   40M  140M  23% /boot
    /dev/sr0        3.7G  3.7G     0 100% /mnt
    

    新加一块磁盘,然后分区,格式化,挂载目录/data,导致/data目录以前的文件丢失:

    [root@host1 ~]# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sda3        18G   18G     0 100% /
    tmpfs           996M     0  996M   0% /dev/shm
    /dev/sda1       190M   40M  140M  23% /boot
    /dev/sr0        3.7G  3.7G     0 100% /mnt
    /dev/sdb1        50G  6.8G   40G  15% /data
    

    使用umount命令取消挂载就可以了

    [root@host1 ~]# umount /dev/sdb1
    umount: /data: device is busy.
            (In some cases useful info about processes that use
             the device is found by lsof(8) or fuser(1))
    

    如果在/data目录下有程序正在使用时,直接取消挂载会提示device is busy的信息,这时找到/data目录下运行程序的PID,然后kill掉,再umount就行了

    [root@host1 ~]# fuser -m /data
    /data:                4567c
    [root@host1 ~]# ps aux | grep 4567
    root       4567  0.0  0.0 108604  2028 pts/1    Ss+  13:17   0:00 -bash
    root       8213  0.0  0.0 103320   864 pts/0    S+   15:00   0:00 grep 4567
    [root@host1 ~]# kill -9 4567
    [root@host1 ~]# fuser -m /data
    [root@host1 ~]# umount /dev/sdb1
    [root@host1 ~]# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sda3        18G   18G     0 100% /
    tmpfs           996M     0  996M   0% /dev/shm
    /dev/sda1       190M   40M  140M  23% /boot
    /dev/sr0        3.7G  3.7G     0 100% /mnt
    [root@host1 ~]# ls /data/ | wc -l
    22
    

    此时/data目录下的数据就都回来了,再在/etc/estab下重新写一个挂载磁盘的命令,磁盘数据也回来了:

    [root@host1 ~]# echo "/dev/sdb1 /test ext4 defaults  0 0" >> /etc/fstab 
    [root@host1 ~]# mount -a
    [root@host1 ~]# df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/sda3        18G   12G  5.1G  70% /
    tmpfs           996M     0  996M   0% /dev/shm
    /dev/sda1       190M   40M  140M  23% /boot
    /dev/sr0        3.7G  3.7G     0 100% /mnt
    /dev/sdb1        50G  6.8G   40G  15% /test
    

    PS

    或者使用:umount -l /data    强行解除挂载  

  • 相关阅读:
    [转载]支付宝钱包手势密码破解实战(root过的手机可直接绕过手势密码)
    记大神的一次反汇编/更新
    关于获取某月某日最后一天时Calendar的cal.getActualMaximum(Calendar.DAY_OF_MONTH)的吐槽
    第一章:shiro简介
    [转] JAVA分为三个体系,JavaSE,JavaEE,JavaME(J2ME)的区别以及各个版
    JVM中GC浅解:垃圾回收的了解
    nginx redirect ignore port 两层nginx跳转忽略了端口
    [复习]java中hashCode的作用
    【转载】java工程师学习之路---给自己的目标
    java中的内部类
  • 原文地址:https://www.cnblogs.com/01-single/p/7910910.html
Copyright © 2020-2023  润新知