একটি সাধারণ লিনাক্স কমান্ড আছে যা আমাকে জানাবে যে আমার ডিসপ্লে ম্যানেজারটি কী?


59

একটি সাধারণ লিনাক্স কমান্ড আছে যা আমাকে জানাবে যে আমার ডিসপ্লে ম্যানেজারটি কী?

আমি এক্সএফসি ব্যবহার করছি। বিভিন্ন ডেস্কটপ এনভায়রনমেন্টগুলি সাধারণত বিভিন্ন ডিসপ্লে ম্যানেজারের সাথে যুক্ত হয়?


1
: উইকিপিডিয়া এই একটি প্রশংসনীয় ভাল নিবন্ধ প্রকাশিত হয় en.wikipedia.org/wiki/X_display_manager_%28program_type%29
Let_Me_Be

উত্তর:


46

দুর্ভাগ্যক্রমে প্রতিটি বিতরণের জন্য কনফিগারেশন পৃথক:

Debian / Ubuntu-

/etc/X11/default-display-manager

রেডহ্যাট (ফেডোরার ক্ষেত্রেও প্রয়োগ করা উচিত)

/etc/sysconfig/desktop

openSUSE

/etc/sysconfig/displaymanager

1
হু, কেন আপনি আমাকে কনফিগারেশন সম্পর্কে বলছেন ...?
ptrcao

2
@ptrcao কারণ এটি নির্দিষ্ট করে যে আপনি কোন ডিসপ্লে ম্যানেজারটি ব্যবহার করছেন।
আসুন_আমি_বলে

1
ধরুন আমার ডিসপ্লে ম্যানেজারটি কী তা আমি জানি না এবং আমি টার্মিনালটি ব্যবহার করে এটি জানতে চাই। আমি যে কিভাবে করতে হবে?
ptrcao

3
@ptrcao আপনি এই ফাইলগুলি সন্ধান করবেন। হয় এগুলি আপনার প্রিয় সম্পাদকটিতে খোলার, বা কেবল করা cat
আসুন_আমি_বলে

1
এটিতে কেবল একটি লাইন রয়েছে: /usr/bin/xdm- এর অর্থ কী এক্সডিএম আমার প্রদর্শন পরিচালক?
ptrcao

23

নেই। ডিসপ্লে ম্যানেজার অগত্যা একই এক্স সার্ভারে চলছে এমন অন্য কোনও কিছুর সাথে সম্পর্কিত নয়। লগ ইন করার আগে ডিসপ্লে ম্যানেজারটি চলে; এটি সিস্টেম প্রশাসক দ্বারা চয়ন করা হয়েছে। অন্য সমস্ত কিছু (উইন্ডো ম্যানেজার, সেশন ম্যানেজার, ডেস্কটপ পরিবেশ,…) ব্যবহারকারী চয়ন করেছেন। এমনকি ডিসপ্লে ম্যানেজার হতে হবে না: আপনি যদি টেক্সট মোডে লগ ইন করেন এবং জিইউআই দিয়ে শুরু করেন startx, কোনও ডিসপ্লে ম্যানেজার জড়িত না।

আপনার সিস্টেমে কোন ডিসপ্লে ম্যানেজারটি ডিফল্ট, আপনি তা পরীক্ষা করতে পারেন । এটি কেবলমাত্র কিছু সাধারণ তবে সর্বজনীন অনুমানের অধীনে সঠিক উত্তর দেবে। যদি আপনি যেকোন কারণে ম্যানুয়ালি অন্য কোনও পরিচালককে চালনা করেন তবে এই পদ্ধতিটি আপনাকে বলবে না।

