अगर उबंटू डेस्कटॉप या सर्वर स्थापित है तो कैसे जांचें?


34

मेरे पास एक साझा होस्टिंग है। मेरे पास शेल तक पहुंच है। ओएस उबंटू है, और मैं यह जांचना चाहता हूं कि यह सर्वर संस्करण या डेस्कटॉप संस्करण है या नहीं।

जब मैं शेल के माध्यम से लॉग इन करता हूं, तो यह निम्नलिखित जानकारी दिखाता है:

Linux [server-name] 2.6.32-24-generic #39-Ubuntu SMP Wed Jul 28 06:07:29 UTC 2010 i686 GNU/Linux
Ubuntu 10.04.1 LTS

जवाबों:


20

यह उत्तर उतना कट और सूखा नहीं है जितना कि कुछ लोग बना रहे हैं। आप एक ubuntu-standardपैकेज स्थापित और एक सर्वर के रूप में उपयोग कर सकते हैं । आप ubuntu-minimalसर्वर के रूप में उपयोग कर सकते हैं । आप इसे ले सकते हैं ubuntu-desktopऔर तोड़ सकते हैं ताकि यह एक्स का उपयोग न करे ... या यहां तक ​​कि प्रशासन (ईएवी) के लिए एक्स को छोड़ दें। आप कर्नेल पैकेज को -verver से -generic -rt आदि में बदल सकते हैं। आप motd को बदल सकते हैं या यहां तक ​​कि केवल एक संस्करण से अपग्रेड कर सकते हैं जहाँ motd नया नहीं है (मेरा कोई भी सर्वर कभी भी बाहर नहीं आया है) उन सभी के साथ - शायद इसलिए कि वे पुराने LTS से अपग्रेड हैं)।

मैं उन सवालों का अनुमान लगाता हूं जो हम सभी से पूछे जाने चाहिए: यह क्यों मायने रखता है? आप क्या सीखने की कोशिश कर रहे हैं? इससे आपको क्या फर्क पड़ता है?

यदि आप कुछ चित्रमय चलाने की कोशिश कर रहे हैं, तो आपको वास्तव में क्या चाहिए (X, x11vnc, आदि) के लिए जांचें। यदि आप यह जाँचने की कोशिश कर रहे हैं कि ग्राफिकल इंटरफ़ेस नहीं है, तो वही करें!


+1। यह क्यों मायने रखता है? खैर, ksplice पर विचार करें। डेस्कटॉप फ्री है, सर्वर नहीं है ...;)
0xC0000022L

1
खैर, यह एक और अधिक विशिष्ट प्रश्न है: ksplice जाँच करता है कि क्या आप मुफ्त डेस्कटॉप संस्करण का उपयोग कर सकते हैं। मुझे लगता है कि वे डेस्कटॉप बनाम सर्वर कर्नेल बिल्ड की जांच करेंगे।
पूली

1
इससे क्या फर्क पड़ता है? मेरे पास सिस्टम को बदलने का अधिकार नहीं है, इसलिए इसे मूल रूप से जानने की जरूरत है कि यह मूल रूप से क्या है। आप क्या सीखने की कोशिश कर रहे हैं? केवल इसके लिए जो पूछा गया था: क्या यह एक सर्वर या डेस्कटॉप इंस्टॉल था। इससे आपको क्या फर्क पड़ता है? यदि यह एक सर्वर स्थापित था और यह एक्स सामान से भरा है, तो हमें अपने आईटी लोगों को आग लगाना चाहिए, आदि
Jan Kyu Peblik

