প্রশ্ন একটি কমান্ড সব ব্যবহারকারীদের তালিকা? এবং কিভাবে, ব্যবহারকারীদের সংশোধন, মুছে ফেলা, পরিবর্তন?


আমি টার্মিনাল ব্যবহারকারীদের তালিকা করার জন্য একটি কমান্ড প্রয়োজন। এবং টার্মিনাল থেকে ব্যবহারকারীদের সংশোধন, মুছতে, কিভাবে যুক্ত করবেন।

এটি টার্মিনাল দ্বারা সহজে আপনার অ্যাকাউন্ট প্রশাসনে সাহায্য করতে পারে।


702
2018-01-24 20:23


উত্স


কিন্তু উত্তর sed 's/:.*//' /etc/passwd - Avinash Raj
ব্যবহারকারীদের তালিকা: awk -F: '{ print $1 }' /etc/passwd - saviour123


উত্তর:


সব তালিকা স্থানীয় ব্যবহারকারীরা আপনি ব্যবহার করতে পারেন:

cut -d: -f1 /etc/passwd

অ-স্থানীয় সহ (কিছু উপায়ে) প্রমাণীকরণ করতে সক্ষম সমস্ত ব্যবহারকারীদের তালিকাবদ্ধ করতে, এই উত্তরটি দেখুন: https://askubuntu.com/a/414561/571941

কিছু আরও দরকারী ব্যবহারকারী-পরিচালনার কমান্ড (এছাড়াও সীমাবদ্ধ স্থানীয় ব্যবহারকারী):

একটি নতুন ব্যবহারকারী যোগ করার জন্য আপনি ব্যবহার করতে পারেন:

sudo adduser নতুন ব্যবহারকারীর নাম

বা:

sudo useradd নতুন ব্যবহারকারীর নাম

আরো দেখুন: Adduser এবং useradd মধ্যে পার্থক্য কি?

একটি ব্যবহারকারী অপসারণ / মুছে ফেলার জন্য প্রথমে আপনি ব্যবহার করতে পারেন:

sudo userdel ব্যবহারকারীর নাম

তারপরে আপনি মুছে ফেলা ব্যবহারকারীর অ্যাকাউন্টের জন্য হোম ডিরেক্টরিটি মুছতে চাইতে পারেন:

sudo rm -r / home /ব্যবহারকারীর নাম

(উপরের কমান্ড সতর্কতা সঙ্গে ব্যবহার করুন!)

ব্যবহারকারীর ব্যবহারকারী নাম পরিবর্তন করতে:

usermod -l নতুন ব্যবহারকারীর নাম পুরাতন ব্যবহারকারীর নাম

ব্যবহারকারীর জন্য পাসওয়ার্ড পরিবর্তন করতে:

sudo passwd ব্যবহারকারীর নাম

একটি ব্যবহারকারী জন্য শেল পরিবর্তন করতে:

sudo chsh ব্যবহারকারীর নাম

একটি ব্যবহারকারীর জন্য বিবরণ পরিবর্তন করতে (উদাহরণস্বরূপ বাস্তব নাম):

sudo chfn ব্যবহারকারীর নাম

এবং, অবশ্যই, দেখুন: man adduser, man useradd, man userdel... এবং তাই।


940
2018-01-24 19:28



