Làm cách nào để mở khóa tệp .plist trong / private / var / db / receive để tôi có thể thay đổi nó?


0

Tôi muốn chỉnh sửa một số com.myApp.plist. Tôi đang chạy OS 10.10.3 và tôi đã cài đặt Xcode. Nhưng mỗi khi tôi cố gắng chỉnh sửa tệp, nó sẽ bị khóa và tôi không thể lưu các thay đổi của mình.

Nếu tôi cố lưu nó bằng Xcode, Xcode sẽ hỏi tôi có muốn mở khóa không. Tôi nói "Mở khóa", nhưng sau đó một lỗi cho biết Tệp "com.myApp.plist" không thể được mở khóa. ", Nó nói rằng điều này là do tôi không sở hữu nó.

Nếu tôi mở tệp trong Sublime Text, nó chỉ là mã đối tượng.

Làm cách nào để thay đổi tập tin?

Tôi đã cố gắng sudo chown $USER com.myApp.plisttheo sau sudo chmod u+w com.myApp.plist. Cả hai đều thành công nhưng tôi vẫn không thể chỉnh sửa tập tin.

Tôi đã thử sử dụng Finder để thay đổi từng thư mục trong đường dẫn để thêm tôi làm người dùng đọc / ghi, nhưng vẫn không có khả năng chỉnh sửa.

Tôi đã thử mở tệp từ Terminal bằng cách sử dụng sudo com.myApp.plistXcode mở. Không hoạt động.

Không chắc còn gì để làm. Tôi có thể thử một cái gì đó như "áp dụng cho các thư mục kèm theo" nhưng điều đó có vẻ nguy hiểm.


Tại sao bạn cố gắng chỉnh sửa một cái gì đó trong thư mục biên lai? Mục đích của nó là cung cấp một bản ghi về những gì đã được cài đặt trên máy tính và nếu bạn chỉnh sửa nội dung của nó thì chúng sẽ không còn chính xác nữa. Bạn không thể thay đổi lịch sử cài đặt thực tế; Tại sao bạn cố gắng thay đổi hồ sơ về những gì đã xảy ra?
Gordon Davisson

Tôi đang phát triển một ứng dụng OS X và tôi đang thử những thứ khác nhau để giữ cho các thủ tục cấp phép của tôi không bị bẻ khóa.
gật đầu

Bạn đã thử lưu-như vào máy tính để bàn của bạn và sau đó di chuyển nó?
Kevin Grabher

Wow điều đó không bao giờ xảy ra với tôi. Nó đã làm việc.
gật đầu

Câu trả lời:


0

Lý do chính khiến chmod không tháo khóa là vì bạn không có quyền trong thư mục kèm theo. Giống như trong một ví dụ trong thế giới thực: Bạn không thể truy cập gói trong phòng mà bạn chỉ có thể nhìn thấy và không có chìa khóa.

Trả lời đơn giản:

Nhấp một lần vào tập tin, sao chép nó. Sau đó dán nó vào máy tính để bàn của bạn. Sửa nó. Khóa sẽ không ở đó. Sau đó, chỉ cần đặt lại vào private/var/dbĐiều này sẽ yêu cầu xác thực quản trị viên của bạn.

Câu trả lời ít đơn giản hơn với việc sử dụng thiết bị đầu cuối:

Trước khi bạn tham gia, hãy đảm bảo bạn chỉnh sửa mọi đường dẫn đến đường dẫn mà .plist của bạn thực sự đang ở

Đầu tiên, lấy thông tin về thư mục kèm theo, giả sử rằng nó ở ngay trong /private/var/dbđó db sẽ là thư mục kèm theo Vì vậy:

chmod -R 777 /private/var/db

Sau đó, mở thiết bị đầu cuối và thực hiện:

sudo chmod 777 /private/var/db/somefile.plist

0

Bạn có thể cần phải thêm một ACL vào thư mục kèm theo ngay lập tức.

Không chắc chắn về toàn bộ đường dẫn, nhưng sau này bạn luôn có thể xóa với
sudo chmod -R -N /path…mức thư mục cao nhất bạn đạt được để bật nó, điều này sẽ xóa ACL khỏi toàn bộ cây thư mục tại & bên dưới / đường dẫn của bạn ...


Bạn có thể cụ thể hơn trong những gì tôi nên thực hiện lệnh?
gật đầu

tbh, tôi không tin tưởng mình nhiều như vậy trong Terminal - Tôi chỉ cần lấy thư mục, lấy thông tin và thêm 'tôi' vào các perm với 'đọc & viết'
Tetsujin

Điều đó cũng không hoạt động.
gật đầu

Bạn có thể cần phải làm việc theo cách của bạn ngay trên
ngọn
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.