15.10-এ আপডেট হওয়ার পরে নেটওয়ার্ক ইন্টারফেসের নাম পরিবর্তন হয় - ইউদেব পরিবর্তন


55

আমি সবেমাত্র প্রকাশিত নতুন স্থিতিশীল 15.10 এ উবুন্টু সার্ভার 15.04 চলমান একটি ভার্চুয়াল মেশিন আপডেট করেছি।

কোনও আপাত সমস্যা ছিল না, তবে যন্ত্রটি পুনরায় বুট করার পরে তার নেটওয়ার্ক সংযোগ হারিয়েছে। lspciসঠিক কার্ডটি দেখিয়েছে এবং lsmodপ্রমাণ করেছে যে ড্রাইভারটি বোঝাই হয়ে গেছে।

সম্পাদনা বা অপসারণ সম্পর্কে ইঙ্গিতগুলি /etc/udev/rules.d/70-persistent-net.rulesসফল হয় নি (এখনও কোনও নেটওয়ার্ক নেই, কোনও নতুন ফাইল নেই), /lib/udev/write_net_rulesবিখ্যাতটিরও অস্তিত্ব নেই।

আমার ওদেব এবং সিস্টেমেড সম্পর্কিত খুব একটা ধারণা নেই, তাই নেটওয়ার্ক / ইন্টারফেসের নাম পরিবর্তিত হয়ে / সিস / ক্লাস / নেট খুঁজে পেতে আমার কিছুটা সময় লেগেছিল। এটি হয়ে গেল ens32, যা থেকে নতুন নামকরণ করা হয়েছিল eth0। আমি পরিবর্তন করার পরে /etc/network/interfacesআবার নেটওয়ার্ক যোগাযোগ সক্ষম করা হয়েছিল।

তবে - কেন এটা আদৌ ঘটে? এবং যদি এটি হয় তবে ইন্টারফেস ফাইলটি স্বয়ংক্রিয়ভাবে আপডেট হওয়া উচিত নয়?

এখন যেহেতু আমি ভার্চুয়াল নেটওয়ার্ক কার্ড মোছা এবং অন্য এক সৃষ্টি eth0হয়ে eno16777728, যা না, UHM, চমৎকার।

এই আচরণটি (কমপক্ষে আপগ্রেড পদ্ধতির মতো) বাগ হিসাবে রিপোর্ট করা উচিত?

তদুপরি, /etc/udev/rules.d/70-persistent-net.rulesএখন কি অচল? এবং (যদিও কেবলমাত্র আংশিকভাবে সম্পর্কিত) কী সম্পর্কে /etc/udev/rules.d/70-persistent-cd.rules?)

সম্পাদনা করুন - অতিরিক্ত প্রশ্ন (স্বীকৃত উত্তরের পরে)/etc/network/interfaces আসল ইন্টারফেসের নাম থেকে নির্ভরতা আমাকে বিরক্ত করেছিল। আমি অন্য ভার্চুয়াল মেশিনে * উবুন্টু নতুন ইনস্টলেশন করার চেষ্টা করেছি। আমার অবাক করা /etc/network/interfacesবিষয়বস্তুতে কেবল লুপব্যাক ডিভাইসে একটি উল্লেখ রয়েছে। তবে, আমার আসল ভিএম এর সাথে এই পরিবর্তনটি নেটওয়ার্কটি আসতে বাধা দিয়েছে prevented তাহলে আমার আর কী দরকার?

সম্পাদনা ওয়েল, অন্য পরীক্ষা থেকে আমি দেখেছি যে একটি নতুন উবুন্টু সার্ভার রয়েছে নেটওয়ার্ক ইন্টারফেস কার্ড /etc/network/interfaces, যখন XUbuntu না হয়েছে। হতে পারে এটি ব্যবহার করছে network-managerবা অন্য কিছু।


একই বাগ আবার 17.04-এ প্রদর্শিত হবে। আশা করি কেবলমাত্র প্রাক-মুক্তি পর্বের সময় during
avtomaton

উত্তর:


56

উবুন্টু 15.10 (উইলি ওয়েরলভল্ফ) এ, সিস্টেমড / উদেব দিয়ে শুরু করে স্বয়ংক্রিয়ভাবে সমস্ত স্থানীয় ইথারনেট, ওয়ালান এবং ওওয়ান ইন্টারফেসের ( উত্স ) জন্য অনুমানযোগ্য, স্থিতিশীল নেটওয়ার্ক ইন্টারফেসের নাম নির্ধারণ করা হবে ।