রাদু উল্লেখ করতে ভুলে গেছেন sudo chfn <username> যা ব্যবহারকারীর বিবরণ পরিবর্তন করে (উদাহরণস্বরূপ আসল নাম)। আমি এটি একটি মন্তব্য হিসাবে যুক্ত করার চেষ্টা করেছি, কিন্তু আমার কাছে ভুল বলা হয়েছে যে আমার কাছে অবশ্যই +50 খ্যাতি আছে। - Mikaela
আমি মনে করি যে এটি আন্ডারলাইন করা উচিত যে লিঙ্কযুক্ত প্রশ্নের সঠিক উত্তর askubuntu.com/a/381646/16395 --- অন্যথায় আপনাকে জিআইডি / ইউআইডি উবুন্টু নীতিগুলি বিবেচনায় নিতে হবে। গ্রহণযোগ্য উত্তর তাই স্পষ্ট নয়। - Rmano
sudo userdel DOMAIN \\ johndoe আমাকে ত্রুটি দেয়: "userdel: / etc / passwd থেকে এন্ট্রি 'DOMAIN \ johndoe' এন্ট্রি সরাতে পারবে না - আমি / etc / passwd এ দেখেছি এবং তারা সেখানেও নেই কারণ সম্ভবত এটি" ডোমেইন "অ্যাকাউন্ট? - 00fruX
@ 00frux হ্যাঁ ... আপনি যদি কেন্দ্রীয় ব্যবহারকারীর ডেটাবেস ব্যবহার করেন তবে আপনাকে সরাসরি এটির সাথে মোকাবিলা করতে হবে। - Oli♦
+1 জন্য Adduser এবং useradd মধ্যে পার্থক্য কি? - sonlexqt


শুধু প্রেস জন্য ctrl+ +অল্টার+ +টি টার্মিনাল খুলতে আপনার কীবোর্ডে। যখন এটি খোলা হয়, নিম্নে কমান্ড (গুলি) চালান:

cat /etc/passwd

অথবা

less /etc/passwd
more /etc/passwd

আপনি awk ব্যবহার করতে পারেন:awk

awk -F':' '{ print $1}' /etc/passwd

73
2018-01-24 19:38



কিভাবে কমান্ড দ্বারা ব্যবহারকারীদের যোগ করতে? - nux
তুমি ব্যবহার করতে পার useradd কমান্ড। - Mitch♦
@ নক্স পার্টি দেরিতে দেরী, কিন্তু কমান্ড লাইন ব্যবহার থেকে adduser পরিবর্তে, useradd লেখক সত্যিই কি সে সত্যিই করছেন জানেন যেখানে স্ক্রিপ্ট সীমাবদ্ধ করা উচিত। - flindeberg


এই ধরনের তথ্য পেতে সবচেয়ে সহজ উপায় getent - দেখুন জন্য manpage getent হুকুম Manpage icon। যে কমান্ড হিসাবে একই আউটপুট দেয় cat /etc/passwd এটা মনে রাখা দরকারী কারণ এটি আপনাকে ওএসের বিভিন্ন উপাদানের তালিকা দেবে।

আপনি টাইপ করা সমস্ত ব্যবহারকারীদের তালিকা পেতে (ব্যবহারকারীদের তালিকাভুক্ত করা হয় /etc/passwd)

getent passwd

একটি ব্যবহারকারী যুক্ত করতে নতুন ব্যবহারকারী আপনি টাইপ করতে হবে সিস্টেম

sudo adduser newuser

সমস্ত ডিফল্ট সেটিংস প্রয়োগকারী একটি ব্যবহারকারী তৈরি করতে।

বোনাস: কোনও ব্যবহারকারী যুক্ত করতে (উদাহরণস্বরূপ anyuser) একটি গ্রুপ (উদাহরণস্বরূপ সিডি রম) টাইপ

sudo adduser anyuser cdrom

আপনি একটি ব্যবহারকারী মুছে ফেলুন (উদাহরণস্বরূপ অপ্রচলিত) সঙ্গে

sudo deluser obsolete

আপনি যদি তার হোম ডিরেক্টরি / মেইল ​​মুছে ফেলতে চান তবে আপনি টাইপ করুন

sudo deluser --remove-home obsolete

এবং

sudo deluser --remove-all-files obsolete

ব্যবহারকারী মুছে ফেলা হবে এবং সমস্ত সিস্টেমে এই সিস্টেমের মালিকানাধীন সমস্ত ফাইল।


52



এটি মনে রাখা উপকারী যে ব্যবহারকারীরা / etc / passwd ব্যবহারকারীদের আউটপুটটি মুদ্রণ করে না কিন্তু সমস্ত ব্যবহারকারীর একটি নির্দিষ্ট সিস্টেমে কনফিগার করা userdb ব্যাকেন্ডে মুদ্রণ করে না কেন এটি / etc / passwd বা LDAP ইত্যাদি। - Marcin Kaminski


