2010-09-18 35 views
8

Tôi đang sử dụng triển khai thực hiện MIXue Linux POSIX và tôi gặp sự cố. Đối với hạt nhân hiện tại, kích thước tin nhắn tối đa là 1MB, nhưng tôi không cần giới hạn.Cách thực hiện quy trình với CAP_SYS_RESOURCE

man mq_overview nói rằng nếu quá trình được đặc quyền (quá trình có khả năng CAP_SYS_RESOURCE), nó không có giới hạn. Tôi nghĩ rằng một quá trình được thực hiện bởi root đã được đặc quyền, nhưng tôi vẫn nhận được thông báo lỗi "quá dài" (tin nhắn của tôi có 2MB).

Tôi làm cách nào để thêm khả năng của CAP_SYS_RESOURCE vào quy trình này?

Trả lời

3

bạn có thể thay đổi trần vào kích thước tối đa nhắn trong hồ sơ này/proc/sys/fs/mqueue/msgsize_max Tôi hy vọng nó hoạt động

7

Tôi không biết nếu nó có thể đặt nó vào một quá trình chạy (tôi đoán không) nhưng bạn có thể cấp khả năng CAP_SYS_RESOURCE cho một tập tin thực thi bằng cách sử dụng # setcap 'CAP_SYS_RESOURCE=+ep' /path/to/executable (là người dùng siêu). Trong ví dụ này, +ep chuyển thành nâng cao khả năng cho phép và hiệu quả của CAP_SYS_RESOURCE. Tuy nhiên, trang man capabilities(7)setcap(8) là các nguồn hữu ích để biết thêm thông tin.

Các vấn đề liên quan