Getopt перестроит параметры и поместит все не опциональные параметры в конце, после --
:
$ getopt -o a: -- nonoption-begin -a x nonoption-middle -a b nonoption-end
-a 'x' -a 'b' -- 'nonoption-begin' 'nonoption-middle' 'nonoption-end'
Если Вы действительно должны знать, что параметр неопции вначале, можно проверить ли $1
опция, и если это не извлечение это перед вызовом getopt
:
if [ ${1#-} = $1 ]; then
NONOPTION=$1
shift
fi
ARGS=$(getopt ...)
Кроме выслеживания каждого порты, opened/required NFS, рассмотрите установку туннеля VPN между Вашим брандмауэром, так как Вы управляете обоими концами. Затем смонтируйте свою nfs через туннель, который сохранит Вас большая проблема и брандмауэр (и NAT) конфигурация.
Сервер NFS позади firwall требует специальной установки на самом сервере, однако я сомневаюсь, что можно сделать это с устройством NAS. Следующее является гильдией от Redhat https://access.redhat.com/knowledge/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Storage_Administration_Guide/s2-nfs-nfs-firewall-config.html
Я думаю, что туннель vpn является действительно Вашим лучшим выбором если не единственный выбор.
Принятие Вас управляет брандмауэрами и на Вашем локальном сайте и на удаленном сайте (имеющий отношение к Вашей собственной сети, которая является), Вы пытались временно отбросить брандмауэры с обеих сторон? Это могло бы очень хорошо быть проблемой блокирования порта, происходящей от Вашего поставщика ссылки.
В клиентской ОС NFS вы можете запустить:
showmount -e your_nfs_server_ip
В то же время открыть другой терминал на той же машине и запустить:
netstat -nputw
После этого вы увидите исходящие порты.
В моем случае помогло добавление порта 55493 к NAT маршрутизатора