Если это системный уровень crontab записи (/etc/crontab
), затем они пропускают имя пользователя, которое они должны выполнять как.
# For details see man 4 crontabs
# Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
Если, с другой стороны, они работают как как crontab пользователя (crontab -e
) затем они работающий как пользователь kaiyin
? Если не затем они не будут работать, потому что у пользователя, crontab которого это, нет доступа для чтения к /home/kaiyin
.
Как было упомянуто @Patrick в одном из комментариев к моему вопросу я столкнулся с проблемой с моими правилами NAT iptables
.
Мое правило NAT было:
$ iptables -t nat -A POSTROUTING ! -o eth0 -j MASQUERADE
Это означает, что весь трафик, выходное целевое устройство которого не интерфейс eth0 будет замаскирован. То же самое происходит и с локальным трафиком, поскольку он исходит из интерфейса lo .
После исправления правила NAT iptables
на:
$ iptables -t nat -A POSTROUTING ! -d 192.168.1.0/24 -j MASQUERADE
Моя проблема была решена!
Если у вас эта проблема с каждой запущенной программой, вы должны проверить правило брандмауэра вашего сервера. Убедитесь, что оно использует NAT
только для внешнего назначения. Ваша таблица маршрутизации не имеет смысла, если у вас есть широкое правило NAT
.
После исправления правила брандмауэра, для wget
, вы можете использовать опцию --bind-address
, чтобы выбрать, какой интерфейс вы хотите использовать:
wget --bind-address=192.168.1.200 http://192.168.1.200/
Из документации по wget wget:
'--bind-address=ADDRESS'
При создании клиентских TCP/IP соединений, привязывайте к ADDRESS на локальной Машина. АДРЕСС может быть указан в качестве имени хоста или IP-адреса. Настоящий сайт опция может быть полезна, если ваша машина привязана к нескольким IP-адресам.
Вы можете использовать файл .wgetrc , чтобы сделать его постоянным.