Bir Raspberry Pi 2 var ve Raspberrypi.org yazı takip var ama Sıkı VNC Sunucusu yeniden başlatma başlamıyor. Herhangi bir hata yok gibi görünüyor.
TightVncServer'ı Pi Reboot'ta nasıl başlatabilirim?
Bir Raspberry Pi 2 var ve Raspberrypi.org yazı takip var ama Sıkı VNC Sunucusu yeniden başlatma başlamıyor. Herhangi bir hata yok gibi görünüyor.
TightVncServer'ı Pi Reboot'ta nasıl başlatabilirim?
Yanıtlar:
Bunu yapmak için biraz Linux zekası kullanabilirsiniz.
İlk görevimiz /etc/rc.local dosyasını düzenlemek olacak. Bu dosya, başlangıçta çalıştırılan komutlar içerebilir. Dosyaya bakarsak, içinde zaten birkaç giriş olduğunu görebiliriz;
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
printf "My IP address is %s\n" "$_IP"
fi
exit 0
Önlerinde karma işareti (#) olan ilk satır kümesi yorumlardır. Bunlar sadece dosyayı okuyan birine neler olduğunu açıklamak için var.
En alta doğru kod satırlarının, bilgisayarın IP adresiyle bir ilgisi olduğu açıktır. Aslında, Raspberry Pi'nin bir IP adresine sahip olup olmadığını kontrol eden kısa bir komut dosyasıdır ve varsa yazdırır. Hatırlarsanız, Pi böyle açıldığında IP adresini ekranda görebilirsiniz.
My IP address is 10.1.1.8
Raspbian GNU/Linux 7 raspberrypi tty1
raspberrypi login:
Rc.local'daki bu komut dosyası IP adresini yazdırmaktan sorumlu koddur!
Rc.local içine aşağıdaki komutu ekleyeceğiz;
su - pi -c '/usr/bin/tightvncserver :1'
Bu komut kullanıcıyı su - pi ile 'pi' kullanıcısı olarak değiştirir. Su, 'kullanıcı değiştir' kısaltmasıdır (-) kullanıcı pi ortamının (tüm ayarları gibi) doğru şekilde kullanıldığından ve pi kullanıcı olduğundan emin olur.
-C seçeneği, satırın bir sonraki parçasının çalıştırılacak komut olacağını ve tırnak işaretleri içindeki kısmın ('/ usr / bin / tightvncserver: 1') komut olduğunu bildirir.
Bu durumda komut, / usr / bin dizininde bulunan tightvncserver dosyasını yürütür ve masaüstü oturumu 1'i (: 1) başlatmamız gerektiğini belirtir.
Bunu yapmak için rc.local dosyasını aşağıdaki komutla düzenleyeceğiz;
sudo nano /etc/rc.local
Dosyamızın aşağıdaki gibi görünmesi için satırlarımızı ekleyin;
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
printf "My IP address is %s\n" "$_IP"
fi
# Start tightvncserver
su - pi -c '/usr/bin/tightvncserver :1'
exit 0
(Gelecekteki okuyucuların neler olduğunu bilmesini sağlamak için dosyaya kendi yorumumuzu da ekleyebiliriz)
Öyle olmalı. Şimdi Pi yeniden başlatıldığında hizmetin başladığını test edebilmelisiniz.
Yukarıdakiler biraz uzun soluk geliyorsa, burada daha eksiksiz bir muhakeme kontrol etmekten çekinmeyin .
Başlamadan önce Pi'nizin Ethernet \ wifi üzerinden internet \ ağına bağlı olduğundan emin olun.
Terminal'i açın ve aşağıdaki komutları girin:
Uzaktan bağlantı için Pi IP Adresini alın (daha sonra kullanmak için)
hostname -I
TightVncServer'ı yükleyin
sudo apt-get update
sudo apt-get install tightvncserver
tightvncserver
Bu ilk çalıştırıldığında bir parola girip doğrulamanız gerekir. Yalnızca görüntüleme şifresi girmenize gerek yoktur.
Pi önyükleme yaparken otomatik başlatmayı bir hizmet olarak yapılandırmak için:
Otomatik olarak başlatılacak bir dosya oluşturmak için nano'yu (metin düzenleyici) açın Tight VNC Server sudo nano /etc/init.d/tightvncserver
Aşağıdakileri yazın (veya kopyalayıp yapıştırın ):
#!/bin/sh
# /etc/init.d/tightvncserver
# Set the VNCUSER variable to the name of the user to start tightvncserver under
VNCUSER='pi'
case "$1" in
start)
su $VNCUSER -c '/usr/bin/tightvncserver :1'
echo "Starting TightVNC server for $VNCUSER"
;;
stop)
pkill Xtightvnc
echo "Tightvncserver stopped"
;;
*)
echo "Usage: /etc/init.d/tightvncserver {start|stop}"
exit 1
;;
esac
exit 0
Kaydetmek için Ctrl + x, sonra y tuşlarına ve aynı dosya adını korumak için Enter tuşuna basın.
Bu dosyanın yürütülebilir ve etkin olmasını sağlamak için izinlerini düzenleyin:
sudo chmod 755 /etc/init.d/tightvncserver
sudo update-rc.d tightvncserver defaults
Sudo yeniden başlatmayı test etmek için yeniden başlat
İşletim sisteminiz için vnc istemcisini kurun ve Pi yeniden başlatıldıktan sonra bağlanmaya çalışın!
Örneğin Windows için: TightVNC Client . Sunucu kurmanıza gerek yok.
VNC Client Connect'i bu yazının üst kısmındaki IP adresini kullanarak başlatın . Kendi IP adresinizi değiştirin. Bazı internet yayınlarındaki bağlantı noktası numarası yalnızca 2 basamak olarak listelenir. Bu kısa eldir ve yukarıdaki komut dosyasını kullanıyorsanız pi'niz bağlantı noktası 1'de çalışıyorsa, 590 1'i kullanmalısınız . 2 ise, 590 2 vb.
192.168.1.123:5901
vncserver -geometry 1366x768 -depth 24 -dpi 96
. Daha önce tam ekran almak için bu komutu kullandım. Kodu kodunuza eklemenin bir yolu var mı?)
su $VNCUSER -c '/usr/bin/tightvncserver :1'
, başvurduğunuz komutu çalıştıran şeydir. Sadece bu satırın sonuna seçenekleri ekleyin, bu da şu gibi bir sonuçla sonuçlanacaktırsu $VNCUSER -c '/usr/bin/tightvncserver :1' -geometry 1366x768 -depth 24 -dpi 96