অনুমতিগুলি সেট করার কোনও উপায় আছে যাতে কোনও প্রক্রিয়া নির্দিষ্ট ডিভাইসটি ব্যবহার করতে পারে?


12

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

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

এটা কি সম্ভব? আমি জিজ্ঞাসা করছি কারণ আমি প্রায়শই সঙ্গীত শুনি এবং বেশিরভাগ সময় আমার মনিটরের সত্যই প্রয়োজন হয় না, তাই আমি কেবল স্ক্রিনটি লক করি। তবে আমি যখন স্ক্রীনটি লক করি তখন সক্রিয় অধিবেশন নিষ্ক্রিয় হয়ে যায় এবং আমরোক খেলা বন্ধ করে দেয়। এবং হ্যাঁ, স্ক্রীনটি লক করা উচিত, এবং কেবল বন্ধ করা উচিত নয়।

সম্পাদনা করুন:

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


1
সম্ভবত চলমান nohup program_x & ; disownসাহায্য করতে পারে। বা স্ক্রিন
জাস্টম

তবে প্রক্রিয়াটি ঠিক কাজ করে। আমি যখন স্ক্রিনটি লক করি তখন কমপক্ষে আমি স্ক্রীনটি আনলক না করা পর্যন্ত এটি আর সাউন্ড কার্ডটি ব্যবহার করতে পারে না।
মিখাইল মরফিকভ

আপনি কি loginctl enable-lingerঅ্যাকাউন্টটির জন্য ব্যবহার করার চেষ্টা করেছেন ?
স্পু

খিলান উইকি অনুসারে: The systemd user instance is started after the first login of a user and killed after the last session of the user is closed. Sometimes it may be useful to start it right after boot, and keep the systemd user instance running after the last session closes, for instance to have some user process running without any open session. Lingering is used to that effect.এটি কোনও নিষ্ক্রিয় ব্যবহারকারী সেশনের জন্য উদ্বেগ প্রকাশ করে না কারণ systemd --userসর্বদা উপস্থিত থাকে।
মিখাইল মরফিকভ 20

আমি নিয়মিতভাবে আমার ফেডোরা 21 ল্যাপটপে আমার সংগীত বাজতে থাকি যখন আমি লক করে রাখার পরে ঘুমি। সুতরাং আমি মনে করি না যে আপনার কম্পিউটারের স্ক্রিনটি লক করা কেবলমাত্র সিস্টেমডের কারণে একটি সেশনটিকে নিষ্ক্রিয় হিসাবে চিহ্নিত করবে।
ব্র্যাচলে

উত্তর:


1

আমি নিশ্চিত নই, আপনি যে লিনাক্সের সংস্করণ / গন্ধটি ব্যবহার করছেন তা কিন্তু শোনার ডিভাইসগুলির জন্য এসিএলগুলির মতো মনে হচ্ছে উদেব নিয়মের মাধ্যমে কনসোলকিট দ্বারা নিয়ন্ত্রিত। আমার ডেবিয়ান হোস্টে আমি নীচে / লিবি / ওডিভ / আরলস.ডি / 70-udev-acl.rules এর মতো কিছু দেখতে পাচ্ছি

# sound devices
SUBSYSTEM=="sound", TAG+="udev-acl"

আমি এটি খোলার সাথে খেলব, সুতরাং কনসোলকিট এটির ডাটাবেসে শব্দ ডিভাইস যুক্ত করবে না এবং শব্দ ডিভাইসে এসিএল পরিচালনা করবে না


আমি আমার ডেস্কটপে লাইন উপরে এবং রিবুটের পরে মন্তব্য করে যাচাই করেছি। সাউন্ড ডিভাইসের জন্য আর এসিএল পরিচালনার দরকার নেই এবং আমি আমার স্ক্রিনটি লক করে গান বাজাতে পারি
ভেঙ্কটসি

