আমি কীভাবে সিস্টেমেড সহ ডেস্কটপে অটোলজিন করতে পারি?


20

পছন্দমতো লগইন ম্যানেজার ব্যবহার না করে আমার ডেস্কটপ পরিবেশে আমাকে স্বয়ংক্রিয়ভাবে লগ ইন করতে সিস্টেমড কনফিগার করব কীভাবে? আমি আর্চ ব্যবহার করছি।


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

আমি বর্তমানে এস এল আই এম ব্যবহার করছি এবং এটি অটোলজিনে কনফিগার করা যেতে পারে তবে কোনও ডিসপ্লে ম্যানেজার না থাকলে বুট প্রক্রিয়াটি আরও দ্রুত এবং আরও ঝাঁকুনির হতে পারে :)
ফুচো

ওহ, আমি আপনার প্রশ্নটি ভুলভাবে লিখেছি।
উইল্যান্ড

উত্তর:


22

এটি আর্ক উইকিতে বর্ণিত হয়েছে :

এর সাথে getty@.serviceঅনুলিপি করে একটি নতুন সার্ভিস ফাইল তৈরি করুন/etc/systemd/system/

cp /usr/lib/systemd/system/getty@.service /etc/systemd/system/autologin@.service

এটি মূলত ইতিমধ্যে বিদ্যমান getty@.serviceএকটি নতুন ফাইলে অনুলিপি করে autologin@.serviceযা অবাধে সংশোধন করা যায়। এটি অনুলিপি করা হয়েছে /etc/systemd/systemকারণ সেখানেই সাইট-নির্দিষ্ট ইউনিট ফাইলগুলি সংরক্ষণ করা হয়। /usr/lib/systemd/systemপ্যাকেজগুলির দ্বারা সরবরাহ করা ইউনিট ফাইল রয়েছে যাতে আপনার সেখানে কোনও পরিবর্তন করা উচিত নয়।

তারপরে autologin@.serviceআপনাকে সেই টিটিটির জন্য গেট্টি পরিষেবাতে সিমিলিং করতে হবে যার উপর আপনি অ্যাটলজিন করতে চান, উদাহরণস্বরূপ tty1 এর জন্য:

ln -s /etc/systemd/system/autologin@.service /etc/systemd/system/getty.target.wants/getty@tty1.service

এখন অবধি, এটি এখনও সাধারণ getty@.serviceফাইলের মতো একই , তবে সর্বাধিক গুরুত্বপূর্ণ অংশটি autologin@.serviceআপনাকে স্বয়ংক্রিয়ভাবে স্বয়ংক্রিয়ভাবে লগ ইন করতে সংশোধন করা । এটি করতে, আপনাকে ExecStartপড়ার জন্য কেবল লাইনটি পরিবর্তন করতে হবে

ExecStart=-/sbin/agetty -a USERNAME %I 38400

মধ্যে পার্থক্য ExecStartলাইন getty@.serviceএবং autologin@.serviceশুধুমাত্র -a USERNAMEযা agetty বলে স্বয়ংক্রিয়ভাবে ব্যবহারকারীর নাম USERNAME ব্যবহারকারীর লগইন করুন।

এখন আপনাকে কেবল সিস্টেমডকে তার ডেমন ফাইলগুলি পুনরায় লোড করতে এবং পরিষেবা শুরু করতে বলতে হবে:

systemctl daemon-reload
systemctl start getty@tty1.service

(আমি নিশ্চিত নই যে আপনি ইতিমধ্যে tty1 এ লগ ইন করেছেন তবে পরিষেবাটি সঠিকভাবে শুরু হবে কিনা, নিরাপদতম উপায়টি পরিষেবাটি শুরু না করে কেবল পুনরায় বুট করার প্রস্তাব দেওয়া হয়)।

এরপরে আপনি যদি স্বয়ংক্রিয়ভাবে এক্স শুরু করতে চান তবে নীচে স্নিপেটটি আপনার ~/.bash_profile( আবার উইকি থেকে নেওয়া ) sertোকান :

if [[ -z $DISPLAY ]] && [[ $(tty) = /dev/tty1 ]]; then
    exec startx
fi

~/.xinitrcআপনার ডেস্কটপ পরিবেশ শুরু করতে আপনাকে নিজের পরিবর্তন করতে হবে, এটি কীভাবে করবেন এটি ডিই এর উপর নির্ভর করে এবং সম্ভবত আর্কি উইকিতেও বর্ণিত হয়েছে।


আজেটি আর্গ% I কী?
এডওয়ার্ড অ্যান্ডারসন

