Как выполнить плеер VLC в корне

Поскольку постоянное решение дает команду в консоли:

echo 'keycode 13 = 4 backslash 4 ccedilla onequarter dollar onequarter' >> $HOME/.Xmodmap

затем переключите расположение или проблему xmodmap - < $HOME/.Xmodmap

В течение одного времени (или выполняться при каждом запуске от $HOME/.xinitrc): xmodmap -e 'keycode 13 = 4 backslash 4 ccedilla onequarter dollar onequarter'

24
18.12.2019, 12:57
6 ответов

См. http://www.linuxintro.org/wiki/run_vlc_as_root :

  • Резервное копирование двоичных VLC:

     # CP / USR / BIN / VLC / USR / BIN / VLC-  резервный
     
  • Найдите звонок на Geteuid Внутри двоичных VLC:

     # игла = $ (objdump -d / usr / bin / vlc | greep euid | хвост -1 | awk '{print "\  \ x "$ 2" \\ x "$ 3" \\ x "$ 4" \\ x "$ 5" \\ x "$ 6;} ')
     
  • Замените звонок, чтобы просто доставить : :

     # SED -IR "S / $ игла / \ xb8 \ x01 \ x00 \ x00 \ x00 /" / usr / bin / vlc
     
  • Тест его

VLC теперь должен работать под пользователем root!

2
27.01.2020, 19:40

Вы можете попробовать это:

top -p "$(pidof <process_name> | awk 'OFS="," { $1 = $1; print; }')"
-121--153505-

Использование bash :

top -p "$(pname="$(pidof <process_name>)"; echo "${pname// /,}")"

Использование tr :

top -p "$(pidof <process_name> | tr ' ' ',')"

Использование sed :

top -p "$(pidof <process_name> | sed 's/ /,/g')"
-121--153506-

Это сработало для меня. Компиляция не требуется.

sed -i 's/geteuid/getppid/' /usr/bin/vlc

Использование медиаплеера VLC 2,0,3 Twoflower на Малину Pi.

54
27.01.2020, 19:40

Один из способов обойти это - перекомпиляция. Передайте флаг --enable-run-as-root в ./configure и vlc сможет запускаться от имени root. Приведенный выше ответ взят из здесь.

17
27.01.2020, 19:40

Вы сможете запустить VLC как root, изменение двоичного файла VLC, расположенного в / usr / bin

Сначала вам понадобится шестнадцатеричный редактор, например Bless:

sudo apt-get install bless

Затем вы откроете двоичный файл VLC с шестнадцатеричным редактором:

sudo bless /usr/bin/vlc

Найдите и измените строку geteuid на getppid , сохраните и выйдите.

Теперь вы можете запустить VLC от имени пользователя root.

1
27.01.2020, 19:40

Перейдите в главное меню найдите vlc и установите свойство как:

gksu -u vlc

или просто в типе терминала

gksu -u <username(no root)> vlc

Например, если у вас есть abc user ваша команда будет:

gksu -u abc vlc
0
27.01.2020, 19:40

Кевин в комментариях к вопросу предложил использовать vlc-wrapper.У меня были проблемы с тем, как его использовать, поэтому я опишу, как я заставил его работать:

вам нужно установить непривилегированного пользователя в SUDO_UID: export SUDO_UID=1000

если у вас нет пользователя для запуска vlc под создайте его:

useradd -g users vlc
# this will show you the uid of vlc user
id -u vlc

если вы хотите, чтобы переменная SUDO_UID была постоянной, добавьте ее в bashrc:

echo "export SUDO_UID=1000" >> /root/.bashrc

будьте осторожны, чтобы не написать одиночный > вместо > >

затем используйте vlc-wrapper вместо vlc

1
27.01.2020, 19:40

Теги

Похожие вопросы