LINUX.ORG.RU

Сообщения shtrih

 

Включение ноутбука при появление питания

Всем привет.

Есть старый ноут Samsung R60 plus. Использую его в качестве сервера с ubuntu. Периодически в доме пропадает свет.

Хочется чтобы он выключался, тогда зарядка аккумулятора падает до 20%. Это вроде реализовать не сложно. Примеры в инете нашёл.

А как реализовать его просыпание, когда появится питание, если такой функции в биосе нет? Видимо он совсем старый) WakOnLan также нет.

Перемещено Dimez из general

 ,

shtrih
()

Настройка asterisk extension

Всем привет.

Требуется помощь в настройки extention.conf в asterisk.

Asterisk делает звонок через usb модем 3G. Звонок выполняется через callfile. Всё работает корректно, но требуется, чтобы при любом статусе ответа на звонок прописывался CDR(zakaz_id)=${zakaz_id},а пока получается, что прописывается только если человек ответит на звонок.

[dongle-outgoing-call]
;диалплан для исходящих вызовов
exten => _+7XXXXXXXX.,1,Answer()
same => n,DIAL(Dongle/dongle0/${EXTEN},,trg)           
same = n,Set(CDR(zakaz_id)=${zakaz_id})
same = n,Playback(status1,skip)
same = n,Wait(1)
same => n,NoOP(Dialstatus: ${DIALSTATUS})  ;проверяем статус
same => n,GotoIf($["${DIALSTATUS}"="CHANUNAVAIL"]?busy)    
same => n,GotoIf($["${DIALSTATUS}"="BUSY"]?busy)           
same => n,GotoIf($["${DIALSTATUS}"="CONGESTION"]?busy)            
same => n,GotoIf($["${DIALSTATUS}"="NOANSWER"]?noanswer)      
;same => n,GotoIf($["${DIALSTATUS}"="ANSWER"]?answer)      
same => n(busy),(CDR(zakaz_id)=${zakaz_id})
;same => n(answer),(CDR(zakaz_id)=${zakaz_id})
same => n(noanswer),(CDR(zakaz_id)=${zakaz_id})
same => n,Hangup()

Лог если был ответ (CDR(zakaz_id)=${zakaz_id} успешно записывается и в базу попадает)

    -- Attempting call on Dongle/dongle0/+79269991313 for +79269991313@dongle-outgoing-call:1 (Retry 1)
    -- Called dongle0/+79269991313
    -- Dongle/dongle0-0100000005 is making progress
    -- Dongle/dongle0-0100000005 answered
    -- Executing [+79269991313@dongle-outgoing-call:1] Answer("Dongle/dongle0-0100000005", "") in new stack
    -- Executing [+79269991313@dongle-outgoing-call:2] Dial("Dongle/dongle0-0100000005", "Dongle/dongle0/+79269991313,,trg") in new stack
[Jun  6 19:33:21] WARNING[17290][C-00000004]: channel.c:194 channel_request: [dongle0] Request to call on device which can not make call at this moment
[Jun  6 19:33:21] WARNING[17290][C-00000004]: app_dial.c:2525 dial_exec_full: Unable to create channel of type 'Dongle' (cause 44 - Requested channel not available)
  == Everyone is busy/congested at this time (1:0/0/1)
    -- Executing [+79269991313@dongle-outgoing-call:3] Set("Dongle/dongle0-0100000005", "CDR(zakaz_id)=86482") in new stack
    -- Executing [+79269991313@dongle-outgoing-call:4] Playback("Dongle/dongle0-0100000005", "status1,skip") in new stack
    -- <Dongle/dongle0-0100000005> Playing 'status1.slin' (language 'ru')
    -- Executing [+79269991313@dongle-outgoing-call:5] Wait("Dongle/dongle0-0100000005", "1") in new stack
    -- Executing [+79269991313@dongle-outgoing-call:6] NoOp("Dongle/dongle0-0100000005", "Dialstatus: CHANUNAVAIL") in new stack
    -- Executing [+79269991313@dongle-outgoing-call:7] GotoIf("Dongle/dongle0-0100000005", "1?busy") in new stack
    -- Goto (dongle-outgoing-call,+79269991313,12)
[Jun  6 19:33:25] WARNING[17290][C-00000004]: pbx.c:2864 pbx_extension_helper: No application '' for extension (dongle-outgoing-call, +79269991313, 12)
  == Spawn extension (dongle-outgoing-call, +79269991313, 12) exited non-zero on 'Dongle/dongle0-0100000005'
[Jun  6 19:33:25] NOTICE[17290][C-00000004]: pbx_spool.c:460 attempt_thread: Call completed to Dongle/dongle0/+79269991313
[Jun  6 19:33:25] WARNING[1172]: cdr_odbc.c:160 execute_cb: cdr_odbc: Error in ExecDirect: -1, query is: INSERT INTO cdr (calldate,clid,src,dst,dcontext,channel,dstchannel,lastapp,lastdata,duration,billsec,disposition,amaflags,accountcode,uniqueid,userfield) VALUES ({ts '2022-06-06 19:33:21'},?,?,?,?,?,?,?,?,?,?,?,?,?,?,? )
[Jun  6 19:33:25] ERROR[1172]: cdr_odbc.c:189 odbc_log: CDR direct execute failed

