목차링크
개요
Jupyter Notebook Server를 사용하다 보면, linux terminal을 이용해 디렉토리나 파일 등을 관리할 일이 종종 생긴다.
서버를 종료해서 필요없는 파일이 사라지는건 상관이 없지만, 내가 필요한 파일들은 다운받아야한다. 딥러닝을 하면서, 모델의 weight를 저장하는데, 용량이 꽉 찰 때마다 비워주어야 하는데, 휴지통이 보이질 않는다.
다운로드
파일을 gui 인터페이스로(web application) 다운로드 할 수 있는 경우도 있다. 하지만, 대부분, 디렉토리 다운로드는 지원하지 않는다.
디렉토리를 다운 받아야 할 상황이 생기면 일일이 모든 파일을 다 다운받는 것은 비효율 적이다.
디렉토리 압축
압축을 하면 파일 1개로 취급되기 때문에 다운로드를 받을 수 있다.
zip 방식의 압축은 지원이 안될 수 있기에, tar, tar.gz 형식의 압축 명령어를 아는 것이 필자는 좋다고 생각한다.
tar -cvf USER_INPUT.tar USER_DIRECTORY
tar -zcvf USER_INPUT.tar.gz USER_DIRECTORY
-c : tar 아카이브 생성,
-v : 어떤 파일들을 처리하는지 stdout(모니터)에 출력
-f : 파일 이름을 지정(대상 아카이브 지정)
-z : .gz 형식 전용 옵션
# USER_INPUT, USER_DIRECTORY는 알아서 치환하리라 믿는다.
요정도만 알면, 왠만하면 다 다운로드 할 수 있다.
분할 압축
가끔 , 서버 다운로드 용량에 제한을 걸어놓는 사이트가 있다. 좌절할 필요가 없다.
분할 압축을 하면된다.
split -b 분할사이즈 압축대상 압축파일명
# 압축과 한번에 합치면
tar -cvf(z) - 디렉토리 | split -b 분할사이즈 압축파일명
hardlink
가끔, simlink형태의 파일이 압축되는 경우가 있다. 그 경우, 로컬에서 열때 , 문제가 생긴다.
왜냐하면, simlink는 주소값을 가지고 있기 때문이다. 따라서, hardlink(실제값) 형식으로 받아줘야한다.
tar -cvf file directory --dereference
tar -zcvf file 디렉토리 --dereference
# Use with Split
tar -cvf(z) - direcotory --dereference | split -b size - filename
삭제
jupyter server 대부분 휴지통이 보이질 않는다.
대부분,linux termnial로 관리하게 되면, 아래와 같은 코드를 사용하면 지울 수 있다. 항상 , 확인하고 해보길 바란다.
rm -rf ~/.local/share/Trash/files/*