当我尝试在我的虚拟机中安装java时出现此错误 - “设备上没有剩余空间”。我的虚拟机是debian,计算机是mac。
public class TestModuleImp implements TestModuleI {
@EJB
SampleSession sessionBean;
@Override
public void process() {
sessionBean.foo();
}
}
所以我找到了我的vm实例debian-jessie-disk1.vmdk,并试图用命令调整它的大小:
root@web1:~# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 9.2G 9.2G 0 100% /
udev 10M 0 10M 0% /dev
tmpfs 403M 5.4M 397M 2% /run
tmpfs 1006M 12K 1006M 1% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 1006M 0 1006M 0% /sys/fs/cgroup
home_vagrant_builtinx 465G 175G 290G 38% /home/vagrant/builtinx
它说不支持此格式。我按照vagrant no space left on device的步骤,将磁盘克隆到debian-jessie-disk1.vdi,并成功调整了克隆磁盘的大小。
我遵循了所有步骤,直到步骤:“创建一个新分区(再次以超级用户su登录)”
我的命令行说pvs,pvcreate找不到命令,我搜索了一些关于这些命令的信息,并没有找到关于如何安装这些软件包的有用信息。
然后我打开“VM VirtualBox Manager”UI工具,并将新磁盘debian-jessie-disk1.vdi分配给虚拟机的存储控制器,并删除旧磁盘并保存。
现在存储磁盘信息屏幕显示
sudo VBoxManage modifyhd --resize 40000 'debian-jessie-disk1.vmdk'
但是,我转到VM,然后执行
Type(Format): Normal(VDI)
Virtual Size: 39.06 GB
Actual Size: 9.75 GB
Details: Dynamically allocated storage
返回相同的结果。我认为这个空间不会被释放。我在这里想念一下吗?谢谢你的帮助:)
答案 0 :(得分:0)
pvcreate是lvm2(逻辑卷管理)的一部分,您应该尝试安装它,它带来一些实用程序来使用分区。 更多信息https://wiki.debian.org/LVM
答案 1 :(得分:0)
您更改了磁盘驱动器的大小,但确实没有调整分区或文件系统的大小。当您在磁盘驱动器上的VM中运行fdisk时,您将在使用最后一个分区后找到可用空间。
现在,您正在运行的来宾系统中有两个选择:
您在链接文章中写过pvs
命令。该系统使用逻辑卷管理,新分区只是添加到可用卷中。但是,要将其与LVM一起使用,您必须创建一个包含新文件系统的新逻辑卷,或者调整现有逻辑卷及其上的文件系统。
最重要的:在使用文件系统之前,请确保拥有有效的备份。备份主机系统上的虚拟硬盘应该没问题。
答案 2 :(得分:0)
所以最后我采取的步骤(在其他评论和朋友的帮助下)是:
1)。使用以下命令检查当前磁盘,并找到三个可用分区:/ dev / sda1 / dev / sda3 / dev / sda5。我想当我跟随其他指南时,我添加了3/5的额外分区。
sudo fdisk -l
2)。使用以下命令删除交换空间。我发现只有sda5在/ etc / fstab中创建了交换,所以我用第一个命令对该行进行注释。
sudo nano /etc/fstab
sudo swapoff /dev/sda5
3)。删除所有旧分区(此操作是粗体,我的同事告诉我这对Linux系统是可以的)并创建一个新分区。
vagrant@web1:~$ sudo fdisk /dev/sda
Welcome to fdisk (util-linux 2.25.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): d
... // delete all existing partitions.
Command (m for help): n
Command (m for help): w
4)。找到我创建的新分区并调整新分区的大小以使用磁盘驱动器中的完整空间。
df -h || This command finds my new partition is /dev/sda1
sudo resize2fs /dev/sda1
5)。检查分区是否已使用完整空间。
df -h
我可能已经忘记了重启步骤,因为在此过程中我一直停止流浪汉和流浪,以重新启动虚拟机。如果事情没有正确显示,请尝试重启机器。