প্রশ্ন কিভাবে আমি ম্যাক ওএস এক্স 10.5 টার্মিনাল থেকে ব্যবহারকারী অ্যাকাউন্ট তৈরি করব?


আমি মেশিনে ssh'ing পরে দূরবর্তী ম্যাক ওএস এক্স 10.5 নতুন ব্যবহারকারীদের তৈরি করতে সক্ষম হতে চাই। আমি এটা কিভাবে করবো?


84
2018-06-05 18:07


উত্স


আমি এখনও উত্তর দিতে খ্যাতি আছে না, কিন্তু যদি আপনি এই থেকে কিভাবে কাজ খুঁজছেন single_user মোড (একটি সুরক্ষা রিসেট) তারপর আপনি হোল্ড পুনরায় বুট করতে হবে Command-S, অন-স্ক্রীন বিশদ প্রতি ডিস্ক লিখুন এবং তারপর, প্রবেশাধিকার লাভ rm /var/db/.AppleSetupDone যা আপনাকে একটি নতুন অ্যাডমিন অ্যাকাউন্ট তৈরি করতে দেয়। এই কেউ সাহায্য করে আশা করি - New Alexandria


উত্তর:


Dscl কমান্ড ব্যবহার করুন। এই উদাহরণটি ব্যবহারকারীকে "luser" তৈরি করবে, যেমন:

dscl . -create /Users/luser
dscl . -create /Users/luser UserShell /bin/bash
dscl . -create /Users/luser RealName "Lucius Q. User"
dscl . -create /Users/luser UniqueID "1010"
dscl . -create /Users/luser PrimaryGroupID 80
dscl . -create /Users/luser NFSHomeDirectory /Users/luser

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

dscl . -passwd /Users/luser password

ব্যবহারকারীর হোম ডিরেক্টরিটির জন্য আপনাকে ব্যবহারকারী / ব্যবহারকারী / ব্যবহারকারী তৈরি করতে হবে এবং মালিকানা পরিবর্তন করতে হবে যাতে ব্যবহারকারী এটি অ্যাক্সেস করতে পারে এবং নিশ্চিত হন যে অনন্য আইডিটি আসলে অনন্য।

এই লাইন ব্যবহারকারীকে প্রশাসকের গোষ্ঠীতে যুক্ত করবে:

dscl . -append /Groups/admin GroupMembership luser

80
2018-06-05 18:15



কিভাবে ইউআইডি অনন্য তা নিশ্চিত করবো? - JR Lawhorne
কোন স্বয়ংক্রিয় উপায় নেই; যদি আপনি এটি স্ক্রিপ্ট করেন তবে আপনি এটি "id ####" কমান্ডটি চালাতে পারেন এবং এটি নিশ্চিত করুন যে এটি "কোনও ব্যবহারকারী নয়" বা কিছু হ্যাক। - palmer
যদি আপনার অনুমতি না থাকে তাহলে sudo ব্যবহার করতে ভুলবেন না। - Raffi Khatchadourian
বিটিডব্লিউড, এটি যেভাবে হওয়া উচিত তার চেয়ে বেশি ক্রিয়াপদ, আমি বন্দী এই কমান্ড useradd বাক্য গঠন. - Xiong Chiamiov
মনে রাখবেন যে PrimaryGroupID 80 হয় admin, তাই luser ব্যবহার করতে পারেন sudo এমনকি যদি আপনি তাকে অ্যাডমিনিস্ট্রেটরদের গোষ্ঠীতে যোগ করেন না। - ruslo


(এই উত্তরটি পামারের পদ্ধতিতে কিছু খালি জায়গা পূরণ করার জন্য একটি সংযোজন হিসাবে বিবেচনা করা উচিত)

আপনার নতুন ব্যবহারকারীর জন্য একটি অব্যবহৃত UniqueID চয়ন করতে, আপনি ব্যবহার করতে পারেন:

maxid=$(dscl . -list /Users UniqueID | awk '{print $2}' | sort -ug | tail -1)
newid=$((maxid+1))

... তারপর প্লেমারের অ্যাকাউন্ট তৈরি করার জন্য ডিএসএলএল কমান্ডের ক্রম ব্যবহার করুন এবং তারপরে নতুন ব্যবহারকারীর হোম ডিরেক্টরিটি তৈরি করুন:

cp -R /System/Library/User\ Template/English.lproj /Users/luser
chown -R luser:staff /Users/luser