@JanKyuPeblik यदि आपको एक टूटी हुई प्रणाली सौंप दी गई है और यह स्पष्ट रूप से एक डेस्कटॉप नहीं है, तो आपको गलती की रिपोर्ट करने वाले व्यक्ति से पूछना चाहिए । गंभीरता से। कंप्यूटर कार नहीं हैं। यह ऑपरेटिंग मूल्यों और सहिष्णुता की एक विशिष्ट सूची नहीं है। यह सब विन्यास योग्य है। यहाँ बिंदु - आपके विचारों पर लागू होता है- प्रणाली को सौंपने वाला व्यक्ति आसानी से एक सर्वर ले सकता है और इसे डेस्कटॉप के रूप में कॉन्फ़िगर कर सकता है। यदि आप इसे वापस सर्वर में बदलते हैं, तो आपने नुकसान किया है। स्थापित समय में दोनों के बीच तकनीकी अंतर एक समस्या के लिए प्रासंगिक नहीं है। और 2010 में जो अंतर था वह अब काफी कम हो गया है।
ओली

मैं उस से बाहर निकला "इतिहास मूर्ख है"।
जन Kyu Peblik

34
dpkg -l ubuntu-desktop 

आपको बताएंगे कि क्या सुझाए गए डेस्कटॉप घटक इंस्टॉल किए गए हैं।

uname -a

आपको बताएगा कि सर्वर या जेनेरिक कर्नेल का उपयोग किया जा रहा है या नहीं।

"डेस्कटॉप या सर्वर" एक द्विआधारी चीज नहीं है - मूल रूप से सर्वर के रूप में स्थापित मशीन पर कुछ डेस्कटॉप घटकों को स्थापित करना संभव है, आदि।

आपको यह तय करना होगा कि आप "सर्वर" या "डेस्कटॉप" के बीच मुख्य अंतर के रूप में किस पैकेज का उपयोग करना चाहते हैं। शायद xserver-xorgएक अच्छा विकल्प है, हालांकि यहां तक ​​कि कुछ सर्वरों में पैकेज निर्भरता के लिए या दूरस्थ डेस्कटॉप का समर्थन करने के लिए होगा।


2
dpkg -i ubuntu-desktop तुम मेरे लिए क्या वर्णन नहीं करता है
20128 पर 8128

2
क्षमा करें, मेरा मतलब था dpkg -l। (अपडेट किया गया।)
poolie

2
उबंटू-डेस्कटॉप पैकेज के बिना पूरी तरह से काम करने वाला डेस्कटॉप होना संभव है। यह सिर्फ एक रूपक है जो सहायक अनुप्रयोगों जैसे कंट्रोल पैनल, डेबियन-विशिष्ट चीजों आदि के एक निश्चित मानक सेट को आपके डेस्कटॉप पर स्थापित करने के लिए सुनिश्चित करता है। यदि आप इनमें से किसी को भी हटाते हैं तो ubuntu- डेस्कटॉप प्रभावी रूप से "हटा" दिया जाएगा, लेकिन आपके पास अभी भी एक डेस्कटॉप होगा। इसके बजाय xserver-xorg-core पैकेज की जांच करना बेहतर होगा। हालाँकि, उस पैकेज का अस्तित्व इसकी गारंटी नहीं देता है कि इसका उपयोग किया जा रहा है, लेकिन इसे गैर-डेस्कटॉप मशीन पर स्थापित करने का कोई अच्छा कारण नहीं है।
थोमसट्रेटर

हां, यह तथ्य कि डेस्कटॉप और सर्वर के बीच कोई तीखी रेखा नहीं है, खदान सहित अधिकांश उत्तरों द्वारा बड़े पैमाने पर चर्चा की गई है। लेकिन ubuntu-desktopक्या आपके पास उबंटू डेस्कटॉप है, इसके लिए एक उचित परीक्षा है। यदि आप डेस्कटॉप सीडी / आईएसओ से स्थापित करते हैं, तो आपके पास यह पैकेज होगा।
पूली

15

इसे टाइप करके चेक किया जा सकता है cat /etc/motd। आउटपुट सर्वर पर अलग और डेस्कटॉप संस्करण पर अलग होगा।

डेस्कटॉप:

Ubuntu 10.10

Welcome to Ubuntu!
 * Documentation:  https://help.ubuntu.com/

सर्वर:

Ubuntu 10.10

