LightFile NextLightFile Next

インストールと起動

インストール・実行・サブコマンドに関するトラブルシューティング

インストールや実行時によくある問題と解決方法をまとめています。

Linux: コマンドが見つからない

症状: lightfile-batch: command not found

解決方法:

  1. インストールディレクトリがPATHに含まれているか確認:

    echo $PATH
  2. PATHに追加(例: $HOME/binにインストールした場合):

    echo 'export PATH="$HOME/bin:$PATH"' >> ~/.bashrc
    source ~/.bashrc

Windows: ランタイムエラー

症状: Windows 7/8/8.1で「VCRUNTIME140.dll が見つからない」というエラーが表示される。

原因: Universal C Runtime(UCRT)がインストールされていません。

解決方法:

Windows Update経由でのインストール(推奨)

Windows Updateを最新にすることで、UCRTが自動的にインストールされます。更新プログラム: KB2999226

手動でのインストール

Windows Updateが利用できない場合、以下から手動でインストールできます:

Update for Universal C Runtime in Windows(KB2999226)

確認方法

lightfile-batch --version
# エラーが表示される場合は、UCRTのインストールが必要です

対応OS

  • Windows 10以降 - そのまま実行可能
  • Windows Server 2016以降 - そのまま実行可能
  • Windows 7/8/8.1 - 追加のランタイム(UCRT)が必要な場合があります
  • Windows Server 2012/2012 R2 - 追加のランタイム(UCRT)が必要な場合があります

Windows: PowerShell実行ポリシーエラー

症状: PowerShellスクリプトの実行時にエラーが表示される。

解決方法:

# 現在のユーザーに対して実行ポリシーを変更
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

# その後、インストールスクリプトを再実行
irm https://bin.ideamans.com/install/lightfile-batch.ps1 | iex

macOS: セキュリティ警告が表示される

症状: 初回実行時に「開発元を確認できないため開けません」という警告が表示される。

原因: macOSのセキュリティ機能(Gatekeeper)による警告です。

解決方法:

  1. 「システム環境設定」→「セキュリティとプライバシー」を開く
  2. 「このまま許可」をクリック

または、ターミナルで以下を実行:

xattr -d com.apple.quarantine $(which lightfile-batch)

Linux: Permission denied

症状:

bash: ./lightfile-batch: Permission denied

原因: 実行権限が付与されていません。

解決方法:

chmod +x lightfile-batch
./lightfile-batch --version

すべてのプラットフォーム: バージョンが古い

症状: インストール後、古いバージョンが表示される。

原因: 別のディレクトリに古いバージョンがインストールされている可能性があります。

解決方法:

# インストール場所を確認
which lightfile-batch  # Linux/macOS
where.exe lightfile-batch  # Windows

# 古いバージョンを削除してから再インストール

ロックファイルが残っている

症状:

LightFile Batchが実行されていないのに、以下のエラーが表示されて起動できない:

別のプロセスが実行中のため終了します

原因:

プロセスが異常終了(強制終了、クラッシュ、システム再起動など)した場合、ロックファイルが削除されずに残ることがあります。

対処方法:

  1. LightFile Batchが本当に実行中でないか確認:

    # プロセスを確認
    ps aux | grep lightfile-batch
    
    # Windows (PowerShell)
    Get-Process | Where-Object {$_.ProcessName -like "*lightfile-batch*"}
  2. 実行中のプロセスがない場合、ロックファイルを手動で削除:

    # Linux/macOS
    rm ~/.lightfile-next/batch/exclusive.lock
    
    # Windows (PowerShell)
    Remove-Item "$env:USERPROFILE\.lightfile-next\batch\exclusive.lock"
  3. 再度LightFile Batchを実行:

    lightfile-batch /path/to/images

別の対処方法(一時的):

排他制御を無効化して起動することもできます。ただし、複数のプロセスが同時に実行されるとデータ競合のリスクがあるため推奨しません。

lightfile-batch /path/to/images --non-exclusive

詳細は システムディレクトリ - 排他制御 を参照してください。

サブコマンド関連

必須フラグが不足

症状:

Error: required flag(s) "s3-bucket", "s3-acl" not set

各サブコマンドの必須フラグを確認して指定してください:

S3サブコマンド:

lightfile-batch s3 \
  --s3-bucket my-bucket \
  --s3-region us-west-2 \
  --s3-acl private

FTPサブコマンド:

lightfile-batch ftp \
  --ftp-host ftp.example.com \
  --ftp-user myuser \
  --ftp-password mypassword

SFTPサブコマンド:

lightfile-batch sftp \
  --sftp-host sftp.example.com \
  --sftp-user myuser

WebDAVサブコマンド:

lightfile-batch webdav \
  --webdav-url https://webdav.example.com/dav/

詳細は コマンドラインオプション - サブコマンド を参照してください。

表示言語の問題

日本語環境なのに英語で表示される

症状: システムは日本語環境だが、LightFile Batchのメッセージが英語で表示される。

原因: システムの言語設定が認識されていません。

解決方法:

明示的に日本語を指定して実行してください:

macOS/Linuxの場合:

LANG=ja_JP.UTF-8 lightfile-batch --help

Windowsの場合:

$env:LANG = "ja_JP.UTF-8"
lightfile-batch --help

英語で表示したいのに日本語になる

症状: 英語で表示したいが、日本語で表示される。

原因: システムの言語設定が日本語になっています。

解決方法:

明示的に英語を指定して実行してください:

macOS/Linuxの場合:

LANG=en_US.UTF-8 lightfile-batch --help

Windowsの場合:

$env:LANG = "en_US.UTF-8"
lightfile-batch --help

詳細は 表示言語の設定 を参照してください。