(একটি createhomedir কমান্ড আছে, কিন্তু এটি পরীক্ষা করে না যখন এটি পরীক্ষা করে দেখলাম।)


20
2018-06-05 20:21



আমি একটি স্ক্রিপ্ট তৈরি করেছি যা নতুন ব্যবহারকারীদের সাথে আমাদের ওপেন ডিরেক্টরী মাস্টারকে পপুলিয়ে রাখে এবং তারপর কল করে sudo createhomedir -s (আইআইআরসি) ওপেন ডিরেক্টরি প্রতিলিপি / ফাইলশেসে, এবং তারা আনন্দের সাথে হোম ডিরেক্টরি তৈরি করে। - Clinton Blackmore
dscl -list 256 ফলাফল সীমিত, তাই আপনার যদি 256 ব্যবহারকারীর বেশি থাকে তবে এই কৌশলটি একটি অনন্য ইউআইডি গ্যারান্টি দিতে ব্যর্থ হবে। - smokris


আপনার যদি ব্যবহারকারীদের একটি গুচ্ছ তৈরি করতে থাকে তবে একটি গঠনযুক্ত পাঠ্য ফাইল তৈরি করা এবং এটি পাস করা সম্ভব dsimport কাজ করতে।

অ্যাপলের কমান্ড লাইন প্রশাসন গাইড ব্যবহারকারী এবং দলের উপর একটি সম্পূর্ণ অধ্যায় আছে।


8
2018-06-05 19:19



বিজোড়। অ্যাপলটি আপনি প্রাথমিকভাবে উল্লেখ করা নথির v10.5 দিয়ে শেষ করেছেন বলে মনে হয় v10.3 রাখা এবং একটি কম ব্যাপক স্নো চিতাবাঘ সংস্করণ - chb


একটি অ্যাকাউন্ট তৈরি করার আগে একটি অনন্য ব্যবহারকারী আইডি বাছাই এবং চয়ন করার আরেকটি উপায় কেবলমাত্র তালিকাটি সন্ধান করা এবং যেটি আপনি ব্যবহার করতে চান সেটি এখানে নেই:

 sudo dscl . list /Users uid
 sudo dscl . list groups gid

যদি আপনি একটি নির্দিষ্ট আইডি ব্যবহার করতে হবে


7
2017-11-30 16:10



dscl -list 256 ফলাফল সীমিত, তাই আপনার যদি 256 ব্যবহারকারীর বেশি থাকে তবে এই কৌশলটি একটি অনন্য ইউআইডি গ্যারান্টি দিতে ব্যর্থ হবে। - smokris
Yup যে ডান এখন ডান ব্যবহারকারী যোগ করার জন্য সবচেয়ে ছোট পথ, ঠিক আছে grep এটা দিয়ে id আপনি নতুন ব্যবহারকারীর জন্য ব্যবহার করতে মন ছিল - yair


আমি ব্যবহারকারীর অ্যাকাউন্ট তৈরি করার জন্য একটি সুন্দর স্ক্রিপ্ট যা মনে করি তার সাথে এখানে আসা বিভিন্ন উত্তরগুলি লিভারেজ করেছি। নিশ্চিতভাবে, এটি ssh থেকে একটি সময়ে একটি কমান্ড চালানোর জন্য ডিজাইন করা হয় না; এটি মেসোও একটি স্ক্রিপ্ট চালানোর জন্য ডিজাইন করা হয়েছে যখন এটি OS X- এর প্যাকেজ-ভিত্তিক চিত্রটি তৈরি করে (যেমন তৈরি করে ক্যাসপার ইমেজিং অথবা InstaDMG)।

#!/bin/bash
# This script creates a user account under Mac OS X
# (tested with 10.5 and 10.6; likely works with 10.4 but not earlier)
# Written by Clinton Blackmore, based on work at
# http://serverfault.com/questions/20702

# === Typically, this is all you need to edit ===

USERNAME=joeadmin
FULLNAME="Joe Admin"
PASSWORD="hard_to_hack"

# A list of (secondary) groups the user should belong to
# This makes the difference between admin and non-admin users.
# Leave only one uncommented
#SECONDARY_GROUPS=""  # for a non-admin user
SECONDARY_GROUPS="admin _lpadmin _appserveradm _appserverusr" # for an admin user

# ====

if [[ $UID -ne 0 ]]; then echo "Please run $0 as root." && exit 1; fi