Welcome to Ubuntu!
 * Documentation:  https://help.ubuntu.com/

  System information as of Wed Nov 10 20:54:11 UTC 2010

  System load:  0.07               Processes:           78
  Usage of /:   30.4% of 14.76GB   Users logged in:     1
  Memory usage: 38%                IP address for eth0: XXXXXXXX
  Swap usage:   0%

  Graph this data and manage this system at https://landscape.canonical.com/
---------------------------------------------------------------------
At the moment, only the core of the system is installed. To tune the 
system to your needs, you can choose to install one or more          
predefined collections of software by running the following          
command:                                                             

   sudo tasksel --section server  

यह भी ध्यान देने योग्य है कि यह फाइल सुडो द्वारा आसानी से संपादन योग्य है, जो बहुत बार किया जाता है, क्योंकि यह वह संदेश है जो उपयोगकर्ता देखता है जब वह ssh के माध्यम से लॉग करता है।


2
यह ज्यादातर आपको बता रहा है कि क्या landscape-clientस्थापित है। यह सर्वरों पर सही हो सकता है, लेकिन यह वास्तव में अनिवार्य रूप से जुड़ा नहीं है कि आप सर्वर ओएस का उपयोग कर रहे हैं या नहीं।
पूलि

5

यह बताने का सबसे तेज़ या शुद्ध तरीका नहीं हो सकता है, लेकिन दौड़ें:

dpkg --get-selections | grep linux-image | grep -v deinstall

यदि वर्तमान में स्थापित लिनक्स-इमेज पैकेज में "सर्वर" शब्द है, तो आप उबंटू सर्वर चला रहे हैं।

उदाहरण के लिए, Ubuntu 10.10 डेस्कटॉप के लिए नवीनतम नवीनतम कर्नेल पैकेज:

linux-image-2.6.35-22-generic

और सर्वर:

linux-image-2.6.35-22-server

अधिक सामान्य पैकेज के लिए जो उबंटू के विभिन्न संस्करणों में समान होना चाहिए, linux-image-genericउबंटू डेस्कटॉप के लिए डिफ़ॉल्ट पैकेज है और linux-image-serverसर्वर संस्करण के लिए डिफ़ॉल्ट है।


4
आप सर्वर कर्नेल को डेस्कटॉप इंस्टाल पर वैसे ही चला सकते हैं जैसे आप सर्वर पर डेस्कटॉप कर्नेल चला सकते हैं। यह किसी भी खिंचाव का निश्चित जवाब नहीं है।
ओली

@ ओली: जैसा कि आपने पहले ही बताया, निश्चित उत्तर नहीं लगता;)
0xC0000022L

4

इस प्रश्न के लिए स्पष्ट रूप से परिभाषित उत्तर नहीं है।

डेस्कटॉप सुविधाओं को सर्वर पर लोड करना, और उन्हें डेस्कटॉप से ​​निकालना संभव है। मूल मुद्दा यह है कि पैकेज सर्वर की कार्यक्षमता का हिस्सा हैं , और समर्थन और अपडेट की अतिरिक्त अवधि प्राप्त करेंगे

सबसे अच्छा जवाब (IMHO) लॉन्चपैड प्रश्न (2008 से) में पाया जा सकता है:

सर्वर और डेस्कटॉप संस्करण के बीच अंतर क्या है?

https://answers.launchpad.net/ubuntu/+question/40114


क्या आप यहां लॉन्चपैड प्रश्न के परिणाम को संक्षेप में बता सकते हैं?
पीटर मोर्टेंसन

2

आपको यह याद रखना चाहिए कि डेस्कटॉप और सर्वर संस्करणों के बीच कोई मूलभूत अंतर नहीं है।

यह अत्यधिक संभावना है कि आपके होस्टिंग प्रदाता को सभी ग्राफ़िकल टुकड़े नहीं मिले हैं, जैसे कि स्टैक के शीर्ष पर GNOME, क्योंकि उनकी कोई आवश्यकता नहीं है। स्थापित पैकेज वह है जो इसे सर्वर बनाता है।