Лог если не ответили (CDR(zakaz_id)=${zakaz_id} не работает. В базе поле пустое)

 Attempting call on Dongle/dongle0/+79269991313 for +79269991313@dongle-outgoing-call:1 (Retry 1)
    -- Called dongle0/+79269991313
    -- Dongle/dongle0-0100000006 is making progress
[Jun  6 19:36:37] NOTICE[19941]: pbx_spool.c:447 attempt_thread: Call failed to go through, reason (3) Remote end Ringing
[Jun  6 19:36:37] NOTICE[19941]: pbx_spool.c:450 attempt_thread: Queued call to Dongle/dongle0/+79269991313 expired without completion after 0 attempts
[Jun  6 19:36:38] WARNING[1172]: cdr_odbc.c:160 execute_cb: cdr_odbc: Error in ExecDirect: -1, query is: INSERT INTO cdr (calldate,clid,src,dst,dcontext,channel,dstchannel,lastapp,lastdata,duration,billsec,disposition,amaflags,accountcode,uniqueid,userfield) VALUES ({ts '2022-06-06 19:36:11'},?,?,?,?,?,?,?,?,?,?,?,?,?,?,? )
[Jun  6 19:36:38] ERROR[1172]: cdr_odbc.c:189 odbc_log: CDR direct execute failed


 ,

shtrih
()

Установка на Windows 10 - Ubuntu 18.04 Server

Добрый вечер!

Понимаю, что тема наверное изъезжена, но как то боязно потерять винду, при установки линукс.

Установлен Windows 10. Один раздел на 29Гб выделил для линукс. Отформатировал его временно в fat32

При установки линукс я выбираю данный раздел для установки. Выбираю, чтобы его отформатировали в ext4 и монтировали в /. Далее мне показывается картинка, что будут созданы два раздела - один 29Гб /, а второй 1Гб efi существующий. Вопрос, не перетрет ли он полностью раздел efi под себя и оставит меня без винды? Будет ли при загрузке компа спрашивать виндоус или линукс на выбор?

https://i.ibb.co/VTXWHQg/123.jpg https://i.ibb.co/zrrTS0c/222.jpg https://i.ibb.co/7CxNq4g/333.jpg https://i.ibb.co/dBpgnwj/444.jpg

 , , ,

shtrih
()

chan_dongle какой версии поставить на asterisk 13

Всем привет.

У меня Ubuntu 18.04 , астериск 13 версии.

Ни как не хочет корректно работать GSM модем.

Хочу обновить chan_dongle, но не совсем понимаю, как посмотреть его текущею версию и какую лучше сейчас поставить?

Сейчас установлен wget https://github.com/oleg-krv/asterisk-chan-dongle/archive/asterisk13.zip.

Как понять, какая версия chan_dongle стоит?

Нашёл в инете ссылку на wget http://softnastroy.com/downloads/asterisk/chan_dongle-1.1.r14.tgz

Но при установке одни ошибки. Что посоветуете? Какую лучше поставить?

root@shtrih-srv:/opt# cd chan_dongle-1.1.r14
root@shtrih-srv:/opt/chan_dongle-1.1.r14# aclocal
aclocal: warning: autoconf input should be named 'configure.ac', not 'configure.in'
root@shtrih-srv:/opt/chan_dongle-1.1.r14# autoconf
root@shtrih-srv:/opt/chan_dongle-1.1.r14# automake -a
automake: warning: autoconf input should be named 'configure.ac', not 'configure.in'
configure.in:50: installing './compile'
automake: error: no 'Makefile.am' found for any configure output
root@shtrih-srv:/opt/chan_dongle-1.1.r14# ./configure
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking target system type... i686-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
/opt/chan_dongle-1.1.r14/missing: Unknown `--is-lightweight' option
Try `/opt/chan_dongle-1.1.r14/missing --help' for more information
configure: WARNING: 'missing' script is too old or missing
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking for style of include used by make... GNU
checking dependency style of gcc... none
checking how to run the C preprocessor... gcc -E
checking for strip... strip
checking for rm... rm
checking for library containing iconv... none required
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking termios.h usability... yes
checking termios.h presence... yes
checking for termios.h... yes
checking whether asterisk.h in ../include... no
checking whether asterisk.h in /usr/include... yes
checking asterisk.h usability... yes
checking asterisk.h presence... yes
checking for asterisk.h... yes
checking whether iconv.h in /usr/include... yes
checking iconv.h usability... yes
checking iconv.h presence... yes
checking for iconv.h... yes
checking for iconv use const inbuf... no
checking for iconv_t in iconv.h... yes
checking for AST_CONTROL_SRCCHANGE in asterisk/frame.h... yes
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for size_t... yes
checking for ssize_t... yes
checking for uint64_t... yes
checking whether CC supports -fvisibility=hidden... yes
checking whether CC supports -fPIC... yes
checking whether CC supports -Wall... yes
checking whether CC supports -Wextra... yes
checking whether CC supports -MD -MT conftest.o -MF /dev/null -MP... yes
checking whether DESTDIR is /usr/lib/asterisk/modules... yes
checking for working memcmp... yes
checking for memchr... yes
checking for memmove... yes
checking for memset... yes
checking for memmem... yes
checking for strcasecmp... yes
checking for strchr... yes
checking for strncasecmp... yes
checking for strtol... yes
checking for realpath... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands
root@shtrih-srv:/opt/chan_dongle-1.1.r14# make
gcc -g -O2 -O6 -I.  -D_GNU_SOURCE -I/usr/include -I/usr/include -DHAVE_CONFIG_H  -fvisibility=hidden -fPIC -Wall -Wextra -MD -MT app.o -MF .app.o.d -MP  -o app.o -c app.c
In file included from app.c:21:0:
/usr/include/asterisk/version.h:1:2: error: #error "Do not include 'asterisk/version.h'; use 'asterisk/ast_version.h' instead."
 #error "Do not include 'asterisk/version.h'; use 'asterisk/ast_version.h' instead."
  ^~~~~
