Вы используете нестандартные опции BSD, будь то под Linux или Solaris.
Переносной способ - использовать опцию -o
, чтобы указать, какие поля вы хотите отобразить, например ps -o pid,args
. Обратите внимание, что если вы не используете последнее обновление 11.3 или более новую версию, список аргументов будет ограничен 80 символами, если вы не являетесь root или владельцем процесса.
В качестве альтернативы можно использовать pgrep -f
, который будет искать полную командную строку.
Я вижу два варианта, которые вы должны попробовать, прежде чем возиться с сохранением IP-адреса в переменной. (Кроме того, если у серверов уже нет имени хоста, как вы узнаете новый IP?)
Попробуйте подключиться с именем хоста вместо IP, если это динамический IP.
mount.cifs //cifs.server.com/pictures ~/otherpc/pictures -o user=me,domain=mynetwork,password=12345,vers=3.0
У меня была точно такая же проблема после do-release-upgrade
в Ubuntu 18.04.1 LTS. Все акции, которые благополучно монтировались до этого, заканчивались этим уродливым
mount error: could not resolve address for server.domain.local: Unknown error
nslookup
разрешал правильно, syslog
и strace
ничего не показывали.
В конце концов, проблема заключалась в домене .local
вместе с изменением (, возможно, во время обновления выпуска )в /etc/nsswitch.conf
, ведь демон mDNS Avahi/Bonjour mdns4_minimal
был помещен перед поиском DNS.
Таким образом, проблема была решена после того, как я изменил порядок с
hosts: files mdns4_minimal [NOTFOUND=return] resolve [!UNAVAIL=return] dns
-
hosts: files dns mdns4_minimal [NOTFOUND=return] resolve [!UNAVAIL=return]
Я не могу вспомнить все полезные ссылки, но эта действительно помогла:https://askubuntu.com/a/853284/810573
Вы можете получить IP с помощьюnmblookup NAME | head -n 1 | cut -d ' ' -f 1
Поместите его в переменную NAME_IP
с помощьюNAME_IP="$(nmblookup NAME | head -n 1 | cut -d ' ' -f 1)"