এই পেতে হবে, সবচেয়ে স্বাভাবিক পরিস্থিতিতে অধীনে, সব স্বাভাবিক (অ সিস্টেম, অদ্ভুত, ইত্যাদি) ব্যবহারকারীরা:

awk -F'[/:]' '{if ($3 >= 1000 && $3 != 65534) print $1}' /etc/passwd

এটি দ্বারা কাজ করে:

  • থেকে পড়া /etc/passwd
  • ব্যবহার : একটি ডিলিমিটার হিসাবে
  • তৃতীয় ক্ষেত্র (ব্যবহারকারী আইডি নম্বর) 1000 এর চেয়ে বড় এবং 65534 না হলে, প্রথম ক্ষেত্র (ব্যবহারকারীর ব্যবহারকারীর নাম) মুদ্রিত হয়।

এই কারণেই অনেক লিনাক্স সিস্টেমের উপরে 1000 ব্যবহারকারীর নামগুলি অননুমোদিত (আপনি স্বাভাবিক বলতে পারেন) ব্যবহারকারীদের জন্য সংরক্ষিত। এই কিছু তথ্য এখানে:

ইউজার আইডি (ইউআইডি) ইউনিক্স-এর মতো একটি অনন্য ইতিবাচক পূর্ণসংখ্যা   প্রতিটি ব্যবহারকারী অপারেটিং সিস্টেম। প্রতিটি ব্যবহারকারী সিস্টেম সনাক্ত করা হয়   তার ইউআইডি দ্বারা, এবং ব্যবহারকারী নাম সাধারণত জন্য শুধুমাত্র একটি ইন্টারফেস হিসাবে ব্যবহার করা হয়   মানুষের।

ইউআইডি তাদের সংশ্লিষ্ট ব্যবহারকারী নাম এবং অন্যান্য বরাবর সংরক্ষণ করা হয়   ব্যবহারকারী-নির্দিষ্ট তথ্য, / etc / passwd ফাইলে ...

তৃতীয় ক্ষেত্রে ইউআইডি রয়েছে, এবং চতুর্থ ক্ষেত্র রয়েছে   গোষ্ঠী আইডি (জিআইডি), যা ডিফল্ট হিসাবে সব সাধারণ জন্য ইউআইডি সমান   ব্যবহারকারীদের।

2.4 এবং তারপরে লিনাক্স কার্নেলগুলিতে, ইউআইডিগুলি 32-বিট পূর্ণসংখ্যার স্বাক্ষরিত হয়   যে শূন্য থেকে মান 4,294,967,296 প্রতিনিধিত্ব করতে পারেন। যাইহোক, এটা   বজায় রাখতে শুধুমাত্র 65,534 পর্যন্ত মান ব্যবহার করার পরামর্শ দেওয়া হয়   পুরোনো কার্নেল বা ফাইল সিস্টেমগুলি ব্যবহার করে সিস্টেমের সাথে সামঞ্জস্য   শুধুমাত্র 16 বিট ইউআইডি মিটমাট।

0 এর ইউআইডি একটি বিশেষ ভূমিকা রয়েছে: এটি সর্বদা রুট অ্যাকাউন্ট (যেমন,   সর্বশক্তিমান প্রশাসনিক ব্যবহারকারী)। যদিও ব্যবহারকারীর নাম হতে পারে   এই অ্যাকাউন্টে পরিবর্তন এবং অতিরিক্ত অ্যাকাউন্ট তৈরি করা যেতে পারে   একই ইউআইডি, নিরাপত্তার দৃষ্টিকোণ থেকে কোনও পদক্ষেপ কার্যকর নয়।

