본문 바로가기
PC/Linux

[Synology] 패키지 볼륨 이동

by dragom 2022. 6. 9.
반응형

Synology에 여러 패키지들을 설치하고 이용하는 것이야 말로 synology를 쓰는 매우 큰 이유 중 하나인 듯 합니다.

다만 여러 패키지들을 설치하다보면 언제부턴가 드륵드륵하는 하드 긁는 소리가 끊이지 않게 됩니다.

일부 패키지들의 경우 log 등을 위해 계속 파일 입출력이 발생하는데 이를 tmpfs등으로 처리하지 않고 그냥 패키지 내 폴더에서 처리하는 경우가 있어 이러한 상황이 발생하는게 아닐까 하는 생각이 들었습니다.

따라서 이번에는 HDD raid의 볼륨에 있던 패키지들을 SSD에 있는 볼륨으로 옮기기로 했습니다.

**주의 사항 : 저의 경우 volume2가 HDD볼륨이고, volume1가 SSD 볼륨입니다. 본인의 NAS의 환경에 맞게 변경하셔야 합니다.**

 

Volume2에 설치되어있는 패키지 확인

ls /var/volume2/\@appstore

 

패키지 볼륨 이동하는 방법

Synology의 패키지들은 /var/packages/ 에 존재하고 있습니다.
해당 폴더 내를 보시면 etc, home,target,tmp,var 폴더가
각 볼륨의 @appconf, @apphome, @appstore, @apptemp, @appdata 에 링크되어 있습니다.

위 폴더들내에 있는 이동하기 원하는 패키지 폴더를 다른 볼륨의 각각 같은 폴더들 내로 이동 후 
/var/packages/패키지이름 내에 있는 초록색 링크들을 이동된 볼륨으로 옮겨주시면 패키지가 이동됩니다.

이를 편하게 하고자 스크립트를 작성하였습니다.

패키지 볼륨 변경 스크립트

#!/bin/bash
echo "Moving $1"
echo "=> appstore"
mv /volume2/\@appstore/$1 /volume1/\@appstore/.
echo "=> apphome"
mv /volume2/\@apphome/$1 /volume1/\@apphome/.
echo "=> apptemp"
mv /volume2/\@apptemp/$1 /volume1/\@apptemp/.
echo "=> appdata"
mv /volume2/\@appdata/$1 /volume1/\@appdata/.
echo "=> appconf"
mv /volume2/\@appconf/$1 /volume1/\@appconf/.

cd /var/packages/$1/
echo "=== Link Before ==="
ls -list target home tmp var etc
rm -f etc;ln -s /volume1/\@appconf/$1 etc
rm -f home;ln -s /volume1/\@apphome/$1 home
rm -f target;ln -s /volume1/\@appstore/$1 target
rm -f tmp;ln -s /volume1/\@apptemp/$1 tmp
rm -f var;ln -s /volume1/\@appdata/$1 var

echo "=== Link After ==="
ls -list target home tmp var etc

echo "=== Left ==="
cd /volume2/\@appstore
ls
echo "=== DONE ==="

저는 이 파일을 /root/mvapp.sh 에 저장하였고,
chmod 700 /root/mv_app.sh 로 실행권한을 준 뒤
alias mv_app='/root/mv_app.sh' 로 단축어 등록을 했습니다.

mv_app 패키지이름 으로 패키지를 이동할 수 있습니다.

진행과정이 나온 뒤 volume2에 남아있는 패키지 목록을 보여줍니다.
바로 다음 패키지를 이동할 때 편하고자 이렇게 작성하였습니다.

다만,

사용하시는 경우 패키지 센터에서 중지가 가능한 경우 해당 패키지를 중지한 뒤 이동하셔야 합니다.

 

synosystemctl로 패키지를 정지시키고 이동하고 다시 시작까지 시키고 싶었지만, package의 service이름을 모르겠어서 그냥 저는 이렇게 수동으로 진행하였습니다.

대부분의 앱을 이런식으로 옮겨보고 있는데, 아직까지는 이상이 발생하는 앱은 없었습니다.


이상있던 패키지 => 현상 혹은 해결 방법

  • Node.js_v12 => 수리
  • WebStation => php엔진 인식이 안되어 webstation 재설치 및 php 재설치...
  • VirtualMachine Manager => 시도조차 안해봄.

반응형

'PC > Linux' 카테고리의 다른 글

MobaXterm X11 connection refused  (0) 2022.11.23
Xpenology on Proxmox  (0) 2022.03.26
Synology RS1219+, DS412+ 램 교체  (3) 2021.12.28
MATLAB-HSPICE 연동  (0) 2021.10.01
[Proxmox] LXC template 실행 시 반응 없는 콘솔  (0) 2021.08.29

댓글