スクリプト内でsudo hogeしようとするとPermission deniedで拒否される

投稿者: Anonymous

tcpdumpを実施するシェルを書いたところ、Permission deniedで拒否されました。

#!/bin/bash -v
TEST_DIR="/Users/"
sudo tcpdump -Ini en0 -w ${TEST_DIR}/test1.pcap -W1 -G40 &
pid=$!

tcpdump: /Users/test1.pcap: Permission denied

事前に

sudo chmod 644 /dev/bpf*

も実行してあり

visudo
UserHoge ALL=(ALL) NOPASSWD:ALL

ともしてあります。

解決

sudo tcpdump -Ini en0 -w ${TEST_DIR}/test1.pcap -W1 -G40 -Z root

-Z オプションで書き込み権限を指定する。root もしくは sudo できるユーザを指定することで、エラー無く実行が出来ました。

回答者: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *