রুট অ্যাক্সেস সহ একটি সিস্টেমড পরিষেবা কীভাবে সেটআপ করবেন?


1

বিবরণ

আমি তাপীয় প্রিন্টার ব্যবহার করে কিছু মুদ্রণের জন্য পাইথন স্ক্রিপ্ট চালানোর জন্য একটি সিস্টেমড সার্ভিস ফাইল তৈরি করার চেষ্টা করছি। এস্কপোস হ'ল লাইব্রেরি যা আমি তাপীয় প্রিন্টারের নিয়ন্ত্রণ অ্যাক্সেস করতে ব্যবহার করছি is তবে এসএসপোসের ইউএসবি ডিভাইসটি অ্যাক্সেস করতে সুডোর প্রয়োজন।

প্রশ্ন

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

কোড

পাইথন

ফাইল: / usr / local / etc / test / test মুদ্রণ.পি

from escpos.printer import Usb
#require escpos use "pip install python-escpos" to install the library
""" Seiko Epson Corp. Receipt Printer (EPSON TM-T88III) """
p = Usb(0x4b43, 0x3538, 0, 0x82, 0x02)
p.text("Hello World\n")
p.text("\n\n\n")
p.cut()

আমি sudo python3 /usr/local/etc/test/testPrint.pyকোনও প্রকার সমস্যা ছাড়াই তাপ প্রিন্টার থেকে পাঠ্যটি প্রিন্ট করতে এবং মুদ্রণ করতে পারি ।

পরিষেবা ফাইল

ফাইল: /etc/systemd/system/testPress.service

[Unit]
Description=Test Python escpos print
After=network.target
[Service]
Type=oneshot
ExecStart=/usr/bin/python3 /usr/local/etc/test/testPrint.py
[Install]
WantedBy=multi-user.target

এবং আমি কমান্ড চালানোর চেষ্টা করার সময় sudo systemctl start testPrint.service। এটি ত্রুটি দেয়

ত্রুটি লগ

আদেশ sudo journalctl -u testPrint.service:

python3.5[27149]: Traceback (most recent call last):
python3.5[27149]:   File "/usr/local/etc/test/testPrint.py", 
python3.5[27149]:     from escpos.printer import Usb
python3.5[27149]: ImportError: No module named 'escpos'
systemd[1]: testPrint.service: Main process exited, code=exit
systemd[1]: Failed to start Test python escpos print.
systemd[1]: testPrint.service: Unit entered failed state.
systemd[1]: testPrint.service: Failed with result 'exit-code'

কোনটি একই ত্রুটি, যদি আমি সুডো "পাইথন 3 মুদ্রণযোগ্য টেস্ট.পি " ছাড়াই পাইথন চালাই

সম্পাদনা:

শুধু কিছু অতিরিক্ত তথ্য দিতে। মডিউলটি ইনস্টল করার জন্য আমি সুডো পাইপ 3 ইনস্টল পাইথন-এস্কপোস ব্যবহার করি । আমার ওএস হ'ল উবুন্টু 16.04


2
আপনি কীভাবে ইনস্টল করলেন escpos? sudo pip3 install escposবা pip3 install escpos? অথবা এটি কোনও ভার্চুয়ালনেভে ছিল যা আপনি এস্কপোসের জন্য ব্যবহার করেছিলেন? কারণ sudo pip3 installএটি ব্যবহার করতে সক্ষম হওয়ার জন্য আপনার মডিউল ইনস্টলড সিস্টেমওয়াইডের প্রয়োজন escpos
থমাস ওয়ার্ড

আমি ব্যবহার পাইথন-escpos ইনস্টল উবুন্টু pip3 গ্রন্থাগার ইনস্টল করতে
Wan, চ্যাপ

2
উবুন্টুকে জিজ্ঞাসা করুন স্বাগতম ! দয়া করে প্রশ্নের সমাধানটি রাখবেন না। পরিবর্তে নীচের উত্তর ক্ষেত্রটি ব্যবহার করুন। Askubuntu.com/help/self-answer এছাড়াও শিরোনামে " সলভড " যুক্ত করবেন না । জন্য আপনার প্রশ্নের চিহ্নিত করতে মীমাংসিত সঠিক ভাবে, আপনি পারে গ্রহণ উত্তর আপনি যে সাহায্য (টিক চিহ্ন (✓) পরবর্তী এটি ক্লিক করে)। আপনার পক্ষে সহায়ক উত্তর পোস্ট করার ক্ষেত্রে এটি গ্রহণে সক্ষম হওয়ার আগে আপনাকে 2 দিন অপেক্ষা করতে হবে।
মেলিবিয়াস

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

উত্তর:


0

আমি সমস্যা সমাধান করেছেন।

এই বাগটি মূল অনুমতি দ্বারা হয় না, বরং এস্কপস মডিউলটি রুট ব্যবহারকারীর অধীনে সঠিকভাবে ইনস্টল হয় না। আমি সমস্ত কোড দ্বারা এস্কপোস পুনরায় ইনস্টল করার পরে sudo pip3 install python-escposসেই অনুযায়ী কাজ করে এবং পাঠ্যটি মুদ্রণ করতে সক্ষম হয়েছি।

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