外部ドライブで「実行ファイルをプログラムとして許可する」をマークする方法


15

外部ドライブ上のファイルにこのオプションを設定しようとすると、マークが解除されます。実行しchmod +xても効果はありません。ドライブはデフォルトのオプションでマウントされます。


4
ファイルシステムは何ですか?
nickguletskii

回答:


32

外部ディスクは、おそらくNTFSまたはFAT32でフォーマットされています。これらのファイルシステムは、Linuxファイル許可をサポートしていません。

少なくとも5つのオプションがあります。

  • デスクトップ(またはホームフォルダー)にコピーして、そのファイルにアクセス許可を設定するだけです。
  • データをバックアップし、ドライブをext4ファイルシステムに再フォーマットします。これは、ディスクユーティリティまたはGPartedを使用して実行できます。
  • プログラムでファイルを実行し、ターミナル開いて実行します:
    • Bashスクリプトの場合: bash /path/to/your/file.sh
    • Pythonスクリプトの場合: python /path/to/your/file.py
    • Perlスクリプトの場合: perl /path/to/your/file.pl
    • Windows実行可能ファイルの場合: wine /path/to/your/file.exe
    • 32ビットバイナリの場合: /lib/ld-linux.so.2 /path/to/your/file
    • 64ビットバイナリの場合: /lib/ld-linux-x86-64.so.2 /path/to/your/file
  • ファイルをコンピューター(ホームフォルダーなど)にコピーし、実行ビットを設定して実行します。(これはすべてのファイルに対して行うことはできません)
  • (おそらく危険)すべてのファイルに実行ビットを設定してパーティションをマウントします。これを行うには、次の指示に従ってください。

    1. パーティションをマウントします(たとえば、ファイルブラウザでパーティションを開きます)
    2. ターミナル開いて実行します:

      sudo mount -o remount,fmask=027 /media/YOURDRIVE
      

      あなたは/アクセスファイルを書き込むことができない場合は、使用してコマンドを実行し,uid=$(id -u)た後fmask=022

      sudo mount -o remount,fmask=027,id=$(id -u) /media/YOURDRIVE
      

    すべてのファイルに実行権限を付与するため、「おそらく危険」です。他の方法が機能しない場合にのみ、このオプションを使用してください。


7
私にとって新しい `/lib/ld-linux.so.2ファイルの+1
enzotib

2
wine /path/to/your/fileWindowsアプリケーションでも機能します。
ニモ

@ Capt.Nemo良いヒント、追加
Lekensteyn

いい答え; @Cap-素敵なコメント!
boehj

3

ファイルシステムがFATまたはNTFSとしてフォーマットされている場合、常に適切な権限でマウントできます。コマンドラインからマウントするときのデフォルトの許可には、すべてのユーザーの実行許可が含まれます。

より具体的な結果を得るためには、のマニュアルページを参照mount.ntfs-3gしてmountセクションで、後者の脂肪のマウントオプション特定のテイクで、オプションを見てuidgidumaskfmaskdmask


0

Ubuntu 10.04には、プログラムを実行したり、外部ドライブで読み取り/書き込みを行うためのアクセス許可の設定に問題はありませんでした。

これは私にとって永続的な特性であり、USBで実行するのに最適なバージョンです。
これを止めるために奪われたものは何でも-そしてそれは貧弱なデフォルトのワイヤレス接続-10.10を作り、そのようなフラストレーションの途方もないものです。

このようなものを修正することは、ユーザーの仕事ではありません。モバイルでの実行が必須の場合は、10.04を使用します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.