app.c: In function ‘app_register’:
app.c:162:43: warning: passing argument 2 of ‘ast_register_application2’ from incompatible pointer type [-Wincompatible-pointer-types]
   ast_register_application2 (dca[i].name, (app_func_t)(dca[i].func), dca[i].synopsis, dca[i].desc, self_module());
                                           ^
In file included from app.c:20:0:
/usr/include/asterisk/module.h:537:5: note: expected ‘int (*)(struct ast_channel *, const char *)’ but argument is of type ‘int (*)(struct ast_channel *, void *)’
 int ast_register_application2(const char *app, int (*execute)(struct ast_channel *, const char *),
     ^~~~~~~~~~~~~~~~~~~~~~~~~
Makefile:65: recipe for target 'app.o' failed
make: *** [app.o] Error 1
root@shtrih-srv:/opt/chan_dongle-1.1.r14#

 ,

shtrih
()

Asterisk и GSM модем E1550

Добрый вечер!

Решил настроить asterisk для исходящих звонок, через GSM модем Huawei E1550.

За последние несколько дней, прочитал кучу примеров, что у людей всё таки получалось это делать и работало нормально. Я пока победить никак не могу. У меня проходит звонок один, НО после того, как я кладу трубку, модем пропадает и требуется перезагрузка компьютера, чтобы астериск его увидел. (Хотя фактически в устройствах он есть)

Что я предпринимал:

  1. Прошивал модем двумя разными прошивками: E155XUpdate_11.608.14.15.311.B418 и E1550Update_11.609.20.00.00.B418. В инете советовали именно их. Эффекта это не даёт
  2. Подключил модем через простенький usb hub на четыре порта с дополнительным питанием. Тоже эффекта не дало
  3. Перебирал по разному порты модема в dongle, тоже ничего не даёт

Asterisk 13.18.3 Ubuntu 18.04

Лог в момент звонка ниже

 dongle show devices
ID           Group State      RSSI Mode Submode Provider Name  Model      Firmware          IMEI             IMSI             Number
dongle0      0     Dialing    9    0    0       MegaFon RUS    E1550      11.609.20.00.00   3534430****  250110***  Unknown
    -- Dongle/dongle0-0100000000 answered
[Apr 26 01:56:56] WARNING[12281][C-00000000]: pbx.c:4416 __ast_pbx_run: Channel 'Dongle/dongle0-0100000000' sent to invalid extension but no invalid handler: context,exten,priority=outgoing_to_89209991313,+79209991313,1
[Apr 26 01:56:56] NOTICE[12281][C-00000000]: pbx_spool.c:460 attempt_thread: Call completed to Dongle/dongle0/+79209991313
[Apr 26 01:56:58] ERROR[12163]: chan_dongle.c:442 do_monitor_phone: [dongle0] timedout while waiting 'OK' in response to 'AT+CLCC'
    -- [dongle0] Dongle has disconnected
    -- [dongle0] Trying to connect on /dev/sergmodem2...
    -- [dongle0] Dongle has connected, initializing...
[Apr 26 01:57:13] ERROR[12348]: chan_dongle.c:442 do_monitor_phone: [dongle0] timedout while waiting 'OK' in response to 'AT'
    -- [dongle0] Error initializing Dongle
    -- [dongle0] Dongle has disconnected
    -- [dongle0] Trying to connect on /dev/sergmodem2...
    -- [dongle0] Dongle has connected, initializing...
[Apr 26 01:57:28] ERROR[12382]: chan_dongle.c:442 do_monitor_phone: [dongle0] timedout while waiting 'OK' in response to 'AT'
    -- [dongle0] Error initializing Dongle
    -- [dongle0] Dongle has disconnected
    -- [dongle0] Trying to connect on /dev/sergmodem2...
    -- [dongle0] Dongle has connected, initializing...
[Apr 26 01:57:43] ERROR[12405]: chan_dongle.c:442 do_monitor_phone: [dongle0] timedout while waiting 'OK' in response to 'AT'
    -- [dongle0] Error initializing Dongle
    -- [dongle0] Dongle has disconnected
shtrih-srv*CLI> dongle show devices
ID           Group State      RSSI Mode Submode Provider Name  Model      Firmware          IMEI             IMSI             Number
dongle0      0     Not connec 0    0    0       NONE                                                                          Unknown
    -- [dongle0] Trying to connect on /dev/sergmodem2...
    -- [dongle0] Dongle has connected, initializing...
[Apr 26 01:57:58] ERROR[12439]: chan_dongle.c:442 do_monitor_phone: [dongle0] timedout while waiting 'OK' in response to 'AT'
    -- [dongle0] Error initializing Dongle
    -- [dongle0] Dongle has disconnected
    -- [dongle0] Trying to connect on /dev/sergmodem2...
    -- [dongle0] Dongle has connected, initializing...
[Apr 26 01:58:13] ERROR[12480]: chan_dongle.c:442 do_monitor_phone: [dongle0] timedout while waiting 'OK' in response to 'AT'
    -- [dongle0] Error initializing Dongle
    -- [dongle0] Dongle has disconnected
    -- [dongle0] Trying to connect on /dev/sergmodem2...
    -- [dongle0] Dongle has connected, initializing...
[Apr 26 01:58:28] ERROR[12514]: chan_dongle.c:442 do_monitor_phone: [dongle0] timedout while waiting 'OK' in response to 'AT'
    -- [dongle0] Error initializing Dongle
    -- [dongle0] Dongle has disconnected
shtrih-srv*CLI> dongle show devices
ID           Group State      RSSI Mode Submode Provider Name  Model      Firmware          IMEI             IMSI             Number
dongle0      0     Not connec 0    0    0       NONE                                                                          Unknown
cat /etc/asterisk/dongle.conf


[dongle0]
context=from-dongle ; используемый контекст
language=ru ; используемый язык
audio=/dev/sergmodem0           ; tty port for audio connection;        no default value
data=/dev/sergmodem2            ; tty port for AT commands;             no default value


; or you can omit both audio and data together and use imei=123456789012345 and/or imsi=123456789012345
;  imei and imsi must contain exactly 15 digits !
;  imei/imsi discovery is available on Linux only
imei=3534432***
imsi=2501102***


cat /etc/asterisk/extensions.conf

[outgoing_to_89209991313]
exten => s,1,Answer
exten => s,n,Wait(15)
;exten => s,n,Background(/usr/local/share/asterisk/sounds/monitoring/welcome)
;exten => s,n,Background(/usr/local/share/asterisk/sounds/monitoring/Down)
;exten => s,n,Background(/usr/local/share/asterisk/sounds/monitoring/provider-a)
;exten => s,n,Background(/usr/local/share/asterisk/sounds/monitoring/bye)
exten => s,n,hangup

Звонок выполняю через call файл


cat /var/spool/asterisk/outgoing/test3.call
Channel: Dongle/dongle0/+79209991313
MaxRetries: 1
RetryTime: 15
WaitTime: 15
Context: outgoing_to_89209991313
Extension: +79209991313
Priority: 1

Что можете посоветовать?

 ,

shtrih
()

Программа обзвона сотрудников

Добрый день!

Есть компьютер с linux системой. К нему подключен GSM модем с сим картой. Имеется база данный mysql на удаленном сервере.

Требуется, найти бесплатную программу, которая сможет выполнять:

  1. Выполнять исходящие звонки с помощью GSM модема и сообщать сотрудникам заранее записанный голосовой файл. (Обязательно)

  2. Номера сотрудников для обзвона, программа должна получать с удаленной базы данных mysql. То есть будет некая таблица с номерами, из которая программа считает номер и позвонит ему, далее установит признак, что обзвон выполнен. (Крайне желательно). Если данный пункт не реализуем, то в теории могу самостоятельно на питоне или на чём то ещё получать данные из базы и писать их в текстовый файл, главное чтобы программа фиксировала факт звонка и состояние - ответили, не ответили, недоступен и т.п.

  3. Записывать исходящие звонки (Желательно)

  4. Сотрудник может нажимая цифры от 1 до 9, может реагировать на голосовое сообщение и его реакция будет заноситься программой (Желательно)

  5. Сотрудник голосом может сообщать команды - ПРИНЯТО, Я ЗАНЯТ и т.п. (Желательно)

Входящие звонки не нужны.

Первое, что приходит на ум и советует интернет программу asterisk. Но так как ранее с ней не работал, то прошу подсказать, какие пункты из перечисленных выше, она сможет реализовать?

Либо предложите свои варианты.

Заранее спасибо

 

shtrih
()

Восстановить загрузчик

Добрый день!

Была установлена на одном компе windows8 и ubuntu server.

Загрузчик был efi.

Обновил linux и при перезагрузке появился Minimal BASH. В биос тоже не заходил. Сбросил таблетку, и тогда зашёл в биос.

В boot bios по умолчанию, вместо ubuntu выбрал Microsoft и тогда смог зайти в винду.

Как мне восстановить прежний загрузчик не пойму (ранее создавал сам загрузчик ubuntu)? И почему он в принципе слетел?

Зайдя в линукс по live usb , увидел следующее.

mount /dev/sda5 /mnt
mount /dev/sda2 /mnt/boot

/boot/EFI# ls
Boot  Microsoft  refind  ubuntu
root@ubuntu:/boot/EFI# cd ubuntu/
root@ubuntu:/boot/EFI/ubuntu# ls
BOOTX64.CSV  grub.cfg  grubx64.efi  mmx64.efi  shimx64.efi
root@ubuntu:/boot/EFI/ubuntu# cat grub.cfg 
search.fs_uuid f2637371-86f4-4e77-98e3-656c887ea4f0 root hd0,gpt5 
set prefix=($root)'/boot/grub'
configfile $prefix/grub.cfg
root@ubuntu:/boot/EFI/ubuntu# 
Disk /dev/sda: 465.8 GiB, 500107862016 bytes, 976773168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 96BDDDBB-67BF-4C58-BA38-7D884853FF52

Device         Start       End   Sectors   Size Type
/dev/sda1       2048   2050047   2048000  1000M Windows recovery environment
/dev/sda2    2050048   2582527    532480   260M EFI System
/dev/sda3    2582528   2844671    262144   128M Microsoft reserved
/dev/sda4    2844672 415791103 412946432 196.9G Microsoft basic data
/dev/sda5  415791104 560525311 144734208    69G Microsoft basic data

/dev/sda5 имеет тип раздела xfs

 

shtrih
()

Отrлючение питание от USB

Добрый вечер!

Тема не нова, но решения не нашёл.

Есть четкая последовательность действий http://sysadm.pp.ua/linux/usb.html

Но у меня не срабатывает, так как CONFIG_USB_SUSPEND не включена. У меня Ubuntu 18.04

 grep CONFIG_USB_SUSPEND /boot/config-4.15.0-76-generic

Ничего не выдаёт. То есть в принципе нету этого параметра.

Вот в инете нашёл

««Starting with the 3.10 kernel release, dynamic PM support for USB is present whenever the kernel was built with CONFIG_PM_RUNTIME enabled. The CONFIG_USB_SUSPEND option has been eliminated.»»

Это действительно так? Как тогда быть?

Ядро я пересобирать не умею. А где найти дистрибутив с включенной опцией, мне так и не понятно.

Заранее спасибо за подсказки

 

shtrih
()

Проверка, что лог бежит

Добрый день!

Есть программа, в которой каждые 5 секунд появляется новая запись в логе. Требуется, чтобы была какая-то программа, которая анализировала размер этого файла, каждые 10 секунд, и если он не изменился с предыдущего, то перегрузить сервис.

Есть ли что то такое штатное? А то писать я пока не «мостак» такое и времени нету.

 

shtrih
()

Usb com переходник и linux

Добрый вечер! Потребовался мне в старом ноутбуке COM порт. Его там нет, поэтому решил купить адаптер USB-COM (например COM VCOM VUS7050). Вопрос, встанет ли он нормально в линукс или нет? Есть какие-то примеры решения данного вопроса?

 

shtrih
()

Смена порта USB модема

Добрый день!

Есть программа gammu-smsd, которая через USB модем отправляет смс.

В настройках программы устанавливаешь, что использовать порт /dev/ttyUSB0. Программа работает и всё нормально. Через какое то время ( компьютер не перегружается никогда и ничего нового не подключается нового), программа сообщает, что по данному порту нет устройства.

Меняешь порт на /dev/ttyUSB1 и всё снова нормально. И так надо периодически туда и сюда менять.

Как решить проблему?

Команда ls /dev/ttyUSB* всегда отдаёт два порта. Это нормально?

ls /dev/ttyUSB*
/dev/ttyUSB0  /dev/ttyUSB1


udevadm info -a -n /dev/ttyUSB0

Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0/ttyUSB0/tty/ttyUSB0':
    KERNEL=="ttyUSB0"
    SUBSYSTEM=="tty"
    DRIVER==""

  looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0/ttyUSB0':
    KERNELS=="ttyUSB0"
    SUBSYSTEMS=="usb-serial"
    DRIVERS=="option1"
    ATTRS{port_number}=="0"

  looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.0':
    KERNELS=="1-1:1.0"
    SUBSYSTEMS=="usb"
    DRIVERS=="option"
    ATTRS{authorized}=="1"
    ATTRS{bAlternateSetting}==" 0"
    ATTRS{bInterfaceClass}=="ff"
    ATTRS{bInterfaceNumber}=="00"
    ATTRS{bInterfaceProtocol}=="ff"
    ATTRS{bInterfaceSubClass}=="ff"
    ATTRS{bNumEndpoints}=="03"
    ATTRS{supports_autosuspend}=="1"

  looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb1/1-1':
    KERNELS=="1-1"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{authorized}=="1"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bDeviceClass}=="00"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{bMaxPower}=="500mA"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bNumInterfaces}==" 4"
    ATTRS{bcdDevice}=="0000"
    ATTRS{bmAttributes}=="e0"
    ATTRS{busnum}=="1"
    ATTRS{configuration}=="Qualcomm Configuration"
    ATTRS{devnum}=="6"
    ATTRS{devpath}=="1"
    ATTRS{idProduct}=="1003"
    ATTRS{idVendor}=="12d1"
    ATTRS{ltm_capable}=="no"
    ATTRS{manufacturer}=="HUAWEI Technology"
    ATTRS{maxchild}=="0"
    ATTRS{product}=="HUAWEI Mobile"
    ATTRS{quirks}=="0x0"
    ATTRS{removable}=="unknown"
    ATTRS{speed}=="480"
    ATTRS{urbnum}=="90397"
    ATTRS{version}==" 2.00"

  looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb1':
    KERNELS=="usb1"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{authorized}=="1"
    ATTRS{authorized_default}=="1"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bDeviceClass}=="09"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{bMaxPower}=="0mA"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{bcdDevice}=="0415"
    ATTRS{bmAttributes}=="e0"
    ATTRS{busnum}=="1"
    ATTRS{configuration}==""
    ATTRS{devnum}=="1"
    ATTRS{devpath}=="0"
    ATTRS{idProduct}=="0002"
    ATTRS{idVendor}=="1d6b"
    ATTRS{interface_authorized_default}=="1"
    ATTRS{ltm_capable}=="no"
    ATTRS{manufacturer}=="Linux 4.15.0-64-generic ehci_hcd"
    ATTRS{maxchild}=="8"
    ATTRS{product}=="EHCI Host Controller"
    ATTRS{quirks}=="0x0"
    ATTRS{removable}=="unknown"
    ATTRS{serial}=="0000:00:1d.7"
    ATTRS{speed}=="480"
    ATTRS{urbnum}=="118"
    ATTRS{version}==" 2.00"

  looking at parent device '/devices/pci0000:00/0000:00:1d.7':
    KERNELS=="0000:00:1d.7"
    SUBSYSTEMS=="pci"
    DRIVERS=="ehci-pci"
    ATTRS{broken_parity_status}=="0"
    ATTRS{class}=="0x0c0320"
    ATTRS{companion}==""
    ATTRS{consistent_dma_mask_bits}=="32"
    ATTRS{d3cold_allowed}=="1"
    ATTRS{device}=="0x265c"
    ATTRS{dma_mask_bits}=="32"
    ATTRS{driver_override}=="(null)"
    ATTRS{enable}=="1"
    ATTRS{irq}=="23"
    ATTRS{local_cpulist}=="0"
    ATTRS{local_cpus}=="1"
    ATTRS{msi_bus}=="1"
    ATTRS{revision}=="0x03"
    ATTRS{subsystem_device}=="0x099c"
    ATTRS{subsystem_vendor}=="0x103c"
    ATTRS{uframe_periodic_max}=="100"
    ATTRS{vendor}=="0x8086"

  looking at parent device '/devices/pci0000:00':
    KERNELS=="pci0000:00"
    SUBSYSTEMS==""
    DRIVERS==""

