আমি কীভাবে লিনাক্সের সংস্করণটি চালাচ্ছি তা আবিষ্কার করব?


209

লিনাক্সের কোন সংস্করণ (বিতরণ ও কার্নেল সংস্করণ, আমি মনে করি) কোন লিনাক্স সিস্টেমে কাজ করে (কমান্ড-লাইন থেকে) চলছে তা নির্ধারণ করার কোনও উপায় আছে কি?

উত্তর:


267

কার্নেলটি সর্বজনীনভাবে সনাক্ত করা হয় uname:

$ uname -or
2.6.18-128.el5 GNU/Linux

আপনি কোন বিতরণ এবং সংস্করণে আছেন তা নির্ধারণের জন্য সত্যই কোনও ক্রস-বিতরণ উপায় নেই। এটি ধারাবাহিক করার চেষ্টা করা হয়েছে, তবে শেষ পর্যন্ত এটি পরিবর্তিত হয়, দুর্ভাগ্যক্রমে। এলএসবি সরঞ্জামগুলি এই তথ্য সরবরাহ করে তবে কৌতুকজনকভাবে কোথাও ডিফল্টরূপে ইনস্টল করা হয় না। lsb-releaseইনস্টল করা প্যাকেজ সহ উবুন্টু 9.04 সিস্টেমের উদাহরণ :

$ lsb_release -irc
Distributor ID: Ubuntu
Release:        9.04
Codename:       jaunty

অন্যথায়, নিকটতম বহুল-উপলভ্য পদ্ধতিতে ফাইলগুলি পরীক্ষা করা হচ্ছে। এগুলি বেশিরভাগ সাধারণ প্ল্যাটফর্মে এবং তাদের ডেরিভেটিভগুলিতে (যেমন, রেড হ্যাট এবং সেন্টোস) রয়েছে।/etc/something-release

এখানে কিছু উদাহরণঃ.

উবুন্টু আছে /etc/lsb-release:

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=9.04
DISTRIB_CODENAME=jaunty
DISTRIB_DESCRIPTION="Ubuntu 9.04"

তবে দেবিয়ান রয়েছে /etc/debian_version:

$ cat /etc/debian_version
5.0.2

ফেডোরা, রেড হ্যাট এবং সেন্টোসগুলির মধ্যে রয়েছে:

Fedora: $ cat /etc/fedora-release
Fedora release 10 (Cambridge)

Red Hat/older CentOS: $ cat /etc/redhat-release
CentOS release 5.3 (Final)

newer CentOS: $ cat /etc/centos-release
CentOS Linux release 7.1.1503 (Core)

জেন্টু:

$ cat /etc/gentoo-release
Gentoo Base System release 1.12.11.1

এই মুহুর্তে আমার কাছে SUSE সিস্টেম উপলব্ধ নেই তবে আমি বিশ্বাস করি এটি এটি /etc/SuSE-release

স্ল্যাকওয়ারের রয়েছে /etc/slackware-releaseএবং / অথবা /etc/slackware-version

মান্দ্রিভা আছে /etc/mandriva-release

তখন বেশিরভাগ জনপ্রিয় বিতরণের জন্য,

