NTFS パーティション上のフォルダーをネットワーク経由で共有するにはどうすればよいですか?

NTFS パーティション上のフォルダーをネットワーク経由で共有するにはどうすればよいですか?

/dev/sda4私は Ubuntu 11.10 を使用していますが、自動マウントされた NTFS パーティション ( ) 上のフォルダをネットワーク経由で共有したいと考えています。このネットワークの目的はコンピュータ間でファイルを共有することであり、主に Windows コンピュータが含まれています。この/dev/sda4パーティションは Windows 7 と Ubuntu の両方で使用しています。Nautilus を使用して、ディレクトリを右クリックし、[共有オプション] をクリックして、3 つのチェックボックスをオンにします。しかし、設定を適用しようとすると、[フォルダ "foldername" の権限を変更できませんでした] というメッセージが表示されます。

sudo blkidとの出力をcat /etc/fstab下記に示します。

sudo blkid

/dev/sda2: LABEL="Windows" UUID="481319C261268D8D" TYPE="ntfs" 
/dev/sda3: UUID="23dac5e8-aae7-43ac-964c-c8a5a033b0d7" TYPE="ext4" 
/dev/sda4: LABEL="Data" UUID="00F1B269675B86AE" TYPE="ntfs" 
/dev/sda5: UUID="6de8b757-f17e-4e36-935c-a3fd6012c628" TYPE="ext4" 
/dev/sda6: UUID="d504bae2-fad6-4f6a-b489-7719ad0fe3b3" TYPE="swap" 

cat /etc/fstab

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    nodev,noexec,nosuid 0       0
# / was on /dev/sda3 during installation
UUID=23dac5e8-aae7-43ac-964c-c8a5a033b0d7 /               ext4    errors=remount-ro 0       1
# swap was on /dev/sda6 during installation
UUID=d504bae2-fad6-4f6a-b489-7719ad0fe3b3 none            swap    sw              0       0
/dev/sda4 /media/Data ntfs defaults,umask=007,gid=46 0 0 

このフォルダを共有するにはどうすればよいですか?

答え1

少し検索した後、私は自分で解決策を見つけました:

まず、 の所有権を自分に与え、 とに読み取りおよび実行権限/dev/sda4を与える必要がありました。 これは、 のパーティション エントリを変更することによって行いました。groupothers/etc/fstab

そのためには、uidと を知る必要がありましたgid。そこで、まずターミナルで次のコマンドを入力しました。

id $USER

次のような出力が得られます。

UID=1000(myname) GID=1000(myname) groups=1000(myname),4(adm),24(cdrom), ...

それで、私uidと私の両方gidが であることが分かりました1000

NTFS パーティションの名前はすでにわかっていますか? わからない場合は、ターミナルで次のコマンドを入力します。

sudo blkid

NTFS パーティションを紙に書き留めます。

ここで、権限を変更するために、テキスト エディター/etc/fstabで編集しましたnano。ターミナルに入力する必要がある次のコマンドは次のとおりです。

sudo nano /etc/fstab

一番下まで移動して、次の行を入力します。

/dev/sda4 /media/Data ntfs defaults,umask=0022,uid=YourUIDHere,gid=YourGIDHere 0 0

(/dev/sda4先ほど書き留めておいた NTFS パーティションに置き換える必要があります)。

説明:umask=0022ディレクトリ ( d) の権限を に設定してdrwxr-xr-x、ユーザー (私) は読み取り、書き込み、実行 ( rwx) を実行できる一方で、 はgroupディレクトリのothers読み取りと実行 ( r-x) のみを実行できるようにします。これが私の希望どおりの結果です。

その後、エラーなく 3 つのチェックボックスをオンにすることができ、フォルダーはネットワーク経由で共有されます。再起動後に共有設定が保持されるかどうかわからなかったため、チェックボックスをオフにして、/etc/samba/smb.conf代わりにいくつかの行を追加しました。私は次のようにしました。

ターミナルで次のように入力しましたsudo nano /etc/samba/smb.conf

最後の行までスクロールして、次の内容を貼り付けました。

[MyShare]
    comment = My Share
    path = /media/Data/FolderToBeShared
    browseable = yes
    guest ok = yes
    read only = yes
    create mask = 0755

ファイルを保存して再起動しました。これでネットワークからフォルダにアクセスできるようになりました。

答え2

ntfs ディレクトリを次のようにマウントするだけです:

-o uid=current_user,gid=current_usergroup

Exeleration-G によって指定された現在のユーザーと現在のユーザー グループを取得します。

id MyUserName

答え3

私が考えられる最も簡単な解決策は、NTFS パーティションへのシンボリック リンクを使用することです。

これを実行する方法は次のとおりです。

  • Ubuntu パーティションに共有できるフォルダーを作成します。
  • Windows パーティション上のフォルダーをこのフォルダー内にリンクします。
    ln -s /path/to/folder/on/ntfs /path/to/new/location/linkname
  • 作成した親フォルダーをネットワーク経由で共有するよう設定し、必要に応じて追加オプション (ゲストの許可など) を選択します。
  • 権限タブで「囲まれたファイルに権限を適用する」をクリックします。もちろん、すべての権限が適用されるわけではありませんが、読み取りアクセスで十分です。

これを自分でテストしたわけではありませんが、共有を正しく理解していれば、機能するはずです。

関連情報