# Find out the next available user ID
MAXID=$(dscl . -list /Users UniqueID | awk '{print $2}' | sort -ug | tail -1)
USERID=$((MAXID+1))

# Create the user account
dscl . -create /Users/$USERNAME
dscl . -create /Users/$USERNAME UserShell /bin/bash
dscl . -create /Users/$USERNAME RealName "$FULLNAME"
dscl . -create /Users/$USERNAME UniqueID "$USERID"
dscl . -create /Users/$USERNAME PrimaryGroupID 20
dscl . -create /Users/$USERNAME NFSHomeDirectory /Users/$USERNAME

dscl . -passwd /Users/$USERNAME $PASSWORD


# Add use to any specified groups
for GROUP in $SECONDARY_GROUPS ; do
    dseditgroup -o edit -t user -a $USERNAME $GROUP
done

# Create the home directory
createhomedir -c > /dev/null

echo "Created user #$USERID: $USERNAME ($FULLNAME)"

স্ক্রিপ্টটি আপনাকে কোন গোষ্ঠীগুলির সাথে সম্পর্কিত হওয়া উচিত তা নির্দিষ্ট করে দেয়। এটি আমার কাছে মনে হচ্ছে যে এটি OS X এর যে সংস্করণ চলছে তার উপর নির্ভর করে এটি ভিন্ন হতে পারে। আমি রান যখন আমি বিভিন্ন ফলাফল পেতে id ওএস এক্স 10.6 এ অ্যাডমিন হিসাবে আমি ওএস এক্স 10.5 এ অ্যাডমিন হিসাবে চলাকালীন কাজ করি।


7
2018-01-14 23:02



অন্য একটি উত্তরে, ইলিয়ট সতর্ক করে দিয়েছিলেন যে, 'createhomedir -c' কমান্ডটি শেষ দিকে, আপনার দ্বারা আবদ্ধ ডিরেক্টরিরীর সমস্ত ব্যবহারকারীর অ্যাকাউন্ট তৈরি করবে। ('-C' বিকল্প, ম্যান পৃষ্ঠাতে, 'স্থানীয় হোম পাথের জন্য শুধুমাত্র হোম ডিরেক্টরি তৈরি করে।') আরেকটি বিকল্প, '-U ব্যবহারকারীর নাম', যা আরও ভালোভাবে কাজ করতে পারে। - Clinton Blackmore
হ্যালো আমি উপরে স্ক্রিপ্ট ব্যবহার করছি। তাই এটি আমার নতুন ব্যবহারকারী যুক্ত করে কিন্তু ব্যবহারকারী যখন তার ক্যালেন্ডারে সংযোগ করবে তখন তার অনুমতি থাকবে না! আপনি কি আমাকে সাহায্য করতে পারেন ?
@ জিম্মি: আমি সার্ভারফুলটিতে একটি নতুন প্রশ্ন জিজ্ঞাসা করার পরামর্শ দিই এবং মন্তব্যগুলিতে একটি প্রশ্ন জিজ্ঞাসা করার পরিবর্তে এই উত্তরটি লিঙ্ক করব, যা কদাচিৎ দেখা যাবে। আমি অনুমতি সঠিক হতে হবে আশা করি। 'চাউন' এবং 'chmod' ব্যবহার করে আপনি যদি কোনও ফাইল সনাক্ত করতে পারেন তবে সঠিক অনুমতি নেই ... তবে আমি জানি না কোনটি এটি হতে পারে। - Clinton Blackmore
dscl -list 256 ফলাফল সীমিত, তাই আপনার যদি 256 ব্যবহারকারীর বেশি থাকে তবে এই কৌশলটি একটি অনন্য ইউআইডি গ্যারান্টি দিতে ব্যর্থ হবে। - smokris


আমি শুরু করেছি একটি সামান্য মোড়ানো সম্পর্কিত dscl যে লাগে useraddএর প্যারামিটারগুলি - এটি সম্পূর্ণ নয় (আমি মনে করি না এটিও হতে পারে, কারণ কিছু জিনিস OS X তে সম্ভব নয়), তবে আমি কিছু ব্যবহারকারী তৈরি করার জন্য এটি ব্যবহার করেছি।

ফ্রেমওয়ার্ক সব প্যারামিটারের জন্য আছে, তাই আপনি যদি গিথহুবের অসাধারণ সামাজিক বৈশিষ্ট্যগুলির সুবিধা নিতে চান তবে এটি করা সহজ।


4
2017-10-17 06:15