srv:/home/shtrih# udevadm info -a -n /dev/ttyUSB1

Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.1/ttyUSB1/tty/ttyUSB1':
    KERNEL=="ttyUSB1"
    SUBSYSTEM=="tty"
    DRIVER==""

  looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.1/ttyUSB1':
    KERNELS=="ttyUSB1"
    SUBSYSTEMS=="usb-serial"
    DRIVERS=="option1"
    ATTRS{port_number}=="0"

  looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb1/1-1/1-1:1.1':
    KERNELS=="1-1:1.1"
    SUBSYSTEMS=="usb"
    DRIVERS=="option"
    ATTRS{authorized}=="1"
    ATTRS{bAlternateSetting}==" 0"
    ATTRS{bInterfaceClass}=="ff"
    ATTRS{bInterfaceNumber}=="01"
    ATTRS{bInterfaceProtocol}=="ff"
    ATTRS{bInterfaceSubClass}=="ff"
    ATTRS{bNumEndpoints}=="02"
    ATTRS{supports_autosuspend}=="1"

  looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb1/1-1':
    KERNELS=="1-1"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{authorized}=="1"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bDeviceClass}=="00"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{bMaxPower}=="500mA"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bNumInterfaces}==" 4"
    ATTRS{bcdDevice}=="0000"
    ATTRS{bmAttributes}=="e0"
    ATTRS{busnum}=="1"
    ATTRS{configuration}=="Qualcomm Configuration"
    ATTRS{devnum}=="6"
    ATTRS{devpath}=="1"
    ATTRS{idProduct}=="1003"
    ATTRS{idVendor}=="12d1"
    ATTRS{ltm_capable}=="no"
    ATTRS{manufacturer}=="HUAWEI Technology"
    ATTRS{maxchild}=="0"
    ATTRS{product}=="HUAWEI Mobile"
    ATTRS{quirks}=="0x0"
    ATTRS{removable}=="unknown"
    ATTRS{speed}=="480"
    ATTRS{urbnum}=="90409"
    ATTRS{version}==" 2.00"

  looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb1':
    KERNELS=="usb1"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{authorized}=="1"
    ATTRS{authorized_default}=="1"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bDeviceClass}=="09"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{bMaxPower}=="0mA"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{bcdDevice}=="0415"
    ATTRS{bmAttributes}=="e0"
    ATTRS{busnum}=="1"
    ATTRS{configuration}==""
    ATTRS{devnum}=="1"
    ATTRS{devpath}=="0"
    ATTRS{idProduct}=="0002"
    ATTRS{idVendor}=="1d6b"
    ATTRS{interface_authorized_default}=="1"
    ATTRS{ltm_capable}=="no"
    ATTRS{manufacturer}=="Linux 4.15.0-64-generic ehci_hcd"
    ATTRS{maxchild}=="8"
    ATTRS{product}=="EHCI Host Controller"
    ATTRS{quirks}=="0x0"
    ATTRS{removable}=="unknown"
    ATTRS{serial}=="0000:00:1d.7"
    ATTRS{speed}=="480"
    ATTRS{urbnum}=="118"
    ATTRS{version}==" 2.00"

  looking at parent device '/devices/pci0000:00/0000:00:1d.7':
    KERNELS=="0000:00:1d.7"
    SUBSYSTEMS=="pci"
    DRIVERS=="ehci-pci"
    ATTRS{broken_parity_status}=="0"
    ATTRS{class}=="0x0c0320"
    ATTRS{companion}==""
    ATTRS{consistent_dma_mask_bits}=="32"
    ATTRS{d3cold_allowed}=="1"
    ATTRS{device}=="0x265c"
    ATTRS{dma_mask_bits}=="32"
    ATTRS{driver_override}=="(null)"
    ATTRS{enable}=="1"
    ATTRS{irq}=="23"
    ATTRS{local_cpulist}=="0"
    ATTRS{local_cpus}=="1"
    ATTRS{msi_bus}=="1"
    ATTRS{revision}=="0x03"
    ATTRS{subsystem_device}=="0x099c"
    ATTRS{subsystem_vendor}=="0x103c"
    ATTRS{uframe_periodic_max}=="100"
    ATTRS{vendor}=="0x8086"

  looking at parent device '/devices/pci0000:00':
    KERNELS=="pci0000:00"
    SUBSYSTEMS==""
    DRIVERS==""



 lsusb
