2011-10-16 12 views
5

Debain .debパッケージを作成しようとしています。パッケージが正常に作成されているが、私はそれをインストールしようとすると、私は次のエラーを取得しています:dpkgがエラー "ディレクトリです"

unable to open file '/var/lib/dpkg/tmp.ci//opt': Is a directory 

パッケージのディレクトリ構造は次のとおりです。PREINSTで

. 
└── DEBIAN 
    ├── control 
    ├── opt 
    │   └── myDir 
    │    └── myfile 
    ├── postinst 
    └── preinst 

私がきた - mkdir -p /opt/myDirのpostinstは空

です

パッケージを別のホストにインストールしようとすると、以下のエラーが表示されます。

package control info rmdir of `opt' didn't say not a dir: Directory not empty

アイデア?

+1

まず、preinstにディレクトリを作成したくありません。 Dpkgは必要に応じてこれを作成します。次に、/ optにDebianパッケージをインストールしたくありません。これはDebian PolicyとFHSの違反です。あなたがなぜエラーを見ているのか正確にはわかりません。 –

+0

'preinst'スクリプト全体を投稿してください。 – Flimzy

答えて

4

ディレクトリレイアウトが間違っています。あなたはlintianとそのフォーマットをテストすることができ、あなたのパッケージをビルドした後

. 
├── opt 
│ └── myDir 
│  └── myfile 
└── DEBIAN 
    ├── control 
    ├── postinst 
    └── preinst 

:それはこのようにする必要があり

lintian my-package.deb 

あなたとlintianは私がそれを修正助けたと私は同じ問題を抱えていました。

関連する問題