شما هنوز به سیستم وارد نشده اید.

#1 2017-07-25 21:11:44

behnam
عضو
از : Tehran
ثبت شده: 2017-06-25
ارسال ها: 16

مشکل با x0vncserver در زمان استارت از طریق systemd [حل شد]

سلام

از طریق این لینک سعی دارم از vnc استفاده کنم:
https://wiki.archlinux.org/index.php/TigerVNC

برای وصل شدن به vnc از این طریق مشکلی ندارم:

x0vncserver -display :0 -passwordfile ~/.vnc/passwd 

ولی وقتی با این محتویات در systemd قرارش میدم درست اجرا نمیشه:

محتویات /etc/systemd/system/x0vncserver.service :

[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking
User=foo
ExecStart=/usr/bin/sh -c '/usr/bin/x0vncserver -display :0 -rfbport 5900 -passwordfile /home/foo/.vnc/passwd &'

[Install]
WantedBy=multi-user.target 

دستوری که میزنم:

sudo systemctl enable x0vncserver.service     
sudo systemctl start  x0vncserver.service

خروجی که میگیرم:

Job for x0vncserver.service failed because the control process exited with error code.
See "systemctl  status x0vncserver.service" and "journalctl  -xe" for details.

خروجی systemctl status x0vncserver.service :

x0vncserver.service - Remote desktop service (VNC)
   Loaded: loaded (/etc/systemd/system/x0vncserver.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since Tue 2017-07-25 20:54:40 +0430; 53s ago
  Process: 1248 ExecStart=/usr/bin/sh -c /usr/bin/x0vncserver -display :0 -rfbport 5900 -passwordfile /home/foo/.vnc/passwd & (code=exited, status=217/USER)

Jul 25 20:54:40 Bagheri systemd[1]: Starting Remote desktop service (VNC)...
Jul 25 20:54:40 Bagheri systemd[1]: x0vncserver.service: Control process exited, code=exited status=217
Jul 25 20:54:40 Bagheri systemd[1]: Failed to start Remote desktop service (VNC).
Jul 25 20:54:40 Bagheri systemd[1]: x0vncserver.service: Unit entered failed state.
Jul 25 20:54:40 Bagheri systemd[1]: x0vncserver.service: Failed with result 'exit-code'.

خروجی journal xe :

Jul 25 20:54:40 Bagheri sudo[1245]:   behnam : TTY=pts/0 ; PWD=/home/behnam ; USER=root ; COMMAND=/usr/bin/systemctl start x0vncserver.service
Jul 25 20:54:40 Bagheri sudo[1245]: pam_unix(sudo:session): session opened for user root by behnam(uid=0)
Jul 25 20:54:40 Bagheri systemd[1]: Starting Remote desktop service (VNC)...
-- Subject: Unit x0vncserver.service has begun start-up
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit x0vncserver.service has begun starting up.
Jul 25 20:54:40 Bagheri sudo[1245]: pam_unix(sudo:session): session closed for user root
Jul 25 20:54:40 Bagheri systemd[1248]: x0vncserver.service: Failed to determine user credentials: No such process
-- Subject: Process /usr/bin/sh could not be executed
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- The process /usr/bin/sh could not be executed and failed.
-- 
-- The error number returned by this process is 3.
Jul 25 20:54:40 Bagheri systemd[1]: x0vncserver.service: Control process exited, code=exited status=217
Jul 25 20:54:40 Bagheri systemd[1]: Failed to start Remote desktop service (VNC).
-- Subject: Unit x0vncserver.service has failed
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit x0vncserver.service has failed.
-- 
-- The result is failed.
Jul 25 20:54:40 Bagheri systemd[1]: x0vncserver.service: Unit entered failed state.
Jul 25 20:54:40 Bagheri systemd[1]: x0vncserver.service: Failed with result 'exit-code'.
Jul 25 20:54:44 Bagheri plasmashell[718]: log_klipper: Checking clip data
Jul 25 20:54:44 Bagheri plasmashell[718]: log_klipper: Synchronize? false
Jul 25 20:54:45 Bagheri plasmashell[718]: log_klipper: Checking clip data
Jul 25 20:54:45 Bagheri plasmashell[718]: log_klipper: Synchronize? false
Jul 25 20:55:38 Bagheri Tor[498]: Proxy Client: unable to connect to 81.2.239.250:80 ("general SOCKS server failure")
Jul 25 20:55:49 Bagheri plasmashell[718]: log_klipper: Checking clip data
Jul 25 20:55:49 Bagheri plasmashell[718]: log_klipper: Synchronize? false
Jul 25 20:55:53 Bagheri plasmashell[718]: log_klipper: Checking clip data
Jul 25 20:55:53 Bagheri plasmashell[718]: log_klipper: Synchronize? false
Jul 25 20:55:55 Bagheri plasmashell[718]: log_klipper: Checking clip data
Jul 25 20:55:55 Bagheri plasmashell[718]: log_klipper: Synchronize? false
Jul 25 20:58:04 Bagheri plasmashell[718]: Both point size and pixel size set. Using pixel size.
Jul 25 20:58:04 Bagheri plasmashell[718]: Both point size and pixel size set. Using pixel size.
Jul 25 20:58:04 Bagheri plasmashell[718]: Both point size and pixel size set. Using pixel size.
Jul 25 20:58:04 Bagheri plasmashell[718]: Both point size and pixel size set. Using pixel size.
Jul 25 20:58:04 Bagheri plasmashell[718]: Both point size and pixel size set. Using pixel size.
Jul 25 20:58:04 Bagheri plasmashell[718]: Both point size and pixel size set. Using pixel size.
Jul 25 20:58:04 Bagheri plasmashell[718]: Both point size and pixel size set. Using pixel size.
Jul 25 20:58:04 Bagheri plasmashell[718]: Both point size and pixel size set. Using pixel size.
Jul 25 20:58:04 Bagheri plasmashell[718]: Both point size and pixel size set. Using pixel size.
Jul 25 20:58:04 Bagheri plasmashell[718]: Both point size and pixel size set. Using pixel size.
Jul 25 20:58:04 Bagheri plasmashell[718]: Both point size and pixel size set. Using pixel size.
Jul 25 20:58:04 Bagheri plasmashell[718]: Both point size and pixel size set. Using pixel size.
Jul 25 20:58:07 Bagheri konsole[1374]: Error loading text-to-speech plug-in "flite"

آخرین ویرایش توسط behnam (2017-11-03 17:41:07)

آفلاین

#2 2017-07-26 14:07:43

morealaz
عضو
از : کرمان
ثبت شده: 2016-03-19
ارسال ها: 298

پاسخ: مشکل با x0vncserver در زمان استارت از طریق systemd [حل شد]

داخل فایل سرویس مقدار پارامتر User باید نام کاربری شما باشه که سرویس بتونه ازش استفاده کنه گزینه foo به عنوان مثال اومده.
همچنین مقدار پارامتر ExecStart هم باید تصحیح بشه و اونجا که آدرس فایل passwd اومده به جای foo اسم کاربری خودتون رو قرار بدید. کلا هرجا که مقدار foo رو قرار داده اسم کاربری خودتون رو قرار بدید.
نکته بعد اینکه چون شما این سرویس رو enable کردید که به هنگام شروع سیستم فعال بشه برای همین نمیتونه درست کار کنه چون اون موقع هنوز X اجرا نشده که این سرویس بتونه ازش استفاده کنه. اگر در صفحه TigerVNC هم نگاه کنید میبینید که این نکته رو نوشته:

Note: This unit will only be useful if the user in the unit is currently running a X session.

پس باید سرویس همیشه بعد از بالا اومدن X اجرا بشه.

آفلاین

#3 2017-07-26 14:51:18

behnam
عضو
از : Tehran
ثبت شده: 2017-06-25
ارسال ها: 16

پاسخ: مشکل با x0vncserver در زمان استارت از طریق systemd [حل شد]

morealaz نوشته است که:

داخل فایل سرویس مقدار پارامتر User باید نام کاربری شما باشه که سرویس بتونه ازش استفاده کنه گزینه foo به عنوان مثال اومده.
همچنین مقدار پارامتر ExecStart هم باید تصحیح بشه و اونجا که آدرس فایل passwd اومده به جای foo اسم کاربری خودتون رو قرار بدید. کلا هرجا که مقدار foo رو قرار داده اسم کاربری خودتون رو قرار بدید.
نکته بعد اینکه چون شما این سرویس رو enable کردید که به هنگام شروع سیستم فعال بشه برای همین نمیتونه درست کار کنه چون اون موقع هنوز X اجرا نشده که این سرویس بتونه ازش استفاده کنه. اگر در صفحه TigerVNC هم نگاه کنید میبینید که این نکته رو نوشته:

Note: This unit will only be useful if the user in the unit is currently running a X session.

پس باید سرویس همیشه بعد از بالا اومدن X اجرا بشه.

خیلی ممنون
به جای foo یوزر خودم رو وارد کردم و یک اسکریپت لازم داره که ده ثانیه بعد از اجرا شدن x ، سروریس رو استارت کنه و مشکل حل شد.

آخرین ویرایش توسط behnam (2017-07-26 16:36:39)

آفلاین

#4 2017-07-26 16:29:00

behnam
عضو
از : Tehran
ثبت شده: 2017-06-25
ارسال ها: 16

پاسخ: مشکل با x0vncserver در زمان استارت از طریق systemd [حل شد]

این محتویات اسکریپتی که استفاده کردم:

#!/bin/bash
sleep 10
echo MYPASSWOORD | sudo -S systemctl start x0vncserver.service

که MYPASSWORD رمز کاربر خودمه

بعد از ذخیره بهش دسترسی اجرایی دادم:

chmod +x x0vncserver.sh

و بعد از اون در مسیر فایلهای اجرایی سیستمم اون رو کپی کردم:

sudo cp x0vncserver.sh /usr/local/bin/

و در نهایت فایل رو در استارتآپ میزکارم قرار دادم تا بعد از هر بار روشن شدن سیستم اجرا بشه.

آفلاین

#5 2017-07-26 20:20:37

morealaz
عضو
از : کرمان
ثبت شده: 2016-03-19
ارسال ها: 298

پاسخ: مشکل با x0vncserver در زمان استارت از طریق systemd [حل شد]

من یه پیشنهاد بهتر دارم. پیشنهاد میکنم از Systemd/User استفاده کنید. برای اینکار فایل سرویس رو به جای اینکه در مسیر

/etc/systemd/system/x0vncserver.service

قرار بدید در مسیر زیر قرار بدید:

~/.config/systemd/user/x0vncserver.service

قرار بدهید. بعد با دستور زیر اون رو فعال کنید و ران کنید:

systemctl --user enable x0vncserver
systemctl --user start x0vncserver

اینجوری هر موقع که شما لاگین میکنید این سرویس اجرا میشه و چون شما از میز کار استفاده میکنید و با DM لاگین میکنید مشکلی هم از جهت ران بودن X قبل از اجرای سرویس وجود نداره.

ویرایش: توصیه میکنم graphical.target رو هم به متغیر After فایل سرویس اضافه کنید.

آخرین ویرایش توسط morealaz (2017-07-26 20:39:04)

آفلاین

#6 2017-07-27 01:04:32

behnam
عضو
از : Tehran
ثبت شده: 2017-06-25
ارسال ها: 16

پاسخ: مشکل با x0vncserver در زمان استارت از طریق systemd [حل شد]

morealaz نوشته است که:
~/.config/systemd/user/x0vncserver.service

.

این مسیر وجود نداشت ایجادش کردم و فایل رو داخلش کپی کردم و بعد هم enable هنگام استارت کردن سروریس خطا داد که زیر میذارم مسیر زیر

/usr/lib/systemd/user

رو هم امتحان کردم و همین ارور رو موقع استارت کردن گرفتم:

Job for x0vncserver.service failed because the control process exited with error code.
See "systemctl --user status x0vncserver.service" and "journalctl --user -xe" for details.

خروجی systemctl --user status x0vncserver.service :

● x0vncserver.service - Remote desktop service (VNC)
   Loaded: loaded (/home/behnam/.config/systemd/user/x0vncserver.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Thu 2017-07-27 00:50:51 +0430; 8min ago
  Process: 25088 ExecStart=/usr/bin/fish -c /usr/bin/x0vncserver -display :0 -rfbport 5900 -passwordfile /home/behnam/.vnc/passwd & (cod

Jul 27 00:50:51 Bagheri systemd[581]: Starting Remote desktop service (VNC)...
Jul 27 00:50:51 Bagheri systemd[25088]: x0vncserver.service: Failed to determine supplementary groups: Operation not permitted
Jul 27 00:50:51 Bagheri systemd[581]: x0vncserver.service: Control process exited, code=exited status=216
Jul 27 00:50:51 Bagheri systemd[581]: Failed to start Remote desktop service (VNC).
Jul 27 00:50:51 Bagheri systemd[581]: x0vncserver.service: Unit entered failed state.
Jul 27 00:50:51 Bagheri systemd[581]: x0vncserver.service: Failed with result 'exit-code'.

خروجی journalctl --user -xe :

QDateTime(2017-07-27 01:01:38.000 +0430 Qt::TimeSpec(LocalTime))
Jul 27 01:02:18 Bagheri kactivitymanagerd[15108]:        Last update :  QDateTime(2017-07-27 01:01:38.000 +0430 Qt::TimeSpec(LocalTime))
Jul 27 01:02:18 Bagheri kactivitymanagerd[15108]: After the adjustment
Jul 27 01:02:18 Bagheri kactivitymanagerd[15108]:      Current score :  0
Jul 27 01:02:18 Bagheri kactivitymanagerd[15108]:       First update :  QDateTime(2017-07-27 01:01:38.000 +0430 Qt::TimeSpec(LocalTime))
Jul 27 01:02:18 Bagheri kactivitymanagerd[15108]:        Last update :  QDateTime(2017-07-27 01:01:38.000 +0430 Qt::TimeSpec(LocalTime))
Jul 27 01:02:18 Bagheri kactivitymanagerd[15108]: Interval length is  18
Jul 27 01:02:18 Bagheri kactivitymanagerd[15108]:          New score :  0.3
Jul 27 01:02:18 Bagheri kactivitymanagerd[15108]: ResourceScoreUpdated: "7da119cd-df8c-46a9-819e-478de6653358" "kate" "/home/behnam/plot.svg"

آخرین ویرایش توسط behnam (2017-07-27 01:13:57)

آفلاین

پانوشت انجمن

پشتیبانی توسط تیم آرچ لینوکس ایران و نیرو گرفته با FluxBB