आपको ubuntu-maintenance-checkस्क्रिप्ट ( लिंक ) में दिलचस्पी हो सकती है जो आपको स्थापित प्रत्येक पैकेज के रखरखाव चक्र को बताती है - जिनकी लंबी अवधि है वे सर्वर पैकेज हैं।


12.04 से स्पष्ट रूप से सभी समर्थित पैकेजों को सर्वर बनाम डेस्कटॉप के बीच भेदभाव किए बिना एक ही समर्थन जीवनकाल मिलता है
पूली

2

मैं एक बड़े नेटवर्क पर खोज चला रहा हूं और मैं एक सर्वर बनाम वर्कस्टेशन के रूप में स्थापित लिनक्स से अलग करने की कोशिश कर रहा हूं (क्योंकि हम उन्हें अलग-अलग व्यवहार करेंगे)।

मैं एक विशेषता या फ़ाइल की उम्मीद कर रहा था जिसमें उबंटू के बजाय उबंटू-सर्वर था।

मुझे / var / log / संस्थापक में कुछ दिलचस्प फाइलें मिलती हैं:

मीडिया-जानकारी सर्वर के लिए "उबंटू-सर्वर" और डेस्कटॉप के लिए सिर्फ "उबंटू" कहती है। syslog "cdrom" के लिए समान जानकारी दिखाता है

ये दोनों मददगार हैं और मैं इनका उपयोग हार्डवेयर की जानकारी के साथ कर सकता हूं। यह आपको कम से कम यह बताना चाहिए कि मूल रूप से कौन सा संस्करण स्थापित किया गया था।


1

"लगभग" एक ही सवाल यहाँ पूछा गया है: Ubuntu वितरण सर्वर या डेस्कटॉप को जानें

मैं अपना उत्तर यहां भी पोस्ट करना चाहूंगा क्योंकि इसमें कुछ नए संकेत हैं कि कैसे अपने डेस्कटॉप या सर्वर संस्करण पर जांच करें।

जैसा कि पिछले पोस्टों में बताया गया है, यह निर्धारित करना आसान नहीं है कि क्या आप डेस्कटॉप या सर्वर संस्करण का उपयोग करते हैं क्योंकि सभी पैकेज को स्थापित या हटाया जा सकता है।

यदि आप एक सुसंगत और अनुमानित वातावरण में हैं, तो यह निर्धारित करना बहुत मुश्किल नहीं होना चाहिए कि डेस्कटॉप या सर्वर।

मैं केवल ubuntu- डेस्कटॉप (वेनिला) या ubuntu सर्वर का उपयोग करता हूं। मेरे लिए dpkg -l ubuntu-desktopयह निर्धारित करने के लिए एक बहुत ही विश्वसनीय तरीका है कि क्या यह एक डेस्कटॉप या सर्वर है।

जैसा कि लिंक किए गए पोस्ट में बताया गया है, यह निर्धारित करना आसान नहीं है कि क्या आप डेस्कटॉप या सर्वर संस्करण का उपयोग करते हैं क्योंकि सभी पैकेजों को स्थापित या हटाया जा सकता है।

यहां मेरा फ़ंक्शन है जो मैं अपनी स्क्रिप्ट के लिए उपयोग करता हूं। मूल रूप से यह जांचता है कि क्या xserver-common या xwayland स्थापित हैं। यदि उनमें से एक स्थापित है, तो इसका मतलब है एक डेस्कटॉप सिस्टम।

#!/usr/bin/env bash

check_if_desktop (){
  IS_DESKTOP="false"

  displayManager=(
    'xserver-common' # X Window System (X.Org) infrastructure
    'xwayland' # Xwayland X server
  )
  for i in "${displayManager[@]}"; do
    dpkg-query --show --showformat='${Status}\n' $i 2> /dev/null | grep "install ok installed" &> /dev/null
    if [[ $? -eq 0 ]]; then
      IS_DESKTOP="true"
    fi
  done
}

यहाँ कुछ अन्य चीजें हैं:

