आप यह कैसे स्पष्ट करते हैं कि आप एक उत्पादन प्रणाली पर हैं?


135

मेरी कंपनी में से कुछ में प्रोडक्शन सर्वर पर रूट एक्सेस है। जब हम ssh'd होते हैं तो हम इसे बहुत हद तक स्पष्ट करने के लिए एक अच्छे तरीके की तलाश कर रहे हैं ।

हमारे पास कुछ विचार हैं:

  • उज्ज्वल लाल शीघ्र
  • एक खोल पाने से पहले एक पहेली का जवाब दें
  • शेल मिलने से पहले एक यादृच्छिक शब्द टाइप करें

उत्पादन तकनीक को अलग करने के लिए आप लोग किन तकनीकों का उपयोग करते हैं?


11
क्या लोगों को उत्पादन प्रणालियों के लिए ssh'ing से बचने के लिए सिखाने का कोई तरीका है? यदि आपके पास कठपुतली में सब कुछ है, उदाहरण के लिए, आपको समस्या निवारण के लिए केवल उत्पादन प्रणाली में प्रवेश करना होगा।
एलेक्स हॉल्स्ट

37
आप अपने उत्पादन सिस्टम पर रूट ssh एक्सेस की अनुमति देते हैं ???? !!!!!
सिम्बियन

7
@symcbean: यही नहीं सिओनाइड ने कहा। वह आपके उपयोगकर्ता खाते में SSH के बाद हो सकता है।
ज़ेन लिंक्स

3
क्या यह सवाल सामुदायिक विकि के लिए एक उम्मीदवार बन रहा है?
मदहट

15
आप इसे अत्यधिक स्पष्ट कर सकते हैं कि यह SSH को अक्षम करके एक उत्पादन प्रणाली है। यह उससे अधिक स्पष्ट नहीं हो सकता।
फ्रैंकी पेनोव

जवाबों:


137

लाल संकेत एक अच्छा विचार है, जिसका मैं भी उपयोग करता हूं।

एक और चाल है कि /etc/motdफाइल में एक बड़ा ASCII- कला चेतावनी डालें ।
जब आप लॉग इन करते हैं, तो आपको अपना ध्यान आकर्षित करना चाहिए:

 _______ _ _ _____ _____ _____ _____            
| __ __ | | | | _ _ | / ____ | | _ _ | / ____ | / \    
   | | | | __ | | | | | (___ | | | (___ / \)   
   | | | __ | | | \ _ \ _ \ _ | | \ ___ \ / / \ \  
   | | | | | | _ | | _ ____) | _ | | _ ____) | / ____ \
   | _ | | _ | | _ | _____ | _____ /! _____ | _____ / / _ / \ _ \ _


 _____ _____ ____ _____ _ _ _____ _______ _____ ____ _ _ 
| __ \ _ | __ \ / __ \ | __ \ _ | | | | / ____ | __ __ | _ _ / __ \ | \ _ | |
| | __) | | __) | | | | | | | | | | | | | | || | | | \ | |
| ___ / | _ / | | | | | | | | | | | | | | || | | | । `|
| | | | \ _ | | __ | | | __ | | | __ | | | ____ | | _ | || | __ | | | \ |
| _ | | _ | \ _ \ _ ____ / | _____ / \ ____ / \ _____ | | _ | | _____ \ ____ / | _ | \ _ |


 __ __ _____ _ _ _____ _ _ ______ 
| \ / | / \ / ____ | | | | _ _ | \ _ | | ____ |
| \ / | / \ / | | | | __ | | | | | \ | | | __   
| | \ / | | / / \ \ | | | __ | | | | । `| __ |  
| | | | / ____ \ _ ____ | | | | _ | | _ | | \ | | ____
| _ | | _ / _ / \ _ \ _ _____ | _ | | _ | _____ | _ | \ _ | ______ |

आप इस वेबसाइट पर ऐसी चेतावनी उत्पन्न कर सकते हैं या आप figlet कमांड का उपयोग कर सकते हैं ।

figlet

जैसा कि निकोलस स्मिथ ने टिप्पणियों में सुझाव दिया था, आप cowsayकमांड का उपयोग करके कुछ ड्रेगन या अन्य जानवरों के साथ चीजों को मसाला कर सकते थे ।