নেটওয়ার্ক ইন্টারফেসের জন্য নিম্নলিখিত বিভিন্ন নামকরণের স্কিমগুলি এখন ইউদেভ স্থানীয়ভাবে সমর্থিত:

  1. ফার্মওয়্যার / বিআইওএস সমন্বিত নামগুলি বোর্ডে থাকা ডিভাইসের জন্য সূচক সংখ্যা সরবরাহ করে (উদাহরণস্বরূপ eno1:)
  2. ফার্মওয়্যার / বিআইওএস সংযুক্তকরণের নামগুলি পিসিআই এক্সপ্রেস হটপ্লাগ স্লট সূচী নম্বর সরবরাহ করেছে (উদাহরণ ens1:)
  3. হার্ডওয়্যার সংযোজকের শারীরিক / ভৌগলিক অবস্থানের নাম অন্তর্ভুক্ত করে (উদাহরণ enp2s0:)
  4. ইন্টারফেসের ম্যাক ঠিকানা অন্তর্ভুক্তকারী নাম (উদাহরণ enx78e7d1ea46da:)
  5. ক্লাসিক, অপ্রত্যাশিত কার্নেল-নেটিভ এথএক্স নামকরণ (উদাহরণ eth0:) - হ্রাস করা

ডিফল্টরূপে, systemd এখন নীতির নীচে ইন্টারফেসের নাম দেবে:

  1. ফার্মওয়্যার থেকে যদি সেই তথ্য প্রযোজ্য এবং উপলভ্য থাকে তবে তা পিছনে পড়ে
  2. ফার্মওয়্যার থেকে যদি সেই তথ্য প্রযোজ্য এবং উপলভ্য থাকে তবে তা পিছনে পড়ে
  3. প্রযোজ্য হলে, পিছনে পড়ে
  4. ডিফল্ট হিসাবে ব্যবহার করা হয় না, তবে ব্যবহারকারী যদি এটি পছন্দ করে তবে তা উপলব্ধ।
  5. অন্য সব ক্ষেত্রে।

আপনি কীভাবে এটি অক্ষম করবেন?

আপনার কাছে মূলত নিম্নলিখিত বিকল্পগুলি রয়েছে:

  • আপনার নিজের ম্যানুয়াল নামকরণের স্কিম তৈরি করুন, উদাহরণস্বরূপ আপনার ইন্টারফেসকে ইন্টারনেট0, বা ল্যান0 নামকরণ করে। তার জন্য আপনার নিজের udev নিয়ম ফাইল তৈরি করুন এবং ডিভাইসগুলির জন্য নাম সম্পত্তি সেট করুন। এটি ডিফল্ট নীতি ফাইলের আগে অর্ডার করার বিষয়টি নিশ্চিত করুন n/etc/udev/rules.d/70-my-net-names.rules
  • ভিন্ন নামকরণের স্কিমটি বাছাইয়ের জন্য ডিফল্ট নীতি ফাইলটি পরিবর্তন করুন, উদাহরণস্বরূপ, সমস্ত ইন্টারফেসের নামগুলি তাদের ম্যাক ঠিকানার পরে ডিফল্টরূপে নামকরণের জন্য:, cp /lib/udev/rules.d/80-net-setup-link.rules /etc/udev/rules.d/80-net-setup-link.rulesসেখানে ফাইলটি সম্পাদনা করুন এবং প্রয়োজনীয় লাইনগুলি পরিবর্তন করুন।
  • net.ifnames=0কার্নেল কমান্ড লাইনে পাস করুন ।

