Tin tức và phân tích của tất cả các thiết bị di động

Làm cách nào để Switch Người dùng trong Linux Terminal

Để bảo vệ nhân Linux khỏi bị truy cập trái phép, hệ điều hành cung cấp tùy chọn tạo những người dùng khác nhau với các đặc quyền khác nhau. Bạn có thể dễ dàng chuyển đổi người dùng trong Linux bằng các lệnh. Trong bài viết này, chúng ta sẽ khám phá một số phương pháp khác nhau về cách chuyển đổi người dùng ngay từ thiết bị đầu cuối Linux của bạn, bất kể bạn muốn thực hiện các tác vụ quản trị hay chỉ cần thực thi các lệnh với tư cách là siêu người dùng.

Ba loại người dùng trong Linux

Trước khi chúng ta có thể bắt đầu chuyển đổi người dùng, hãy xem các loại người dùng khác nhau trong Linux. Có ba loại người dùng Linux khác nhau:

  • Người dùng hệ thống hoặc người dùng không đăng nhập: Những loại người dùng này không có quyền truy cập đăng nhập cũng như không có quyền truy cập shell. Chúng thường được sử dụng để chạy một số dịch vụ hoặc ứng dụng nhất định. Để tìm hiểu thêm về người dùng không đăng nhập, hãy xem bài viết của chúng tôi về cách tạo người dùng không đăng nhập trong Linux.
  • Người sử dụng thường xuyên: Những loại tài khoản người dùng này có quyền truy cập hạn chế vào hệ thống tệp theo quyền truy cập tệp của họ. Tuy nhiên, họ có thể sử dụng lệnh su hoặc sudo để giành quyền quản trị.
  • Người dùng root (Siêu người dùng/ Quản trị viên): Những loại tài khoản người dùng này có quyền truy cập hoàn toàn không hạn chế vào toàn bộ hệ thống tệp với mức độ bảo mật cao nhất.

Làm cách nào để Switch Người dùng Linux sử dụng lệnh su

Lệnh su, viết tắt của switch user, là một công cụ mạnh mẽ để chuyển từ tài khoản người dùng này sang tài khoản người dùng khác. Cú pháp chuyển đổi người dùng bằng lệnh su trong Linux Terminal là:

su <options> <username>

Trong cú pháp trên, thay thế bằng tên tài khoản người dùng mà bạn muốn chuyển sang. Một số tùy chọn phổ biến để ghép nối với lệnh su là:

Tùy chọnMô tả
-cĐể truyền lệnh tới shell mới của người dùng đã chuyển đổi.
-SĐể chỉ định một shell khác thay vì /bin/sh mặc định.
-PKhi được sử dụng, sẽ tạo một thiết bị đầu cuối giả mới cho phiên không được chia sẻ với phiên ban đầu để bảo mật tốt hơn
-lKhởi động shell dưới dạng shell đăng nhập với môi trường tương tự như đăng nhập thực
-gĐược sử dụng để chỉ định nhóm chính.

1. Switch cho người dùng thông thường

Để chuyển sang người dùng thông thường bằng lệnh su trong Linux, hãy sử dụng cú pháp sau:

su <options> <username>

Ví dụ: để chuyển sang người dùng ‘thử nghiệm’, hãy sử dụng lệnh sau:

su -l test1

Bây giờ, nhập mật khẩu của người dùng bạn muốn chuyển sang và nhấn enter. Bạn có thể nhận thấy rằng không có tên người dùng trong dấu nhắc shell hoặc thậm chí bạn không thể sử dụng các phím mũi tên để điều hướng hoặc sử dụng tính năng tự động hoàn thành cú pháp bằng phím tab. Điều này có nghĩa là lớp vỏ không ổn định. Để tạo ra một lớp vỏ ổn định, hãy sử dụng lệnh này:

/bin/bash/ -i

