[英]How to free up space on AWS ec2 Ubuntu instance running nginx and jenkins?
我有一個運行 nginx 和 Jenkins 的 Ubuntu ec2 實例。 沒有更多空間可用於更新,我嘗試釋放空間的每個命令都不起作用。 此外,當試圖到達 Jenkins 我得到502 Bad Gateway 。
當我運行sudo apt-get update
時,我得到一長串錯誤,但主要的錯誤是E: Write error - write (28: No space left on device)
我不知道為什么沒有更多空間,或者是什么原因造成的,但df -h
給出了以下 output:
Filesystem Size Used Avail Use% Mounted on
udev 2.0G 0 2.0G 0% /dev
tmpfs 394M 732K 393M 1% /run
/dev/xvda1 15G 15G 0 100% /
tmpfs 2.0G 0 2.0G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 2.0G 0 2.0G 0% /sys/fs/cgroup
/dev/loop1 56M 56M 0 100% /snap/core18/1988
/dev/loop3 34M 34M 0 100% /snap/amazon-ssm-agent/3552
/dev/loop0 100M 100M 0 100% /snap/core/10958
/dev/loop2 56M 56M 0 100% /snap/core18/1997
/dev/loop4 100M 100M 0 100% /snap/core/10908
/dev/loop5 33M 33M 0 100% /snap/amazon-ssm-agent/2996
tmpfs 394M 0 394M 0% /run/user/1000
我試圖通過運行sudo apt-get autoremove
來釋放空間,它給了我E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem.
我運行sudo dpkg --configure -a
並得到pkg: error: failed to write status database record about 'libexpat1-dev:amd64' to '/var/lib/dpkg/status': No space left on device
最后,我運行了sudo apt-get clean; sudo apt-get autoclean
sudo apt-get clean; sudo apt-get autoclean
它給了我以下錯誤:
Reading package lists... Error!
E: Write error - write (28: No space left on device)
E: IO Error saving source cache
E: The package lists or status file could not be parsed or opened.
任何有助於釋放空間並使服務器再次運行的幫助將不勝感激。
對於運行 Jenkins 和 Nginx 的服務器(如果您不測試 Jenkins 和 Nginx),您必須以更好的方式管理磁盤分區。 以下是解決問題的幾種可能方法。
通過 AWS EBS 控制台將現有 EC2 根 EBS 卷大小從 15 GB 擴展到更高的值。
或者
找出占用大量磁盤空間的文件並在不需要時將其刪除。 很可能是消耗磁盤空間的日志文件。 您可以執行以下命令來找出占用更多空間的位置。
cd /
du -sch * | grep G
或者
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.