cd 命令出现“-bash:cannot create temp file for here-document:No space left on device”

df -h查询发现/dev/mapper/centos-root爆满了

Filesystem               Size  Used Avail Use% Mounted on
/dev/mapper/centos-root   50G   50G   20K 100% /
devtmpfs                  32G     0   32G   0% /dev
tmpfs                     32G  4.0K   32G   1% /dev/shm
tmpfs                     32G   11M   32G   1% /run
tmpfs                     32G     0   32G   0% /sys/fs/cgroup
/dev/sda1               1014M  226M  789M  23% /boot
/dev/mapper/centos-home  2.0T   35G  2.0T   2% /home
tmpfs                    6.3G     0  6.3G   0% /run/user/0

两种方法,一种是扩容,另一种是清理占用过大的文件。

找出占用过大的目录

du -h -x --max-depth=1
58M     ./etc
4.5G    ./root
2.1G    ./var
33G     ./tmp
7.7G    ./usr
0       ./media
0       ./mnt
3.5G    ./opt
0       ./srv
50G     .

看出tmp目录占用最多,进入这个目录,把不要的文件清理掉就可以了。

关于扩容方式是从网上找到的,我也没去尝试,这里贴出来仅供参考,数据物价,且行且珍惜:

# CentOS 7 调整 home分区扩大 root分区
# 1、查看分区
df -h
# 2、备份home分区文件
tar cvf /run/home.tar /home
# 3、卸载/home,如果无法卸载,要先终止使用/home文件系统的进程
fuser -km /home
umount /home
# 4、删除/home所在的逻辑卷lv
lvremove /dev/mapper/centos-home
# 5、扩展/root所在的lv,增加1T
lvextend -L +1T /dev/mapper/centos-root
# 6、扩大/文件系统
xfs_growfs /dev/mapper/centos-root
# 7、重建/home文件系统所需要的逻辑卷
# 由于刚才我们分出去1.0T,因此这里创建的逻辑卷大小为1.0T
lvcreate -L 2.5T -n/dev/mapper/centos-home
# 8、创建文件系统
mkfs.xfs  /dev/mapper/centos-home
# 9、将新建的文件系统挂载到/home目录下
mount /dev/mapper/centos-home
# 10、恢复/home目录的内容
tar xvf /run/home.tar -C /
# 11、删除/run下面的备份
rm -rf /run/home.tar

本博客采用 知识共享署名-禁止演绎 4.0 国际许可协议 进行许可

本文标题:cd 命令出现“-bash:cannot create temp file for here-document:No space left on device”

本文地址:https://dev-tang.com/post/2018/09/cannotcreate-temp-file-for-here-document.html

推荐阅读