Dự án mới của mình là gamehow.net, mời anh em ghé thăm và góp ý ạ.

Cách dùng lệnh su trong linux (so sánh SU vs -SU)

Trong bài viết này mình sẽ giới thiệu lệnh SU trong Linux, đây là lệnh dùng để chuyển đổi tài khoản trên Linux.

Sử dụng su là cách đơn giản nhất để chuyển sang tài khoản quản trị trong phiên đăng nhập hiện tại. Điều này đặc biệt hữu ích khi người dùng root không được phép đăng nhập vào hệ thống thông qua ssh hoặc sử dụng chương trình quản lý đồ họa GUI.

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

1. Cú pháp lệnh SU trong Linux

Lệnh su có cú pháp như sau:

su [OPTIONS] [USER [ARGUMENT...]]

Khi bạn chạy lệnh su mà không truyền gì vào thì nó sẽ hiểu là bạn sẽ chuyển sang tài khoản root. Lúc này bạn sẽ được nhắc nhập mật khẩu tk root để xác thực, ngay sau đó mọi lệnh bạn chạy được gán cho tài khoản root.

Để kiểm tra xem có đúng là đã chuyển sang tk root hay không thì hãy sử dụng lệnh whoimi nhé.

whoami

Kết quả sẽ trả về như sau:

root

2. Sự khác nhau giữa lệnh SU và -SU trong Linux

Trong phần này mình sẽ nói về sự khác nhau giữa hai lệnh SUSU - trong Linux. Đây là hai lệnh quan trọng được sử dụng để triển khai bảo mật trong Linux, liên quan đến chính sách quản lý người dùng và quyền của người dùng.

Lệnh SU được sử dụng để chuyển sang người dùng khác, hay nói cách khác là thay đổi ID người dùng trong một phiên đăng nhập bình thường (đó là lý do tại sao đôi khi nó được một số người dùng Linux gọi là switch (-) user).

Nếu bạn không nhập tên người dùng (ví dụ như su -), thì nó sẽ đăng nhập với tư cách người dùng root theo mặc định.

Trường hợp dùng SU trong Linux

Thông thường, để chuyển thành người dùng khác hoặc đăng nhập vào người dùng khác, bạn có thể gọi lệnh sau:

$ su tecmint

Sau đó bạn sẽ được nhắc nhập mật khẩu của người dùng mà bạn đang chuyển sang (như ví dụ trên người dùng tên là tecmint).

Switch Users in Linux png

Ta hãy xét đến tình huống ở hình chụp trên nhé, điều quan trọng cần lưu ý ở đây là người dùng tecmint giữ lại toàn bộ môi trường làm việc của user aaronkilik như: thư mục làm việc hiện tại và đường dẫn đến file thực thi cũng được giữ nguyên.

Do đó, khi người dùng tecmint dùng lệnh ls để liệt kê thư mục làm việc (vẫn là thư mục làm việc của người dùng aaronkilik), thì xuất hiện lỗi: “ls: cannot open directory .: Permission denied”.

Nhưng cuối cùng, người dùng tecmint có thể liệt kê thư mục chính của mình sau khi chạy lệnh cd mà không cần thêm tham số phía sau.

Trường hợp dùng SU - trong Linux

Thứ hai, khi bạn gọi lệnh su bằng cờ -, hoặc -l hoặc --login, thì Linux sẽ cung cấp cho bạn một giao diện đăng nhập tương tự như khi bạn đăng nhập bình thường. Tất cả các lệnh dưới đây tương đương với nhau.

$ su - tecmint
OR
$ su  -l tecmint
OR
$ su --login tecmint

Trong trường hợp này, người dùng tecmint được cung cấp môi trường đăng nhập mặc định của riêng mình, bao gồm đường dẫn đến các tệp thực thi, nên có thể sử dụng lệnh liệt kê file và thư mục ls bình thường.

Login to Another User png

