The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Net::SSH::Perl"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (Perl)
Изначальное сообщение [ Отслеживать ]

"Net::SSH::Perl"  +/
Сообщение от dario email on 09-Янв-13, 18:26 
Доброго времени суток !

Использую модуль Net::SSH::Perl для подключения к серверу и удаленного выполнения команд , но выскакиевает ошибка :

root@mail:/ # perl /usr/local/pevl
Can't call method "login" on an undefined value at /usr/local/pevl line 3.
root@mail:/ #

Код :
use Net::SSH::Perl
    my $ssh = Net::SSH::Perl ->new("192.168.10.1");
    $ssh->login("admin","911") or warn ("not logged");
    my($stdout, $stderr, $exit) = $ssh->cmd("df -h");
    print "$stdout\n$stderr\n$exit\n"

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Net::SSH::Perl"  +/
Сообщение от ACCA (ok) on 09-Янв-13, 19:27 
Проверяй, что получилось:
my $ssh = Net::SSH::Perl ->new("192.168.10.1") || die $!;


Сейчас у тебя проблема. Включи debug:

my $ssh = Net::SSH::Perl ->new("192.168.10.1",debug=>1) || die $!;

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Net::SSH::Perl"  +/
Сообщение от dario on 10-Янв-13, 02:05 
> Проверяй, что получилось:
> my $ssh = Net::SSH::Perl ->new("192.168.10.1") || die $!;
> Сейчас у тебя проблема. Включи debug:
> my $ssh = Net::SSH::Perl ->new("192.168.10.1",debug=>1) || die $!;

По прежнему
root@mail:/ # perl /usr/local/pevl
Can't call method "login" on an undefined value at /usr/local/pevl line 3.
root@mail:/ #

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

6. "Net::SSH::Perl"  +/
Сообщение от ACCA (ok) on 10-Янв-13, 05:01 
> root@mail:/ # perl /usr/local/pevl
> Can't call method "login" on an undefined value at /usr/local/pevl line 3.

Поставь `;' :


use Net::SSH::Perl;

И перед ним вставь


use warnings;
use strict;

не пиши ничего на Perl без этих команд.


В конце print тоже не помешает. Потом дописывать будешь, снова глюк словишь.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

7. "Net::SSH::Perl"  +/
Сообщение от dario email on 10-Янв-13, 12:24 
>[оверквотинг удален]
>
 
> use Net::SSH::Perl;
>

> И перед ним вставь
>
 
> use warnings;
> use strict;
>

> не пиши ничего на Perl без этих команд.
> В конце print тоже не помешает. Потом дописывать будешь, снова глюк словишь.

Поправил
  
use warnings;
use strict;
use Net::SSH::Perl;
    my $ssh = Net::SSH::Perl ->new("192.168.10.1") || die $!;
    $ssh->login("admin","911") or warn ("not logged");
    print "$stdout\n$stderr\n$exit\n";
    print "END\n";

Результат:

root@mail:/ # perl /usr/local/pevl
Permission denied at /usr/local/pevl line 5
root@mail:/ #


Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "Net::SSH::Perl"  +/
Сообщение от dario email on 10-Янв-13, 16:54 
>[оверквотинг удален]
> use strict;
> use Net::SSH::Perl;
>     my $ssh = Net::SSH::Perl ->new("192.168.10.1") || die $!;
>     $ssh->login("admin","911") or warn ("not logged");
>     print "$stdout\n$stderr\n$exit\n";
>     print "END\n";
>  Результат:
> root@mail:/ # perl /usr/local/pevl
> Permission denied at /usr/local/pevl line 5
> root@mail:/ #

Дело было в настройках sshd_config

PasswordAuthentication yes


Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру