tăng kích thước / tmp trên các phiên bản EC2


8

Tôi đang chạy một máy chủ Ubuntu trên EC2 ebs và ứng dụng của tôi cần rất nhiều dung lượng đĩa tạm thời, được phân bổ trong / tmp. Tuy nhiên, trên ec2, ổ đĩa gốc cũng chứa / tmp khá nhỏ, khoảng 10GB. Tất cả không gian đĩa còn lại được gắn dưới / mnt. Do đó, ứng dụng của tôi trả về lỗi 'hết dung lượng đĩa', bởi vì / tmp dường như đã đầy.

Cách tốt nhất để giải quyết vấn đề này là gì? Một điều tôi có thể nghĩ đến là tạo / mnt / tmp và tạo một liên kết tượng trưng

/tmp --> /mnt/tmp

Tuy nhiên tôi hơi miễn cưỡng khi phải loay hoay với thứ gì đó được sử dụng bởi rất nhiều chương trình và công cụ linux. Tôi không chắc chắn nếu mọi chương trình sẽ giải quyết chính xác liên kết tượng trưng, ​​và không chắc chắn những gì nó sẽ thực hiện.


2
Gắn kết có nghĩa là không phải liên kết tượng trưng.
Ignacio Vazquez-Abrams

Câu trả lời:


5

Với các hình ảnh được hỗ trợ bởi EBS, bộ lưu trữ phù du vẫn có sẵn, nó chỉ không được ánh xạ như một thiết bị khối theo mặc định (như trên các hình ảnh lưu trữ thể hiện)

Tài liệu amazon ở đây và có một bài đăng blog hữu ích ở đây

Tóm lại: bạn có thể chỉ định ánh xạ này trên dòng lệnh khi bạn khởi chạy hình ảnh, sau đó gắn nó như một âm lượng bình thường /dev/sd[x]. Hoặc nếu bạn cuộn AMI của riêng mình, thì bạn có thể nướng ánh xạ vào AMI đó để tất cả các hình ảnh được khởi chạy từ nó có quyền truy cập ngay từ đầu.

Symlinking /tmpsẽ hoạt động, nhưng tôi không khuyên dùng nó trong trường hợp này, nơi bạn có một lượng lớn bộ nhớ tạm thời đang sử dụng. Khi bạn có sẵn bản đồ thiết bị, bạn có thể gắn thiết bị như /tmptrong /etc/fstab.

Với một ví dụ nhỏ, bạn nên có sẵn 150GB cửa hàng cá thể miễn phí. Nó vô tư đi mà không nói rằng bộ lưu trữ này chết khi cá thể khởi động lại. Nếu việc sử dụng của bạn không phải là tạm thời, thì bạn cần phải tạo âm lượng EBS mới của riêng mình và gắn kết theo cách đó.


1
Tại sao symlinking không được khuyến nghị? Ví dụ: nếu tôi muốn đặt cả / var / tmp và / var / log vào bộ lưu trữ phù du của mình, tôi có thể gắn bộ lưu trữ dưới dạng / mnt và liên kết cả hai thư mục ở đó.
j0nes

Điểm tốt. Tôi đã suy nghĩ về trường hợp cụ thể này, dựa trên giả định rằng OP đang xem xét liên kết trở lại phân vùng chính. Tôi sẽ làm rõ câu trả lời của tôi.
SmallClanger

1

Bạn có thể liên kết điểm gắn kết / tmp với / mnt / tmp:

gắn kết sudo -B / tmp / mnt / tmp


2
Những mệnh lệnh đó nhìn ngược về phía tôi. Tôi nghĩ rằng bạn đã trao đổi hai tên thư mục.
kasperd

0

Liên kết tượng trưng như được đề xuất trong câu hỏi không phải là một giải pháp tồi. Nhưng có một số chăm sóc thêm được thực hiện trong khi làm như vậy. Chỉ cần củng cố các bước chính xác liên quan đến việc gắn âm lượng là:

1) Tạo âm lượng mới trong bảng điều khiển AWS. Đính kèm nó để ví dụ.

2) Định dạng và gắn kết với nó /mnt/vol1

3) Làm sạch /tmpđến mức nào có thể.

4) mkdir /mnt/vol1/tmp && mv /tmp/* /mnt/ && rmdir /tmp && ln -s /mnt/vol1/tmp /tmp


Di chuyển các tệp vào thư mục mới sẽ không đạt được kết quả mong muốn cho bất kỳ tệp nào đang mở. Tôi sẽ khởi động lại thay vào đó, vì các chương trình không thể mong đợi các tập tin /tmptồn tại trong quá trình khởi động lại.
kasperd
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.