আমি প্রশ্ন আপডেট। এখন, কনসোলকিট অপ্রচলিত স্টাফ - আপনি এ সম্পর্কে এখানে আরও পড়তে পারেন freedesktop.org/wiki/Software/ConsoleKit , এবং আমার সিস্টেম এটি ব্যবহার করে না। লগইন্ড এটির জন্য প্রতিস্থাপন এবং এটি মূলত একই জিনিসটি করে। আপনি আমাকে যে রেখাটি দিয়েছেন তাতে আমি মন্তব্য করার চেষ্টা করেছি এবং পুনরায় বুট করার পরে আমার সিস্টেমটি কোনও সাউন্ড কার্ড দেখতে পাবে না। এমনকি যদি এটি কাজ করে এবং এটি ঠিক কাজ করে তবে আমি মনে করি না যে আমি এই সমাধানটি ব্যবহার করব - কারণ কারণ এটি কোনও ব্যবহারকারীকে অডিও গ্রুপে যুক্ত করার মতো হবে, কমপক্ষে আমি এটিকে দেখছি।
মিখাইল মরফিকভ

ধন্যবাদ, আমি লগইন্ডের বিশদটি দেখেছি এবং হ্যাঁ, এটি একই ধরণের জিনিস করছে doing এটি পরিচালনা করতে ডিভাইসগুলি সনাক্ত করতে udev ট্যাগ 'uaccess' খুঁজছেন এবং এটি /lib/udev/rules.d/70-uaccess.rules এ রয়েছে। এটি সবই বেসিক ইউনিক্স অনুমতিতে নেমে আসছে, আমার মতে আপনার এই বিকল্পগুলি 1) ইউদেবের মাধ্যমে সাউন্ড কার্ড ট্যাগটি সরিয়ে ফেলুন, সুতরাং লগইনড অডিও ডিভাইস এবং লকিং স্ক্রিন পরিচালনা করে না, ব্যবহারকারীদের স্যুইচ করে - শব্দ ডিভাইসের অনুমতি পরিবর্তন করে না। আপনি নিজের পছন্দ অনুযায়ী পারফরম্যান্স সেট করতে পারেন 2) আপনি কেবল অমরোক বাইনারি খুঁজে পেতে পারেন এবং এটির গ্রুপটি অডিও হতে সেট করে সেট করতে পারেন, সুতরাং এটি কার্যকর গ্রুপটি অডিও হয়ে যায়
ভেঙ্কটস

আমি দ্বিতীয় সমাধানটি পরীক্ষা করেছিলাম, তবে দুর্ভাগ্যক্রমে এটি কার্যকর হয় না। আমি audio groupঅমরোক বাইনারি স্থাপন করেছি , এবং অনুমতিগুলি নীচে দেওয়া হয়েছে: -rwxr-sr-xতবে আমি যখন নিয়মিত ব্যবহারকারী হিসাবে QDBusConnection: session D-Bus connection created before QCoreApplication. Application may misbehave. unnamed app(24333): KUniqueApplication: Cannot find the D-Bus session server: "Unable to autolaunch when setuid"
আমরোক

হুম, গুই মধ্যে setuid প্রোগ্রাম চলমান মত দেখাচ্ছে পথ জটিল এবং প্রাক্তন জন্য নিরাপত্তার কারণে অবরুদ্ধ মনে হচ্ছে: gtk.org/setuid.html । আমি আরও গবেষণা করব এবং আপনাকে জানাবো, এটি ভাল জিনিস - নতুন জিনিস শেখা!
ভেঙ্কটসি 14'15

0

আমাকে বলতে দিন যে আমি লিনাক্স ডেস্কটপে অডিও সম্পর্কে খুব কম জানি। মাইয়া চুপা যদি এই কাজে না দেয়।

আমি অডিও ডিভাইসের গোষ্ঠী-অনুমতি সেট করব:

chgrp audio <dev-path>
chmod g+rw <dev-path>

যে গ্রুপটি আমরোক চালাচ্ছে সেটিতে .আমারোককে সেই গ্রুপে চালাতে বাধ্য করার জন্য সিস্টেমড ব্যবহার করুন। প্রথমে আমরোক সিস্টেমড ফাইলটি / etc / systemd / user / এ অনুলিপি করুন এবং এটিকে সংশোধন করুন:

[Service]
Group=audio

(এটি একটি সম্পূর্ণ পরিবর্তন নয়, সম্পূর্ণ ফাইল)।

আজকের লিনাক্স-অডিও সিস্টেমের একাধিক স্তরের কারণে আরও একটি "পরিশীলিত" উত্তর থাকতে পারে।


