কোনও ফাইলে chmod প্রয়োগ করতে পারবেন না


18

আমার এইচডিডি-তে একটি ফাইল রয়েছে,

cd /media/celebisait/5AC69788C6976355

আমার ফাইল আছে myFile.tar.gz। আমি একটি করি ls -l,

-rw------- 2 celebisait celebisait  1387745311 Jun  6  2013 myFile.tar.gz

সবকিছু ঠিক আছে মনে হচ্ছে। যাইহোক, আমি যখন করি,

$ sudo chmod 755 myFile.tar.gz

আমার কোনও ত্রুটি নেই তবে কিছুই হয় না, অর্থাত্ যখন আমি ls -lআবার করি, আমি একই আউটপুট পাই,

-rw------- 2 celebisait celebisait  1387745311 Jun  6  2013 myFile.tar.gz

চোদম বদলে না .. কেন?

PS: আমি উবুন্টু 13.04 ব্যবহার করি।

সম্পাদনা:

$ cd /media/celebisait/5AC69788C6976355
$ df

Filesystem     1K-blocks      Used Available Use% Mounted on
/dev/sda2       89873576  42976028  42325544  51% /
none                   4         0         4   0% /sys/fs/cgroup
udev            16436736         4  16436732   1% /dev
tmpfs            3289260       920   3288340   1% /run
none                5120         0      5120   0% /run/lock
none            16446280       764  16445516   1% /run/shm
none              102400        52    102348   1% /run/user
/dev/sda1          94759      2208     92551   3% /boot/efi
/dev/sdb1      767999996 541212516 226787480  71% /media/celebisait/5AC69788C6976355
/dev/sdb2      767999996   1466472 766533524   1% /media/celebisait/54D09DBDD09DA5B0

সম্পাদনা 2:

$ cd /media/celebisait/5AC69788C6976355
$ mount

/dev/sda2 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
none on /sys/firmware/efi/efivars type efivarfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
/dev/sda1 on /boot/efi type vfat (rw)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
gvfsd-fuse on /run/user/celebisait/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=celebisait)
/dev/sdb1 on /media/celebisait/5AC69788C6976355 type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)
/dev/sdb2 on /media/celebisait/54D09DBDD09DA5B0 type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)

সম্পাদনা 3:

$ sudo fdisk -l /dev/sdb1

Disk /dev/sdb1: 786.4 GB, 786432000000 bytes
255 heads, 63 sectors/track, 95611 cylinders, total 1536000000 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x6e697373

This doesn't look like a partition table
Probably you selected the wrong device.

     Device Boot      Start         End      Blocks   Id  System
/dev/sdb1p1   ?  1936269394  3772285809   918008208   4f  QNX4.x 3rd part
Partition 1 does not start on physical sector boundary.
/dev/sdb1p2   ?  1917848077  2462285169   272218546+  73  Unknown
Partition 2 does not start on physical sector boundary.
/dev/sdb1p3   ?  1818575915  2362751050   272087568   2b  Unknown
Partition 3 does not start on physical sector boundary.
/dev/sdb1p4   ?  2844524554  2844579527       27487   61  SpeedStor
Partition 4 does not start on physical sector boundary.

Partition table entries are not in disk order

সম্পাদনা 4:

$ sudo fdisk -l /dev/sdb

Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x9c73d093

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048  1536002047   768000000    7  HPFS/NTFS/exFAT
/dev/sdb2      1536002048  3072002047   768000000    7  HPFS/NTFS/exFAT
/dev/sdb3      3072002048  3907026943   417512448    7  HPFS/NTFS/exFAT

বাহ্যিক ড্রাইভের ফাইল সিস্টেমটি কী? dfকমান্ড ফলাফলটি দুর্দান্ত হবে
কিউই

আপনার যদি ফাইল এবং ডিরেক্টরিটির মালিকানা থাকে তবে এটি মাউন্ট করার পদ্ধতিটির উপর নির্ভর করে (কেবলমাত্র পড়তে হবে? রুটস্ক্যাশ?) সম্ভবত এটি সিডি বা রক্ষিত ইউএসবি স্টিক রচনা?
এক্স টিয়ান