ड्रैगन गाय

/ Etc / motd फ़ाइल का उपयोग करने के बजाय, आप कॉल cowsayया फ़ाइल figletमें भी कर सकते हैं .profile


3
ऊह मुझे पसंद है!
सायनाइड 2121

13
यदि आप कुछ कमांड में टाइप करते हैं तो आप यह देखते हैं कि अब और नहीं।
नेल्स

3
यह सच है, जहाँ लाल संकेत हालांकि काम में आता है।
केनी रैशर्ट

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

8
मैं मिश्रण में ASCII ड्रेगन जोड़ना चाहते हैं ।
निकोलस स्मिथ

80

काफी हद तक एक ही बात नहीं है, लेकिन यह वेब साइट उत्पादन प्रणाली में बदलाव करते समय आपके डेवलपर्स को एक गुलाबी रंग की सिन्ब्रेरो पहनने की सलाह देती है। आपके पास शायद उनके लिए एक समान नियम हो सकता है।

एक गुलाबी sombrero पहने डेवलपर


1
Haha! +1 क्योंकि मैं LOL'd। लेकिन गंभीरता से, लोग उन्हें पहनते समय अपने लापता चश्मे की तलाश कर सकते हैं, मुझे संदेह है कि एक टोपी "निरंतर अनुस्मारक" के रूप में काम करेगी। इसके अलावा, यह आपको याद रखने में मदद करने के लिए कुछ भी नहीं करता है कि कौन सी खिड़की है।
फेलिक्स डॉमबेक

7
हाँ, आपको अपनी प्रक्रिया को बदलना होगा: 1) उत्पादन को संपादित करने की इच्छा की घोषणा करें। 2) सोम्ब्रेरो से बाहर निकलें और अन्य सभी विंडो बंद करें। 3) हर कोई देख रहा है, जबकि उत्पादन सामान करो। 4) सत्र से बाहर लॉग इन करें और किसी दिन को हटा दें।
एरिक टेनेक ऑक्ट

1
"2) सोम्ब्रेरो से बाहर निकलें और अन्य सभी विंडो को बंद करें" जो वास्तव में मेरी कंपनी में काम नहीं करेगा, क्योंकि यह हमारे सभी एसओपी के चरण 2 है। चरण 1 बेशक "रोशनी चालू करें" है, क्योंकि, खिड़कियां बंद होने के साथ, इस कार्यालय में बहुत अंधेरा हो सकता है।
पार्थियन ने

50

मैंने जो सबसे बड़ा प्रयोग किया है, वह एक असतत नामकरण-योजना है जहां ठेस-प्रणालियों का नाम स्पष्ट रूप से परीक्षण / देव उदाहरणों से अलग है। यह "Username @ Hostname:" शैली को अलग-अलग बनाता है। और स्पष्ट रूप से मेरा मतलब सिर्फ अलग-अलग शब्दों से अधिक है, अलग-अलग प्रारूप भी:

उदाहरण: PRD-WEB001 बनाम DEVEL-BOB-WEB001

इसके लिए कई चीजें चल रही हैं:

  • अतिरिक्त हाइपोनेटेड ब्लॉक इसे सेट-ऑफ-टू के बजाय तीन सेट करता है।
  • सेट के पहले एक अलग लंबाई है।
  • नामों की कुल लंबाई अलग-अलग है, जो विंडो में एक-दूसरे और अन्य पाठ के सापेक्ष कमांड-लाइन को अलग-अलग बनाती है।

और सबसे अच्छी बात यह है कि ओप्स त्रुटियों से बचने के लिए उत्पादन के लिए विशेष टर्मिनल-विन्यास की आवश्यकता नहीं है।

मेरे अनुभव में, आप कुछ ऐसा चाहते हैं जो आपको याद दिलाता है कि आप कहाँ हैं। पहेलियों जैसे लॉगिन-तरीके लगभग 10 सेकंड के लिए अच्छे होते हैं, जब तक आप यह नहीं भूल जाते कि कौन सी खिड़की है। यह सब lsकुछ गलत निर्देशिका में अशुभ लॉगिन-बैनर को स्क्रॉल करने के लिए गलत तरीके से करने के लिए होता है , टर्मिनल विंडो को ब्राउज़र विंडो के नीचे दफन करते हैं, जबकि कुछ को गुगली करते हुए, गलत विंडो में ऑल्ट-टैब बैक और एंथम एनीसेस। सबसे अच्छा कुछ निरंतर दृश्य क्यू की तरह एक अलग अलग कमांड-प्रॉम्प्ट है।