Bus 001 Device 006: ID 12d1:1003 Huawei Technologies Co., Ltd. E220 HSDPA Modem / E230/E270/E870 HSDPA/HSUPA Modem
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub


 

shtrih
()

Ноутбук HP Compaq nx6110 выключается при перезагрузке

Добрый день!

Есть компьютер Ноутбук HP Compaq nx6110 с linux.

Он стоит как маленький сервер. Иногда требуется перегружать его через ssh. Захожу по ssh, набирает sudo su и reboot. Он вроде начинает перегружаться и выключается (либо похоже аля ждущий режим), проблема связана с тем, что у него закрытая крышка. Если крышку открыть он нормально перезагрузится.

В настройках линукс все ждущие режимы я вроде выключил, как решить проблему?

 

shtrih
()

systemctl автоматический рестарт

Добрый вечер!

1. Есть служба запущенная systemctl enable gammu-smsd. После перезапуска компьютера, она не запускается, а падает с ошибкой, так как, по какой то причине запускается раньше, чем запускается интернет. Как этого избежать? 2. Как сделать, чтобы если служба в статусе файлед, то она периодически перегружалась, а не ждала ручного запуска.

Добавлял

[Unit] After=network.target

не помогло.

Добавлял [Service] Restart=always

тоже не помогло Плюс есть ошибка failed to parse service restart specifier, ignoring: always

