Я пытаюсь запустить простую команду (ls
) с помощью модуля fabric
, следуя примерам, приведенным в документации Fabric .Однако, когда я пытаюсь вызвать метод run
для объекта Connection
, я получаю
socket.gaierror: [Errno 8] имя узла или имя сервера не предоставлены или не известны
import fabric
c = fabric.Connection('host')
c.run('ls')
Ранее я использовал модуль socket
, и вышеописанная ошибка обычно возникает при запуске socket.gethostbyname(socket.gethostname())
для привязки сокета к машине.Однако socket.gethostbyname(socket.gethostname())
работает без ошибок для меня.
Как успешно использовать fabric
для запуска команд в оболочке?Поскольку fabric
использует SSH, нужны ли какие-либо конфигурации SSH перед использованием fabric
?
Я использую fabric
на macOS Sierra 10.12.5 на Python 3.7.0