यह बुनियादी प्रणालियों के लिए वास्तव में अच्छी तरह से काम करता है, लेकिन जैसे ही आप एक देव को बदलते हैं- * ठेस के लिए- * देवता विलाप और कराहते हैं क्योंकि उनके आधे लिंक काम करना बंद कर देते हैं (इससे पहले कि आपने इसे कितनी बार किया है, और कभी-कभी) जब तक आप कॉन्फ़िगरेशन फ़ाइलों में पुराने नाम के सभी कई संदर्भों को ठीक नहीं कर लेते, तब तक सिस्टम आधा काम करता है। विशेष रूप से मालिकाना सॉफ्टवेयर स्थापित करने के साथ, और DNS उपनाम केवल इतनी मदद करते हैं। इससे भी बदतर, यह विंडोज़ स्विच करते समय पूरी तरह से संकेत को भूलना आसान है।
सिल्वरबैकनेट

देवों को ऐसी सेटिंग्स बनाने की जरूरत है जो देव / परीक्षण / स्टेजिंग / प्रोडक्शन में काम करें (यही मैं करता हूं, लेकिन यह एक और कहानी है)। काम के लिए 'रेड प्रॉम्प्ट' बैश के लिए (कठिन से अधिक लगता है), मेरा जवाब serverfault.com/a/479718/79266
RichVel

39

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

इसलिए मैं आपके प्रॉम्प्ट के रूप में उपयोगकर्ता के लिए समान व्यवहार (विशेषाधिकार प्राप्त बनाम गैर-विशेषाधिकार प्राप्त) के साथ एक रंगीन प्रॉम्प्ट (लाल स्पष्ट विकल्प होने के नाते) और होस्टनाम के लिए सभी कैप्स होने की सलाह दूंगा। कुछ उदाहरण:

रंगीन संकेत उदाहरण देता है

आमतौर पर कुछ ऐसा

