전체 보기
🍀

ubuntu no space left on device, mac 환경설정(with 내가 temurin을 택한 이유)

작성일자
2023/09/28
태그
DIARY_DEVELOP
프로젝트
FIS
책 종류
1 more property

ubuntu no space left on device

서론) docker image를 그떄 그떄 지워주지 않아서 주어진 용량 7.6G를 다 써버렸다..
docker image를 삭제해주려 해도 공간이 부족해 삭제 명령어조차 실행 못하는 상황이었다.
ubuntu@ip-172-31-35-215:~$ docker rmi -f 3f0d869b9bc0 Error response from daemon: write /var/lib/docker/image/overlay2/.tmp-repositories.json2323152354: no space left on device
Java
복사
참고로 용량 확인은 df -hT 라고 찍어보면 나온다
ubuntu@ip-172-31-35-215:~$ df -hT Filesystem Type Size Used Avail Use% Mounted on /dev/root ext4 7.6G 7.6G 0 100% / tmpfs tmpfs 483M 0 483M 0% /dev/shm tmpfs tmpfs 194M 21M 173M 11% /run tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock /dev/xvda15 vfat 105M 6.1M 99M 6% /boot/efi tmpfs tmpfs 97M 4.0K 97M 1% /run/user/1000
Java
복사
본론) 용량을 두 배로 늘려주는 방법도 있지만, 우리의 경우 docker image만 그때 그때 잘 지워주면 근본적인 문제를 해결할 수 있다.
다만 이 로직을 추가하려면 일단 조금의 여유 공간이라도 빼야 한다.
이를 위해 sudo apt-get clean 명령어로 캐시를 비워 우선 조금의 용량이라도 확보해줬다.
ubuntu@ip-172-31-35-215:/usr/src$ df -hT Filesystem Type Size Used Avail Use% Mounted on /dev/root ext4 7.6G 7.6G 0 100% / tmpfs tmpfs 483M 0 483M 0% /dev/shm tmpfs tmpfs 194M 21M 173M 11% /run tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock /dev/xvda15 vfat 105M 6.1M 99M 6% /boot/efi tmpfs tmpfs 97M 4.0K 97M 1% /run/user/1000 ubuntu@ip-172-31-35-215:/usr/src$ sudo apt-get clean E: Could not get lock /var/lib/apt/lists/lock. It is held by process 63071 (apt-get) N: Be aware that removing the lock file is not a solution and may break your system. E: Unable to lock directory /var/lib/apt/lists/ ubuntu@ip-172-31-35-215:/usr/src$ df -hT Filesystem Type Size Used Avail Use% Mounted on /dev/root ext4 7.6G 7.4G 253M 97% / tmpfs tmpfs 483M 0 483M 0% /dev/shm tmpfs tmpfs 194M 1.1M 193M 1% /run tmpfs tmpfs 5.0M 0 5.0M 0% /run/lock /dev/xvda15 vfat 105M 6.1M 99M 6% /boot/efi tmpfs tmpfs 97M 4.0K 97M 1% /run/user/1000
Java
복사
이제 docker image prune -a 명령어로 컨테이너에 연결되지 않은 사용하지 않고 있는 이미지들을 전부 지워주자.
ubuntu@ip-172-31-35-215:/$ docker rmi -f e1d98af1aaa2 Untagged: fisolution/call-dev@sha256:6fd89e06d2bdc840fd726b1f76c345e29caf3de660b6171ea2aa7bc8aa3b1078 Deleted: sha256:e1d98af1aaa2ff10c3365dc2994dae01c431fc1f0ae930f30a8a81c630b082dc Deleted: sha256:3a53cb060b4119b276eff3e08fcdb3c3fc6af06bceddab5a2428b37931311f7d Deleted: sha256:1945ff2e148c128fa6571317684d97dce29d1bbd3c6e32d9a5ca8d4ff9719add ubuntu@ip-172-31-35-215:/$ docker image prune -a WARNING! This will remove all images without at least one container associated to them. Are you sure you want to continue? [y/N] y Deleted Images: untagged: fisolution/call-dev:c656efb ... Total reclaimed space: 2.076GB
Java
복사
지금은 직접 명령어를 쳐줬지만 앞으론 cicd 로직에서 배포 후 이 명령어를 실행하게 해주자.
결론) 용량을 무려 50%나 확보할 수 있었다. 용량 부족하다고 무조건 ec2 scale up 하지 말고, 근본적인 원인을 해결해주자.
ubuntu@ip-172-31-35-215:/$ df -hT Filesystem Type Size Used Avail Use% Mounted on /dev/root ext4 7.6G 3.8G 3.8G 50% /
Java
복사

