Cách đánh dấu cho phép thực thi tập tin dưới dạng chương trình trên một ổ đĩa ngoài


15

Nếu tôi cố gắng đặt tùy chọn này cho một tệp trên ổ đĩa ngoài thì nó chỉ tự đánh dấu. Làm chmod +xkhông có tác dụng. Ổ đĩa được gắn với các tùy chọn mặc định.


4
Hệ thống tập tin trên đó là gì?
nickguletskii

Câu trả lời:


32

Đĩa ngoài của bạn có khả năng được định dạng NTFS hoặc FAT32. Những hệ thống tập tin này không hỗ trợ quyền truy cập tập tin Linux.

Bây giờ bạn đã có ít nhất năm tùy chọn:

  • Chỉ cần sao chép nó vào máy tính để bàn (hoặc thư mục Home của bạn) và đặt quyền trên tệp đó.
  • Sao lưu dữ liệu trên đó và định dạng lại ổ đĩa vào ext4hệ thống tập tin. Điều này có thể được thực hiện bằng cách sử dụng Disk Utility hoặc GParted
  • Thực hiện tệp với một chương trình, mở một thiết bị đầu cuối và chạy:
    • đối với tập lệnh Bash: bash /path/to/your/file.sh
    • đối với tập lệnh Python: python /path/to/your/file.py
    • cho các tập lệnh Perl: perl /path/to/your/file.pl
    • cho các cửa sổ thực thi: wine /path/to/your/file.exe
    • cho các tệp nhị phân 32 bit: /lib/ld-linux.so.2 /path/to/your/file
    • cho nhị phân 64 bit: /lib/ld-linux-x86-64.so.2 /path/to/your/file
  • Sao chép tệp vào máy tính của bạn (ví dụ: thư mục chính), đặt bit thực thi trên đó và chạy nó. (điều này không thể được thực hiện cho tất cả các tệp)
  • (có thể nguy hiểm) Gắn kết phân vùng với bit thực thi được đặt cho tất cả các tệp. Để làm như vậy, hãy làm theo các hướng dẫn sau:

    1. Gắn kết phân vùng (bằng cách mở nó trong trình duyệt tệp chẳng hạn)
    2. Mở một thiết bị đầu cuối và chạy:

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

      Nếu bạn không thể ghi / truy cập tệp, hãy chạy lệnh ,uid=$(id -u)sau fmask=022:

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

    "Có thể nguy hiểm" vì bạn cấp quyền thực thi cho tất cả các tệp, chỉ sử dụng tùy chọn này nếu các phương thức khác không hoạt động.


7
+1 cho tệp `/lib/ld-linux.so.2 mới đối với tôi
enzotib

2
wine /path/to/your/filecũng hoạt động cho các ứng dụng Windows.
Nemo

@ Capt.Nemo Gợi ý hay, đã thêm
Lekensteyn

Câu trả lời tốt đẹp; @Cap - Nhận xét tốt đẹp!
boehj

3

Nếu hệ thống tập tin được định dạng là FAT hoặc NTFS, bạn luôn có thể gắn kết nó với các quyền thích hợp. Các quyền mặc định khi bạn gắn kết từ dòng lệnh bao gồm quyền thực thi cho tất cả người dùng.

Để có được kết quả cụ thể hơn, xem các trang thủ công mount.ntfs-3gmount, sau này trong phần tùy chọn Núi cho chất béo , trong mất đặc biệt là nhìn vào tùy chọn uid, gid, umask, fmask, dmask,


0

Ubuntu 10.04 không có vấn đề thiết lập quyền để chạy chương trình hoặc đọc / ghi trên các ổ đĩa ngoài.

Đó là một đặc điểm lâu dài đối với tôi khiến nó trở thành phiên bản tốt nhất từng chạy trên USB.
Bất cứ điều gì đã bị lấy đi để ngăn chặn điều này - và đó là kết nối không dây mặc định kém - là những gì tạo ra 10.10 và xa hơn là một mớ hỗn độn như vậy.

Sửa những thứ như thế này không phải là công việc của người dùng. Nếu thực hiện di động là bắt buộc, sử dụng 10.04.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.