डिफ़ॉल्ट रूप से सर्वर संस्करण क्लासिक का उपयोग करता है /etc/network/interfaces, जबकि डेस्कटॉप संस्करण नेटवर्क प्रबंधक के साथ संचालित होता है, इसलिए जांचें कि क्या नेटवर्क प्रबंधक स्थापित है

dpkg -l network-manager

या यदि आप इस तरह का संदेश प्राप्त करते हैं तो कमांड nmcli (NM के लिए कमांड लाइन टूल) चलाएं:

The program 'nmcli' is currently not installed. You can install it by typing:
sudo apt-get install network-manager

संभावना अधिक है कि आप सर्वर संस्करण पर हैं। लेकिन ध्यान रखें, आप एनएम के साथ काम करने के लिए एक सर्वर को संशोधित कर सकते हैं।


डेस्कटॉप घटक स्थापित हैं या नहीं यह निर्धारित करने के लिए निम्न आदेश का उपयोग करें

dpkg -l ubuntu-desktop

एक सर्वर पर आपको इस तरह एक संदेश मिलेगा:

dpkg-query: no packages found matching ubuntu-desktop

एक डेस्कटॉप पर आपको एक संदेश मिलेगा जो बताता है कि कौन सा संस्करण स्थापित है


आमतौर पर डेस्कटॉप पर पाए जाने वाले अन्य पैकेजों की जाँच करें:

dpkg -l unity (gnome, mate and so one) # Desktop environments
dpkg -l compiz (E17, fluxbox and so one) # Window manager
dpkg -l xorg # X window server

या उपयोग:

 dpkg-query --show --showformat='${Status}\n' *packagename* 2> /dev/null | grep "install ok installed"

जाँच करें कि क्या X सर्वर चल रहा है:

ps -e | grep X
sudo netstat -lp | grep -i Xorg

केवल डेस्कटॉप पर उपलब्ध सेवाओं के लिए जाँच करें:

यह आपके Ubuntu संस्करण पर निर्भर करता है कि सेवाओं की जाँच कैसे करें:

sudo service *servicename* status # on SysVinit 
sudo status *servicename* # on Upstart
systemctl status *servicename*.service # on systemd

विशिष्ट सेवाएं हैं:

  • lightdm
  • X11-आम
  • सूक्ति-खोल

और कुछ अन्य जो कुछ डेरिवेटिव से जुड़े हैं


मेरा आवेदन सर्वर वितरण पर निर्भर करता है

यहां तक ​​कि अगर यह डेस्कटॉप संस्करण पर एक सर्वर एप्लिकेशन को चलाने के लिए कोई मतलब नहीं है, तो डेस्कटॉप संस्करण पर आपके आवेदन के लिए सभी निर्भरताएं स्थापित करने और इसे काम करने के साथ कोई समस्या नहीं होनी चाहिए।

क्या आप इस पर विस्तार से बता सकते हैं कि यह सर्वर डिस्ट्रो पर क्यों निर्भर करता है?


0

उपरोक्त किसी भी समाधान ने मेरे लिए बहुत अच्छा काम नहीं किया। कभी-कभी किसी सिस्टम में कोई मोटिव नहीं होता है, या हो सकता है कि व्यवस्थापक ने इसे बदल दिया हो, आदि। मुझे यकीन भी नहीं है कि ऊपर दिया गया उत्तर "सही" उत्तर क्यों था। यहाँ मैं का उपयोग कर समाप्त हो गया है।

#!/bin/bash
__check_desktop() {
  if [ `(dpkg-query -W -f='${Status}' ubuntu-desktop 2>/dev/null | grep -c "ok installed")` -eq 1 ]; then
    err "Ubuntu Server is required, but it appears that you are running Ubuntu Desktop"
    exit 1
  fi
}

# Now just call the function:
__check_desktop

$ {Status} के साथ -f का उपयोग करना अच्छा है और मैं इसका उपयोग करूंगा। लेकिन शट सिंटैक्स और गैर-मौजूद कार्यों जैसे 'इरेट' के साथ बैश का उपयोग न करें।
टॉमस नेस्रोवनल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.