যথার্থ সার্ভারে লগইন স্ক্রিনে আমি কীভাবে E0 এর আইপি ঠিকানাটি প্রদর্শন করতে পারি?


23

আমি যে সার্ভারটি পরিচালনা করি, অসুবিধেয় পর্যাপ্ত, তার একটি গতিশীল আইপি ঠিকানা রয়েছে ডিএইচসিপি দ্বারা নির্ধারিত। সুবিধাজনক কাউন্টারবালেন্স, তবে, আমি যেখানে বসেছি, সেখানে প্রায় দু'ফুট সেট আপ হওয়ার ঘটনা ঘটে। আমি লগইন প্রম্পট প্রদর্শন করার আগে বিভিন্ন মান দেখানোর জন্য / ইত্যাদি / ইস্যুটি কীভাবে সম্পাদনা করতে হয় তা জানি, তবে আমি জানতে চাই যে / ইত্যাদি / ইস্যুটির পক্ষে ইথ0 এর বর্তমান আইপি ঠিকানা প্রদর্শন করা সম্ভব কিনা (পুনরায় মূল্যায়ন) বুট করার সময়) যাতে আমি এটি দেখতে পারি এবং তারপরে ifconfig চালাতে লগ ইন না করে এসএসএস করতে পারি।


লগইন স্ক্রিনে কঙ্কি ব্যবহার করা যেতে পারে? যদি তাই হয় তবে আপনি সব ধরণের তথ্যকে কাজে লাগাতে পারেন।
টাকাপয়সা

উত্তর:


27

ডেবিয়ান 8 / জেসি এর হিসাবে আপনি ব্যবহার করতে পারেন \4এবং \6আউটপুট অক্ষর অব্যাহতি IPv4 ও IPv6 অ্যাড্রেসের। সুতরাং /etc/issueফাইল:

Debian GNU/Linux 8 \n \l

eth0: \4{eth0}

লগইন কনসোলে নিম্নলিখিতগুলির মতো কিছু আউটপুট দেবে:

Debian GNU/Linux 8 myserver tty1

eth0: 192.168.1.100
myserver login:

আমি ধারণা করি উবুন্টু অনুরূপ কার্যকারিতা সরবরাহ করবে (কমপক্ষে নতুন প্রকাশে)


এটি আমার জন্য উবুন্টু ১.0.০৪ এলটিএসে কাজ করেছিল, উত্তরটি সঠিক হিসাবে চিহ্নিত হয়েছে, সম্ভবত গ্রিপ মন্তব্য সহ কোনও সমস্যা নেই, যাই হোক না কেন, পোস্ট করার জন্য ধন্যবাদ।
ট্র্যাকার 1

এটি এখনও ডেবিয়ান 9 :) এ কাজ করে
বোরেকন

12

/etc/issueদুর্ভাগ্যক্রমে একটি সরল পাঠ্য, এটিতে কিছু বিকল্প রয়েছে যা আপনি এতে যুক্ত করতে পারেন (দেখুন man agetty) তবে এথ0 এর আইপি ঠিকানা নয়।

যদি আপনি এটি রাখেন /etc/rc.local:

IP=$(/sbin/ifconfig eth0 | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}')
echo "eth0 IP: $IP" > /etc/issue

তারপরে আপনি এই জাতীয় কিছু দেখতে পাবেন:

eth0: 192.168.0.2
myServer login:

3
এটি যে কারও জন্য চলছে দয়া করে মনে রাখবেন, এটি / ইত্যাদি / ইস্যুর বিষয়বস্তুগুলিকে ওভাররাইট করে দেবে। আপনি পূর্ববর্তী "এথ *" লাইনগুলি গ্রেপ করার জন্য পদক্ষেপগুলি যুক্ত করতে পারেন এবং তারপরে এগুলি যুক্ত করতে পারেন।
রিবস

1

অ্যালেক্সের উত্তর এবং রিবসের মন্তব্যকে কেন্দ্র করে, আমার /etc/rc.localফাইলটির জন্য এটি আমার কাছে রয়েছে (কেবলমাত্র প্রাসঙ্গিক লাইন):

PRE_MSG="Ubuntu 14.04.3 LTS" # this is from the original /etc/issue