$ cat /etc/*{release,version}

প্রায়শই কাজ করবে। স্ট্রিপ ডাউন এবং বেয়ারবোনস "সার্ভার" ইনস্টলেশনগুলিতে বিতরণ করার জন্য 'রিলিজ' প্যাকেজ নাও থাকতে পারে।

অতিরিক্তভাবে, দুটি তৃতীয় পক্ষের প্রোগ্রাম যা আপনি স্বয়ংক্রিয়ভাবে এই তথ্যটি পেতে ব্যবহার করতে পারেন সেগুলি হ'ল ওহাই এবং ফ্যাক্টর

নোট করুন যে অনেক বিতরণে এই জাতীয় তথ্য থাকে /etc/issueবা থাকে /etc/motdতবে কিছু সুরক্ষা নীতি এবং সেরা অনুশীলনগুলি নির্দেশ করে যে এই ফাইলগুলিতে অ্যাক্সেস নোটিফিকেশন ব্যানার থাকা উচিত।

সম্পর্কিত: নোডে ইনস্টল করা সফ্টওয়্যার প্যাকেজের সংস্করণটি কীভাবে খুঁজে পাবেন? ,


3
লোল এখানে আমি পরামর্শ দিতে ভাবছিলাম: সম্পর্কে সন্ধান করুন!
আইভো ফ্লিপস

2
স্ল্যাকওয়ারের / ইত্যাদি / স্ল্যাকওয়ার-সংস্করণ রয়েছে
কেন

ধন্যবাদ কেন, আমার কাছে স্ল্যাকওয়ার সিস্টেম নেই।
jtimberman


1
বেশিরভাগের কাছে / ইত্যাদি / ইস্যু রয়েছে
ড্র স্টিফেনস

41

আপনি চেষ্টা করতে পারেন:

$ cat /etc/issue

এটি সাধারণত (সর্বদা নয়, তবে) আপনাকে বলবে যে আপনি কী বিতরণ ব্যবহার করছেন। /etc/issueলগইন স্ক্রিনের জন্য ব্যবহৃত ফাইল।


2
এটিই কেবলমাত্র একটি শেয়ারড মিডিয়া টেম্পল সার্ভারে আমার জন্য পেরেক দিয়েছিল। ধন্যবাদ !!
ট্রাইট্রিগেইন

2
হা, রেডহ্যাটে, এটি ঠিক\S[newline]Kernel \r on an \m
রাফিন

20

কার্নেল: uname -a


+1 টি। অনুরূপ সিস্টেমের জন্য, মত MinGW , "-একটি" উদাহরণ, "MINGW32_NT-5.1 LAP065 1.0.17 (0,48 / 3/2) 2011-04-24 23:39 i686 Msys" জন্য, সংস্করণ তথ্য পেতে প্রয়োজন।
পিটার মর্টেনসেন

15
cat /etc/os-release

সর্বনিম্ন উবুন্টু, ফেডোরা এবং ওপেনসুএসের জন্য।

কমপক্ষে ১০.৯ (ম্যাভারিক্স) পর্যন্ত ওএস এক্সের জন্য কাজ করে না। ব্যবহার করুন sw_vers পরিবর্তে।

ওপেনসুএসে 13.1.1 অবধি বিড়াল / ইত্যাদি / সুস-রিলিজ ছিল তবে ওএস-রিলিজের পক্ষে অবহেলা করা হয়েছে।

রেডহাট 6.1 এর মধ্যে বিড়াল / ইত্যাদি / রেডহ্যাট-রিলিজ রয়েছে




12

cat /proc/version রেড হ্যাট আমাকে একটি ভাগ করা ভিপিএসে পেয়েছি।



5

এক রৈখিক

lsb_release -a && uname -r

1
এটি আলবার্ট জেড এর উত্তরের মন্তব্য হিসাবে আরও উপযুক্ত হতে পারে।
ফিক্সার 1234

1
সব উত্তর শেষ করার শক্তিশালী উত্তর! আমি অবশ্যই প্রচেষ্টার জন্য
উত্সাহিত করব

1

মডিউলটি দিয়ে পাইথন ব্যবহার করেও এই সমস্যাটি সমাধান করা যেতে পারে :platform

platform()ফাংশন ব্যবহার :

python -c 'import platform; print platform.platform()'
# Linux-4.9.0-8-amd64-x86_64-with-debian-9.6

উপরের কমান্ডটি যথাসম্ভব দরকারী তথ্য সহ অন্তর্নিহিত প্ল্যাটফর্মটি সনাক্ত করে একটি একক স্ট্রিং প্রদান করে।

বা uname()ফাংশন ব্যবহার :

python -c 'import platform; print platform.uname()'
# ('Linux', 'debian', '4.9.0-8-amd64', '#1 SMP Debian 4.9.130-2 (2018-10-27)', 'x86_64', '')

উপরোক্ত কমান্ডের একটি ফেরৎ namedtuple()ধারণকারী ছয় বৈশিষ্ট্যাবলী: system, node, release, version, machine, এবং processor

বা dist()ফাংশন ব্যবহার :

python -c 'import platform; print platform.dist()'
# ('debian', '9.6', '')

গত কমান্ড লিনাক্স OS বিতরণ নামের নাম নির্ধারণ করার চেষ্টা করে , কিন্তু এটা করা হয় পাইথন 3.5 থেকে অবচিত এবং করা হবে পাইথন 3.8 সরানো

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