Mac 환경설정

서론
2023년에 애플 아이디를 만드는 사람이 있다..? 바로 저에요…
구매한 맥북이 어제 도착했다. 장인은 도구 탓을 하지 않는다하지만, 어딜 가든 맥북 밖에 없는 개발팀에서 홀로 윈도우로 개발하는 건 외로웠다,,, 물론 윈도우로도 개발을 잘 해오고 있긴 했지만, 요근래 인텔리제이 설정이 자꾸 꼬이기도 했고 이번에 팀에 새로 적용한 네이버 핵데이 컨벤션도 나만 .. 윈도우라 eol이 crlf인 바람에 설정이 조금 꼬였었다.. 물론 깃이 윈도우 환경에선 풀 받을 때 자동으로 eol을 lf가 아닌 crlf로 받아오는 문제였어서 이 부분 설정을 변경해 해결해주긴 했지만.. 나만 따로 커스텀해줘야 한단 불편함이 존재했다..
결국 이전부터 구매 계획이 있었던 m2를 윈도우 권태기가 온 시점에 빠르게 구매해줬다. ㅎㅎ 솔직히 맥북 이뻐서 산단 사람들 이해 안됐는데 막상 내 책상에 올려두니 너무 이뻐서 놀랐다. 화면도 ,,, 너무 이쁘다.
요 사랑스러운 맥북에 내가 쓰던 개발 환경 설정을 쫘르르 해줬다. 하나하나 신중히,,,
본론
intellij ultimate, Datagrip 깔기
intellij는 현재 내 계정에 학생 라이센스가 등록되어 있어서 사이트에 들어가서 직접 깔아줬다.
java 17, 11 깔기
나는 oracle jdk와 open jdk 중 고민하다 open jdk로 깔았다.
삽질! (← 완전히 이상한 소리 써뒀습니다,,, 읽지 말아주세요,, 그저 제 오답노트 용으로 냅뒀습니다,,,,) ( homebrew openjdk@17 설치 및 삭제)
Adoptium(구 AdoptOpen jdk) 깔기
방법
터미널에 입력
# jdk 설치 (adoptopenJDK 공식 깃허브에 그대로 나와있는 방법이다) brew install --cask temurin brew tap homebrew/cask-versions # tap 명령어가 무엇인지는 아래 레퍼런스 달아뒀다. brew install --cask temurin11 brew install --cask temurin17 # 커스텀 (버전 변경 쉽게 하기 위해) vi ~/.zshrc ...(아래 내용 추가 후 저장) source ~/.zshrc # jdk 기본 버전 변경 및 확인 java11 java -version java17 java -version # 설치된 모든 jdk 확인 /usr/libexec/java_home -V
YAML
복사
~/.zshrc 에 추가할 내용
export JAVA_11_HOME=$(/usr/libexec/java_home -v11) export JAVA_17_HOME=$(/usr/libexec/java_home -v17) alias java11='export JAVA_HOME=$JAVA_11_HOME' alias java17='export JAVA_HOME=$JAVA_17_HOME'
JavaScript
복사
내가 여러 openjdk 중 temurin 선택한 이유
까려다 추가로 알게 된 알쓸프잡,, Good-bye AdoptOpenJDK. Hello Adoptium!
레퍼런스
(참고) adoptium 즉 temurin의 경우 8버전(아마 11 버전 전이라면 모두)의 경우 맥에 최적화되어 있지 않다. 따라서 8을 사용해야 한다면 zulu를 추천한다. 11버전부턴 실리콘맥에 최적화되어 있으니 temurin을 사용해도 좋다
# Set JDK version export JAVA_8_HOME=$(/usr/libexec/java_home -v 1.8) export JAVA_11_HOME=$(/usr/libexec/java_home -v 11) export JAVA_17_HOME=$(/usr/libexec/java_home -v 17) alias java8='export JAVA_HOME=$JAVA_8_HOME' alias java11='export JAVA_HOME=$JAVA_11_HOME' alias java17='export JAVA_HOME=$JAVA_17_HOME'
Java
복사
구글 드라이브에 올려둔 파일 중 자주 사용하는 파일들 저장해두기
구글 드라이브 연동하기
결론
고민은 배송만 늦출 뿐! 맥북 구매 만족도 200%다.