Điều quan trọng là khi bạn chạy su mà không có tên người dùng, bạn sẽ tự động trở thành superuser. Bạn sẽ được cung cấp môi trường mặc định của root, bao gồm các thay đổi đường dẫn đến các file thực thi. Bạn cũng có thể truy cập vào thư mục chính của root:

$ su

Hy vọng bài viết này cung cấp đủ thông tin cho bạn, giúp bạn phân biệt được sự khác nhau giữa hai lệnh SUSU - trong Linux.

Cùng chuyên mục:

Cách dùng lệnh Users trong Linux để xem user đang online

Cách dùng lệnh Users trong Linux để xem user đang online

Nếu bạn đang là quản trị viên thì việc quản lý thông tin / xem…

Cách sử dụng lệnh Wall trong Linux

Cách sử dụng lệnh Wall trong Linux

Wall là một công cụ dòng lệnh giúp hiển thị thông báo đến tất cả…

Cách dùng lệnh Whereis trong Linux

Cách dùng lệnh Whereis trong Linux

Whereis là một tiện ích dòng lệnh command line, nó cho phép bạn tìm ..

Cách sử dụng lệnh Which trong Linux

Cách sử dụng lệnh Which trong Linux

Linux dùng lệnh which để xác định vị trí file thực thi của lệnh mà…

Cách sử dụng lệnh whoami trong Linux

Cách sử dụng lệnh whoami trong Linux

Giống như tên gọi của nó, lệnh whoami in tên người dùng đang chạy ...

Cách dùng lệnh zcat trong Linux

Cách dùng lệnh zcat trong Linux

Mặc dù tính năng nén file rất hữu ích vì nó giúp ta tiết kiệm…

Hiểu rõ hơn về chmod 777 trong Linux

Hiểu rõ hơn về chmod 777 trong Linux

Bạn đang xây dựng một website và sử dụng tính năng upload ...

Cách sử dụng lệnh tail trong Linux

Cách sử dụng lệnh tail trong Linux

Mặc định thì lệnh tail sẽ hiển thị 10 dòng cuối cùng của file, thông…

Cách sử dụng lệnh Head trong Linux

Cách sử dụng lệnh Head trong Linux

Trong quá trình quản trị dữ liệu trên Linux đôi khi bạn muốn xem nhanh…

Cách sử dụng lệnh Whatis trong Linux

Cách sử dụng lệnh Whatis trong Linux

Trong bài này chúng ta sẽ tìm hiểu lệnh whatis trong ...

Cách sử dụng lệnh kill trong Linux

Cách sử dụng lệnh kill trong Linux

Linux là một hệ điều hành rất nhanh nhưng không phải lúc nào nó không…

Cách dùng lệnh who trong Linux

Cách dùng lệnh who trong Linux

Who là một công cụ dòng lệnh command-line, được ...

Cách dùng lệnh basename trong Linux

Cách dùng lệnh basename trong Linux

basename là một tiện ích dòng lệnh (command line) dùng để lấy ...

Cách sử dụng lệnh gzip trên Linux

Cách sử dụng lệnh gzip trên Linux

Gzip là một trong những thuật toán nén file phổ biến nhất, nó cho phép…

Cách dùng lệnh wait trong Linux

Cách dùng lệnh wait trong Linux

Wait là lệnh dùng để đợi một thời gian cho tới khi công việc nào…

Cách dùng lệnh ping trong Linux

Cách dùng lệnh ping trong Linux

Lệnh ping là một trong những công cụ được sử dụng nhiều nhất để khắc…

Cách dùng lệnh sleep trong Linux

Cách dùng lệnh sleep trong Linux

sleep là một tiện ích command line cho phép lập trình viên ..

Các ví dụ học Bash Script trong Linux cơ bản nhất

Các ví dụ học Bash Script trong Linux cơ bản nhất

Bash Script đuọc xem là mã code lập trình trên Linux ...

Vòng lặp until trong Shell Script

Vòng lặp until trong Shell Script

Vòng lặp while trong Shell Script

Vòng lặp while trong Shell Script

Trong Linux script, vòng lặp while được sử dụng trong ...

Top