এক্স সার্ভারের প্রসেস আইডিটি খুঁজে বের করা ভাল বাজি: এর প্যারেন্ট প্রসেসটি সম্ভবত কোনও ডিসপ্লে ম্যানেজার থাকে যদি থাকে one এটির জন্য আপনার ক্লায়েন্টগুলি এক্স সার্ভারের মতো একই মেশিনে চলছে requires lsof /tmp/.X11-unix/X${DISPLAY#:}এক্স সার্ভার প্রক্রিয়াটি দেখায় (এক্স সকেটগুলিকে লাইভ ধরে রেখে /tmp/.X11-unix)।

x=$(lsof -F '' /tmp/.X11-unix/X0); x=${x#p}
ps -p $(ps -o ppid -p $x)

(ব্যাখ্যা: lsof -F ''মত আউটপুট ছাপে p1234-Fবিকল্প একটি মেশিন-parseable আউটপুট ফরম্যাট মানে, এবং ''এর মানে হল শুধুমাত্র অক্ষর দিয়ে PID, প্রিন্ট করতে, pএটা আগে। x=${x#p}বন্ধ রেখাচিত্রমালা প্রাথমিক চিঠি pশেষ লাইনটি X সার্ভারের পিতা বা মাতা এর PID, সংগ্রহ করে। ( ps -o ppid -p $x), এবং psসেই পিতামাতার প্রক্রিয়া সম্পর্কিত তথ্য দেখানোর জন্য কলগুলি )

কিছু বিতরণ একাধিক ডিসপ্লে ম্যানেজার ইনস্টল করার অনুমতি দেয়। আপনার কাছে মাল্টিসিট সিস্টেম না থাকলে কেবল একক চলমান থাকবে। ডেবিয়ান এবং ডেরিভেটিভগুলির অধীনে সমস্ত ইনস্টলড ডিসপ্লে ম্যানেজার প্যাকেজ তালিকাভুক্ত করতে:

aptitude -F %p search '~i ~P^x-display-manager$'

অথবা

</var/lib/dpkg/status awk '
    /^Package: / {package = $2}
    /^Provides: .*x-display-manager/ {print package}'

18

আপনি ব্যবহার করে থাকেন systemd হল ভিত্তিক বন্টন। এই কমান্ডটি বর্তমানে কনফিগার করা ডিসপ্লে ম্যানেজারটির নাম দেবে কারণ আপনার একাধিক ডিসপ্লে ম্যানেজার ইনস্টল থাকতে পারে।

grep '/usr/s\?bin' /etc/systemd/system/display-manager.service

OUTPUT এর মতো কিছু হবে

ExecStart=/usr/bin/mdm

দেখে মনে হচ্ছে আমি পুদিনা ডিসপ্লে ম্যানেজার ব্যবহার করছি।


3
আপনি একটি একটি ধ্রুপদী উদাহরণ পেশ করেছি বিড়াল বেহুদা ব্যবহার - এটি পুরোপুরি গ্রহণযোগ্য, এবং এমনকি বাঞ্ছনীয় বলে এর grep '/usr/bin' /etc/systemd/system/display-manager.service। (এবং, কঠোরভাবে বলতে গেলে, যেহেতু /usr/binশেলের জন্য বিশেষ কোনও অক্ষর নেই, তাই আপনাকে এটাকে উদ্ধৃত করার দরকার নেই - তবে এতে কোনও ক্ষতি হয় না))
জি-ম্যান

6
'বিড়ালের অকেজো ব্যবহার' সর্বদা কিছুটা আপেক্ষিক। গ্রেপিংয়ের সময় আমি cat <file> | grep <searchterm>দ্বিতীয় স্ট্রিংয়ের পরিবর্তে শেষ স্ট্রিংটি সম্পাদনা grep <searchterm> <file>করি।
sjas

1
এই উত্তরটি আপনার দেখা প্রথম হওয়া উচিত, কারণ বর্তমানে এই ধরণের প্রশ্নকারী বেশিরভাগ ব্যবহারকারী সিস্টেমে ভিত্তিক ডিস্ট্রোস চালাচ্ছেন। ধন্যবাদ। এটা আমাকে সাহায্য করেছে।
অ্যাডারগার্ড

3
@sused আমার ফাইলটিতে / usr / বিন এতে / usr / sbin নেই। লিনাক্স-পুদিনা 18
প্রাইভেট_যাদভ

2
আমার ক্ষেত্রে (সেন্টোস 7) আমাকে লিখতে হবে | গ্রেপ '/ usr / sbin'
ডেভিড

16

আপনি যদি systemd ব্যবহার করেন, তবে

systemctl status display-manager

আপনার মেশিনে সক্রিয় ডিসপ্লে ম্যানেজার পরিষেবার নাম এবং স্থিতি প্রদর্শন করবে।


ডেবিয়ান 9 এর সাথে, এটিই কেবল আমার জন্য কাজ করেছিল। অন্যান্য পদ্ধতিযুক্ত পদ্ধতিগুলি কিছুই ফেরেনি।
মিকিউফ

10

ডিসপ্লে ম্যানেজারের নামটি DESKTOP_SESSION এ হওয়া উচিত

echo $DESKTOP_SESSION

আমার জন্য "জিনোম" ফিরিয়ে দেয়।

সম্পাদনা
তুমি ঠিক বলেছ। তারা XFCEs বাগজিলায় এটি পিছনে পিছনে যাচ্ছেন যাতে এটি সম্ভবত খুব নির্ভরযোগ্য নয়।


@ ফ্রেবজৌস: জিডিএম এবং কেডিএম সম্পর্কে কী? তারা ম্যানেজারগুলি খুব প্রদর্শন করে বা কেবল লগইন পরিচালকদের?
ptrcao

আমি অবশ্যই উপরের দিকে দুর্ঘটনাক্রমে ভ্রান্ত মন্তব্য মুছে ফেলেছি কারণ আমার মনে আছে তিনি মন্তব্য করেছিলেন যে জিনোম একটি ডেস্কটপ পরিবেশ, কোনও ডিসপ্লে ম্যানেজার নয়। এই থ্রেড বিভ্রান্তির সাথে প্রচুর ...
ptrcao

এটি ... ডেস্কটপ সেশন সম্পর্কে তথ্য দেয় যা সম্ভবত আপনার ডেস্কটপ পরিবেশ হিসাবে একই জিনিস হতে পারে তবে আপনি যদি কোনও ডেস্কটপ পরিবেশ ব্যবহার না করেন বা আপনার কাছে একটি অদ্ভুত কনফিগারেশন থাকে তবে তা সম্পূর্ণরূপে অন্য কিছু হতে পারে। যে মেশিনে আমি এটি লিখছি, $DESKTOP_SESSIONতা unknown
গিলস 'দুষ্ট হওয়া বন্ধ করুন'

+1, প্রতিধ্বনি ES DESKTOP_SESSION এছাড়াও আমাকে জ্ঞান ফিরিয়ে দেয় ... তবে সম্ভবত এটি কেবল জিনোমের জন্যই কাজ করে?
ট্রেভর বয়েড স্মিথ

যদি এটি শুধুমাত্র জিনোমের জন্য কাজ করে তবে এই আদেশটি আপনাকে "হ্যাঁ জিনোম আছে বা না আপনার জিনোম নেই" হ্রাস করতে সহায়তা করবে। প্রশ্নটি এর চেয়ে আরও বেশি জানতে চাইলে।
ট্রেভর বয়েড স্মিথ

2

@ গিলিস বলেছিলেন, ডিসপ্লে ম্যানেজার আপনার ডেস্কটপ পরিবেশ শুরু করবে।

দেবিয়ান উইকির মতে , বেশিরভাগ ক্ষেত্রেই এগুলি শেষ হয় dmকেবল ব্যতিক্রম slim

সুতরাং এটি বেশিরভাগ মানুষের প্রয়োজনের জন্য পর্যাপ্ত হওয়া উচিত:

ps auxf | awk '{print $11}' | \grep --color -e dm$ -e slim$

বা নিশ্চিত হওয়া যায় যে এটি একটি পিতামাতার প্রক্রিয়া হিসাবে উপস্থিত রয়েছে এবং এটি কাঁটাচামচ করা হয় না (init সিস্টেম ব্যতীত):

ps auxf | awk '{print $11}' | \grep -e "^/.*dm$" -e "/.*slim$" 

1
এটিই এখানে একমাত্র সমাধান যা আমার পক্ষে কাজ করেছিল। খুঁজে পেয়েছি যে আমার ফেডোরা 23 মিনিটে এলএক্সডিইডি অ্যাড-অন (এলএক্সডিডি স্পিন নয়) দিয়ে চলছে lightdm। উপরের উত্তর থেকে রেডহ্যাট / ফেডোরা সমাধানটি কার্যকর হয়নি, কনফিগারেশনটি সরানো হয়েছে বলে মনে হচ্ছে।
ড্যানিয়েল সানার

0

কিছু ক্ষেত্রে, wmctrl সাহায্য করতে পারে। এই ইউটিলিটি অনেকগুলি উইন্ডোজ ম্যানেজারের সাথে সামঞ্জস্যপূর্ণ।

wmcrt -m 

বর্তমানে ব্যবহৃত উইন্ডো ম্যানেজারের নাম প্রদর্শন করা উচিত।


6
একটি উইণ্ডো ম্যানেজার একটি হিসাবে একই জিনিস না ডিসপ্লে ম্যানেজার
হ্যালোগোস্ট

0

ইতিমধ্যে উল্লিখিত হিসাবে, এই থ্রেডে অনেক বিভ্রান্তি রয়েছে। মূল প্রশ্নটি হ'ল ডিসপ্লে ম্যানেজার, ডেস্কটপ ম্যানেজার বা উইন্ডো ম্যানেজার নয়। আমি বর্তমানে Xfwm4 চালাচ্ছি যা Xfce উইন্ডো ম্যানেজার, এবং lxdm যা লাইটওয়েট এক্স 11 ডিসপ্লে ম্যানেজার (LXDE থেকে, Xfce নয়)। আপনি হটপের মাধ্যমে কী ডিসপ্লে ম্যানেজারটি ব্যবহার করছেন তা দেখতে সক্ষম হওয়া উচিত। আপনি সম্ভবত দীর্ঘ 4 বছর ধরে উত্তরটি আবিষ্কার করেছেন :)


আসলে কখনও করেনি ... আসলে লিনাক্স পুরোপুরি ছেড়ে দিয়েছে এবং অন্ধকারের দিকে চলে গেছে: ডি
পিটিআরসিও

0

আপনি স্ক্রিনফ্যাচ নামে একটি তৃতীয় পক্ষের স্ক্রিপ্টের মাধ্যমে এটি করতে পারেন

স্ক্রিনফ্যাচ লিনাক্সের জন্য উপলব্ধ একটি বাশ স্ক্রিপ্ট যা সিস্টেমের লিনাক্স ডিস্ট্রিবিউশন লোগোর ASCII সংস্করণের পাশাপাশি সিস্টেমের তথ্য প্রদর্শন করে

প্যাকেজ ম্যানেজারের মাধ্যমে ইনস্টল করুন sudo apt-get install screenfetch(ধরে নিবেন আপনি দেবিয়ান রূপগুলিতে আছেন)

এবং কেবল screenfetch আপনার টার্মিনালে চালান

প্রকল্পের লিঙ্ক https://github.com/KittyKatt/screenFetch


-1

এক্স অত্যন্ত মডারুলার তাই আপনি যদি সত্যিই এটি চেয়েছিলেন, হ্যাঁ, আপনি ডেস্কটপ পরিবেশ এবং উইন্ডোজ পরিচালকদের মিশ্রিত করতে পারেন। উইন্ডো ম্যানেজার হ'ল উইন্ডো আঁকার কেবল একটি উপায় (এটি সাধারণ দৃশ্য)।

সুতরাং আপনি যদি জিনোম নেন তবে উইন্ডো ম্যানেজার হিসাবে মেটাটিসিটি ব্যবহৃত হত তবে এখন এটি মটার দ্বারা প্রতিস্থাপন করা হয়েছে।

মিশ্রণের বিষয়টি আধুনিক ডেস্কটপ পরিবেশে, ডেস্কটপ এবং উইন্ডো ম্যানেজার একে অপরের সাথে অত্যন্ত আবদ্ধ। খুব বেশি মিশ্রণ কম কার্যকারিতাতে শেষ হতে পারে।

উল্লিখিত হিসাবে $ DESKTOP_SESSION কাজ করে তবে আপনি যদি আপনার এক্স 11 সার্ভারটি জানতে চান তবে আপনি এটি করতে পারেন:

xprop -id $(xprop -root _NET_SUPPORTING_WM_CHECK | cut -d\# -f2) WM_NAME

যা পচে যায়

xprop -root _NET_SUPPORTING_WM_CHECK | cut -d\# -f2
0x1000052
xprop -id 0x1000052 WM_NAME
WM_NAME(STRING) = "xfwm4"

যা উইন্ডো ম্যানেজার দ্বারা তৈরি উইন্ডোর আইডি পায়। চশমাগুলি বলছে (http://standards.freedesktop.org/wm-spec/1.3/ar01s03.html):

_NET_SUPPORTING_WM_CHECK, WINDOW/32
The Window Manager MUST set this property on the root window to be the ID
of a child window created by himself, to indicate that a compliant window
manager is active.

এবং তারপরে আপনি উল্লিখিত উইন্ডোটির WM_NAME সম্পত্তিটির জন্য জিজ্ঞাসা করবেন।

WM_NAME হচ্ছে:

The WM_NAME property is an uninterpreted string that the client wants the
window manager to display in association with the window (for example, in
a window headline bar). 

@ ফ্রেবজৌস: এক্সএফডএম 4 এক্সফেস উইন্ডো ম্যানেজার। এটি কি ডিসপ্লে ম্যানেজারের মতো?
ptrcao

@ ম্যাথিউ আপনি উইন্ডো ম্যানেজারের বিষয়ে কথা বলছেন, প্রদর্শক পরিচালক নয়।
আসুন_আমি_বলে

@ লেট_মে_ভুটি সত্য তবে বেশিরভাগ সময় আপনার উইন্ডো ম্যানেজারটি আপনার ডিসপ্লে ম্যানেজারের সাথে আবদ্ধ থাকে ... আপনি কতবার জিনোম উইন্ডো ম্যানেজারকে কেডি এবং তদ্বিপরীত ব্যবহার করেন? এবং এটি আসলে কাজ করে কারণ gdm / kdm / যাই হোক না কেন আপনি আপনার ডিসপ্লে ম্যানেজার নির্বাচন করতে পারবেন যার অর্থ আপনার যেমন উল্লেখ করা কনফিগারেশন ফাইলটি পড়া আপনি যদি ডিফল্ট ডিফল্ট ব্যবহার না করেন তবে কাজ করে না ...
ম্যাথিউ

_NET_SUPPORTING_WM_CHECKউইন্ডো ম্যানেজার সম্পর্কে তথ্য দেয়, ডিসপ্লে ম্যানেজার সম্পর্কে নয়। এটি সবসময় কাজ করে না; আমার সিস্টেমে, সেই সম্পত্তিটি একটি উইন্ডো আইডিতে সেট করা আছে তবে প্রশ্নে উইন্ডোর কোনও নাম নেই।
গিলস 'খারাপ হয়ে যাওয়া বন্ধ করুন'

@ ম্যাথিউ যা বিতরণগুলির উপর নির্ভর করে। সাধারণত আপনি যখন ডিস্ট্রোর একটি কেডি সংস্করণ ইনস্টল করেন, আপনি কেডিএম পাবেন এবং যখন কোনও জিনোম সংস্করণ পাবেন, আপনি জিডিএম পাবেন। তবে আপনি যে স্টাফটি আরও বেশি কিছু দেখতে পাবেন তা কেবলমাত্র একটি ডিসপ্লে ম্যানেজারের অফিসিয়াল সমর্থন (সাধারণত আরও হালকা ওজনের বৈকল্পিক তারপরে জিডিএম / কেডিএম)।
10_11

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.