@ কিউই আমি এর আউটপুট যুক্ত করেছি df
Sait

@ ব্রায়াম কীভাবে mount?
Sait

এর আউটপুট পোস্ট করুন blkid
অবিনাশ রাজ

উত্তর:


15

টি এল; ডিআর;

দ্রষ্টব্য: নতুন তথ্য দিয়ে ওপি কর্তৃক প্রশ্নটির অবিচ্ছিন্ন আপডেটের ভিত্তিতে এটি নির্ধারিত হয়েছিল যে সমস্যাটি তিনি একটি এনটিএফএস বিভাজনে আসছিলেন। সুতরাং নীচে # 3 তার সমস্যার আসল উত্তর। আমি অন্যান্য 2 টি পদ্ধতি অন্যদের জন্য এখানে রেখেছি যা একই জাতীয় সমস্যাগুলির মুখোমুখি হতে পারে যা কোনও এনটিএফএস পার্টিশন ব্যবহার করে না।


আইডিয়া # 1 - মিডিয়ায় কেবল পঠনযোগ্য (আইএসও / সিডি / ডিভিডি)?

mountকমান্ডের আউটপুটটি দেখুন , বিশেষত এরকম কিছু:

$ mount | grep '/media'

যে ডিভাইসটির নীচে মাউন্ট করা হয়েছে /media/celebisaitতা সম্ভবত আইএসও ফাইল বা সিডি / ডিভিডি মিডিয়া। এই ক্ষেত্রে আপনি কেবল লেখার অ্যাক্সেস অর্জন করতে সক্ষম হবেন না কারণ এগুলি সাধারণত পাঠযোগ্য read

mountকমান্ডের আউটপুটটিতে আবার ঘুরিয়ে আপনি কী পড়তে / লিখতে বনাম পড়তে পারেন তা বলতে পারেন ।

উদাহরণ

/dev/mapper/fedora_greeneggs-root on / type ext4 (rw,relatime,seclabel,data=ordered)

প্রথম বন্ধনে আউটপুট লক্ষ্য করুন। প্রথম কমা হওয়ার আগে প্রথম যুক্তিটি হ'ল rwযা পঠন / লেখার অ্যাক্সেসকে বোঝায়। এটি যদি কেবল পঠনযোগ্য ডিভাইস হয় তবে roতার পরিবর্তে এটি থাকত ।

বিকল্প পদ্ধতি

df -h .কমান্ডটি ব্যবহার করে আপনার এইচডিডি তে নির্দিষ্ট অবস্থানটি কোন ডিভাইস থেকে উত্সাহিত করা হয়েছে তাও আপনি জানতে পারেন । এটি আপনাকে বর্তমান ডিরেক্টরিটির উত্স ডিভাইসটি দেখায়।

$ df -h .
Filesystem                         Size  Used Avail Use% Mounted on
/dev/mapper/fedora_greeneggs-home  402G  156G  226G  41% /home

এখানে আমরা দেখতে পাচ্ছি যে আমি কোনও ডিরেক্টরি / উপ-ডিরেক্টরিতে আছি /homeযা মাউন্টের অংশ , যা ডিভাইস দ্বারা সমর্থিত /dev/mapper/fedora_greeneggs-home

ডিভাইসের নামের সাথে আপনি তারপরেও এর আউটপুটটিতে সন্ধান করতে পারেন mount

উদাহরণ

$ mount | grep '/dev/mapper/fedora_greeneggs-home'
/dev/mapper/fedora_greeneggs-home on /home type ext4 (rw,relatime,seclabel,data=ordered)

আইডিয়া # 2 - তবে ডিভাইসটি পড়তে / লেখার জন্য মাউন্ট করা হয়!

যদি আপনি দেখতে পান যে আপনার ডিভাইসটি পড়তে / লেখার জন্য মাউন্ট করা থাকে তবে আপনি পাইএসডিএম ইনস্টল করার চেষ্টা করতে পারেন - স্টোরেজ ডিভাইস ম্যানেজার যা ম্যানুয়াল অ্যাক্সেস ছাড়াই হার্ড ডিস্ক মাউন্টপয়েন্টগুলিকে সম্পূর্ণ কাস্টমাইজেশনের অনুমতি দেয় /etc/fstab। এটি udevস্টোরেজ ডিভাইসের গতিশীল কনফিগারেশনের বিধি তৈরি করার অনুমতি দেয়

