# Logstash起動時のエラー

**URL:** <https://discuss.elastic.co/t/logstash/159275>\
**Category:** 日本語による質問・議論はこちら\
**Created:** [December 4, 2018, 2:49am UTC](https://discuss.elastic.co/t/logstash/159275 "2018-12-04T02:49:17Z")\
**Posts on this page:** 1\
**Showing post:** 5

<div class="post-metadata">

**Author:** ![tsgkdt](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/tsgkdt/32/39151_2.png) [@tsgkdt](https://discuss.elastic.co/u/tsgkdt)\
**Post date:** [December 5, 2018, 1:07pm UTC](https://discuss.elastic.co/t/logstash/159275/5 "2018-12-05T13:07:19Z")

</div>

こんにちわ。  
確かに/tmpフォルダに書き込み権限がないと、同じエラーになることをLogstash6.5.1で確認しました。

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/f/d/fd23e812fe44e75d934487ecaff08c6611d94f29.png)

tmpが書き込み権限がないというのであれば、書き込みができる場所を  
Javaのテンポラリ用のフォルダの指定をすれば良い、ということになるかと思います。

そこで、EM\_TEMPDIRではなく、 **LS\_JAVA\_OPTS環境変数でJVM引数を指定** してみてください。

```auto
export LS_JAVA_OPTS="-Djava.io.tmpdir=/hoge/fuga"

```

/hoge/fugaは、logstash実行ユーザが書き込みができる場所とします。  
これで実行いただくと、tmpフォルダが書き込み権限なくても、/hoge/fuga以下を使うので起動エラーは避けられるはずです。

こちらはDockerで確認していますが、これを確認したときの起動コマンドはこちらになります。  
/tmpフォルダはReadOnly、新しく指定するtmp用のフォルダはReadWriteで。

```auto
docker run -it -v /home/test/1205:/tmp:ro \
                -v /home/test/hoge:/hoge/fuga:rw \
                -e LS_JAVA_OPTS=-Djava.io.tmpdir=/hoge/fuga \
                docker.elastic.co/logstash/logstash:6.5.1

```

これでlogstashを起動すると、jrubyのjarがtmpとして指定したフォルダにコピーされていることが確認できました。

 ![image](https://us1.discourse-cdn.com/elastic/original/3X/7/5/757be35ff14b45f101541bc492f6a20e50b6bcc5.png)

参考になれば幸いです。

---

_[View the full topic](https://discuss.elastic.co/t/logstash/159275)._
