2015-07-31 21 views
15

Hôm nay tôi bắt đầu gặp lỗi về các thao tác đơn giản, chẳng hạn như tạo các tệp nhỏ trong vim, quá trình hoàn thành bash cũng bắt đầu bị khiếu nại.không có khoảng trống nào trên thiết bị

Dưới đây là kết quả của df -h:

[email protected]:/vagrant$ df -h 
Filesystem       Size Used Avail Use% Mounted on 
/dev/sda1        40G 38G 249M 100%/
none         4.0K  0 4.0K 0% /sys/fs/cgroup 
udev         2.0G 12K 2.0G 1% /dev 
tmpfs        396M 396K 395M 1% /run 
none         5.0M  0 5.0M 0% /run/lock 
none         2.0G  0 2.0G 0% /run/shm 
none         100M  0 100M 0% /run/user 
overflow        1.0M 148K 876K 15% /tmp 
192.168.50.1:/Users/nha/repo/assets 233G 141G 93G 61% /var/www/assets 
vagrant        233G 141G 93G 61% /vagrant 

Vì vậy, rõ ràng / doesn `t có không gian nữa? Không phải là nó lạ vì tôi có không gian trong các hệ thống tập tin khác (hoặc tôi đang hiểu sai cái gì đó)?

Làm cách nào để có thêm dung lượng trên vm?

+0

'ncdu' cho thấy khoảng 6GB sử dụng, vì vậy tôi đang bối rối ngay bây giờ. – nha

Trả lời

13

Mặc dù bạn có không gian trên hệ điều hành khách của bạn, VM là limited.There là cupple các bước cần thiết để tăng kích thước của đĩa của bạn:

đầu tiên, vagrant halt để đóng VM của bạn

thay đổi kích thước đĩa

VBoxManage clonehd box-disk1.vmdk box-disk1.vdi --format vdi 
VBoxManage modifyhd box-disk1.vdi --resize 50000 

bắt đầu hộp ảo và cấu hình thay đổi của VM để kết hợp đĩa mới

sử dụng fdisk để thay đổi kích thước đĩa

bạn cần phải tạo một phân vùng mới với không gian mới và phân bổ nó, vì vậy đầu tiên khởi động máy ảo và đăng nhập như siêu người dùng

vagrant up && vagrant ssh 
su - 

lệnh (như minh họa từ ví dụ của tôi) là

[[email protected] ~]# fdisk /dev/sda 

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to 
     switch off the mode (command 'c') and change display units to 
     sectors (command 'u'). 

Command (m for help): p 

Disk /dev/sda: 52.4 GB, 52428800000 bytes 
255 heads, 63 sectors/track, 6374 cylinders 
Units = cylinders of 16065 * 512 = 8225280 bytes 
Sector size (logical/physical): 512 bytes/512 bytes 
I/O size (minimum/optimal): 512 bytes/512 bytes 
Disk identifier: 0x00041a53 

    Device Boot  Start   End  Blocks Id System 
/dev/sda1 *   1   39  307200 83 Linux 
Partition 1 does not end on cylinder boundary. 
/dev/sda2    39  2611 20663296 8e Linux LVM 

Command (m for help): n 
Command action 
    e extended 
    p primary partition (1-4) 
p 
Partition number (1-4): 3 
First cylinder (2611-6374, default 2611): 
Using default value 2611 
Last cylinder, +cylinders or +size{K,M,G} (2611-6374, default 6374): 
Using default value 6374 

Command (m for help): w 
The partition table has been altered! 

Calling ioctl() to re-read partition table. 

WARNING: Re-reading the partition table failed with error 16: Device or resource busy. 
The kernel still uses the old table. The new table will be used at 
the next reboot or after you run partprobe(8) or kpartx(8) 
Syncing disks. 
[[email protected] ~]# 

lưu ý bạn có thể cần phải thay đổi/dev/sda so sánh với cấu hình của bạn

tạo một phân vùng mới (một lần nữa đăng nhập như siêu người dùng su -)

su - 
[[email protected] ~]# pvs 
    PV   VG Fmt Attr PSize PFree 
    /dev/sda2 linux lvm2 a-- 19.70g 0 
[[email protected] ~]# pvcreate /dev/sda3 
    Physical volume "/dev/sda3" successfully created 
[[email protected] ~]# pvs 
    PV   VG Fmt Attr PSize PFree 
    /dev/sda2 linux lvm2 a-- 19.70g  0 
    /dev/sda3  lvm2 a-- 28.83g 28.83g 

[[email protected] ~]# vgextend linux /dev/sda3 
    Volume group "linux" successfully extended 
[[email protected] ~]# lvextend -l +100%FREE /dev/linux/root 
[[email protected] ~]# resize2fs /dev/linux/home 
resize2fs 1.41.12 (17-May-2010) 
Filesystem at /dev/linux/home is mounted on /home; on-line resizing required 
old desc_blocks = 1, new_desc_blocks = 2 
Performing an on-line resize of /dev/linux/home to 7347200 (4k) blocks. 
The filesystem on /dev/linux/home is now 7347200 blocks long. 
+0

Xin lỗi tôi đã chấp nhận nó quá nhanh. Tôi bị phá hủy/xây dựng lại máy tính của tôi, và nó không hoạt động nhưng bây giờ tôi nhận thấy trong gui virtualbox rằng kích thước ảo nếu 40GB nhưng kích thước thực tế là 1,33GB. (?) – nha

+0

@nha, khi xây dựng vm, vagrant sẽ không dành tất cả không gian bạn đã cấp cho đĩa - trong trường hợp bạn xác định VM với ổ cứng 40 GB nhưng bạn chỉ sử dụng 1GB hoặc hơn, Vì vậy, vagrant/VirtualBox sẽ dự trữ 1,33 GB và sẽ phát triển. chúng có thể phát triển cho đến khi chúng đạt tới 40GB, đó là giới hạn kích thước bạn đã phân bổ cho ổ đĩa cứng này trên máy ảo (nếu bạn muốn nếu VM có HD vật lý 40GB) khi bạn đạt tới giới hạn này, bạn cần phải mở rộng kích thước hạn chế của HD gắn vào máy ảo (phương pháp tôi đã cho bạn) hoặc đính kèm một ổ đĩa cứng –

+0

Cảm ơn bạn tôi hiểu điều đó. Tuy nhiên tôi nhận được lỗi liên quan đến không gian ngay bây giờ (như khi bắt đầu mongo, tôi nhận được "Hãy tạo ít nhất 3379MB trong/data/db/journal hoặc sử dụng --smallfiles") – nha

3

Bạn có thể tăng không gian trong hộp của bạn, mà không làm mất dữ liệu hoặc tạo phân vùng mới.

  1. Dừng máy ảo của bạn;

  2. Đến /home_dir/VirtualBox VMs

  3. Thay đổi định dạng tập tin từ .vmdk để .vdi. Sau đó sử dụng lệnh từ câu trả lời ở trên để tăng dung lượng.

  4. Thay đổi tiện ích mở rộng tệp và thay đổi tên tệp.

  5. Đính kèm đĩa mở rộng vào máy ảo của bạn.

  6. Trong ứng dụng VirtualBox của bạn, hãy truy cập Your_VM -> Cài đặt -> Bộ nhớ.Nhấp vào bộ điều khiển và chọn 'thêm đĩa mới' bên dưới. Chọn từ các đĩa hiện có mà bạn vừa mở rộng.

Here's a step by step instruction how to expand the space in your vagrant box or virtual machine.

+1

Hoàn hảo - nó đang tìm kiếm tuyệt vời! Làm tốt lắm! – Frits

Các vấn đề liên quan