পড়তে / লিখতে পদক্ষেপ

  1. ফিজিক্যাল স্টোরেজ ডিভাইস ম্যানেজার ইনস্টল করুন: sudo apt-get install pysdm
  2. স্টোরেজ ডিভাইস ম্যানেজারটি খুলুন: sudo pysdm
  3. আপনার প্রয়োজনীয় ড্রাইভ চয়ন করুন
  4. প্রেস সহায়তা
  5. খালি খালি খালি পড়ার মতোই
  6. ফাইল সিস্টেমের মালিক ব্যবহারকারী পরীক্ষা করুন এবং আপনার ব্যবহারকারী নাম লিখুন: celebisait
  7. ঠিক আছে টিপুন
  8. চাপ প্রয়োগ
  9. অমাউন্ট ড্রাইভ
  10. এটি মাউন্ট

উত্স: আমি কীভাবে বাহ্যিক ড্রাইভে অনুমতিগুলি পরিবর্তন করতে পারি?

আইডিয়া # 3 - এনটিএফএস পার্টিশন

আপনি কমান্ডের জন্য পোস্ট করেছেন আউটপুট উপর ভিত্তি করে:

$ sudo fdisk -l /dev/sdb

...
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048  1536002047   768000000    7  HPFS/NTFS/exFAT

আপনার কাছে এনটিএফএস পার্টিশন রয়েছে, যা chmodএনটিএফএস মাউন্ট করা পার্টিশন (গুলি) -এ কেন আপনি ফাইলগুলি সক্ষম করতে পারছেন না তা ব্যাখ্যা করে । আপনি যদি ntfs-3gএনটিএফএস বিভাজনটি অ্যাক্সেস করার জন্য মডিউলটি ব্যবহার করেন তবে আপনার ডিস্কটি পড়তে / লিখতে সক্ষম হওয়া উচিত, কেবলমাত্র সরঞ্জামগুলির ইউনিক্স স্যুট ব্যবহার করে এর অনুমতিগুলি প্রভাবিত করবেন না।


2
আমি celebisaitতার ব্যবহারকারীর নাম মনে করি ।
অবিনাশ রাজ

@ অভিনাশরাজ, হ্যাঁ এটি সত্য। :)
Sait

আমি মনে করি না আইডিয়া # 1 মূলত প্রদত্ত তথ্যের সাথে মেলে - কেবল পঠনযোগ্য ফাইল সিস্টেমে কোনও ফাইল chmod করার চেষ্টা করার ফলে একটি ত্রুটির (EROFS) হওয়া উচিত। আইডিয়া # 2 আসলে কী সম্পাদন করে আমি তা নিয়ে বিভ্রান্ত হয়েছি। এটি ফাইল সিস্টেম রিডিং / রাইটিংকে পুনঃনির্মাণের অভিনব উপায় বলে মনে হচ্ছে - তবে আপনি বলছেন যে এটি ফাইল সিস্টেমটি ইতিমধ্যে পঠন-লিখনের ক্ষেত্রে প্রযোজ্য ।
নেট এল্ডারেজ

@ নেটএলড্রেডজ - এই প্রশ্নটির শুরুতে ঠিক কী চলছে তা খুব স্পষ্ট ছিল না, সুতরাং আমার 1 ম পরামর্শটি কীভাবে ডিভাইসটি মাউন্ট করা হয়েছিল তা প্রতিষ্ঠিত করার জন্য ছিল। আমার ২ য় পদ্ধতিটি আমি আমার ইউএসবি এমপি 3 প্লেয়ারের অনুমতিগুলি স্থির করতে ব্যক্তিগতভাবে ব্যবহার করেছি যা মাঝেমধ্যে নটিটিলাসে কেবল পাঠ্য হিসাবে প্রদর্শিত হয় shows ওপি কীভাবে বর্ণনা করে তার সাথে ফাইলগুলি একই রকম প্রদর্শিত হয় এবং আমি সমস্যাটি সমাধানের জন্য পাইএসডিএম ব্যবহার করি। বিষয়টি কেবল এফএসকে আরও হিসাবে স্থাপন করা নয়, এমপিথ্রি প্লেয়ারের পার্টিশনটি কেবল পাঠযোগ্য মোডে রাখা হয়েছে, এবং তবুও এটি আরডাব্লু মাউন্ট করা হয়েছে।
SLM