nano /lib/systemd/system/gammu-smsd.service

[Unit]
Description=SMS daemon for Gammu
Documentation=man:gammu-smsd(1)
After=mysql.service postgresql.service
After=network.target

[Service]
EnvironmentFile=-/etc/sysconfig/gammu-smsd
# Run daemon as root user
ExecStart=/usr/bin/gammu-smsd --pid=/var/run/gammu-smsd.pid --daemon
# Run daemon as non-root user (set user/group in /etc/sysconfig/gammu-smsd)
#ExecStart=/usr/bin/gammu-smsd --user=${GAMMU_USER} --group=${GAMMU_GROUP} --pid=/var/run/gammu-smsd.pid --daemon
ExecReload=/bin/kill -HUP $MAINPID
ExecStopPost=/bin/rm -f /var/run/gammu-smsd.pid
Type=forking
PIDFile=/var/run/gammu-smsd.pid
Restart=on-failure

[Install]
WantedBy=multi-user.target

 

shtrih
()

ssh по ip6

Добрый вечер!

Есть комп с серым ip за Nat провайдера c linux. Требуется подключаться к нему по ssh.

Рассмотрел несколько вариантов: 1. DynDns не подходит, так как за NAT 2. Hamachi платный стал 3. Прочитал про teredo и ip6. Но не совсем понял, как сделать с помощью него это.

