web-dev-qa-db-ja.com

ファイルにchmodを適用できません

HDDにファイルがあります。

cd /media/celebisait/5AC69788C6976355

myFile.tar.gzというファイルがあります。私はals -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

Chmodは変更されません。なぜですか?

PS:私はUbuntu 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
19
Sait

TL; DR;

注:OPによる質問の継続的な更新に基づく新しい情報により、問題は彼がNTFSパーティションをマウントしていることであることが判明しました。したがって、以下の#3が彼の問題に対する実際の答えです。他の2つの方法は、NTFSパーティションを使用していない同様の問題が発生する可能性がある他の人のためにここに残します。


アイデア#1-メディアの読み取り専用(ISO/CD/DVD)?

mountコマンドの出力を確認してください。具体的には次のようなものです。

$ mount | grep '/media'

/media/celebisaitの下にマウントされているデバイスは、ISOファイルまたはCD/DVDメディアの可能性があります。この場合、これらは通常読み取り専用であるため、書き込みアクセスを取得できません。

再度mountコマンドの出力を見ると、読み取り/書き込みと読み取り専用のどちらがマウントされているかを確認できます。

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

括弧内の出力に注意してください。最初のカンマの前の最初の引数は、読み取り/書き込みアクセスを示すrwです。読み取り専用デバイスの場合は、代わりにroがあります。

代替方法

df -h .コマンドを使用して、HDD上の特定の場所がどのデバイスから供給されているかを確認することもできます。これにより、現在のディレクトリのソースデバイスが表示されます。

$ 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-しかし、デバイスは読み取り/書き込みでマウントされます!

デバイスが読み取り/書き込みでマウントされていることがわかった場合は、インストールを試してみてください PySDM -/etc/fstabに手動でアクセスせずに、ハードディスクマウントポイントを完全にカスタマイズできるストレージデバイスマネージャー。また、ストレージデバイスを動的に構成するためのudevルールを作成できます。

読み取り/書き込み手順

  1. 物理ストレージデバイスマネージャーをインストールします:Sudo apt-get install pysdm
  2. ストレージデバイスマネージャーを開く:Sudo pysdm
  3. 必要なドライブを選択してください
  4. プレスアシスト
  5. 読み取り専用で開くのチェックを外します
  6. ファイルシステムの所有者ユーザーを確認し、ユーザー名を書きます:celebisait
  7. oKを押します
  8. プレス適用
  9. アンマウントドライブ
  10. マウントする

ソース:外部のアクセス許可を変更するにはどうすればよいですか?ドライブ?

アイデア#3-NTFSパーティション

コマンドに対して投稿した出力に基づいて:

$ Sudo fdisk -l /dev/sdb

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

NTFSパーティションがあり、NTFSマウントされたパーティション上のファイルをchmodできなかった理由を説明します。 ntfs-3gモジュールを使用してNTFSパーティションにアクセスしている場合は、ディスクを読み書きできるはずです。通常のUnixスイートのツールを使用して、そのアクセス許可に影響を与えないでください。

15
slm

あなたがHDDについて言及しているように。
私の答えは、NTFSまたはFAT32パーティション上のファイルをchmodすることはできないということです。
実際、ext3ext4のようなunix/linuxファイルシステムのみがこれらの属性をサポートしています。

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

/dev/sdb1がNTFSパーティションであることを明確に示しています。

7
Avinash Raj
/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)

タイプfuseblkおよびfdiskの出力は、パーティションがNTFSパーティションであることを示しています。これらは、他の* NIXネイティブファイルシステムのようなUNIX/LINUXファイルアクセス権スキームをサポートしていません。

解決策は、ルートのようなこれらの権限をサポートするファイルシステムにファイルを移動することです。あなたがそれをしたい方法単にうまくいかないでしょう

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

最近、NTFSパーティションで同様の問題が発生しました。 NTFSはアクセス許可を変更できないと既に述べられていますが、これらのアクセス許可はファイルシステムのマウント時に設定できます。ファイルにアクセスできるようにするグループまたはユーザーのIDを指定すると、次のようなことができます。

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

使用例に合わせて調整できるように、manページをマウントします。

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

1
Frogee

ディレクトリはおそらく読み取り専用です。これを試して:

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