Я заставил Bluetooth работать!
Первая загрузка Исходный код отсюда и извлечение это к Home
.
После этого, откройтесь rtbth_core_bluez.c
файл, и затем пойдите, чтобы выровнять 86 и изменить его от:
int rtbt_hci_dev_send(struct sk_buff *skb)
{
struct hci_dev *hdev = (struct hci_dev *)skb->dev;
к:
int rtbt_hci_dev_send(struct hci_dev *hdev, struct sk_buff *skb)
{
//struct hci_dev *hdev = (struct hci_dev *)skb->dev;
Идут, чтобы выровнять 216 и изменить его от:
status = hci_recv_frame(skb);
к:
status = hci_recv_frame(hdev,skb);
Тогда идут, чтобы выровнять 406 и изменить его от:
hdev->ioctl = rtbt_hci_dev_ioctl;
к:
//hdev->ioctl = rtbt_hci_dev_ioctl;
Сохраняют, затем открывают rtbth_hlpr_linux.c
и идут для выравнивания 575. Измените его от:
//daemonize((PSTRING)&pOSTask->taskName[0]);
к [1 131]
(PSTRING)&pOSTask->taskName[0];
Теперь Вы готовы Скомпилировать. Скомпилируйте его в Терминале:
cd rtbth-3.9.3
make
sudo make install
Есть несколько вещей, которые могут пойти не так. Добавьте -vvv
, чтобы ssh напечатал подробную трассировку того, что он делает, и посмотрите, где он останавливается.
Проблема может быть на клиенте или на сервере.
Распространенная проблема на сервере - если вы подключаетесь с клиента, для которого время обратного поиска DNS истекло. («Обратный поиск DNS» означает возврат с IP-адреса клиентского компьютера к имени хоста. Это не очень полезно для безопасности, лишь немного полезно для диагностики попыток взлома записей журнала, но конфигурация по умолчанию делает это в любом случае.) Чтобы отключить обратный поиск DNS, добавьте UseDNS no
к /etc/ssh/sshd_config
(вам необходимо быть пользователем root на сервере; не забудьте перезапустить службу SSH после этого).
Еще одна вещь, которая может пойти не так , это GSSAPI тайм-аут аутентификации. Если вы не знаете, что это такое, вы, вероятно, не полагаетесь на это; Вы можете отключить его, добавив строку GSSAPIAuthentication no
в /etc/ssh/ssh_config
или ~/.ssh/config
(это на стороне клиента).
Пусть время входа в систему и посмотреть, сколько времени это займет:
[root@gislab00207 ~]# time ssh root@ISSLABNTL01
root@isslabntl01's password:
Last login: Fri Oct 4 07:55:03 2013 from 3.60.40.232
[root@ISSLABNTL01 ~]# exit
logout
Connection to ISSLABNTL01 closed.
real 0m45.192s
user 0m0.003s
sys 0m0.005s
You have new mail in /var/spool/mail/root
[root@gislab00207 ~]#
См. Выше, это заняло около 45 секунд для входа -------- ОЧЕНЬ МЕДЛЕННО
После того, как вы войдете в систему как root, отредактируйте файл sshd_config и измените запись UseDNS, как показано ниже. Здесь я использую sed вместо редактирования файла.
[root@ISSLABNTL01 ~]# grep -i dns /etc/ssh/sshd_config
#UseDNS yes
[root@ISSLABNTL01 ~]# sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config
[root@ISSLABNTL01 ~]# grep -i dns /etc/ssh/sshd_config
UseDNS no
[root@ISSLABNTL01 ~]# service sshd restart
Stopping sshd: [ OK ]
Starting sshd: [ OK ]
[root@ISSLABNTL01 ~]# exit
Давайте посчитаем время входа в систему и посмотрим, сколько времени это займет.
[root@gislab00207 ~]# time ssh root@ISSLABNTL01
root@isslabntl01's password:
Last login: Fri Oct 4 07:55:03 2013 from 3.60.40.232
[root@ISSLABNTL01 ~]# exit
logout
Connection to ISSLABNTL01 closed.
real 0m6.192s
user 0m0.003s
sys 0m0.005s
You have new mail in /var/spool/mail/root
[root@gislab00207 ~]#
Видите, теперь мне потребовалось 6 секунд, время для ввода пароля.
UseDNS no
в /etc/ssh/sshd_config
, устранил мою проблему
– Barmar
12.12.2016, 08:13
В моем случае проблему можно решить, перезапустив systemd-logind
:
systemctl restart systemd-logind
Это упомянуто на Serverfault .
Я должен делать это регулярно, хотя, и я не знаю, какова основная причина проблемы.
Это что-то не так с установкой Ubuntu.
Чтобы исправить это, вы должны изменить эту строку в /etc/nsswitch.conf :
hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
и изменить ее на эту:
[111 ] Отладочный вывод для ssh в моем случае просто остановился на 30 секунд, пока он «подключался». Решение оказалось связано с настройками DNS в моей локальной системе. Предыдущая конфигурация сети оставила фиктивный DNS-сервер в файле /etc/resolv.conf
. Замена его текущим DNS-сервером устранила проблему.
Для меня было изменение системы DNS на 127.0.0.1, до этого это был несуществующий хост.
nano /etc/resolv.conf
И напишите следующее
domain localdomain
search localdomain
(Removed this line) ===> nameserver 10.0.0.1
(Added this line) ===> nameserver 127.0.0.1
Я мог бы решить проблему медленного пароля с помощью ssh - отметив Включить DNS Relay в настройках DHCP на моем маршрутизаторе dlink. После этого соединения с SSH работали в течение секунды.
Network Settings -> Router Settings -> Enable DNS Relay [x]
Конфигурация по умолчанию перенаправляет каждый DNS-запрос поставщику. Это было медленно, хотя я соединялся с ssh pi@10.0.0.103. Подсказкой для решения была запись в /etc/resolv.conf "search upc.at", которая предоставляется через dhcp.
Руководство по dlink гласит:
When DNS Relay is enabled, DHCP clients of the router will be assigned
the router's LAN IP address as their DNS server. All DNS requests that
the router receives will be forwarded to your ISPs DNS servers.
When DNS relay is disabled, all DHCP clients of the router will
be assigned the ISP's DNS server.
После выпуска dhcp на клиенте и сервере соединение через SSH снова было быстрым. НТН.
Я не знаю столько об окружающей среде автора, сколько хотел бы, но для других с похожей проблемой это может быть проблема с sssd
, который мы используем для встраивания ldap mojo.
Это происходит со мной:
$ time ssh server.example.com
real 2m0.018s
user 0m0.006s
sys 0m0.004s
Я должен получить доступ к серверу (в моем случае через консоль), а затем выполнить:
service restart sssd
После что, вещи просто работают. У меня не было времени, чтобы отладить основную причину, но это исправление работает для меня.
UseDNS no
зафиксировал его как очарование. Я нахожусь на внутренней сети без сервера DNS для обработки обратных поисков для внутреннего дюйм/с. – jpmc26 16.12.2014, 05:53GSSAPIAuthentication
? (гуглящий в течение 15 минут didn' t пролитый свет на это) – phuclv 10.03.2017, 13:07