1
হিসাবে হিসাবে chgrp audio/ / dev / snd / এর অধীনে থাকা সমস্ত ডিভাইসগুলির মধ্যে ইতিমধ্যে audioগ্রুপ রয়েছে তবে আপনি যখন পালসওডিও ব্যবহার করবেন তখন বিষয়টি বিবেচনা করা উচিত নয় এবং এটি ক্ষেত্রে। সিস্টেমেড সার্ভিসে যখন বিষয়টি আসে তখন আমি এটি চেষ্টা করেছিলাম তবে নীচের ত্রুটিটি পেয়েছিলাম: Failed at step GROUP spawning /usr/bin/amarok: Operation not permitted. amarok.service: main process exited, code=exited, status=216/GROUPএবং আমি মনে করি না যে আমি এই গোষ্ঠীগুলিকে নিয়মিত ব্যবহারকারীরূপে পরিবর্তন করতে পারি। আমার অন্যান্য পরিষেবাদি রয়েছে যার জন্য গ্রুপ পরিবর্তন দরকার, তবে এটি একটি সাধারণ সিস্টেম ডেমন, এবং এটি ঠিক কাজ করে। `
মিখাইল মরফিকভ

আমারোক পরিষেবাটি কি মূল দ্বারা শুরু হয় না? এটি সম্ভব যে অমরোককে অন্যান্য ছাত্রদের জন্য অন্যান্য গ্রুপের অনুমতি প্রয়োজন। খুব খারাপ এটা সহজ নয়।
ওথিয়াস

এটি কেবল একটি সংগীত প্লেয়ার। :)
মিখাইল মরফিকভ

0

কীভাবে প্লেয়ারটি ভিএনসি ফ্রেমবাফারে চালাবেন? মিন্টে 17 ...

# apt search vfb
p   xvfb                            - Virtual Framebuffer 'fake' X server
p   xvfb:i386                       - Virtual Framebuffer 'fake' X server

Https://en.wikedia.org/wiki/Xvfb তে বর্ণিত ডেস্কটপটি দেখতে আপনি ভিএনসি ব্যবহার করবেন


আমি Usage scenariosউইকির লিঙ্কটিতে পড়েছি এবং আমি মনে করি না যে এখানে কোনও প্রয়োগ হয় apply প্রক্রিয়াটির (অমরোক) কেবল কিছু অনুমতি দরকার, এবং এমনকি যদি সম্ভব হয় তবে সেগুলি কীভাবে সেট করা যায় সে সম্পর্কে আমার কোনও ধারণা নেই।
মিখাইল মরফিকভ

আপনার কী অনুমতি দরকার বলে মনে করেন? আমি অত্যন্ত সন্দেহ করি যে সিস্টেমটি ডিভাইসগুলিতে অনুমতিগুলি পরিবর্তন করছে কেবলমাত্র আপনি টিটি'র স্যুইচ করার কারণে এবং যদি এটি হয় তবে আমি এখন থেকে প্লেগের মতো এড়াতে যথাসাধ্য চেষ্টা করব। আমি জানি না যে এটি আপনাকেও সহায়তা করবে, আমি এটি পরীক্ষা করিনি, তবে আমার একমাত্র ধারণা এটির কাজ করার সুযোগ রয়েছে। এছাড়াও, ব্যবহারকারীর অনুমতি আছে, প্রক্রিয়া নয়।
ধূমপান 2345

শুধু প্রশ্নের প্রথম লিঙ্কটি পড়ুন।
মিখাইল মরফিকভ

0

পলসৌদিওটি এক্সডিজি অটোস্টার্টের মাধ্যমে শুরু করা হয়েছে যা নীচে পাওয়া যাবে ~/.config/autostart/। এখানে একটি ফাইল আছে pulseaudio.desktop, এবং সেই ফাইলে আমি ডিফল্ট execলাইনটি এটিকে পরিবর্তন করেছি :

Exec=/usr/bin/sg audio -c "pulseaudio -D"

আমি সিস্টেমে লগইন করার সময়, পালসওদিও প্রক্রিয়াটি এরকম দেখাচ্ছে:

$ ps -eo user,group,args | grep pulse
morfik   audio    pulseaudio -D
morfik   audio    /usr/lib/pulseaudio/pulse/gconf-helper

এবং এখন আমি সমস্ত সময় সঙ্গীত শুনতে সক্ষম হয়েছি। আমি মনে করি এটিই আমি সমাধান খুঁজছিলাম।

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