На компьютере с линукс я установлю миреда, получи ip6 адрес.

1. Но как подключаться по ip6 с windows по ssh? 2. Как я понял, адрес ip6 будет меняться. Как его узнавать?

Если есть способ проще, прошу сообщить. Заранее спасибо.

А ещё на роутере есть возможность поднять тунель 6to4 и вроде бы присвоился ip адрес. Но я всё равно по нему не могу подключиться. Только на роутере по ip6 проброс портов не происходит, то ли ip6 тоже за нат не проходит провайдера

 ,

shtrih
()

viber на pc

Добрый день!

Установил viber на archlinux. При запуске ошибка ниже

/opt/viber/Viber: /usr/lib/libcurl.so.3: no version information available (required by /opt/viber/Viber)
qt.network.ssl: QSslSocket: cannot resolve SSLv3_client_method
qt.network.ssl: QSslSocket: cannot resolve SSLv3_server_method
QObject::connect: Cannot connect (null)::stateChanged(QNetworkSession::State) to QNetworkReplyHttpImpl::_q_networkSessionStateChanged(QNetworkSession::State)
Segmentation fault (core dumped)

Что посоветуете?

 

shtrih
()

emacs Folding и flycheck

Добрый день!

Решил создать новую тему. Может всё таки из пользователей emacs подскажит, как установить Folding и flycheck для вебразработки. Emacs у меня версии 24.5.1. Устанавливаю пакеты через elpa. При установке пакета flycheck, сообщается, что пакет let-alist-1.0.4 недоступен.

