LINUX.ORG.RU

Запуск скрипта мышью с выхлопом в консольке

 , ,


0

1

Есть скрипт, хочу запустить его кликом мышью, чтобы он открылся в консольке, чтобы видеть выхлоп.

#!/bin/bash
konsole --noclose  -e /bin/bash /usr/bin/sudo openvpn --config config-udp.ovpn --auth-user-pass ovpn.pass

Кликаю на файл скрипта, открывается konsole, и в ней текст:

/bin/bash: /usr/bin/sudo: Отказано в доступе

При этом файл конфигурации config-udp.ovpn корёжится, каким-то образом в него прописывется вот такой мусор:

MvMKXeI4f/YjBhCrqCBpxNg5OEj2Cg==

[MainWindow]
State=AAAA/wAAAAD9AAAAAQAAAAAAAAAAAAAAAPwCAAAAAvsAAAAcAFMAUwBIAE0AYQBuAGEAZwBlAHIARABvAGMAawAAAAAA/////wAAAN0BAAAD+wAAACIAUQB1AGkAYwBrAEMAbwBtAG0AYQBuAGQAcwBEAG8AYwBrAAAAAAD/////AAAAsgEAAAMAAARRAAABJAAAAAQAAAAEAAAACAAAAAj8AAAAAQAAAAIAAAACAAAAFgBtAGEAaQBuAFQAbwBvAGwAQgBhAHIBAAAAAP////8AAAAAAAAAAAAAABwAcwBlAHMAcwBpAG8AbgBUAG8AbwBsAGIAYQByAQAAAhf/////AAAAAAAAAAA=
ToolBarsMovable=Disabled
VGA-0 Height 1920x1080=374
VGA-0 Width 1920x1080=1105
VGA-0 XPosition 1920x1080=566
VGA-0 YPosition 1920x1080=322

[UiSettings]
ColorScheme=

Разрешения в sudoers прописаны все.

Если открыть консольку и в ней ввести команду /usr/bin/sudo openvpn --config config-udp.ovpn --auth-user-pass ovpn.pass то всё отрабатывает нормально.

★★★★

Последнее исправление: Chord (всего исправлений: 1)

Напиши .desktop файл и в нем пропиши команду, которую хочешь выполнить.

И укажи параметр в десктоп файле, что нужно запускать в терминале.

Что-то вроде: https://askubuntu.com/questions/436891/create-a-desktop-file-that-opens-and-execute-a-command-in-a-terminal

kostik87 ★★★★★
()
Последнее исправление: kostik87 (всего исправлений: 1)

bash -c ‘/usr/bin/sudo …’

Без указания -c он предполагает что /usr/bin/sudo твой это шеловский скрипт и пытается его прочесть и интерпретировать.

no-dashi-v2 ★★★
()
Ответ на: комментарий от no-dashi-v2

bash тут вообще лишний, чтоб запустить sudo он не нужен

и там кавычки нужны походу, т.к. судя по описанию проблемы, опцию --config забирает себе konsole

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от no-dashi-v2

Да, с опцией -с и с кавычками работает, спасибо.

Chord ★★★★
() автор топика
Ответ на: комментарий от firkax

если без bash, то openvpn коннектится к серверу, пишет, что инициализация прошла, но через пару секунд сервер отваливается с жалобой на кавычки и коннектится по-новой. И так в цикле крутится.

Chord ★★★★
() автор топика
Ответ на: комментарий от firkax

Сейчас не отваливается. Вчера был отвал сервера, сообщение не помню точно какое было, помню в сообщении сервер жаловался на две одинарные кавычки. И потом происходил реконнект.

Chord ★★★★
() автор топика
Ответ на: комментарий от Chord

Вобщем bash там не нужен, а сообщения об ошибках надо читать нормально. И что за сервер тоже непонятно.

firkax ★★★★★
()

konsole --noclose -e /bin/bash /usr/bin/sudo openvpn --config config-udp.ovpn --auth-user-pass ovpn.pass

Во-первых «/bin/bash» ненужен. Ты его в первой строке уже указал.

Во-вторых, конструкция «/usr/bin/sudo» излишня, просто «sudo» хватит. Поиск приложений и так происходит сперва в этой директории.

В-третьих, зачем ты запускаешь openvpn с правами суперпользователя!?

И в четвертых, а зачем вообще этот скрипт? Ведь KDE же? Так сделай просто новое оpenvpn подключение в настройках сети. И активируй его мышкой в трее.

hargard ★★
()
Ответ на: комментарий от hargard

Так сделай просто новое оpenvpn подключение в настройках сети. И активируй его мышкой в трее.

Во-первых у меня нет активации мышкой в трее. И во-вторых, мне нужен выхлоп openvpn. Его я тоже из трея не достану.

зачем ты запускаешь openvpn с правами суперпользователя!?

Если запускать от простого пользователя, то получаем

ERROR: Cannot ioctl TUNSETIFF tun: Operation not permitted (errno=1)
Exiting due to fatal error

Chord ★★★★
() автор топика
Ответ на: комментарий от NyXzOr

--log подразумевает вывод в файл,который ещё нужно открывать.

Консолька же открывается сама. Кроме того мне выхлоп нужен именно в процессе подключения.

Chord ★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.