ইউআইডি 65534 সাধারণত কোনও সিস্টেমের জন্য ব্যবহারকারীর জন্য সংরক্ষিত নয়   বিশেষাধিকার (যেমন, অ privileged) ব্যবহারকারী হিসাবে বিরোধ।   এই ইউআইডি প্রায়ই সিস্টেম রিমোট অ্যাক্সেস ব্যক্তিদের জন্য ব্যবহার করা হয়   FTP এর মাধ্যমে (ফাইল ট্রান্সফার প্রোটোকল) বা HTTP (হাইপারটেক্সট স্থানান্তর   প্রোটোকল)।

ইউআইডি 1 থেকে 99 প্রচলিতভাবে বিশেষ সিস্টেম ব্যবহারকারীদের জন্য সংরক্ষিত হয়   (কখনও কখনও ছদ্ম-ব্যবহারকারী বলা হয়), যেমন চাকা, ডেমন, এলপি, অপারেটর,   সংবাদ, মেইল, ইত্যাদি। এই ব্যবহারকারীরা প্রশাসকগণ যাদের মোট প্রয়োজন নেই   রুট ক্ষমতা, কিন্তু কিছু প্রশাসনিক কাজ সম্পাদন এবং এইভাবে প্রয়োজন   সাধারণ ব্যবহারকারীদের দেওয়া বেশী বেশী সুযোগ।

কিছু লিনাক্স বিতরণ (যেমন, সংস্করণ) জন্য ইউআইডি শুরু   100 এ অ privileged ব্যবহারকারীদের। অন্যান্য, যেমন Red Hat, তাদের এ শুরু   500, এবং এখনও অন্যান্য, যেমন ডেবিয়ান, তাদের 1000 শুরু। কারণ   বিতরণ মধ্যে পার্থক্য, ম্যানুয়াল হস্তক্ষেপ প্রয়োজন হতে পারে   একটি প্রতিষ্ঠানের একটি নেটওয়ার্কের মধ্যে একাধিক বিতরণ ব্যবহার করা হয়।

এছাড়াও, এটি স্থানীয় ব্যবহারকারীদের জন্য ইউআইডিগুলির একটি ব্লক রিজার্ভ করার সুবিধাজনক হতে পারে,   যেমন 1000 থেকে 9999, এবং দূরবর্তী ব্যবহারকারীদের জন্য অন্য ব্লক (যেমন,   নেটওয়ার্কে অন্যত্র ব্যবহারকারীরা), যেমন 10000 থেকে 65534. গুরুত্বপূর্ণ   জিনিস একটি প্রকল্প সিদ্ধান্ত নিতে এবং এটি মেনে চলতে হয়।

সংখ্যার ব্লক সংরক্ষণ এই অনুশীলন সুবিধার মধ্যে   বিশেষ ধরনের ব্যবহারকারীর জন্য এটি আরও সুবিধাজনক করে তোলে   সন্দেহজনক ব্যবহারকারী কার্যকলাপের জন্য সিস্টেম লগ মাধ্যমে অনুসন্ধান করুন।

জনপ্রিয় বিশ্বাস বিপরীত, এটা প্রতিটি এন্ট্রি প্রয়োজন হয় না   ইউআইডি ক্ষেত্র অনন্য হতে। তবে, অ-অনন্য ইউআইডি নিরাপত্তা সৃষ্টি করতে পারে   সমস্যা, এবং এইভাবে ইউআইডি সমগ্র জুড়ে অনন্য রাখতে হবে   সংগঠন. অনুরূপভাবে, সাবেক ব্যবহারকারীদের থেকে ইউআইডি পুনর্ব্যবহার করা উচিত   যতদিন সম্ভব জন্য এড়িয়ে চলুন।


21





তুমি ব্যবহার করতে পার compgen অন্তর্নির্মিত:

compgen -u

সব ব্যবহারকারী তালিকা হবে।


21





তালিকা লগইন করতে পারেন এমন সমস্ত ব্যবহারকারীর (কোন সিস্টেম ব্যবহারকারীরা যেমন: বিন, ডায়মন, মেল, সিইএস, ইত্যাদি)

awk -F':' '$2 ~ "\$" {print $1}' /etc/shadow

যোগ নতুন ব্যবহারকারী

sudo adduser new_username