Lời nhắc shell của bạn bây giờ sẽ hiển thị tên người dùng mới, bạn cũng có thể điều hướng bằng các phím mũi tên và sử dụng tính năng tự động hoàn thành bằng phím tab.

2. Switch tới người dùng root

Đôi khi, bạn có thể cần sử dụng tài khoản người dùng root cho một số tác vụ quản trị. Để chuyển sang người dùng root hoặc Super User trong Linux, hãy sử dụng lệnh su như:

su -

Bây giờ bạn sẽ được nhắc nhập mật khẩu cho người dùng root. Nhập mật khẩu gốc và nhấn enter. Dấu nhắc shell của bạn bây giờ sẽ hiển thị tên người dùng gốc. Bây giờ bạn có thể thực thi tất cả các lệnh với tư cách là người dùng root.

Làm cách nào để Switch Người dùng Linux sử dụng lệnh sudo

Lệnh sudo là viết tắt của “Super User Do”. Lệnh này thường được sử dụng để thực thi các lệnh khác nhau với tư cách là người dùng root hoặc super. Tuy nhiên, với một thủ thuật nhỏ, bạn có thể sử dụng lệnh sudo để chuyển đổi người dùng trong Linux. Trước đó, hãy xem cú pháp của lệnh sudo:

sudo <options> <parameters> <command>

Trong cú pháp trên, chỉ định lệnh nào bạn cần thực thi với tư cách một người dùng khác và để ghép nối với lệnh. Một số tùy chọn phổ biến bạn có thể kết hợp với lệnh sudo là:

Tùy chọnMô tả
-bđể chạy lệnh đã cho trong nền
-uđể chạy lệnh đã cho với tên người dùng cụ thể được truyền dưới dạng tham số
-Nkhi được sử dụng, sẽ trả về một shell không tương tác và tránh nhắc người dùng nhập bất kỳ loại nào
-Tđể đặt thời gian chờ cho lệnh. Nếu hết thời gian chờ trước khi lệnh thoát, lệnh sẽ bị chấm dứt
-Tôichạy shell được chỉ định bởi mục nhập cơ sở dữ liệu mật khẩu của người dùng mục tiêu dưới dạng shell đăng nhập

1. Thay đổi thành người dùng thông thường

Để chuyển sang người dùng Linux thông thường bằng lệnh sudo trong Linux, hãy sử dụng cú pháp sau:

sudo -u <username_to_switch_to> /bin/bash

Trong cú pháp trên,

  • cờ -u được sử dụng để chỉ định tên người dùng bạn muốn chuyển sang
  • /bin/bash chỉ định sinh ra bash shell cho người dùng này

Ví dụ: nếu bạn muốn chuyển sang người dùng test1, hãy sử dụng lệnh sudo sau:

sudo -u test1 /bin/bash

Khi bạn thực hiện lệnh trên, bạn sẽ được nhắc nhập mật khẩu của người dùng root. Nhập mật khẩu gốc và nhấn enter. Lời nhắc bây giờ sẽ hiển thị tên người dùng đã chuyển.

2. Switch tới người dùng root

Để chuyển sang người dùng root bằng lệnh sudo:

sudo -u root /bin/bash

Tiếp theo, nhập mật khẩu gốc và nhấn enter. Dấu nhắc shell của bạn bây giờ sẽ thay đổi thành tên người dùng gốc.

Các câu hỏi thường gặp

Làm cách nào để xem người dùng trong Linux?

Tất cả thông tin người dùng được lưu trữ trong tệp /etc/passwd. Sử dụng lệnh cat để xem nội dung tệp dưới dạng: cat /etc/passwd

Tôi có thể chuyển sang người dùng khác mà không biết mật khẩu của họ không?

Không, bạn cần biết mật khẩu của người dùng mà bạn muốn chuyển sang. Nếu bạn đăng nhập với tư cách người dùng root thì bạn có thể chuyển đổi mà không cần biết mật khẩu của họ.

Mục lục