folding установился с ошибками, но не работает.

 

shtrih
()

emacs и nXhtml

Добрый день! Решил заняться изучение emacs. Потребовалось установить дополнения для веб разработчика nXhtml. wiki nxhtml воспользовался инструкцией. Вот лог

For information about GNU Emacs and the GNU system, type C-h C-a. Welcome to install nXhtml. First the nXhtml specific web install file must be downloaded. You will get a chance to review it before it is used.

Do you want to continue? (y or n) y Making url-show-status local to *http bazaar.launchpad.net:80* while let-bound! (New file) Contacting host: bazaar.launchpad.net:80 Wrote /home/shtrih/Downloads/TEMPORARY-WEB-AUTO-LOAD-autostart.el Wrote /home/shtrih/.emacs.d/web-vcs-log.org - Please check the downloaded file and then continue by doing C-c C-c (or exit-recursive-edit)

Or, for no more breaks to check files do C-c C-n (or web-autoload-continue-no-stop)

To stop the web autoloading process for now do web-autoload-quit-download

To see the log file you can do web-vcs-log-edit

progn: Buffer is read-only: #<buffer *Messages*> Нажимаю C-c C-c - получаю в лог call-interactively: No recursive edit is in progress Что делать дальше? Не понимаю

Также вопрос, как заставить emacs понимать раскладку Windows-1251? Желательно автоматически.

 

shtrih
()

Флаг на раскладке клавиатуры

Добрый вечер! Хотел вместо RU и EN установить иконки флагов. Но все примеры в интернете, почему то не работают. 1. org.gnome.libgnomekbd.indicator show-flags установил в true 2. Иконки ru.png и us.png скачал 3. Положил их куда только можно ls /home/test1/.icons/flags/ ru.png ru-symbolic.png us.png us-symbolic.png

ls /usr/share/pixmaps/flags/ ru.png ru-symbolic.png us.png us-symbolic.png

ls /usr/share/icons/flags/ ru.png us.png А эффекта нет после перезагрузки. Почему? Может есть какой то лог?

ядро. 4.0.5.-1-Arch

Gnome Shell 3.16.2

 ,

shtrih
()

RSS подписка на новые темы