• Java HotSpot(TM) 64-Bit Server VM warning: Insufficient space for shared memory file: /tmp/hsperfdata_hadoop/44512


    早上登录hbase shell,出现异常:

    [hadoop@node002 ~]$ hbase shell
    Java HotSpot(TM) 64-Bit Server VM warning: Insufficient space for shared memory file:
       /tmp/hsperfdata_hadoop/44512
    Try using the -Djava.io.tmpdir= option to select an alternate temp location.
    
    Error: Could not find or load main class HotSpot(TM)

    报磁盘空间不足,查看一下磁盘空间发现:

    [hadoop@node002 hsperfdata_hadoop]$ df -a
    Filesystem           1K-blocks      Used Available Use% Mounted on
    /dev/sda5             20641404  19593080         0 100% /
    proc                         0         0         0   -  /proc
    sysfs                        0         0         0   -  /sys
    devpts                       0         0         0   -  /dev/pts
    tmpfs                  8173280         0   8173280   0% /dev/shm
    /dev/sda3            443850904 406428196  14876328  97% /app
    /dev/sda1                99150     32465     61565  35% /boot
    /dev/sdb1            480719056 394902308  61397548  87% /opt/mdisk/disk1
    /dev/sdc1            480719056 418919008  37380848  92% /opt/mdisk/disk2
    /dev/sdd1            480719056 397923492  58376364  88% /opt/mdisk/disk3
    none                         0         0         0   -  /proc/sys/fs/binfmt_misc
    sunrpc                       0         0         0   -  /var/lib/nfs/rpc_pipefs
    [hadoop@node002 hsperfdata_hadoop]$ df /tmp
    Filesystem           1K-blocks      Used Available Use% Mounted on
    /dev/sda5             20641404  19593084         0 100% /

    查看磁盘使用率发现,的确磁盘被人拷了大量文件占满了,解决方法可选:

    1、移除部分文件,腾出磁盘空间。

    2、通过 -Djava.io.tmpdir 参数指定其他磁盘。

    3、也有人说可通过参数-XX:-UsePerfData 取消jvm自动创建pid文件(jvm默认会在/tmp目录下创建pid文件,未测试,有兴趣可测试一下)。

    解决大致步骤:df发现某一个满的分区,然后选择挂载新磁盘或移走部分文件,du -sh /xxx 计算这个目录的总占用量 然后层层往下 找出占用较大空间的文件 ,最后做文件迁移。

    另外,附带说明一下 /tmp/hsperfdata_$user/$number的作用(比较关键的一句):

    That directory is part of a Java performance counter.

    这个文件存的应该是JVM进程当前的运行信息或者说是一些性能参数。

  • 相关阅读:
    RocketMQ:(2) Broker
    RocketMQ:(1) NameServer、Producer
    数据脱敏:姓名、电话号码等进行字段脱敏,中间部分显示成**
    hibernate中sql查询 字段如何与属性映射
    Java代码编写、代码优化技巧总结
    成长中,感恩遇到的人(1)
    代码中如何优化过多的if..else
    Unsatisfied dependency expressed through field 'rabbitTemplate'错误总结
    解决文件过大,上传失败的问题——大文件分割分片上传
    js 小数运算出现误差的原因
  • 原文地址:https://www.cnblogs.com/jessezeng/p/5473126.html
Copyright © 2020-2023  润新知