অথবা

sudo useradd new_username

মুছে ফেলা/ ব্যবহারকারী নাম মুছে ফেলুন

sudo userdel username

আপনি হোম ডিরেক্টরি মুছে ফেলতে চান (ডিফল্ট ডিরেক্টরি / হোম / ব্যবহারকারীর নাম)

sudo deluser --remove-home username

অথবা

sudo rm -r /path/to/user_home_dir

আপনি যদি এই ব্যবহারকারীর কাছ থেকে সিস্টেম থেকে সমস্ত ফাইল মুছে ফেলতে চান (কেবলমাত্র হোম ডাইরেক্টরি নয়)

sudo deluser --remove-all-files

15



হয়তো আপনি মধ্যে পার্থক্য ব্যাখ্যা করা উচিত adduser এবং useradd। একটি এছাড়াও যোগ করুন sudoপ্রথম প্রান্তে -prefix। পাসওয়ার্ড শ্যাডো ফাইল শুধুমাত্র রুট হিসাবে পড়তে পারেন। - s3lph
awk -F':' '$2 ~ "\$" {print $1}' /etc/shadow বিন, ডেমন, ইত্যাদি সহ সকল ব্যবহারকারী আমাকে দেখিয়েছে এবং এই সতর্কতা ছুড়ে ফেলেছে: অব্যাহতি ক্রম \$' treated as plain $ 'আমি এই পোস্ট খুঁজে পেয়েছি stackoverflow.com/a/25867768/847954  এবং আরও একটি ব্যাকস্ল্যাশ যোগ করা এবং এটি জরিমানা কাজ করেছেন: awk -F':' '$2 ~ "\\$" {print $1}' /etc/shadow - jeff musk


ঠিক আছে এখানে একটি কৌশল যে আপনি এই সাজানোর সাহায্য করবে। যদি আপনি ব্যবহারকারী টাইপ করেন এবং ট্যাব কীটি দুইবার আঘাত করেন তবে টার্মিনালটিতে স্বয়ংক্রিয় সমাপ্তি রয়েছে যা ব্যবহারকারীর সাথে প্রথম 4 অক্ষর হিসাবে থাকা সমস্ত কমান্ড তালিকাবদ্ধ করবে।

user (tab tab)

সম্ভব বিকল্প হিসাবে আমাকে দেয়     useradd ব্যবহারকারীর অ্যাডমিনিস্ট্রেটর ব্যবহারকারীদের-অ্যাডমিন
যদি আপনি কমান্ড সম্পর্কে আরও জানতে চান তবে এটি গুগল করুন বা টাইপ করুন     মানুষ ব্যবহারকারীদের দেয়     useradd - একটি নতুন ব্যবহারকারী তৈরি করুন বা ডিফল্ট নতুন ব্যবহারকারীর তথ্য আপডেট করুন     ...     ...

ব্যবহারকারীদের তালিকাভুক্ত করার জন্য আপনি কি মিচ বলেছেন।

আশা করি যে আমি ব্যাশে ট্যাব সমাপ্তিটি ভালোবাসতে সাহায্য করি সেগুলি আমাকে মনে রাখার থেকে রক্ষা করে।


7





মেশিনে / home-ফোল্ডারে হোম ডিরেক্টরিগুলি ব্যবহারকারীদের খুঁজে বের করার জন্য, নিম্নলিখিত কমান্ডগুলি চালান

cd /home
ls 

আপনি সেই ব্যবহারকারীদের দেখতে পারেন যাদের সার্ভারে লগ-ইন করার অনুমোদন আছে। আমরা যদি কোনও ব্যবহারকারীর ফাইলগুলি দেখতে চাই তবে আপনার অবশ্যই রুট ব্যবহারকারী হতে হবে।


6



এই শুধুমাত্র কন্টেন্ট দেখায় /home। উবুন্টু ডিফল্টরূপে সেখানে ব্যবহারকারী ডিরেক্টরি রাখে, তবে এটি কোনওভাবে বাধ্যতামূলক নয়। - David Foerster