7

যেমন আপনি একটি এইচডিডি উল্লেখ করছেন।
আমার উত্তরটি হ'ল chmodএনটিএফএস বা FAT32 পার্টিশনের কোনও ফাইলের পক্ষে এটি সম্ভব নয় ।
বস্তুত মত শুধুমাত্র ইউনিক্স / লিনাক্স ফাইল সিস্টেম ext3, ext4সেই বৈশিষ্ট্যাবলী সমর্থন করি।

/dev/sdb1            2048  1536002047   768000000    7  HPFS/NTFS/exFAT

এটি পরিষ্কারভাবে দেখায় যে /dev/sdb1এটি একটি এনটিএফএস বিভাজন ছিল।


1
আপনি কীভাবে জানেন যে এটি এনটিএফএস? সম্ভবত এটি কিন্তু আপনি প্রশ্ন থেকে অনুমান করতে পারবেন না
কিউই

@ কিউই এটির উত্তরগুলির তুলনায় প্রকৃতপক্ষে সম্ভবত আরও বেশি সম্ভাবনা রয়েছে কারণ ওপি এইচডিডি উল্লেখ করেছে।
জোসেফ আর।

5
/dev/sdb1            2048  1536002047   768000000    7  HPFS/NTFS/exFAT

/dev/sdb1 on /media/celebisait/5AC69788C6976355 type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)

fuseblkFdisk এর ধরণ এবং আউটপুট নির্দেশ করে যে আপনার পার্টিশনটি একটি এনটিএফএস পার্টিশন। এগুলি ইউএনএক্স / লিনাক্স ফাইল অনুমতি স্কিমকে অন্যান্য * এনআইএক্স নেটিভ ফাইল সিস্টেম হিসাবে সমর্থন করে না।

সমাধানটি কেবলমাত্র একটি ফাইল সিস্টেমে ফাইলটিকে সরিয়ে নিয়েছে যা আপনার মূলের মতো এই অনুমতিগুলি সমর্থন করে। আপনি যেভাবে এটি করতে চান তা কেবল কার্যকর হবে না।

cp /media/celebisait/5AC69788C6976355/myFile.tar.gz ~/
chmod 755 ~/myFile.tar.gz
ls -l ~/myFile.tar.gz

1

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

sudo mount -t ntfs -o gid=46,fmask=0003,dmask=0002 /dev/sdb1 /media/DATAPART1

মাউন্ট ম্যান পৃষ্ঠা যাতে আপনি এটি আপনার ব্যবহারের ক্ষেত্রে উপযুক্ত করতে পারেন:

http://linux.die.net/man/8/mount


0

ডিরেক্টরি সম্ভবত পঠনযোগ্য। এটা চেষ্টা কর:

ls -ld .
chmod 755 .
chmod 755 myFile.tar.gz

এটি সঠিক নয়। একটি সাধারণ ইউনিক্স ফাইল সিস্টেমে এটি কেবল পঠনযোগ্য ডিরেক্টরিতে কোনও ফাইলকে chmod করার জন্য কাজ করে works আপনাকে সেই ডিরেক্টরিতে কোনও ফাইলের মেটাডেটা পড়তে, লিখতে বা পরিবর্তন করতে কোনও ডিরেক্টরিতে লেখার অনুমতি প্রয়োজন হয় না। নতুন ফাইলগুলি তৈরি করতে বা বিদ্যমান ফাইলগুলি মুছতে আপনার লেখার অনুমতি দরকার নেই।
নেট এল্ডারেজ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.