2016-09-07 5 views
0

私はUbuntu 16.04の新規インストールをインストールしましたが、私はUbuntu 14.04のようにカスタム設定ファイルで動作するようにワニスを取得できません。Ubuntu 16のワニスはファイルのカスタムdefault.vclを読み取ることができません

I have read/etc/default/varnishに変更すると、init.dの代わりにsystemdが使用されるため、何の効果もありません。

ので、プロセスは編集/lib/systemd/system/varnish.serviceに変更されました:今、私は(私が働いているgitリポジトリである)カスタムVCLとdefault.vclを交換したい

[Unit] 
Description=Varnish HTTP accelerator 
Documentation=https://www.varnish-cache.org/docs/4.1/ man:varnishd 

[Service] 
Type=simple 
LimitNOFILE=131072 
LimitMEMLOCK=82000 
ExecStart=/usr/sbin/varnishd -j unix,user=vcache -F -a :6081 -T localhost:6082 -f /etc/varnish/default.vcl -S /etc/varnish/secret -s malloc,256m 
ExecReload=/usr/share/varnish/reload-vcl 
ProtectSystem=full 
ProtectHome=true 
PrivateTmp=true 
PrivateDevices=true 

[Install] 
WantedBy=multi-user.target 

。だから私は-f /home/bozdoz/path/to/default.vclを持っているExecStartに行を変更し、私はデーモンを再ロードし、サービスを再起動した後、次のエラーを取得:

>> sudo systemctl status varnish.service 
● varnish.service - Varnish HTTP accelerator 
    Loaded: loaded (/lib/systemd/system/varnish.service; enabled; vendor preset: enabled) 
    Active: failed (Result: exit-code) since Wed 2016-09-07 14:29:58 ADT; 5s ago 
    Docs: https://www.varnish-cache.org/docs/4.1/ 
      man:varnishd 
    Process: 7588 ExecStart=/usr/sbin/varnishd -j unix,user=vcache -F -a :6081 -T localhost:6082 -f /home/bozdoz/path/to/default.vcl 
Main PID: 7588 (code=exited, status=2) 

Sep 07 14:29:58 bozdoz-dell systemd[1]: Started Varnish HTTP accelerator. 
Sep 07 14:29:58 bozdoz-dell varnishd[7588]: Error: Cannot read -f file (/home/bozdoz/path/to/default.vcl) 

私はワニスによって所有されるカスタムファイルのパーミッションを変更しようとしている、またはvcache、どちらもうまくいきませんでした。私は777(テスト目的のみ)にアクセス許可を開こうとしましたが、それでも失敗しました。

また、カスタムファイルを/etc/varnish/default.vclにコピーすると、ワニスが正常に動作します。問題はファイルをgitリポジトリに入れたいのですが、ワニスサービスはカスタムファイルにアクセスできないようです。

システムファイルで別のディレクトリのカスタムファイルを使用するにはどうすればよいですか?

答えて

1

/home/bozdozまたは/home/bozdozdefault.vclの間の中間ディレクトリのいずれかのアクセス許可が、このアクセス権拒否エラーを引き起こしていると思われます。

もっと一般的な提案ができる場合は、/lib/systemd/systemのサービスファイルを変更することをお勧めします。 Varnishパッケージが更新されると、変更内容を上書きする可能性があります。代わりに、次の2つのオプションがあります:

  • /etc/systemd/system/varnish.serviceにコピー /lib/systemd/system/varnish.service

    1. を、代わりにそこにあなたの変更を行い、ディレクトリを作成し、/etc/systemd/system/varnish.service.d/override.confを提出し、そこデルタを適用

    override.confはになりますこのように:

    ExecStart= 
    ExecStart=/usr/sbin/varnishd -j unix,user=vcache -F -a :6081 -T localhost:6082 -f /home/bozdoz/path/to/default.vcl -S /etc/varnish/secret -s malloc,256m 
    

    最初のステートメントは既存のExecStartディレクティブをクリアし、2番目のステートメントは新しいステートメントを設定します。

    +0

    まだアクセス許可に関連する問題を解決できないようです。変更する必要があるときはいつでも、repo内のdefault.vclファイルを/ etc/varnishディレクトリにコピーするだけです。カスタムファイルを使用できない場合は、これまでのところ最大のものになりました。 – bozdoz

    関連する問題