সংক্রমণ: ইউএসবি ডিস্কে অনুমতি অস্বীকৃত


22

আমার কাছে রাস্পবেরি পাই ইউএসবি ব্যবহার করে সংযুক্ত একটি ডাব্লুডি মাইবুকের সাথে রাস্পবিএমসি চলছে। ড্রাইভটি স্বয়ংক্রিয়ভাবে মাউন্ট করা হয় /media/My Book। আমি একটি ফোল্ডার তৈরি করেছি /media/My Book/downloadsএবং আমি ট্র্যাশিশনের ডাউনলোড ডিরেক্টরি হতে সেট করেছি /media/My Book/downloads

আমি যখন কোনও ফাইল ডাউনলোড করার চেষ্টা করি তখন ট্রান্সমিশন বলে

Error: Permission denied (/media/My Book/downloads/The.Simpsons.S24E09.720p.HDTV.X264-DIMENSION [PublicHD]/The.Simpsons.S24E09.720p.HD

আমাকে দেয়

drwx------ 1 pi       0 Dec 15 16:24 downloads 

সুতরাং আমি অনুমান করি যে সমস্যাটি হ'ল সংক্রমণটি বিভিন্ন ব্যবহারকারীর অধীনে চলে piএবং ফোল্ডারে লিখতে পারে না। তবে আমি যখন মৃত্যুদন্ড কার্যকর করি

chmod 777 downloads -R

অপারেশনগুলি কোনও ত্রুটি ছাড়াই সফল হয় তবে অনুমতিগুলি পরিবর্তন হয় না, তারা কেবল মালিকের জন্য 700 থাকে।

আমি কী ভুল করছি এবং কীভাবে আমি সেই ডিরেক্টরিতে লেখার জন্য ট্রান্সমিশন সক্ষম করতে পারি?

উত্তর:


19

প্রচুর পড়া এবং হতাশার পরে। প্রথমত, নিশ্চিত হয়ে নিন যে সাধারণ ব্যবহারকারী ইউএসবি ড্রাইভে অ্যাকসেস পড়েছেন এবং লিখেছেন। ইউএসবি ড্রাইভে লেখার অ্যাক্সেসের জন্য সঠিক 'নন-রুট' ফিক্সটি হ'ল:

পদক্ষেপ 1: ট্রান্সমিশন ডেমন বন্ধ করুন

sudo service transmission-daemon stop

পদক্ষেপ 2: piডিবিয়ান-ট্রান্সমিশন গ্রুপে যুক্ত করুন

sudo usermod -a -G debian-transmission pi 

পদক্ষেপ 3: ডেমন-ব্যবহারকারী পরিবর্তন করা

sudo nano /etc/init.d/transmission-daemon

পরিবর্তন USERকরুন pi

পদক্ষেপ 4 কনফিগারেশন ফাইল ফোল্ডারের অধিকার পরিবর্তন করুন

sudo chown -R pi /var/lib/transmission-daemon/info/
sudo chmod 755 /var/lib/transmission-daemon/info/settings.json 

পদক্ষেপ 5: ডাউনলোড / অসম্পূর্ণ ফোল্ডারগুলির জন্য সঠিক অনুমতিগুলি সেট করুন

sudo chown -R pi /somewhere/downloads
sudo chown -R pi /somewhere/incomplete

পদক্ষেপ 5: সঞ্চালন ডেমন শুরু করুন

sudo service transmission-daemon start

থেকে সংকলিত:


2
এটিই একমাত্র সঠিক উত্তর। হিসাবে দৌড়ানো rootভুল। একটি chmod 777করা ভুল। সঠিক গোষ্ঠী এবং ব্যবহারকারী সেট করা একমাত্র সঠিক উপায়।
কাজিনকোচেন

এটি গ্রহণযোগ্য উত্তর হওয়া উচিত।
পাওলো রডরিগেস পিন্টো

1
হতে পারে এটি সঠিক উত্তর তবে এটি আমার পক্ষে কার্যকর নয়।
রেবলেক

আমি আমার ব্যবহারকারীর নাম থেকে piঅন্য কোনও নামকরণ করেছি । যাইহোক, যখন আমি ls -alএটি করি আমার ফাইলগুলি এখনও একটি piগ্রুপে রয়েছে। উপরোক্ত নির্দেশাবলীর সাথে, আমি কি আমার প্রতিটি piব্যবহারকারীর নামটি আমার নতুন ব্যবহারকারীর সাথে পরিবর্তন করব, বা যে গোষ্ঠীটি এখনও রয়েছে তার কোনও উল্লেখ করব pi? আমি যখন প্রতিটি piআমার ব্যবহারকারীর নাম পরিবর্তন করেছি তখন এই নির্দেশাবলী কার্যকর হয় না ।
কেভন

@ কেভন "কি পাই এর প্রতিটি উদাহরণ আমার নতুন ব্যবহারকারীর" হ্যাঁ, ডিবিয়ান-ট্রান্সমিশন গ্রুপে নতুন ব্যবহারকারী?
বাইকটিয়ার

11

সমস্যাটি ছিল ইউএসবি ডিস্কটি স্বয়ংক্রিয়ভাবে চালিত হয়েছিল। আমি মাউন্ট -t ntfs-3g এর সাহায্যে এটি ম্যানুয়ালি স্থাপন করেছি এবং এটি কাজ শুরু করে।


4
আমার ক্ষেত্রেও তাই হয়েছিল। এইচডিডি অটো-মাউন্ট করা সহ সমস্ত অনুমতিগুলি 0700 এ সেট করা হয়েছিল তবে sudo mount -t ntfs-3g -o uid=pi,gid=pi /dev/sda1 /media/HDD/এগুলি মাউন্ট করা 0777 এবং সংক্রমণ পুরোপুরি কার্যকর হয়, সত্যই অদ্ভুত।
পুইগারবার

আমার এক্সফ্যাটটি স্বয়ংক্রিয়ভাবে মাউন্ট করছিল exfat defaults,auto,umask=000,users,rw 0 0, আমি এটি piব্যবহারকারীর আইডি দিয়ে মাউন্ট করতে পেরেছিলাম exfat defaults,uid=1000,gid=1000 0 0এবং এটি কার্যকর হয়েছে। এই AskUbuntu জবাবটি দেখুন: মালিকানা /
এক্সট্যাট

10

আমি কোনও লিনাক্স বিশেষজ্ঞ নই, তবে আপনি এটি চেষ্টা করতে পারেন, কাজ করতে পারে। এর বেশিরভাগ তথ্যই http://www.superfecta.ca/?p=44 থেকে এসেছে

sudo service transmission-daemon stop
sudo nano /etc/init.d/transmission-daemon

পরিবর্তন

USER=debian-transmission

থেকে

USER=root
ctrl-x
Y
# hit enter to overwrite
sudo service transmission-daemon start

আমি জানি যে রুট হিসাবে চালানো একটি বড় লিনাক্স নং (নিশ্চিত না যে সেই শিকড়টিতে চলমান হিসাবে গণনা করা হয়) তবে এটি আমার পক্ষে কাজ করেছে তাই আমি এটির সাথে ভাল আছি। USER=piপরিবর্তে আপনি চেষ্টা করতে পারেন তবে আমি সেখানে কোনও ভালবাসা পাইনি, তাই আমি মূলের সাথে আটকেছি


3
অবশ্যই রুট হিসাবে কাজ করে, এটি কেবল একটি সুরক্ষা ঝুঁকি।
ব্লেজারব্লেড

যুক্ত করার মতো কিছু: ড্রাইভের মাউন্ট পয়েন্টস এবং অনুমতি / মালিকানা স্থাপনের জন্য লিনাক্স / etc / fstab ফাইল ব্যবহার করে। সুতরাং, আপনার কাছে তিনটি পছন্দ রয়েছে, মূল হিসাবে ট্রান্সমিশন চালান, ড্রাইভটি যেখানে থাকে সেই ফোল্ডারের মালিক হিসাবে ট্রান্সমিশন চালান ( ls -lযার মালিক এটি আপনাকে জানায়), বা অন্য মালিককে দেখানোর জন্য / ইত্যাদি / fstab ফাইলটি সংশোধন করুন (অর্থাত্ ডিবিয়ান- সংক্রমণ)।
টেরি

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

এটি ভুল এবং এর মতো ডেমনগুলি কখনই রুট সুবিধার সাথে চালানো উচিত নয় should আপনার এই উত্তরটি সরানো উচিত কারণ এটি অন্যান্য লোকের সেটআপটিকে ক্ষতিগ্রস্থ করবে।
কাজিনকোচেন

5

আমি বিশ্বাস করি যে আপনার সমস্যাটি হল আপনার ইউএসবি স্টিকটি এনএফটিএস বা FAT হিসাবে ফর্ম্যাট করা আছে, এমন ফাইল সিস্টেমগুলি যা প্রতি ব্যবহারকারী / গোষ্ঠী অনুমতিগুলি সমর্থন করে না। সমাধানটি ext4 হিসাবে পুনরায় ফর্ম্যাট করা। যদি আপনি এটি করেন, আপনি যদি মিডিয়া সেন্টার হিসাবে আপনার পাই ব্যবহার করে থাকেন তবে আপনারও অনেক কম পিছিয়ে যাবে। আপনি ext4 ব্যবহার করার সময় পাইগুলির ড্রাইভারগুলি আরও দ্রুত হয়।


এনটিএফএস -3 জি এর চেয়ে বেশি দ্রুত? আপনি এই বিবৃতি ব্যাক আপ করতে কিছু তথ্য প্রদর্শন করতে পারেন?
জোসেফ

@ জোসেফ এটি বেশিরভাগ ক্ষেত্রে রাস্পবেরি পাই 1 নিয়ে সমস্যা ছিল কারণ এনটিএফএস বেশ সিপিইউ-ভারী। স্থানান্তর গতির একটি মানদণ্ড এখানে: htpcguides.com/wp-content/uploads/2015/03/…
hifkanotiks

4

এখানে উত্তরগুলির কোনওটিই আমার পক্ষে কাজ করেনি, তাই আমি একটি নতুন রেফারেন্সিং লিখছি https://pimylifeup.com/raspberry-pi-torrentbox/ যা আমার জন্য দুর্দান্ত কাজ করেছে এবং আমাকে piআমার ইউএসবি ড্রাইভে অ্যাক্সেস করার জন্য ব্যবহারকারী হিসাবে সংক্রমণ চালানোর অনুমতি দিয়েছে । এটি সরাসরি ওপিটির উত্তর দিচ্ছে না তবে এই প্রশ্নটি এই ধরণের সমস্যার জন্য খুব জনপ্রিয় (প্রথম গুগল ফলাফল) তাই আমি এটি এখানে রেখেছি।

প্রবেশ করান:

sudo vi /etc/init.d/transmission-daemon

এবং USERফাইলের শীর্ষে সন্ধান করুন এবং এতে পরিবর্তন করুন:

USER=pi

তারপরে chownআমাদের অনুমতির সুযোগে কিছু ফাইলের দরকার :

sudo chown -R pi:pi /etc/transmission-daemon
sudo chown -R pi:pi /etc/init.d/transmission-daemon
sudo chown -R pi:pi /var/lib/transmission-daemon

এবং তারপরে চালান (এটি সত্যই গুরুত্বপূর্ণ অন্যথায় পরিষেবাটি থেকে ডেমনটি চলবে debian-transmission)

sudo vi /etc/systemd/system/multi-user.target.wants/transmission-daemon.service

এবং userসেখানে সন্ধান করুন এবং এতে পরিবর্তন করুন:

user=pi

এবং পরিষেবা ইউনিটটি পুনরায় লোড করুন

sudo systemctl daemon-reload

এবং শেষ অবধি আমাদের পাই সেটিংস ডিরেক্টরিতে আমাদের সেটিংস ফাইলটি সিমিলিংক করতে হবে এবং এটিকে অনুমতি দিতে হবে:

sudo mkdir -p /home/pi/.config/transmission-daemon/
sudo ln -s /etc/transmission-daemon/settings.json /home/pi/.config/transmission-daemon/
sudo chown -R pi:pi /home/pi/.config/transmission-daemon/

এবং তারপরে আবার সংক্রমণ শুরু করুন:

sudo service transmission-daemon start

এবং তুমি করে ফেলেছ. এটি এখন কাজ করা উচিত।


2

আমি মনে করি প্রধান জিনিষ মানুষ দেখা হয় এক যে আপনি উচিত আপনার USB / বহিরাগত ড্রাইভ মাউন্ট মধ্যে / mnt এবার / myUsbDrive ফোল্ডার এবং না মধ্যে / মিডিয়া / Pi / myUsbDrive।

sudo umount /media/pi/usb_disk
sudo mkdir /mnt/usb_disk
sudo mount -t ntfs-3g -o uid=pi,gid=pi /dev/sda1 /mnt/usb_disk

আমি এই আলোচনায় প্রদত্ত প্রতিটি উত্তর (রুট সহ) বিভিন্ন বিকল্প সহ একশত বিভিন্ন উপায়ে চেষ্টা করেছি এবং আমার ইউএসবি এসএসডি ড্রাইভে সংরক্ষণের জন্য ট্রান্সমিশন পেতে পারি না। তারপরে অন্যরকম কিছু পড়ার সময়, এটি / মিডিয়া / পাইতে মাউন্ট না করার কথা উল্লেখ করা হয়েছিল কারণ ডেমন বা অন্যান্য গোষ্ঠীর অ্যাক্সেস নাও থাকতে পারে। সুতরাং আমি ইউএসবি ড্রাইভকে / mnt / usb_disk এ মাউন্ট করে, /etc/transmission-daemon/settings.json এ / mnt / usb_disk / ডাউনলোডগুলিতে পাথ সেট করে ট্রান্সমিশনটি ডিস্কে সংরক্ষণ শুরু করি।

এফওয়াইআই, আমার কাছে /etc/init.d/transmission-daemon- এ ব্যবহারকারী = পাই আছে।

এফওয়াইআই, আমি / এমএনটি / ইউএসবি_ডিস্ক / ডাউনলোডের মালিককে পাই এবং গ্রুপে ian 777 অনুমতি নিয়ে ডিবিয়ান ট্রান্সমিশনে পরিবর্তন করেছি।


1
sudo chown debian-transmission /downloads

যেখানে ডাউনলোডগুলি আপনার ডাউনলোডগুলিতে (বা মাউন্টের অবস্থান) থাকতে চান is

এটি রুট ব্যবহারের চেয়ে নিরাপদ।

এটি 'ব্যবহারকারীকে ফোল্ডারের' ডিবিয়ান-ট্রান্সমিশন 'হিসাবে অধিকার দেয়


1

আমি ইগর এবং পুইগারবারের মতো একই সমাধান পেয়েছি। আমার ড্রাইভটি অটো মাউন্টে সেট করা হয়েছিল, তাই আমি স্বতঃআઉન્ટটি সরানোর জন্য আমার fstab সম্পাদনা করেছি, তারপরে ব্যবহৃত হবেsudo mount -t vfat -o uid=pi,gid=pi /dev/sda1 /media/*mymountpoint/


1

বাইকটিয়ারের উত্তরটি সঠিক ডিবিয়ানটি সম্প্রতি সিস্টেমেডে স্যুইচ করা হয়েছে এবং আপনাকে এখন এখানে ব্যবহারকারী পরিবর্তন করতে হবে

sudo nano /etc/systemd/system/multi-user.target.wants/transmission-daemon.service

এবং বিভাগে তা নিশ্চিত করুন

[Service]

তোমার লাইন আছে

User=pi

1

সমাধান:

অনেক পড়া আর হতাশার পরে।

প্রথমত, নিশ্চিত হয়ে নিন যে সাধারণ ব্যবহারকারীর ইউএসবি ড্রাইভে অ্যাক্সেস পড়েছে এবং লিখেছে। ইউএসবি ড্রাইভে লেখার অ্যাক্সেস থাকার জন্য সঠিক 'নন-রুট' ফিক্সটি হ'ল:

পদক্ষেপ 1: ট্রান্সমিশন ডেমন বন্ধ করুন

sudo service transmission-daemon stop

পদক্ষেপ 2: ডিবিয়ান-সংক্রমণ গোষ্ঠীতে পাই যুক্ত করুন

sudo usermod -a -G debian-transmission pi

পদক্ষেপ 3: ডেমন-ব্যবহারকারী পরিবর্তন করা

sudo nano /etc/init.d/transmission-daemon

ব্যবহারকারীকে পাইতে পরিবর্তন করুন।

sudo nano /etc/systemd/system/multi-user.target.wants/transmission-daemon.service

ব্যবহারকারীকে পাইতে পরিবর্তন করুন।

পদক্ষেপ 4: কনফিগারেশন ফাইল ফোল্ডারের অধিকার পরিবর্তন করুন sudo chown -R pi /var/lib/transmission-daemon/info/ sudo chmod 755 /var/lib/transmission-daemon/info/settings.json

পদক্ষেপ 5: ডাউনলোড / অসম্পূর্ণ ফোল্ডারগুলির জন্য সঠিক অনুমতিগুলি সেট করুন sudo chown -R pi /somewhere/downloads sudo chown -R pi /somewhere/incomplete

পদক্ষেপ:: সঞ্চালন ডেমন শুরু করুন

sudo service transmission-daemon start


1

আমি খুঁজে পেয়েছি যে ফাইল সিস্টেমটি আমার জন্য সমস্যা। ভাগ্যক্রমে এটি একেবারে নতুন ইউএসবি হার্ড ড্রাইভ ছিল তাই এটির বিন্যাস করার কোনও সমস্যা ছিল না।

আমি প্রথম হার্ড ড্রাইভটি এক্সটোর 4 এ ফর্ম্যাট করেছি

sudo mkfs.ext4 /dev/<usb disk> -L <diskname>

তারপরে আমি ইউএসবি হার্ড ড্রাইভটি মাউন্ট করেছিলাম

sudo mount /dev/<usb disk> /mnt/<my mount folder>

একবার মাউন্ট হয়ে গেলাম আমি হার্ড ড্রাইভের জন্য গ্রুপটি পরিবর্তন করেছি debian-

sudo chgrp debian-transmission /mnt/rpi_nas/

শেষ পর্যন্ত আমি পাই ব্যবহারকারীকে ডেবিয়ান-ট্রান্সমিশন গ্রুপে যুক্ত করেছি এবং এটি আমার ব্যবহারের ক্ষেত্রে দুর্দান্ত কাজ করেছে।


0

একবার আপনি ট্রান্সমিশন-ডেমন ব্যবহারকারীকে অনুমতিগুলি রুট করার জন্য পরিবর্তন করলে কোনও ইউএসবি বা এসএমবি শেয়ার দিয়ে চলে যায়।

sudo Nano /etc/init.d/transmission-deemon

তারপরে ব্যবহারকারী লাইনটি এতে পরিবর্তন করুন:

USER কে = রুট


7
এটি একটি সুরক্ষা ঝুঁকি।
ব্লেজারব্লেড

এটি ভুল এবং এর মতো ডেমনগুলি কখনই রুট সুবিধার সাথে চালানো উচিত নয় should আপনার এই উত্তরটি সরানো উচিত কারণ এটি অন্যান্য লোকের সেটআপটিকে ক্ষতিগ্রস্থ করবে।
কাজিনকোচেন

0

সমস্যাটি একাধিক ব্যবহারকারীকে স্বীকৃতি না দেওয়ার সাথে FAT সম্পর্কিত।

আপনি যদি আপনার fstab ফাইলে কোনও লাইন ব্যবহার করেন যেমন / dev / [আপনার দেব] / mnt / usb1 ভিফ্যাট ডিফল্ট, uid = 65534, জিড = 65534, dmask = 000, fmask = 111 0 0

এটি আপনার ফাইল সিস্টেমটি 77 777 ফোল্ডার এবং roup "হিসাবে" নোগ্রুপ "এর মালিকানাধীন" কেউ নয় "এর মালিকানাধীন ফাইলগুলি সহ মাউন্ট করা উচিত

পরিবর্তনগুলি দেখার জন্য আপনাকে পুনরায় মাউন্ট (বা রিবুট) করতে হবে।


0

অবশেষে একটি কার্যকরী সমাধান খুঁজে পেয়েছি।

আমি এক্সবিআইএএন সেটিংসে অপসারণযোগ্য ডিভাইসগুলিকে অটোশেয়ারিং চালু করে দিয়েছিলাম এবং হাতে ডিস্কটি শেয়ারকনফের সাথে যুক্ত করেছি

[mybook]
    path = /media/mybook
    guest ok = yes
    read only = no
    browseable = yes
    writeable = yes
    force user = xbian

কেবল এটি শেয়ারডকনফ এ যুক্ত করা যথেষ্ট নয়, অটোশেয়ারিং বন্ধ করতে হবে।


0

আমারও অনুরূপ অনুমতি সমস্যা ছিল।

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

আমার পরিস্থিতিতে আমি সাধারণভাবে ট্রান্সমিশন-ডেমনটি ব্যবহারকারী হিসাবে চলছে: এটিকে উপেক্ষা করেছি : ডেবিয়ান-ট্রান্সমিশন

সুতরাং কোনও ফোল্ডারে ( ফোল্ডার_নাম ) লিখতে ট্রান্সমিশন-ডেমনটির অনুমতি দেওয়ার জন্য আপনাকে কেবল নিম্নলিখিত কমান্ডগুলি করতে হবে:

chgrp -R folder_name
chmod -R 765 folder_name

অবশ্যই এই অভিমানী হয় যে আপনি সঠিকভাবে কনফিগার করেছেন settings.json ইতিমধ্যে


-1

chmod 777 প্রত্যেক ব্যবহারকারীকে একটি ফাইল বা ডিরেক্টরিতে সমস্ত অনুমতি দেওয়া উচিত। যদি এটি কাজ না করে, সম্ভবত যে ব্যবহারকারীর chmod কমান্ডটি কার্যকর করে তার ডিরেক্টরি বা ফাইলের মালিকানা নেই। উদাহরণস্বরূপ, রুট যদি মালিক / মিডিয়া / মাই বুক / এবং পাই ব্যবহারকারী তার ফাইলটির অনুমতি পরিবর্তন করতে সক্ষম না হয়। Chmod কমান্ডে আপনি যে তিনটি সংখ্যাটি পাস করেন সেগুলি মালিক, গোষ্ঠী এবং অন্য সবাইকে সেই ক্রমে প্রভাবিত করে। সুতরাং ডিরেক্টরিগুলির জন্য সর্বাধিক সাধারণ সেটিংস হ'ল "chmod 755 somed ডিরেক্টরি"। তার মানে মালিক পড়তে, লিখতে এবং ডিরেক্টরিতে পরিবর্তন করতে পারে তবে গ্রুপ এবং অন্য সবাই কেবল ফাইল পড়তে পারে এবং ডিরেক্টরিতে পরিবর্তন করতে পারে।


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