set prompt =  "%{\033[1;44m%}`whoami`@`hostname -s`#%{\033[0m%} "` 

अपने शेल स्टार्टअप फ़ाइल में। यह एक नीले रंग के लिए है। देवदार के लाल के 44साथ बदलें 41, और 42हरे रंग के लिए। अन्य रंग और जंगली पैटर्न भी उपलब्ध हैं


बैश के लिए एक 'रेड प्रॉम्प्ट' के लिए (यह लगता है की तुलना में कठिन) के लिए, serverfault.com/a/479718/79266 पर मेरा जवाब देखें - गिट शाखा, छंटनी की गई वर्तमान निर्देशिका आदि को भी दिखाता है
रिचवेल

14

ये मेरे सुझाव हैं:

1) सुनिश्चित करें कि अधिकांश कमांड (rm, chown, chmod, /etc/init.d/*) उत्पादन परिवेश में sudo पहुंच की आवश्यकता है

2) उपयोगकर्ता पीएस 1 / पीएस 2 का उपयोग यह इंगित करने के लिए करता है कि उपयोगकर्ता किसी उत्पाद में है

bash-3.2$  export PS1="[\u@\h \W]\$ "

यह कमांड प्रॉम्प्ट दिखाएगा

[sridhar@prodappserver901 conf]$

3) यदि पोटीन / एसएसएच ग्राहकों का उपयोग कर रहे हैं, तो आप उत्पादन सर्वर को स्टैंड-आउट बनाने के लिए हमेशा विशिष्ट पृष्ठभूमि रंग / प्रोफ़ाइल सेट कर सकते हैं।


# 1 एक दिलचस्प विचार है, लेकिन अव्यावहारिक है क्योंकि डेमॉन उपयोगकर्ताओं के रूप में चलने वाली स्क्रिप्ट को आरएम, चामॉड, आदि का उपयोग करने की आवश्यकता हो सकती है
ज़ेन लिंक्स

13

बस विचार करें कि आपके दूसरे और तीसरे विचार प्रारंभिक कनेक्शन के दौरान मदद करते हैं, लेकिन जब आप कई टर्मिनल खोलते हैं और एक से दूसरे में जाते हैं, तो कोई मूल्य नहीं है। नामकरण का उपयोग करने का sysadmin1138 का विचार अच्छा है जब इसे लागू किया जा सकता है लेकिन बहुत सारे मामले हैं जहां यह नहीं हो सकता है।

केवल एक चीज जिसे मैंने वास्तव में सार्थक पाया है, वह है रंग का संकेत। मुझे देव / परीक्षण के लिए हरा, उत्पादन के लिए लाल और डीएमजेड में मशीनों के लिए नीला रंग पसंद है। इस तरह, यहां तक ​​कि अगर मेरे पास एक ही नाम (विभिन्न नेटवर्क में) वाली दो मशीनें हैं, जैसे कि प्रतिस्थापन मशीन तैयार करते समय, मैं अभी भी आसानी से बता सकता हूं कि मैं किस पर हूं।


11

लाल / विशेष कमांड प्रॉम्प्ट अच्छा है। एक और बात उन मशीनों पर एक त्वरित ऑटो-लॉगआउट हो सकती है जो TMOUT चर का उपयोग कर रहे हैं। यदि आपने कई विंडो खोली हैं, तो उत्पादन तेजी से चलेगा।

इससे एक अलग व्यवहार होना चाहिए:

  1. विकसित करना
  2. परीक्षा
  3. एक स्टेजिंग सर्वर में अपने बदलाव करें
  4. केवल तब उत्पादन करने और वहां तैनात करने के लिए एक त्वरित डैश बनाते हैं (ठीक उसी तरह जैसे आपने मंचन सर्वर पर किया था)

9

सादे जड़ खाते के साथ उत्पादन मशीन पर काम करना कभी भी एक अच्छा विचार नहीं है।

पूर्ण sudo अनुमतियों के साथ एक खाता है। सूडो सत्र को बचाने की अनुमति नहीं देता है। निषेध सुतो सु। इसके लिए अलग पासवर्ड का उपयोग करें (आपके पास अपने देव मशीन के लिए नहीं)। संभवतः कमांड को निष्पादित करने से पहले शेल की उत्पादन पहचान के बारे में सूचित करने के लिए सुडो को अलग-अलग किया जाता है (उर्फ के माध्यम से)।

यह आकस्मिक गलतियों को काफी कठिन बना देगा। और लाल झटके से कभी दर्द नहीं होता।


और "sudo su" से आपका मतलब "sudo -i" है या बहुत कम से कम "sudo su -", सही है?
स्पर्स

वाह! यह स्पर्म है! छोटी सी दुनिया :)
Sionide21

1
लोगों को रूट शेल होने से रोकना असंभव है। ( sudo bash)। आप किसी भी 'ब्लैकलिस्ट' सेटअप से एक रूट शेल प्राप्त कर सकते हैं। (यदि आपकी सावधानी है, तो आप इसे एक श्वेतसूची सेटअप के साथ रोक सकते हैं, लेकिन यह आमतौर पर गारंटी नहीं है।)
user606723

1
इसे रूट शेल तक पहुंच को रोकने के लिए नहीं माना जाता है - केवल कुछ सामान्य तरीकों से लोगों का उपयोग किया जाता है ताकि वे इसे ध्यान से किए बिना, अवचेतन रूप से कर सकें।
मिहिल्स स्ट्रॉसुन्स 16

8

मैं रेड प्रॉम्प्ट विचार के साथ गया, और इसके लिए वर्किंग कोड खोजने के लिए काफी थकाऊ पाया .bashrc

तो यहाँ मेरा संस्करण, शामिल होने के लिए तैयार है .bashrc- https://github.com/RichVel/nicer-bash-prompt । यह पूरी तरह से hostname द्वारा संचालित है, इसलिए जब तक आपके पास hostnames (जैसे , आदि) का उत्पादन करने के लिए एक उपयुक्त पैटर्न है xyprod01, xyprod02यह अच्छी तरह से काम करेगा, और आप .bashrcसभी वातावरणों में समान उपयोग कर सकते हैं ।

यह इस तरह दिख रहा है:

लाल शीघ्र का स्क्रीनशॉट

यह उत्पादन मेजबानों पर लाल संकेत सहित एक नेक बैश प्रॉम्प्ट बनाता है - आपको वर्तमान गिट शाखा और $ PWD में अंतिम 2 निर्देशिका भी दिखाता है। Bash में Ctrl / R (रिवर्स सर्च) करते समय प्रॉम्प्ट डिस्प्ले को मैसेज करने से बचने का ध्यान रखता है।

इस उत्तर की तर्ज पर, सभी टर्मिनल विंडो में अपने बैश इतिहास को सिंक करने के लिए एक वैकल्पिक सुविधा भी शामिल है । यह अच्छा है, लेकिन हर कोई इसे नहीं चाहता है, इसलिए यह डिफ़ॉल्ट रूप से अक्षम है।


5

हालांकि मुझे नहीं पता कि आपका आईटी सेटअप कैसा है, एक समाधान जो प्रभावी हो सकता है वह एक विशेष कमरा होगा जो आपको एसएसएच में उत्पादन सर्वर में रूट के रूप में जाना होगा। यदि आपके पास एक डेटासेंटर है तो यह सर्वर रूम ही हो सकता है, लेकिन एक अलग भौतिक स्थान जिसमें से 'सामान्य' कार्य नहीं किया जाता है, काफी प्रभावी रूप से एक निरंतर अनुस्मारक के रूप में कार्य करता है जिसे आप उत्पादन मशीनों तक पहुंचा रहे हैं।


2
हालांकि यह निश्चित रूप से प्रभावी होगा, अधिकांश स्थितियों के लिए यह अत्यंत प्रति-उत्पादक भी होगा।
जॉन गार्डनियर्स

मैं जॉन के साथ सहमत हूं, लेकिन यह निश्चित रूप से सोचने के लिए कुछ है।
user606723

@ जॉनगार्डियर्स: अनुत्पादक? आपका मतलब है कि यह उत्पादकता को नुकसान पहुंचाएगा?
लार्स

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

@ जॉनगार्डियर्स: समझा गया। जब आपने शुरू में "उल्टा" कहा तो मुझे लगा कि इसका मतलब आपके बताए उद्देश्य से है, यानी एक निरंतर अनुस्मारक के रूप में सेवा करने के लिए कि आप उत्पादन मशीनों का उपयोग कर रहे हैं।
लार्स

4

उपरोक्त सुझावों पर बस एक ट्वीक। मैं अपने यूनिक्स डेस्कटॉप के रूप में सीडीई का उपयोग करता हूं और सभी उत्पादन प्रणालियों को मैं एक मेनू के माध्यम से एक्सेस करता हूं .dt / dtwmrc। सभी देव और यूएटी प्रणालियों पर मैं अपनी सामान्य रंग योजना रखता हूं लेकिन ठेस प्रणालियों पर मैंने टर्मिनल को लाल पृष्ठभूमि के लिए सेट किया है। मुझे लुक पसंद नहीं है लेकिन यह इस तरह का है।

eta - मूल रूप से एक ही बात करोल का सुझाव याद किया


4

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

संपादित करें: मैं परिवहन उद्योग में काम करता हूं।


आउच। जबकि मैं इसके लिए एक आवश्यकता को समझ सकता हूं, मुझे खुशी है कि मैं उस तरह के वातावरण में काम नहीं करता।
लार्स

1
मुझे खुशी है कि मैं ऐसा करता हूं- मैं परिवहन में काम करता हूं, और ये सिस्टम केवल पैसे खर्च नहीं करते हैं जब वे नीचे जाते हैं, तो वे जीवन खर्च करते हैं।
तुलसी

मुझे खुशी है कि तुम भी सावधान हो!
लार्स

3

PuTTY में आप विंडो के टाइटल को किसी खास सेव्ड सेशन के लिए डिफॉल्ट के अलावा किसी और चीज में बदल सकते हैं। यह हमेशा खिड़की पर रहता है चाहे आप खिड़की के अंदर क्या करें। यह टास्क बार में दिखाई देता है।

विंडो का विस्तार करें, व्यवहार पर क्लिक करें। विंडो शीर्षक में कुछ दर्ज करें जैसे:

  * * * * * * * * * * * * PRODUCTION  * * * * * * * * * * * * PRODUCTION  * * * * * * * * * * * *

3

सरल उत्तर? शेल कॉन्फ़िगरेशन में अपने शेल के रंग को लाल रंग में बदलें। यह मृत स्पष्ट और स्थापित करने के लिए सरल होगा। इतना ही नहीं, लेकिन सर्वर हेडर के विपरीत यह कुछ कमांड में टाइप करने के बाद दूर नहीं जाएगा।


3

यहाँ मैंने अपने मैक पर क्या किया। हर सर्वर के लिए, मैं अपनी ~ / .shsh / config फाइल में इसके लिए एक प्रविष्टि जोड़ता हूं, जैसे

Host app13
    HostName server.example.com
    User tom
    PermitLocalCommand yes
    LocalCommand osascript %d/bin/change_terminal_colours.scpt 12 35 35

SSH सत्र के स्थापित होने के बाद इस एप्सस्क्रिप्ट को ट्रिगर किया जाता है। यह प्रदान की जाने वाली आरजीबी मूल्यों के लिए टर्मिनल पृष्ठभूमि का रंग निर्धारित करता है (या कोई रंग मान प्रदान नहीं किए जाने पर डिफ़ॉल्ट रूप से वापस)। संभावित रूप से मुश्किल हिस्सा एसएसएच सत्र के अंत में अवरोधों को रंग सेट करने के लिए रोकना है। उसके लिए, मैंने डिफ़ॉल्ट शेल कमांड को ओवरराइड करने के लिए निम्न शेल स्क्रिप्ट को ~ / bin / ssh के रूप में बनाया। यह अनिवार्य रूप से SSH कमांड में किसी भी कॉल को इंटरसेप्ट और रैप करता है। मैंने अलियासिंग और फ़ंक्शंस का उपयोग करने की कोशिश की, लेकिन इस समाधान ने सबसे अच्छा काम किया:

#!/bin/bash
/usr/bin/ssh $@
osascript ~/bin/change_terminal_colours.scpt

यहाँ change_terminal_colours.scpt स्क्रिप्ट का स्रोत है । इसे अपनी ~ / बिन निर्देशिका में भी रखें:

on run argv
    tell application "Terminal"
        # NOTE: Color values range from 0 to 65535.
        if (count of argv) > 0 then
            set backgroundColor to {(item 1 of argv) * 256, (item 2 of argv) * 256, (item 3 of argv) * 256}
        else
            set backgroundColor to background color of default settings
        end if

        try
            set background color of (selected tab of front window) to backgroundColor
        end try
    end tell
end run

मैंने इस समाधान को एक सप्ताह पहले लिखा था और तब से इसका उपयोग कर रहा हूं। मुझे आशा है कि दूसरों को इसका मूल्य मिलेगा। मुझे लगता है कि यह किसी भी समाधान से बेहतर काम करता है जो मैंने Googling द्वारा पाया था।


3

मेरा समूह विज़नएप्प रिमोट डेस्कटॉप का उपयोग करता है (2017 संपादित करें: ऐसा लगता है कि उत्पाद का नाम बदल गया है, लेकिन मुझे लगता है कि यह आरडीपी दोनों विंडोज मशीनों और एसएसएच दोनों लिनक्स में है। हमारे कनेक्शन को टियर द्वारा फ़ोल्डरों में वर्गीकृत किया गया है और एक टैब रंग सौंपा गया है।

इसलिए जब भी हम उत्पादन कनेक्शन खोलते हैं - bam! - हम अपने चेहरे में कुछ चमकीले लाल होते हैं:

यहां छवि विवरण दर्ज करें

यह निश्चित रूप से एक सार्थक निवेश है यदि आप एक बड़ी विंडोज शॉप हैं और आरडीपी पर बहुत अधिक भरोसा करते हैं। मुझे यकीन है कि अन्य महान उपकरण हैं अगर आपको ज़रूरत है तो एसएसएच।


2

एक अद्वितीय प्रॉम्प्ट (जो सबसे विश्वसनीय समाधान लगता है) के अलावा, यदि आप एक ही कार्य केंद्र से लॉग इन कर रहे हैं, तो आप अपने एसएसएच सत्रों के लिए विभिन्न प्रोफाइल का उपयोग कर सकते हैं।

उदाहरण के लिए, मेरे पास उत्पादन प्रणालियों के लिए लाल पृष्ठभूमि, विकास के लिए हरा, बुनियादी ढांचे के लिए नीला (राउटर आदि) और स्थानीय कार्य केंद्र के लिए सफेद है।

यदि आप GNOME का उपयोग करते हैं, तो अपने इच्छित प्रोफ़ाइल के साथ SSH कनेक्शन को फायर करने का एक आसान तरीका है:

gnome-terminal --window-with-profile=production -e 'ssh root@production.example.com'

मुख्य नुकसान - यह क्लाइंट-साइड है, इसलिए यदि आप विभिन्न स्थानों से सर्वर एक्सेस कर रहे हैं, तो एक विशेष संकेत अभी भी आपका सबसे अच्छा दांव है।


2

एक और तरीका यह स्पष्ट करने के लिए कि आप उत्पादन प्रणाली पर हैं उत्पादन प्रणाली पर TMOUT (ऑटोलॉग) सुविधा सेट करना है।


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

3
मैंने सिर्फ TMOUT का परीक्षण किया है और ऐसा लगता है कि यदि लंबे समय से चलने वाला कमांड चल रहा है तो यह सत्र को समाप्त नहीं करता है। यह तभी समाप्त होता है जब आप कमांड प्रॉम्प्ट पर बैठे हों। निल्स ने भी यह सुझाव दिया और यह मेरे लिए समझ में आता है।
sjbotha

1
यह TMOUT के बारे में वास्तव में अच्छी बात है। हमने TMOUT की खोज करने से पहले ऑटोलॉग या यहां तक ​​कि हत्यारे का इस्तेमाल किया। ऑटोलॉग और किलर अच्छे नहीं हैं। हत्यारा भी छोटी गाड़ी है और एक पूरी सीपीयू को अवरुद्ध करता है ...
निल्स

2

किसी विशेष उद्योग में काम करते समय विशाल विनियामक आवश्यकताओं के कारण, भविष्य में होने वाले किसी भी विवाद के लिए यहां सभी की गतिविधियां महत्वपूर्ण हैं। उसी के कारण, एक्सेस भी प्रतिबंधित है और आपको कुछ "मेनू" के माध्यम से कूदना पड़ता है जो आपको एक मुट्ठी भर विश्वसनीय उपयोगकर्ताओं में से एक के रूप में मशीन का उपयोग करने की अनुमति देता है। इस प्रणाली को स्थापित करके, व्यक्ति को उत्पादन या क्यूए वातावरण को ध्यान से चुनना होगा और फिर उस मेजबान को चुनना होगा जिसे वे सूची से एक्सेस करना चाहते हैं। इसकी एक समयावधि भी है, इसलिए आप एक ठेस मेजबान पर प्रवेश करने की स्थिति में नहीं चलते हैं और यह भूल जाते हैं कि अगले दिन आप किस माहौल में हैं।


2

मैं यहाँ दूसरों की तरह शीघ्र परिवर्तन का उपयोग करता हूँ। इसका त्वरित और बुरा लेकिन मेरे उद्देश्यों के लिए ठीक काम करता है। यह आपको उत्पादन प्रणाली पर एक सामान्य उपयोगकर्ता के रूप में लाल रंग देगा, और लाल ऊपरी मामले को एक ठेस प्रणाली पर जड़ के रूप में।

यह कम लाइनों में लिखा जा सकता है, लेकिन मैं इसे इस तरह से करता हूं ताकि मैं अन्य 2 मामलों (गैर रूट-गैर ठेस) को ट्विस्ट कर सकूं अगर मैं चाहता हूं।

हम इस धारणा पर काम करते हैं कि एक उत्पादन सर्वर डीएचसीपी का उपयोग नहीं करता है, लेकिन यदि आप एक ठेस प्रणाली है, तो आप इसे काम करने के लिए किसी अन्य विधि का उपयोग कर सकते हैं। आपके लिए जो भी काम करता है।

productionSrv=1
grep -qi bootproto=dhcp /etc/sysconfig/network-scripts/ifcfg-*
if [ "$?" -eq 0 ]; then
    productionSrv=0
fi
hostName=`hostname`
userName=`whoami`
if [ $userName == "root" ]
then
    if [ "$productionSrv" == 1 ]
    then
        hostName=`echo $hostName | tr [:lower:] [:upper:]`
        PS1='[\e[0;31m]\u[\e[0m]@[\e[0;31m]$hostName[\e[0m][$?][\e[0;31m][\W][\e[0m][\e[0;31m]\$[\e[0m]: '
    else
        PS1='[\e[0;31m]\u[\e[0m]@[\e[0;35m]$hostName[\e[0m][$?][\e[0;31m][\W][\e[0m][\e[0;31m]\$[\e[0m]: '
    fi
    PATH=$PATH:/sbin/
else
    if [ "$productionSrv" == 1 ]
    then
        PS1='[\e[0;32m]\u[\e[0m]@[\e[0;31m]$hostName[\e[0m][$?][\e[0;31m][\W][\e[0m][\e[0;32m]\$[\e[0m]: '
    else
        PS1='[\e[0;32m]\u[\e[0m]@[\e[0;35m]$hostName[\e[0m][$?][\e[0;31m][\W][\e[0m][\e[0;32m]\$[\e[0m]: '
    fi
fi


जबकि स्क्रिप्ट दिलचस्प है, केवल उत्पादन प्रणालियों पर स्थिर आईपी की धारणा आम नहीं है। ज्यादातर मामलों में, सभी सर्वरों में स्थिर आईपी, विकास और उत्पादन दोनों होंगे।
मार्टिज़न हेमेल्स

1
पाठ्यक्रम के लिए वास्तव में घोड़े। हमारे देव सिस्टम dhcp आरक्षण का उपयोग करते हैं। आप अपने लिए काम करने वाली किसी भी प्रणाली का उपयोग कर सकते हैं, जैसे कि hostname, सबनेट, वलान, जो भी हो, की तुलना करें।
सेरेक्स

@ साइरेक्स, विपरीत भी संभव है। उदाहरण के लिए, अमेज़ॅन के EC2 VPS का उपयोग स्थिर डीएचसीपी पट्टों को उत्पादन सर्वर और सार्वजनिक आईपी पर अग्रेषित किया जाता है। उदाहरण खुद ही नहीं जानता है कि सार्वजनिक आईपी क्या पीछे चल रहा है, कम से कम नेटवर्क इंटरफ़ेस स्तर पर नहीं।
मैथ्यू शार्ले

1
हाँ। आपके पास हमेशा एक भूमिका आरपीएम पैकेज हो सकता है जो एक / etc / उत्पादन फ़ाइल बनाता है और उसके लिए परीक्षण करता है। जहां आपकी मर्जी हो।
Sirex

1

उत्पादन मशीनों पर एक अलग (शायद लंबा) रूट पासवर्ड रखें।

आप एक विशेष sudo (या sudo आवरण) बना सकते हैं, जैसे कि एक विशेष संदेश उत्पादन मशीनों के लिए आउटपुट है।


.. ठेस मशीनों पर एक अलग रूट पासवर्ड? मैंने ऐसा क्यों नहीं सोचा !?
user606723 15

इसके अलावा, सुडो में पहले से ही बहुत सारे विन्यास विकल्प हैं। अगर आप पहले से ही ऐसा नहीं कर सकते तो मुझे आश्चर्य होगा। एक कस्टम sudo भयानक विचार है क्योंकि यह परीक्षण नहीं किया जाएगा कि यह पर्याप्त बिट प्राप्त करने के लिए पर्याप्त है।
user606723 15

1

यहां, हमारे पास संपूर्ण स्क्रीन के अग्रभूमि रंग को चमकदार गुलाबी बनाने के लिए डिफ़ॉल्ट पोटीन कॉन्फ़िगरेशन हैं।

  • उत्पादन: उज्ज्वल गुलाबी।
  • रिग्रेशन: पीला हरा
  • मॉडल: पीला नीला
  • देव: सामान्य

यह बहुत अच्छा काम करता है, लेकिन मुझे यहां कुछ अन्य विचार पसंद हैं।

  • प्रो: जब तक कुछ अग्रभूमि रंग का उपयोग नहीं करता है .., हर कोई स्क्रीन उज्ज्वल गुलाबी है।
  • Con: जाहिर है अगर आप डिफ़ॉल्ट पोटीन कॉन्फिगर के अलावा किसी अन्य चीज के माध्यम से ssh करते हैं, तो यह कुछ भी नहीं है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.