6
কি এই উৎস? আপনি কি উবুন্টুর জন্য অফিশিয়াল রিলিজ নোট পৃষ্ঠায় একটি লিঙ্ক যুক্ত করতে পারেন (আমি নিশ্চিত এটি এটি কোথাও আছে, এটি খুঁজে
পাচ্ছে

2
হ্যাঁ, এটি উত্স।
কিয়োডকে ২

4
কিছুতেই কী বোঝা যায় না তা হ'ল তিনি একটি আপগ্রেড করেছিলেন, নতুন ইনস্টল নয়। এটি প্রকৃত উবুন্টু বাগের মতো শোনাচ্ছে, কারণ আপগ্রেডের ফলে সিস্টেমটি একটি কার্যক্ষম অবস্থায় ছেড়ে দেওয়া উচিত।
উইল

1
@ কেওডেকে ওবুন্টু ১৫.১০-তে কোনও / ইউএসআর / লিবিব / উদেব ফোল্ডার নেই, আছে /
লিবিব

1
@ এডিড: ঠিক আছে, বাগ ঠিক করা হয়েছে।
কায়োদকে

39

আর্কউইকি বিগেনার্সগাইড দ্বারা বলা একটি সহজ উপায় আছে ।

প্রথমে আপনার ডিভাইসগুলির ম্যাক ঠিকানা পান

$ ip link

মত করে আউটপুট শো

3: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DORMANT group default qlen 1000     
          link/ether 20:68:9d:xx:xx:xx brd ff:ff:ff:ff:ff:ff

আপনার ডিভাইস ম্যাক ঠিকানা হয়

20:68:9d:xx:xx:xx

কেবল ফাইলটি তৈরি করুন (একটি পাঠ্য সম্পাদকের মধ্যে সুডো রাইটাসে কেবল খুলুন)

$ nano /etc/udev/rules.d/10-network.rules    

নিম্নলিখিত লাইন যুক্ত করুন

SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="aa:bb:cc:dd:ee:ff", NAME="net1"

আপনার পছন্দসই নাম এবং এএ: বিবি: সিসি: ডিডি: ইই: এফএফের সাথে নামটি আপনার ডিভাইসগুলির ম্যাক ঠিকানা দিয়ে প্রতিস্থাপন করুন।

এখন কেবল আপনার কম্পিউটারটি পুনরায় বুট করুন এবং ডিভাইসের নাম পরিবর্তন করা উচিত ছিল।


সবচেয়ে সরাসরি এবং সহজ সমাধান! প্রচুর ধন্যবাদ!
3bdalla

1
নিয়মটি আপনার ভ্লান এবং ব্রিজ ইন্টারফেসের DRIVERS=="?*",পরে যুক্ত হবে না তা নিশ্চিত করতে ACTION=="add",। আরও জিজ্ঞাসা করুন জিজ্ঞাসাবাবু / প্রশ্ন
ডন লি

16

এটি চেষ্টা করুন: আপনার সম্পাদনা করুন /etc/default/grub। থেকে লাইন পরিবর্তন করুন

GRUB_CMDLINE_LINUX=""

প্রতি

GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"

এবং, অবশেষে চালান:

# update-grub

রুট হিসাবে, এবং আপনার সিস্টেম পুনরায় বুট করুন।


এটি নেটবুটের জন্যও কাজ করে। আমার সিসলিনাক্স.সি.পি.জি. ফাইলে সংযোজন বিবরণীতে আমি নিম্নলিখিতটি সাফল্য append (...) net.ifnames=0 (...)
পেয়েছি

এই সমাধানগুলি পাশাপাশি উবুন্টু 16.04 এ নিখুঁতভাবে কাজ করে!
নুল্লাদটা

আমাকে উপরের GRUB প্যারামিটারগুলি যুক্ত করতে হয়েছিল (নেট.আইফਨਾਮগুলি = 0) এবং কাজ করার জন্য ভ্লানেন্স পাওয়ার জন্য উদেব নাম পরিবর্তন করার নিয়মগুলি সরিয়ে ফেলতে হয়েছিল, তবে এখন সবকিছু ঠিক আছে। সমাধানের জন্য ধন্যবাদ।
অ্যালবার্ট ভেলি

ধন্যবাদ. আমি একটি হেডলেস সার্ভারে উবুন্টু সার্ভার ১.0.০৪ ইনস্টল করছি এবং এটি নেটওয়ার্ক ইন্টারফেসটি কী নাম দিচ্ছে তার কোনও ধারণা নেই এবং ফলস্বরূপ, সার্ভারটি নেটওয়ার্কে নেই। আমি এটি করেছি এবং নিশ্চিত করেছি / ইত্যাদি / নেটওয়ার্ক / ইন্টারফেসের ইন্টারফেসের নাম হিসাবে "eth0" ছিল এবং ড্রাইভটি সার্ভারে ফিরিয়ে আনি। এটি এখন অনলাইন। এসারের অ্যাসপায়ার এইচ 340-তে উবুন্টু ইনস্টল করার জন্য নির্দেশাবলী যথাসম্ভব পুরানো, এটি যতটা উদাসীন, তাই আমি এই আশায় কিছু লিখব যে অন্যরাও একই চেষ্টা করে যাচ্ছিল আমি যতটা সময় নষ্ট করব না।
মেটালমাইকস্টার

5

আমি জানি যে এটি কিছুটা দেরিতে হতে পারে এবং 10-নেটওয়ার্ক.rules যুক্ত করার ফলে মনে হয়েছে যে এটি সাহায্য করেছে তবে সম্পূর্ণভাবে নয়। নতুন নামকরণের জন্য আমাকে ডিভাইসের কার্নেল নাম যুক্ত করতে হয়েছিল। এখানে আমি কীভাবে /etc/udev/rules.d/10-network.rules পেয়েছি ...

SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="MAC:ADDRESS",KERNEL=="enp4s8", NAME="eth0"

এবং বুটের সময় আপনার কার্নেল ডিভাইসটির নাম দিচ্ছে তাতে কার্নেল == "" পরিবর্তন করুন।

আছে HTH

কেসি


3

আপনার যদি একটি নতুন ইনস্টল থাকে

apt-get remove biosdevname

তারপর

update-initramfs -u

আপনার ইউদেব নেট রুবেল ফাইল রয়েছে কিনা তা পরীক্ষা করে দেখুন। যদি তা হয় তবে এটি সরিয়ে দিন।

rm /etc/udev/rules.d/70-persistent-net.rules

এখন / ইত্যাদি / নেটওয়ার্ক / ইন্টারফেসগুলি সম্পাদনা করুন, ইন্টারফেসগুলি এথ0, এথ 1, ... ইত্যাদিতে নামকরণ করুন।

রিবুট


2

আমি ফাইল তৈরি করে এই কাজ পেয়েছি:

root@odroid:~# cat /etc/udev/rules.d/70-persistent-net.rules
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth0", NAME="eth0"
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.