VLC player root içerisinde nasıl çalıştırılır


23

6. centos'ta bir vlc kurdum. Kök olarak çalıştırmak istiyorum. Ancak aşağıdaki hatayı alıyorum

"VLC'nin root olarak çalıştırılması gerekmiyor. Maalesef. Gerçek zamanlı öncelikler ve / veya ayrıcalıklı TCP portları kullanmanız gerekiyorsa, vlc-wrapper kullanabilirsiniz (Set-UID root olduğundan emin olun ve önce güvenilir kullanıcılar)


13
Meraktan, bunun nedeni ne olurdu?
kursus

2
Yani vlc-wrappersöylediği gibi kullan ?
Kevin

3
Yanlısı ipucu: Bunu yapma.
HalosGhost

1
Umarım bu size yardımcı olur. hackingzones.com/run-vlc-as-root-in-linux-ubuntu-pear-os Chirag Singh
chirag Hz,

1
Bazı seviyelerde başvurulan bağlantı ilginç bir kesmek ( getuidçağrıyı değiştirmek için bir hex editörü kullanın getpid) kaynak kodu mevcut olduğundan, daha temiz bir yaklaşım testi tamamen kaldırmak için kaynağı düzenlemek ve yeniden derlemek olacaktır. Her iki durumda da bunu yapmamayı tavsiye ederim, ancak ayağınızı çekmek istiyorsanız. . .
hildred

Yanıtlar:


51

Bu benim için çalıştı. Derleme gerekmez.

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

VLC ortam yürütücüsünün kullanılması 2.0.3 Ahududu Pi'deki Twoflower.


3
Bir cazibe gibi çalıştı. :)
Krishnadas PC

3
Evet Bu Cehennem :) +1
onalbi,

haha, pid yerine pid'i kontrol etmek için yamalı ve harika çalışıyor. harika kesmek!
hanshenrik

1
Bu vlc 3.0.1 de inanılmaz çalıştı
Ofer Sadan

Benim için de çalıştı ...
Danny

17

Bunun bir yolu yeniden derlemedir. Geçiş --enable-run-as-rootbayrağı ./configureve VLC root olarak çalıştırmak mümkün olmalıdır. Yukarıdaki cevap buradan .


2
tek yol değildir yeniden derlemek, sadece ben bu tarif 1. teslim etmek geteuid çağrısını değiştirmek linuxintro.org/wiki/Run_vlc_as_root
Thorsten Staerk

@ThorstenStaerk, bana bilgi verdiğiniz için teşekkür ederiz.
Ramesh

Lütfen soruyu cevaplanmış olarak işaretler misiniz?
Thorsten Staerk

@ThorstenStaerk: ölü bağlantı ...
Alexandre Bourlier,

1
@Alexandre Bourlier: çalışır (tekrar)
Thorsten Staerk

1

Http://www.linuxintro.org/wiki/Run_vlc_as_root adresine bakın :

  • VLC ikili dosyasını yedekleyin:

    # cp /usr/bin/vlc /usr/bin/vlc-backup
    
  • geteuidVLC binary içindeki çağrıyı bulun :

    # needle=$(objdump -d /usr/bin/vlc | grep euid | tail -1 | awk '{print "\\x"$2"\\x"$3"\\x"$4"\\x"$5"\\x"$6;}')
    
  • çağrıyı yalnızca teslim etmek için değiştirin 01:

    # sed -ir "s/$needle/\xb8\x01\x00\x00\x00/" /usr/bin/vlc
    
  • Dene

VLC şimdi kök kullanıcı altında çalışmalı!


1

İçinde bulunan VLC ikilisini değiştirerek VLC'yi root olarak çalıştırabilirsiniz. /usr/bin

İlk önce, Bless gibi bir hex editörüne ihtiyacınız olacak:

sudo apt-get install bless

Ardından, VLC ikili dosyasını hex-editor ile açacaksınız:

sudo bless /usr/bin/vlc

Ara ve değiştirmek geteuidile dize getppidkaydedip çıkın.

Şimdi VLC'yi root olarak başlatabilirsiniz.


0

VLC'nin kök olarak çalıştırılmaması gerekiyordu. Üzgünüm. - Çözüm

Neyse, aşağıdaki komutu kullanarak vlc kurdum;

# aptitude install vlc

Ve vlc'yi root olarak çalıştırmaya çalıştım, terminalimde hata oluştu;

# vlc

VLC'nin kök olarak çalıştırılmaması gerekiyordu. Üzgünüm.

Gerçek zamanlı öncelikleri ve / veya ayrıcalıklı TCP portlarını kullanmanız gerekirse

vlc-wrapper'ı kullanabilirsiniz (Set-UID kökü olduğundan emin olun ve

ilk önce güvenilir olmayan kullanıcılar tarafından çalıştırılamaz).

Bu hata yalındır ileri vlc kök ayrıcalıklı kullanıcı olarak çalıştırılamaz diyor. Şimdi ne yapmalı? Panik olmayın. İşte hack çözümü 😀

# vi /usr/bin/vlc

ara geteuidve değiştirgetppid

Dosyayı kaydet ve Çık.

Şimdi çalışması gerekiyor, tekrar çalıştırmayı deneyin

veya

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

Rodvloplarda verilen özdeş çözüm 18 ay önce cevap veriyor!

0

Mülkiyet main menubulmak vlcve ayarlamak için git :

gksu -u vlc

veya sadece terminal tipinde

gksu -u <username(no root)> vlc

Örneğin, abckullanıcı varsa komutunuz şöyle olacaktır:

gksu -u abc vlc

0

Kevin, vl-wrapper kullanarak önerilen soruya yorumlarda bulundu. Nasıl kullanılacağını bulmakta zorlandım, bu yüzden nasıl çalıştığını anlatacağım:

ayrıcalıklı olmayan kullanıcınızı SUDO_UID olarak ayarlamanız gerekir: export SUDO_UID = 1000

vlc'yi çalıştıracak bir kullanıcı yoksa bir tane oluşturun:

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

SUDO_UID değişkeninin kalıcı olmasını istiyorsanız, bashrc dosyasına ekleyin:

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

>> yerine tek yazmamaya dikkat edin

daha sonra vlc yerine vlc-wrapper kullanın


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

İşe yarıyor.


2
Bu özel cevabın sorunu neden çözdüğünü açıklarsanız iyi olur .
Jeff Schaller

1
Rodvloplarda verilen özdeş çözüm 8 ay önce cevap veriyor!

1
-1 çünkü bu tam sayfadaki başka bir cevabın kopyala yapıştırması.
aggregate1166877

@Jeff Schaller Eğer geteuid 0 döndürürse, vlc bunun kökü olduğunu bilir. Bununla birlikte, getppid her zaman sıfır olmayan bir sonuç döndürür ve adının uzunluğu rahatlıkla geteuid ile aynı olur. Böylece, ikili dosya şimdi geteuid yerine getppid'i bağlar ve vlc bunun kökünden asla haberdar olmaz!
George

1
@George Ne yaptığının farkındayım; Kullanıcı 149272’nin bir yanıtla cevaplarını iyileştirebileceğini umuyordum.
Jeff Schaller
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.