Linux
[Linux] Huggingface model default 저장 경로 (./.cache) 변경하기 (HF_HOME 지정)
허깅페이스 모델들을 마구잡이로 다운 받다보면,, 디폴트 저장 경로가 /home/daeun/.cache/huggingface 이런 식으로 home 폴더로 설정되어 있는걸 확인할 수 있다. (화남) 하지만 home 폴더에 제약이 걸려있는 서버 환경이라면,, 이 디폴트 저장 경로를 다른 경로로 바꿔줘야 할 것 ! # 가장 쉬운 방법 가장 쉬운 방법은 HF_HOME 경로를 export 해주는 것이다. 아래와 같이 직접 터미널에 코드를 실행하기 전 export 해주자 export HF_HOME=/nas-ssd2/daeun/.cache/영구적으로 위 변수를 추가하고 싶다면 아래와 같이 하면 된다. .bashrc에 추가하는 것임echo 'export HF_HOME=/nas-ssd2/daeun/.cache/' >> ~..
[Linux] conv2d 시행 시 Runtime error: GET was unable to find an engine to execute 에러 해결
Video editing model을 돌리다가 아래와 같은 에러가 conv2d에서 발생함을 확인했다 ㅋㅋ File "/mnt/petrelfs/zhaozhiyuan/anaconda3/envs/minigpt4-nightly/lib/python3.9/site-packages/torch/nn/modules/conv.py", line 459, in _conv_forward return F.conv2d(input, weight, bias, self.stride,RuntimeError: GET was unable to find an engine to execute this computation여러가지 서치를 해본결과 뭐 cuda version이 안맞아서 그런거라는데.. 됐고 그냥 아래와 같이 추가해주면 된다..
[Git] 특정 브랜치만 clone하기
diffusers library 쓰다가.. 특정 브랜치만 클론해야해서 .. git clone -b {branch_name} --single-branch {저장소 URL}
[Linux] 갑자기 conda를 찾을 수 없을 때 ~/.bashrc 확인하기
바빠 죽겠는데 연달아 포스팅을 하는 이유.. 방금 진짜 역대급으로 식겁했기 때문이다 ㅜㅜ 문제였던 것 이전 포스팅처럼 필자는 서버 home 폴더 청소중이었다. 캐시 파일 지우고.. 그러고 이제 환경변수 추가하려고 nano ~/ .bashrc로 캐시 저장 경로를 추가하고 있던 참이었는데.. vim 대신 nano를 처음 써봐서 그런지 어찌어찌 추가해서 잘 저장했다고 생각했는데 .. 몰라 그 이후로 conda를 물지 못하는 (=conda: command not found) 터미널이 되어버렸다. (conda 라고 터미널에 치면 아무것도 물지 못했던 그 절망적인 상황 ㅜㅜ) 되짚어보니 아마 이때부터가 아닌가 싶다. 근데 그 후로 다시 nano ~/ .bashrc를 치니 아무 것도 안나오는거다. 나는 ~/ .bas..
[Linux] .cache 폴더 삭제하기 - conda, pip cache 파일 삭제하기
우리의 서버 내 home 폴더의 용량을 가장 많이 잡아먹는 친구가 누군지 아는가?conda env? anaconda directory? 아니다. 바로 .cache 일 수 있다는 점! (나도 알고 싶지 않았다고..!) .cache 삭제하기 살면서 home 폴더의 용량을 줄이고 싶을 때가 한번쯤은 오게된다. 그 때는 .cache를 살펴보자! 필자는 cache가 home 폴더에서 무려 33G 중 15G를 차지하고 있음을 알아내었다. (ㅋㅋ) 심각한 상태를 알았다면 소리를 한번 지르고.. 경악을 해준 뒤 이제 지워주자!구글링을 해보니 .cache는 함부로 지우면 안된다고 한다. 따라서 pip와 conda의 .cache를 지워주는 방법은 아래와 같다. #pippip cache purge#condaconda cl..
[Linux] du로 폴더 용량 확인 / 가장 용량 큰 폴더 top 10 확인 후 삭제하기
요즘 데이터셋 엄청 다운받고.. Ablation 을 하느라 실험을 남발했던 나.. 결국 -bash: cannot create temp file for here-document: No space left on device 라는 오류를 만나게 된다. ^-^ 저 오류는 cd 를 칠 때마다 나와서.. 정말 킹받는다.. 일단 특정 폴더 용량 확인하는 법은 아래와 같다. du -sh 폴더이름 가장 용량이 큰 top10 디렉토리 확인하는 법은 뭘까 ! 아래 명령어를 확인하고 싶은 폴더 경로에서 실행하면 된다. $ du -hsx * | sort -rh | head -n 10 그럼 아래와 같이 범인들이 색출된다. 딱 대자. 그리고 필요 없으면 삭제를 해주면 된다 ~! 83G wr_tools 1.2G exp.city 99..
[Linux] 로컬에서 서버로 파일 전송하기 + 서버 ip 확인하기
여러가지 작업을 하다보면 로컬에서 서버로 파일을 옮기고 싶어질 때가 생긴다! 그럴 때는 다음과 같이 scp를 이용해 간단히 해결할 수 있다. :3 서버에서 로컬로 파일을 보내는 것도 비슷하게 작동하며, 아래 명령어는 당연히 로컬 터미널에서 쳐야한다 ~! $ scp 파일명 유저명@서버ip:파일을 전송하고 싶은 경로 여기서 서버를 보통 ssh로 접근하기 때문에, 서버의 ip를 바로 알기가 어려울 수 있다. 이럴 때는 다음과 같은 방법들을 사용할 수 있다. $ ip addr | grep “inet ” # 여기서 나오는 ip 중 enp, ens, eth 부분이 ip일 확률이 높다. $ hostname -I
[Linux] 여러 디렉토리를 merge하기
모델들을 돌리다보면 데이터셋을 구성하는 과정에서 데이터 디렉토리를 merge 해야할 경우가 많이 발생한다. 하지만 보통 데이터 디렉토리는 너무 크므로... 이들을 직접 copy & paste 하기에는 너무 느릴 수 있다. 따라서 이럴 때는 다음과 같은 명령어를 사용하면 된다! 아래 명령어는 b 디렉토리에 있는 데이터를 a 디렉토리로 merge 하겠다는 것이다. (b > a) $ rsync -avhu --progress b/ a/ 출처는 여기이다! :)