Debian には samba と samba-common という 2 つの主要な Samba パッケージがあります。設定ファイルはsambaまたはsamba-commonのどちらのパッケージに属しているかを/etc/samba/smb.conf
どうやって知ることができますか?/etc/samba/smb.conf
(私はすでにsamba-commonに含まれていることを知っています)
答え1
以下のファイルは/etc/
通常パッケージに直接公開されず、「メンテナンススクリプト」によって管理されます。これは/var/lib/dpkg/info
インストール中に実行される名前で終わります。に保存されますinst
。
最初に試す必要があるのはパッケージ検索です。
dpkg -S /etc/samba/smb.conf
この場合、何も検索されません。 (このコマンドが一致を返すと、一致が部分的になる可能性があるため、一致するファイル名も確認してください。)
管理者スクリプトを見てください。
$ grep smb.conf /var/lib/dpkg/info/*inst
/var/lib/dpkg/info/samba-common-bin.postinst: echo "Checking smb.conf with samba-tool"
/var/lib/dpkg/info/samba-common-bin.postinst: echo "Checking smb.conf with testparm"
/var/lib/dpkg/info/samba-common.postinst:NEWFILE=$TEMPDIR/smb.conf
/var/lib/dpkg/info/samba-common.postinst:CONFIG=/etc/samba/smb.conf
/var/lib/dpkg/info/samba-common.postinst:configure_smb_conf() {
/var/lib/dpkg/info/samba-common.postinst: configure_smb_conf "$CONFIG"
/var/lib/dpkg/info/samba-common.postinst:cp /usr/share/samba/smb.conf "$NEWFILE"
/var/lib/dpkg/info/samba-common.postinst:configure_smb_conf "$NEWFILE"
/var/lib/dpkg/info/samba-common.postinst: echo " sudo cp /usr/share/samba/smb.conf $CONFIG"
ファイルはによって作成されたため、samba-common.postinst
そのファイルを担当するパッケージはですsamba-common
。このパッケージは初期設定ファイルを提供し、/usr/share/samba/smb.conf
それを/etc/samba/smb.conf
使用してインストールします。ucf
該当する場合は、ユーザー設定(ワークグループ名など)をここにマージし、アップグレード時に変更を処理します。パッケージが削除されると、削除メンテナンススクリプト/etc/samba/smb.conf
はucf
。