মূলত, ব্যবহারকারীরা সিস্টেমটি ব্যবহার করে কোনও মানুষের সাথে মিল রেখেছিলেন, তাই এই নামটি। প্রতিটি প্রক্রিয়া একটি নির্দিষ্ট ব্যবহারকারীর হিসাবে চলে এবং প্রতিটি ফাইল একটি নির্দিষ্ট ব্যবহারকারীর মালিকানাধীন। রুট নামে একটি বিশেষ ব্যবহারকারী এমন কোনও জিনিসের জন্য ব্যবহৃত হয় যা কোনও নির্দিষ্ট মানব ব্যবহারকারীর, অর্থাৎ অপারেটিং সিস্টেমের নিজস্ব নয় for যেহেতু মূলটি অপারেটিং সিস্টেমের সাথে খোদাই করে চলেছে তাই এর সমস্ত সুবিধা রয়েছে।
শীঘ্রই লোকেরা দেখতে পেল যে বিস্তৃত সুযোগ ছাড়াই একাধিক সিস্টেম ব্যবহারকারী তৈরি করা সুবিধাজনক। এটি মেশিনে চালিত বিভিন্ন পরিষেবাগুলি বিচ্ছিন্ন করার অনুমতি দেয়, যাতে তারা একে অপরের পায়ের আঙ্গুলের উপর না পড়ে। একটি পরিষেবা অ্যাকাউন্ট (বা "সিস্টেম অ্যাকাউন্ট", এই দুটি পদ সমার্থক শব্দ) সিস্টেমটি কারও সাথে ব্যবহার না করে সিস্টেমে চলমান পরিষেবার সাথে সম্পর্কিত। সিস্টেমে চলমান প্রতিটি কাজের জন্য সাধারণত আপনার একটি পরিষেবা অ্যাকাউন্ট থাকে যার নিজস্ব সুবিধার সেট রয়েছে (যেমন নিজস্ব ফাইল, নিজস্ব নেটওয়ার্ক পোর্ট ইত্যাদি)।
হিউম্যান বনাম সিস্টেম / পরিষেবা অ্যাকাউন্টের কোনও আনুষ্ঠানিক সংজ্ঞা নেই। কার্নেলটি পাত্তা দেয় না (ইউআইডি 0 সহ ব্যবহারকারীকে প্রচুর সুযোগ সুবিধা দেওয়া ছাড়া)। বেশিরভাগ প্রশাসনের কমান্ডগুলিও যত্ন করে না। কিছু সাধারণ পার্থক্য হ'ল:
- একজন মানুষের ব্যবহারকারীর "জন দো" এর মতো একটি আসল নাম রয়েছে, যেখানে একটি সিস্টেম ব্যবহারকারীর বর্ণনামূলক নাম রয়েছে "নাসাল ডিমন" বা মোটেও কিছুই নয়।
- একজন মানুষের ব্যবহারকারী একটি বাস্তব লগ-ইন শেল (যেমন হয়েছে
/bin/sh
বা /bin/bash
অথবা /bin/csh
। কিছু কিছু সিস্টেম ব্যবহারকারীদের একটি শেল (প্রায় সবসময় আছে /bin/sh
), অন্যদের না, তারা কিভাবে ব্যবহার করা যেতে বোঝানো হয় উপর নির্ভর করে (যেমন কি su foo
প্রয়োজন foo
একটি শেল আছে)।
- একজন মানব ব্যবহারকারীর প্রায়শই একটি পাসওয়ার্ড থাকে - তবে এটি সর্বদা ক্ষেত্রে হয় না, উদাহরণস্বরূপ, কেবলমাত্র একটি দূরবর্তী ব্যবহারকারীর কাছে কেবল এসএসএইচ কী থাকতে পারে। নোট করুন যে আধুনিক ইউনিটগুলিতে, পাসওয়ার্ডটি
/etc/passwd
কিন্তু অন্য কোনও ফাইলে নেই /etc/shadow
।
- কোনও মানুষের ব্যবহারকারীর হোম ডিরেক্টরি সাধারণত
/home
(বা কোনও সাইট-নির্দিষ্ট অবস্থান) এর অধীনে থাকে, তবে কোনও সিস্টেম ব্যবহারকারীর হোম ডিরেক্টরি সাধারণত না হয় /home
এবং এটি নাও থাকতে পারে (তবে ব্যতিক্রম রয়েছে) ceptions
- বেশিরভাগ সাইট সিস্টেম ব্যবহারকারীদের জন্য একাধিক ব্যবহারকারী আইডি এবং মানব ব্যবহারকারীদের জন্য একটি বিভেদ সীমা নির্ধারণ করে। 100–65533 বা 500 or65533 বা 1000–65533 সংরক্ষণ করা সাধারণত, এবং বেশিরভাগ বিতরণ সেট করা হয় 500 বা 1000 থেকে বাস্তব ব্যবহারকারী আইডি বরাদ্দ শুরু করতে।
যে সাইটগুলিতে একাধিক মেশিনে অ্যাকাউন্টগুলি ভাগ করা হয়, সেখানে সাধারণত একটি কেন্দ্রীয় সার্ভার থাকে যার মধ্যে ব্যবহারকারী তালিকা থাকে, এনআইএস বা এলডিএপি এর মাধ্যমে অ্যাক্সেসযোগ্য । passwd
মধ্যে এন্ট্রি /etc/nsswitch.conf
নির্দিষ্ট করে যেখানে ব্যবহারকারীর তথ্য খুঁজে বের করা। /etc/passwd
নেটওয়ার্ক-ওয়াইড ডাটাবেস থেকে স্থানীয় ব্যবহারকারী এবং প্রকৃত ব্যবহারকারীদের মধ্যে সাধারণ ব্যবহার করা সাধারণ , তবে কখনও কখনও নেটওয়ার্ক-ওয়াইড ডাটাবেসে সিস্টেম ব্যবহারকারী থাকে (ধারাবাহিক ইউআইডি প্রয়োগ করতে, যা সার্ভার এবং ডেটা প্রতিলিপি সহজতর করে), এবং কখনও কখনও রয়েছে লোকাল ফাইলে মানব ব্যবহারকারীরা (নেটওয়ার্কটি হোজিং করার পরেও তাদের লগইন করতে)।
সিস্টেম ব্যবহারকারী হিসাবে ছদ্মবেশিত কোনও মানব-অ্যাক্সেসযোগ্য অ্যাকাউন্টে সাধারণত আসল নাম না থাকলেও একটি লগইন শেল থাকতে পারে এবং সিস্টেমের ব্যাপ্তিতে ব্যবহারকারী আইডি থাকাকালীন একটি পাসওয়ার্ড সেট বা এসএসএইচ কী থাকে। প্রকৃতপক্ষে, এমন একটি আসল সিস্টেম অ্যাকাউন্ট ব্যবহার করা আরও ভাল ছদ্মরূপে হবে যার অপসারণের ফলে কিছু পরিষেবা কাজ করা বন্ধ করে দেবে। তবে সম্ভাব্য আক্রমণগুলি সনাক্ত করার জন্য আপনার কাছে কোনও কঠোর এবং দ্রুত আইন থাকতে পারে না: সংজ্ঞা অনুসারে আক্রমণকারীরা বিধিগুলি অনুসরণ করে না।
পরিষেবা অ্যাকাউন্ট এবং মানব অ্যাকাউন্টগুলি একই আদেশগুলি দ্বারা পরিচালিত হয় এবং একই ফাইলগুলিতে রেকর্ড করা হয়। অ্যাকাউন্ট তৈরি কমান্ডে মানব বনাম পরিষেবা ব্যবহারকারীদের জন্য যুক্তিসঙ্গত ডিফল্ট সেট করার বিকল্প থাকতে পারে, যেমন যথাযথ পরিসরে একটি ব্যবহারকারী আইডি চয়ন করা এবং কোনও মানুষের জন্য একটি পাসওয়ার্ডের অনুরোধ জানানো এবং কোনও পরিষেবার জন্য পাসওয়ার্ড প্রমাণীকরণ অক্ষম করা। উদাহরণস্বরূপ, adduser
বনাম adduser --system
বা useradd
বনাম useradd -r
লিনাক্স।