Tại sao sudo hoạt động trên Linux mà không phải Android?


22

Tôi chưa có cơ hội đọc đủ về Android , Linux hoặc UNIX để tự trả lời câu hỏi này. sudohoạt động trên máy Linux nhưng không hoạt động trên Android trừ khi bạn root thiết bị di động (ví dụ: Samsung GT-N8013). Tại sao thiết bị di động yêu cầu phải được root, nhưng không phải là cài đặt Linux điển hình?


Bối cảnh câu hỏi của tôi có liên quan đến /programming/14019698/adb-shell-sudo-on-windows-7/14019726#14019726

(Ngoài ra, có cách nào để chương trình yêu cầu chạy như roottrên Android không, giống như cách bạn nâng mức đặc quyền để "chạy với tư cách quản trị viên" trên Windows? một)


Nó nên có trong sudoersdanh sách để có được sudo. Nó không có trong Android một Ubuntu
dùng3539

Câu trả lời:


20

sudolà một ứng dụng bình thường với bit suid. Điều này có nghĩa là để sử dụng sudonó phải được cài đặt trên hệ thống. Không phải tất cả các hệ thống Linux đã sudođược cài đặt theo mặc định như ví dụ Debian.

Hầu hết các hệ thống Android được nhắm mục tiêu cho người dùng cuối không cần biết nội bộ của Android (tức là mỗi ứng dụng Android chạy dưới người dùng của chính nó), do đó không cần cung cấp cách tương tác để người dùng cuối chạy lệnh như hệ thống người quản lý.

Nói chung, bạn có thể sử dụng suthay vì sudochạy lệnh như một người dùng khác nhưng bạn phải biết thông tin đăng nhập cho người dùng đích su(vì sudobạn phải biết thông tin đăng nhập của người dùng đang chạy lệnh)



8

Điện thoại phải được root để rootngười dùng cài đặt sudo(hoặc bất kỳ ứng dụng nào khác). Nếu không, nó sẽ được cài đặt như người dùng "chuẩn" và không có quyền truy cập root.

Đối với câu hỏi thứ hai, một khi sudođược cài đặt trên điện thoại đã root, theo kinh nghiệm của tôi, các ứng dụng cần nó chỉ cần yêu cầu và bạn nhận được lời nhắc bật lên.


5

Bạn chạm vào một điểm quan trọng trong câu hỏi của bạn: một bản cài đặt Linux điển hình IS đang root: bạn khởi động từ Live CD và ghi đè lên bộ khởi động của ổ cứng để tải mã của riêng bạn.

Chỉ là việc root PC ít khó khăn hơn so với trên một thiết bị nhúng như điện thoại để mọi người có xu hướng quên rằng cài đặt HĐH thứ hai với khởi động kép về cơ bản là root (điều duy nhất sẽ chống lại bạn trên đây là BIOS với khởi động an toàn nhưng có thể dễ dàng thiết lập lại).

Và hệ điều hành trên thiết bị Android không sudođược cài đặt lệnh (hoặc tương tự).

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.