Knowledge 목록으로
Source URL 유지 · Knowledge projection
ComfyUI 모델 심볼릭 링크 설정 가이드 — 대표 이미지

ComfyUI 모델 심볼릭 링크 설정 가이드

2026년 4월 26일업데이트 2026년 9월 7일3
작성 DevSnack Lab원문·측정 조건·검수 범위는 본문에 기록
48
이미지 생성튜토리얼ComfyUI
SEO meta description: DGX Spark에 ComfyUI 설치하고 Krea 2 모델로 이미지 생성하는 방법. UNETLoader 설정, NVFP4 모델 활용법.

※ 이 글은 설명을 돕기 위한 실제 터미널 출력 화면과 설정 파일 예시를 포함하고 있습니다. 곧 스크린샷도 추가할 예정입니다.

개요

ComfyUI에서 사용하는 모델 파일(checkpoint, LoRA, VAE 등)은 용량이 매우 큽니다. 모델을 한 곳에 모아두고 심볼릭 링크(Symbolic Link)로 연결하면 디스크 공간을 절약하면서 여러 환경에서 동일한 모델을 공유할 수 있습니다.

이 글에서는 /srv/ai/models에 보관된 모델 파일들을 /home/user/ComfyUI/models로 심볼릭 링크하는

ComfyUI 모델 디렉토리 심볼릭 링크 설정 터미널 명령어 실행 화면

▲ Comfyui Terminal

스크립트를 소개합니다.

디렉토리 구조

경로역할
/srv/ai/models실제 모델 파일이 저장된 원본 디렉토리
/home/user/ComfyUI/modelsComfyUI가 읽는 디렉토리 (여기에 심볼릭 링크 생성)

스크립트

아래 스크립트는 3단계로 동작합니다. 먼저 ComfyUI 표준 디렉토리(checkpoints, loras, vae 등)를 링크하고, 소스에 추가 디렉토리가 있으면 자동으로 링크하며, 루트에 개별 파일이 있는 경우도 처리합니다.

#!/bin/bash
# ============================================================
# ComfyUI 모델 심볼릭 링크 스크립트
# 소스: /srv/ai/models
# 대상: /home/user/ComfyUI/models
# ============================================================

SRC="/srv/ai/models"
DST="/home/user/ComfyUI/models"

GREEN='\033[0;32m'
YELLOW='\033[1;33m'
RED='\033[0;31m'
NC='\033[0m'

MODEL_DIRS=(
    "checkpoints"
    "clip"
    "clip_vision"
    "controlnet"
    "diffusers"
    "diffusion_models"
    "embeddings"
    "gligen"
    "hypernetworks"
    "ipadapter"
    "loras"
    "style_models"
    "unet"
    "upscale_models"
    "vae"
    "vae_approx"
    "photomaker"
    "insightface"
    "ultralytics"
    "sams"
    "grounding-dino"
    "blip"
    "LLM"
    "Joy_caption"
    "instantid"
    "pulid"
    "reactor"
    "facerestore_models"
    "facedetection"
    "mmdets"
    "onnx"
    "text_encoders"
)

echo "============================================================"
echo " ComfyUI 모델 심볼릭 링크 설정"
echo " 소스: $SRC"
echo " 대상: $DST"
echo "============================================================"
echo ""

if [ ! -d "$SRC" ]; then
    echo -e "${RED}[오류] 소스 디렉토리가 존재하지 않습니다: $SRC${NC}"
    exit 1
fi

if [ ! -d "$DST" ]; then
    echo -e "${RED}[오류] 대상 디렉토리가 존재하지 않습니다: $DST${NC}"
    exit 1
fi

linked=0
skipped=0
not_found=0

echo "▶ 정의된 디렉토리 목록 기반으로 링크 생성..."
echo ""

for dir in "${MODEL_DIRS[@]}"; do
    src_path="$SRC/$dir"
    dst_path="$DST/$dir"

    if [ ! -d "$src_path" ]; then
        echo -e "  ${YELLOW}[없음]${NC} $dir  (소스에 디렉토리 없음, 건너뜀)"
        ((not_found++))
        continue
    fi

    if [ -L "$dst_path" ]; then
        echo -e "  ${YELLOW}[스킵]${NC} $dir  (이미 심볼릭 링크)"
        ((skipped++))
        continue
    fi

    if [ -d "$dst_path" ]; then
        backup_path="${dst_path}.bak.$(date +%Y%m%d%H%M%S)"
        echo -e "  ${YELLOW}[백업]${NC} $dir → ${backup_path}"
        mv "$dst_path" "$backup_path"
    fi

    ln -s "$src_path" "$dst_path"
    if [ $? -eq 0 ]; then
        echo -e "  ${GREEN}[링크]${NC} $dir  →  $src_path"
        ((linked++))
    else
        echo -e "  ${RED}[실패]${NC} $dir"
    fi
done

echo ""
echo "▶ 소스에 존재하지만 목록에 없는 추가 디렉토리 검색..."
echo ""

for src_sub in "$SRC"/*/; do
    [ ! -d "$src_sub" ] && continue
    dir=$(basename "$src_sub")
    dst_path="$DST/$dir"

    already_handled=false
    for handled in "${MODEL_DIRS[@]}"; do
        if [ "$handled" == "$dir" ]; then
            already_handled=true
            break
        fi
    done
    $already_handled && continue

    if [ -L "$dst_path" ]; then
        echo -e "  ${YELLOW}[스킵]${NC} $dir  (이미 심볼릭 링크)"
        ((skipped++))
        continue
    fi

    if [ -d "$dst_path" ]; then
        backup_path="${dst_path}.bak.$(date +%Y%m%d%H%M%S)"
        echo -e "  ${YELLOW}[백업]${NC} $dir → ${backup_path}"
        mv "$dst_path" "$backup_path"
    fi

    ln -s "$src_sub" "$dst_path"
    if [ $? -eq 0 ]; then
        echo -e "  ${GREEN}[링크]${NC} $dir  →  $src_sub"
        ((linked++))
    else
        echo -e "  ${RED}[실패]${NC} $dir"
    fi
done

echo ""
echo "============================================================"
echo " 완료! 링크 생성: ${linked}개 / 건너뜀: ${skipped}개 / 소스 없음: ${not_found}개"
echo "============================================================"
echo ""
echo "결과 확인: ls -la $DST"

사용 방법

# 스크립트 저장
nano [local path]

# 실행 권한 부여
chmod +x [local path]

# 실행
./link_comfyui_models.sh

스크립트 주요 특징

  • 자동 백업 — 기존 디렉토리가 있으면 .bak.타임스탬프로 백업 후 링크를 생성합니다. 기존 파일이 날아갈 걱정이 없습니다.
  • 중복 실행 안전 — 이미 심볼릭 링크가 걸려 있으면 건너뜁니다. 여러 번 실행해도 문제없습니다.
  • 자동 탐색 — 미리 정의된 목록 외에도 소스 디렉토리에 추가 폴더가 있으면 자동으로 링크합니다.
  • 컬러 출력 — 링크 성공(초록), 건너뜀(노랑), 실패(빨강)를 한눈에 확인할 수 있습니다.

SRCDST 경로, 그리고 MODEL_DIRS 배열을 본인 환경에 맞게 수정해서 사용하시면 됩니다.



📖 관련 글