`চ্যারচটার শেষে কী হবে? এটা কি দরকার? এর মানে কী?
rien333

@ rien333 এটি অপ্রয়োজনীয়, আমি এটি উত্তর থেকে সরিয়েছি।
উইল্যান্ড

2
আমি File existsযখন সিমলিংকটি করি তখন ত্রুটিটি পাই
স্ব স্ব পোস্ট পোস্ট করুন

ln -sf /etc/systemd/system/autologin@.service /etc/systemd/system/getty.target.wants/getty@tty1.serviceএটি ওভাররাইট করতে ব্যবহার করুন ।
ম্যানুয়েল স্মিটজবার্গার

5

সরাসরি ফাইলটি সংশোধন করুন /etc/systemd/system/getty.target.wants/getty@tty1.service(এটিতে একটি সিলেট লিঙ্ক /lib/systemd/system/getty@service):

পরিশেষে -a/--autologin USERNAMEলাইন:

ExecStart=-/sbin/agetty --noclear %I $TERM

অত: পর:

ExecStart=-/sbin/agetty -a USERNAME %I $TERM

আপনি হয়ত মুছে ফেলতে পারেন -o '-p -- \\u'(বর্তমান আর্চ ইনস্টলেশনটিতে উপস্থিত হিসাবে) এটি এর জন্য লগইন শুরু USERNAMEকরলেও পাসওয়ার্ডের জন্য জিজ্ঞাসা করে।

রিবুট করার পরে, আপনি স্বয়ংক্রিয়ভাবে লগ ইন হয়ে যাবেন।

গীত পরিবর্তন ফাইলের নাম getty@tty1.serviceথেকে ttyআপনি লগ ইন করতে চাই।


স্বচ্ছতার জন্য দ্রষ্টব্য: এটি যদি একটি সিমলিংক হয় তবে একটি নতুন ফাইলের সাথে সিমলিংকটি প্রতিস্থাপন করুন এবং সেই নতুন ফাইলটি সম্পাদনা করুন।
এডওয়ার্ড অ্যান্ডারসন

1

আইএমও, আর্ক উইকি বর্তমানে অনেক সহজ সমাধানের প্রস্তাব দেয়:

হয় সাহায্যকারী চালান ( systemctl edit getty@tty1) অথবা আমি নিজে যা করেছি তা করুন:

mkdir -p /etc/systemd/system/getty@tty1.service.d/
touch /etc/systemd/system/getty@tty1.service.d/override.conf

আপনি যে পাঠ্যটি প্রবেশ করতে চান (যে কোনও পদ্ধতি দ্বারা) হ'ল ( যথাযথভাবে ব্যবহারকারীর নামটি পরিবর্তন করতে ভুলবেন না ):

[Service]
ExecStart=
ExecStart=-/usr/bin/agetty --autologin username --noclear %I $TERM

দ্রষ্টব্য : খালি লাইনটি গুরুত্বপূর্ণ! (স্বীকার করছি কেন আমি নিশ্চিত নই ...)

এখন, ( shutdown -r 0) পুনরায় আরম্ভ করুন এবং এর ব্যবহারের কিছু ... login: username (automatic login)ঘটবে যেখানে এটি আগে ব্যবহারকারীর নাম / পাসওয়ার্ড ইনপুটটির জন্য অপেক্ষা করতে অবরুদ্ধ করে


একবার রিবুট হয়ে গেলে এবং স্বয়ংক্রিয়ভাবে লগ ইন করা, আপনি যদি আমার মতো হন এবং এই সিস্টেমে এখন এসএসএইচ চান, আপনার সম্ভবত চালানো দরকার:

systemctl enable sshd.service

যা সিমিলিংক তৈরি করবে (উদাঃ ln -s '/usr/lib/systemd/system/sshd.service' '/etc/systemd/system/multi-user.target.wants/sshd.service')


খালি লাইনটি প্রথমে এক্সকস্টার্ট এন্ট্রি সাফ করবে, যখন পরের লাইনে একটি নতুন এক্সিকিউটি কমান্ড প্রবর্তন করবে। এছাড়াও লক্ষণীয় যে কয়েকটি সিস্টেমে (উবুন্টু) অ্যাজিটি এক্সিকিউটেবলটি এর মধ্যে থাকতে পারে /sbin/agetty, তাই এটির জন্য /etc/systemd/system/getty.target.wants/getty@tty1.serviceপ্রথমে মূল ফাইলটি পরীক্ষা করা উচিত worth
প্ল্যাটফর্ম
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.