IP=$(/sbin/ifconfig eth0 | grep 'inet addr:' | cut -d: -f2 | awk '{ print $1}')

IP_MSG="Server IP Address:"

printf "%s %s %s\n\n%s %s\n\n" "$PRE_MSG" '\n' '\l' "$IP_MSG" "$IP" > "/etc/issue"

printfকমান্ড জাদু আছে। দুর্ভাগ্যক্রমে বিন্যাসের স্ট্রিংটির ভিতরে '\n'এবং '\l'ভিতরে রেখে প্রথমে একটিকে নতুন লাইন চরিত্রের সাথে প্রতিস্থাপন করা শেষ হয় এবং /etc/issueফাইলটি বিশৃঙ্খলাবদ্ধ হয়।

দীর্ঘ গল্প সংক্ষিপ্ত, এই 4 টি লাইন /etc/issueফাইলের মাধ্যমে প্রদর্শিত মূল তথ্যটি রাখে এবং Server IP Address:বার্তা যুক্ত করে ।

এবং রেবস যেমন বলেছিল, মনে রাখবেন যে যতবার আপনি সার্ভারটি রিবুট করবেন তখন এই স্ক্রিপ্টটি /etc/issueফাইলটিকে ওভাররাইড করবে , তাই সম্ভবত এটি অন্য স্ক্রিপ্টের মধ্যে এবং অন্য কোনও ফাইলের মধ্যে চেষ্টা করে দেখুন এবং এটি কাজ করার পরে, পরিবর্তনগুলি স্থানান্তর করুন ...

শুভকামনা এবং শুভ BASHing :)


0

সিস্টেমডের সাহায্যে আপনি এর systemctl edit getty@মতো কিছু করতে পারেন:

[Service]
ExecStartPre=-/bin/bash -c '[ ! -f /etc/.issue.orig ] && cp /etc/issue /etc/.issue.orig; int=`ls /sys/class/net|grep enp|head -1`; sed -r "s/\\\\\\n/[\\\\\\4\{$$int\}]/" < /etc/.issue.orig > /etc/issue'

তারপর systemctl daemon-reload && systemctl restart getty@tty1


0

উবুন্টু 19.04 এর জন্য, আমি এই পদক্ষেপগুলি অনুসরণ করেছি:

আমি ফাইলটি তৈরি করেছি: /etc/network/if-up.d/update-issueনিম্নলিখিত সামগ্রীগুলি সহ:

#!/bin/sh
PREFIX="Ubuntu 19.04 - dev"
IPADDRS=$(hostname -I | tr " " "\n" | grep -v "^$" | sort -t . -k 1,1n | head -1 | tr "\n" " ")
echo "$PREFIX\n\nIP: $IPADDRS\n" > /etc/issue

আমি তখন ফাইলটিকে নির্বাহযোগ্য হিসাবে চিহ্নিত করেছি: chmod 0755 /etc/network/if-up.d/update-issue

দুর্দান্ত কাজ!


0

নুরচি, অ্যালেক্স এবং স্টিভের উত্তর এবং রেবের মন্তব্য,

নিম্নলিখিতটি পুরানো আইপি গ্রেপ করে কোনও স্থানীয় (127.) আইপি ঠিকানা যুক্ত করবে। আমার সার্ভারটি একটি ভিএম এবং এথ0 নেই। উবুন্টুতে পরীক্ষা করা 18.04

ভিতরে রাখুন /etc/network/if-up.d/update-issue

#!/bin/sh
MSG=$(cat /etc/issue | grep -v IP)
IP=$(/sbin/ifconfig | grep 'inet' | grep -v '127' | cut -d: -f2 | awk '{ print $2 }')
printf "%s\n%s\n\n" "$MSG" "IP: $IP" > /etc/issue

তারপর chmod 0755 /etc/network/if-up.d/update-issue

আমার উত্তর এবং স্টিভের মধ্যে একমাত্র পার্থক্য হ'ল আইপি লাইনটি সরাতে, বার্তাটি ক্যাপচার করতে এবং নতুন / আপডেট হওয়া আইপি সহ এটি পুনরায় পাঠানোর জন্য গ্রেপ লাইন যুক্ত করা

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