केडीई के तहत स्क्रीन लॉकिंग तंत्र क्या है?


14

मैंने अपने Ubuntu पर KDE डेस्कटॉप स्थापित किया है:

root@DESKTOP:/var/log# dpkg -l|fgrep -i kde-plasma-desktop
ii  kde-plasma-desktop                      5:63ubuntu16                               the KDE Plasma Desktop and minimal set of applications
root@DESKTOP:/var/log# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 11.04
Release:    11.04
Codename:   natty
root@DESKTOP:/var/log# 

मैं बस यह जानना चाहता था कि अगर मैं "CTRL + ALT + L" दबाता हूं तो स्क्रीन लॉक करने वाली प्रक्रिया / एप्लिकेशन क्या है? GNOME के ​​तहत यह सूक्ति-स्क्रीनसेवर है। केडीई के तहत यह क्या है?


मैं टिप्पणी कर रहा हूँ क्योंकि मुझे नहीं केडीई का उपयोग, लेकिन मैं एक मॉड्यूल कहा जाता है को देखने के kscreensaverआप हो सकता है चाहिए ps auxकि
sagarchalise

जवाबों:


27

KDE 4.x पर चलने वाले सिस्टम के लिए

qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock

Ubuntu / सूक्ति के लिए: qdbus org.gnome.ScreenSaver /ScreenSaver Lock

ऊपर लिखे अनुसार Qdbus, बस संदेश संदेश बस पर एक संदेश भेजता है, जिसे स्क्रीन-लॉकर प्राप्त करता है। हालांकि कमांड स्क्रीन को लॉक कर देगी। qdbus बस अच्छी तरह से पूछता है "क्या कोई कृपया स्क्रीन लॉक करेगा?" क्यूडबस का उपयोग करने का लाभ यह है कि यह केडीई के अलावा अन्य प्लेटफार्मों पर समर्थित है। नीचे दिया गया पाठ केवल KDE4 के लिए काम करता है।

अब देखो और सीखो: ओ)

इसे और अधिक विस्तार से जानने के लिए, थोड़ी सी चालाकी की आवश्यकता है:

  • अनलॉक करते समय सभी प्रक्रियाओं को सूचीबद्ध करें ps -ef;
  • स्क्रीन लॉक करें qdbus ..........;
  • स्क्रीन लॉक होने के लिए एक पल रुकें sleep 1
  • फिर प्रक्रियाओं को सूचीबद्ध करते हुए लॉक करें ps -ef
  • दोनों कमांड के आउटपुट के बीच अंतर खोजें diff <( cmd1 ) <( cmd2 )

कमांड लाइन:

diff <( ps -ef ) <( qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock; sleep 1; ps -ef )

0a1
> 
242d242
< jhendrix 17088 16352  0 21:11 pts/4    00:00:00 /bin/bash
245,246c245,247
< jhendrix 17091 17088  0 21:11 pts/4    00:00:00 ps -ef
< jhendrix 17092 17089  0 21:11 pts/4    00:00:00 qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock
---
> jhendrix 17093  2801 11 21:11 ?        00:00:00 /usr/lib/kde4/libexec/kscreenlocker --forcelock
> jhendrix 17095 17093 11 21:11 ?        00:00:00 kblankscrn.kss -root
> jhendrix 17099 17089  0 21:11 pts/4    00:00:00 ps -ef

यह स्क्रीन को लॉक करने के लिए संभावित कमांड की सूची को नीचे करता है, है ना? अब आपके प्रश्न का उत्तर सरल है: /usr/lib/kde4/libexec/kscreenlocker --forcelockकमांड लाइन के उपयोग से स्क्रीन को लॉक करने के लिए: blankscrn.kss एक बच्चे की प्रक्रिया है।

कमांड सिंटैक्स देखने के लिए: /usr/lib/kde4/libexec/kscreenlocker --help

यह क्या करता है? यह मूल रूप से एक बड़ी काली खिड़की खींचता है जो पूरी स्क्रीन को कवर करती है और यह सब कुछ के शीर्ष पर रहने के लिए मजबूर करती है। यह सभी कीस्ट्रोक्स को पकड़ता है और एक लॉगिन संवाद को पॉप अप करता है।

अंत में यह किस पैकेज में आता है (kde-workspace-bin)?

$ dpkg -S /usr/lib/kde4/libexec/kscreenlocker

kde-workspace-bin: /usr/lib/kde4/libexec/kscreenlocker


यह <()एक साफ चाल है!
मार्टिन यूडिंग

qdbus Saucy के तहत टूट गया लगता है , लेकिन यह काम करता है यदि आप पैकेज स्थापित करते हैं qdbus-qt5
मैकेनिकल घोंघा

अलग प्रोसेसर्स तकनीक से प्यार करें! मैं एक समान चीज का उपयोग करता था, लेकिन मेनू से मैन्युअल रूप से चयनित लॉक सो रहा था (यानीdiff <( ps -ef ) <( sleep 3; ps -ef )
मैथ्यू विलकॉक्सन

स्क्रिप्ट लिखने के बजाय, आप बस TTY को ctrl + alt + F # के साथ स्विच कर सकते हैं जबकि स्क्रीन लॉक है और वहां grep प्रोसेस करते हैं। लेकिन स्क्रिप्ट मस्त है!
दुख
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.