Logo vi.removalsclassifieds.com

Sự khác biệt giữa Su và Sudo (Có bảng)

Mục lục:

Anonim

Linux có một số lệnh và cách để đạt được đặc quyền root. Mỗi lệnh và chức năng hoạt động và gọi khác nhau. Mỗi lệnh Linux phân phối theo một cách cụ thể bằng cách sử dụng cấu hình được đặt theo mặc định. Hai lệnh thường được sử dụng để có quyền root trong Linux là Su và Sudo.

Su vs Sudo

Sự khác biệt chính giữa Su và Sudo là lệnh Su có thể trao đổi giữa superuser và root user nếu được thực thi mà không có các tùy chọn bổ sung trước trong khi lệnh Sudo cung cấp các đặc quyền root duy nhất. Su yêu cầu mật khẩu của tài khoản gốc trong khi Sudo yêu cầu mật khẩu của tài khoản người dùng hiện tại.

Su là viết tắt của người dùng thay thế. Đây là một cách truyền thống để có được quyền root trong Linux. Nó đã được phát hành vào năm 1971. Cú pháp chính của lệnh là: su [user_name] hoặc su- [user_name]. Nếu không sử dụng đối số, nó có thể chuyển sang tài khoản superuser của root. Nó gọi ra trình bao người dùng trong khi làm việc.

Trong khi Sudo là viết tắt của người dùng thay thế làm. Nó được sử dụng để đạt được sự cho phép trong các tác vụ quản trị và thực thi. Cú pháp chính của lệnh là sudo [command]. Nó có hạn chế là được sử dụng bởi những người dùng của nhóm sudoers. Nó có khả năng ức chế những thay đổi không mong muốn trên toàn hệ thống.

Bảng so sánh giữa Su và Sudo

Các thông số so sánh Su Sudo
Loại Yêu cầu Ủy quyền đặc quyền
Hệ điều hành Unix và giống Unix Giống Unix
Chức năng Để xin quyền root thông qua việc chuyển sang superuser hoặc root user Để tìm kiếm quyền root thông qua một lệnh duy nhất
Tác giả Dennis Ritchie và Ken Thompson Robert Coggeshall và Cliff Spencer
Nhà phát triển Phòng thí nghiệm AT&T Bell Todd C. Miller

Su là gì?

Su là một lệnh Unix. Hình thức đầy đủ của Su là "người dùng thay thế". Ban đầu nó là một phần của Unix Phiên bản 1. Nó được phát triển bởi Dennis Ritchie và Ken Thompson. Nó được phát hành bởi Phòng thí nghiệm AT&T vào ngày 3 tháng 11 năm 1971.

Công việc của lệnh su là thực hiện các lệnh và cung cấp đặc quyền của tài khoản khác của người dùng. Khi thực thi, lệnh su gọi một trình bao và không thay đổi thư mục làm việc hiện tại hoặc môi trường của người dùng.

Nếu lệnh được sử dụng mà không chỉ định ban đầu id người dùng mới sẽ dùng làm đối số dòng lệnh, lệnh su sẽ sử dụng tài khoản siêu người dùng của hệ thống làm cài đặt mặc định. Nó có thể ngụ ý rằng là id người dùng 0. Khi lệnh đang chạy, su sẽ hỏi người dùng về mật khẩu của người dùng mục tiêu.

Sau khi xác thực, nhà điều hành sẽ cấp quyền truy cập vào tài khoản. Nó thậm chí sẽ cấp quyền cho các tệp và thư mục trong tài khoản. Việc sử dụng dấu gạch ngang (ví dụ su-), được sử dụng để bắt đầu một trình bao đăng nhập. Chế độ này rộng rãi cho phép người dùng giả định môi trường của người dùng mục tiêu.

Sudo là gì?

Sudo là một loại chương trình trong hệ điều hành giống Unix. Dạng đầy đủ của sudo là "người dùng thay thế do". Trong cài đặt mặc định, nó cho phép superuser. Nó được phát triển bởi Robert Coggeshall và Cliff Spencer. Nó được phát hành bởi Todd C. Miller vào năm 1980 nhưng được phát hành chính thức vào ngày 27 tháng 7 năm 2021.

Công việc của lệnh Sudo là cho phép người dùng chạy chương trình và cung cấp đặc quyền bảo mật cho người dùng khác. Giấy phép là kiểu ISC. Nó được sử dụng rộng rãi trong ngôn ngữ C. Hạn chế duy nhất của lệnh Sudo là nó có thể được thực thi bởi người dùng của nhóm sudoer. Nhưng việc thêm một người dùng mới vào nhóm sudoer cũng rất dễ dàng.

Sudo cũng được sử dụng cho các công việc hành chính. Sudo xác thực bằng cách yêu cầu mật khẩu của người dùng chứ không phải của người dùng mục tiêu. Sau khi xác thực, nó cho phép truy cập và gọi một lệnh được yêu cầu. Tệp cấu hình đóng một vai trò quan trọng trong việc cấp quyền truy cập, kích hoạt các lệnh hoặc trong quá trình nhập hoặc nhập lại mật khẩu.

Sudo là một lệnh duy nhất và chạy với đặc quyền root. Không giống như su, nó không chuyển sang tài khoản người dùng gốc hoặc yêu cầu thông tin đăng nhập của người dùng gốc như mật khẩu. Ưu điểm của việc sử dụng Sudo là người dùng chỉ cần cung cấp và ghi nhớ một mật khẩu duy nhất. Điều này cũng cung cấp khả năng bảo mật và có thể kiểm soát được các thay đổi và sửa đổi không mong muốn trên toàn bộ bảo mật.

Sự khác biệt chính giữa Su và Sudo

Sự kết luận

Trong Linux, đây là hai lệnh chính để đạt được đặc quyền và quyền root. Người dùng hiện tại có thể có quyền truy cập bằng cách cung cấp thông tin đăng nhập chính xác. Gốc là tên thực được đặt cho tài khoản quản trị viên. Người dùng root có quyền xóa, thay đổi, thay đổi, gắn kết và ngắt kết nối hệ thống tệp.

Linux cung cấp khả năng chuyển đổi giữa superuser và root user thông qua lệnh su và truy cập lệnh đơn thông qua sudo. Trong su, người dùng có thể giả định danh tính của người dùng khác mà không cần thay đổi thông tin đăng nhập hoặc thông tin đăng nhập trong khi trong sudo, người dùng không cần thay đổi danh tính. Su có thể được thực hiện theo hai cách: su và su-. Su giữ môi trường gốc trong khi su- tạo môi trường mới cho người dùng root.

Su liên tục chuyển đổi giữa người dùng root và superuser trong khi sudo không bao gồm bất kỳ sự trao đổi nào như vậy. Ngoài ra, su trong người dùng root có thể tiết lộ toàn bộ thông tin hệ thống và có nguy cơ bị sửa đổi trong khi Sudo chỉ cấp quyền đặc quyền cho lệnh cụ thể được yêu cầu và do đó sử dụng an toàn hơn.

Sự khác biệt giữa Su và Sudo (Có bảng)