Hướng dẫn chi tiết về cách sử dụng lệnh usermod trong hệ thống Linux với nhiều ví dụ khác nhau
Các usermod
lệnh là lệnh mạnh mẽ nhất trong số tất cả các tiện ích sửa đổi tài khoản người dùng được cung cấp bởi hệ thống Linux. Nó cung cấp không gian để người dùng thực hiện bất kỳ sửa đổi nào đối với các tài khoản người dùng hiện có.
Usermod giúp thay đổi các thuộc tính của người dùng hiện có trên hệ thống Linux. Các thuộc tính này có thể bao gồm các tham số như mật khẩu, tên đăng nhập, thư mục đăng nhập, ngày hết hạn, thay đổi ID người dùng và nhiều thông số khác.
Quản lý tất cả các chi tiết tài khoản người dùng từ dòng lệnh là một nhiệm vụ khá dễ dàng, nhưng không phải ai cũng biết các lệnh để làm như vậy. Chúng tôi sẽ hướng dẫn bạn qua tất cả các tình huống có thể xảy ra với usermod
trong môi trường Linux.
Ghi chú: Để thực hiện usermod
lệnh bạn cần là người dùng root hoặc bạn cần phải có sudo
truy cập.
Tệp có chi tiết người dùng
Khi bạn sắp sử dụng usermod
, điều rất quan trọng là bạn phải biết các tệp mà bạn có thể yêu cầu để làm việc. Các tệp này chứa tất cả các thông tin liên quan đến các tài khoản người dùng hiện có trên hệ thống.
Tập tin | Sự miêu tả |
---|---|
/ etc / passwd | Chứa một số thông tin về người dùng |
/ etc / group | Chứa thông tin về từng nhóm được sử dụng trên hệ thống |
/ etc / gshadow | Chứa thông tin tài khoản nhóm an toàn |
/etc/login.defs | Xác định cấu hình trang web cụ thể cho bộ mật khẩu bóng. |
/ etc / shadow | Chứa mật khẩu được mã hóa cũng như các thông tin khác như giá trị hết hạn của tài khoản hoặc mật khẩu |
Cú pháp cơ bản của lệnh Usermod
Cú pháp sử dụng usermod
về bản chất lệnh khá cơ bản. Điều quan trọng là biết các tùy chọn mà lệnh này sẽ được thực thi.
Cú pháp:
tên người dùng usermod [options]
Tùy chọn:
Tùy chọn | Cách sử dụng |
---|---|
-l | Thay đổi tên của người dùng |
-d | Sửa đổi thư mục chính của tài khoản người dùng hiện có |
-L | Khóa tài khoản người dùng bằng cách vô hiệu hóa mật khẩu |
-U | Mở khóa khóa mật khẩu |
-m | Di chuyển nội dung từ thư mục chính hiện có của người dùng đến bất kỳ vị trí thư mục mới nào |
-u | Thay đổi id người dùng của người dùng hiện tại |
-g | Thay đổi nhóm người dùng |
-G | Danh sách các nhóm bổ sung mà người dùng cũng là thành viên. |
-S | Tạo vỏ cho tài khoản mới |
-e | Thay đổi ngày hết hạn của tài khoản người dùng |
Các ứng dụng của Lệnh Usermod
Như đã nêu trong bảng trên, usermod
lệnh được sử dụng với các tùy chọn khác nhau để thao tác các thuộc tính liên quan đến thông tin tài khoản người dùng.
Làm theo các ví dụ dưới đây để sử dụng usermod
lệnh cho các tác vụ của bạn liên quan đến tài khoản người dùng và thao tác với các thuộc tính của nó.
Thay đổi tên người dùng
Tên của người dùng là lựa chọn cá nhân và có thể được thay đổi bất cứ khi nào người dùng muốn làm như vậy. Bạn có thể thay đổi tên đăng nhập người dùng của những người dùng hiện có trong Hệ thống Linux thông qua dòng lệnh cũng như GUI từ Cài đặt. Bạn có thể làm theo các lệnh dưới đây để thực hiện việc này thông qua dòng lệnh bằng cách sử dụng usermod
yêu cầu.
Cú pháp:
usermod -l [tên người dùng mới] [tên người dùng hiện có]
Thí dụ:
sudo usermod -l batman tạm thời
Đầu ra:
Bạn có thể xác nhận thay đổi tên người dùng bằng cách chạy id [người dùng]
lệnh lệnh.
gaurav @ ubuntu: ~ $ id batman uid = 1002 (batman) gid = 1002 (tạm thời) nhóm = 1002 (tạm thời) gaurav @ ubuntu: ~ $ id id tạm thời: ‘tạm thời’: không có người dùng nào như vậy gaurav @ ubuntu: ~ $
Trong kết quả đầu ra ở trên, rõ ràng là tên người dùng ‘tạm thời’ được thay đổi thành tên người dùng mới ‘batman’.
Thay đổi nhóm chính của một người dùng hiện tại
Trong hệ sinh thái Linux, tập hợp người dùng hệ thống máy tính được gọi là ‘Nhóm’. Mục đích chính của việc có ‘Nhóm’ là xác định các đặc quyền nhất định (Đọc, Viết, Thực thi) đối với các tài nguyên được chia sẻ trong người dùng của nhóm. Thông thường, nhóm chính của một người dùng có cùng tên với tên của tên người dùng.
Với usermod
, bạn có thể thay đổi nhóm chính của một người dùng và thêm người dùng vào một nhóm khác.
Bạn có thể kiểm tra các nhóm trên hệ thống của mình bằng cách sử dụng các nhóm
yêu cầu.
gaurav @ ubuntu: ~ $ groups gaurav adm cdrom sudo dip plugdev lpadmin sambashare gaurav @ ubuntu: ~ $
Để thay đổi nhóm chính của người dùng, bạn sẽ cần tên nhóm của nhóm chính mà người dùng hiện được thêm vào. Sử dụng id [tên người dùng]
lệnh để lấy tên nhóm và id nhóm của nhóm chính hiện tại của người dùng.
gaurav @ ubuntu: ~ $ id batman uid = 1000 (batman) gid = 1000 (batman) nhóm = 1000 (batman), 128 (sambashare), 4 (adm), 24 (cdrom), 27 (sudo) gaurav @ ubuntu: ~ $
Ở đây nhóm chính là ‘người dơi‘. Bây giờ, hãy sử dụng usermod
lệnh để thay đổi nhóm chính của người dùng. Tôi đang thay đổi nhóm chính của người dùng thành 'sambashare'. Kiểm tra lệnh sau.
Cú pháp:
sudo usermod -g [tên nhóm] [tên người dùng]
Thí dụ:
sudo usermod -g sambashare batman
Đầu ra:
gaurav @ ubuntu: ~ $ sudo usermod -g sambashare batman gaurav @ ubuntu: ~ $ id batman uid = 1000 (batman) gid = 128 (sambashare) groups = 128 (sambashare), 1000 (batman), 4 (adm), 24 (cdrom), 27 (sudo) gaurav @ ubuntu: ~ $
Sử dụng thao tác trên, nhóm chính của người dơi người dùng bây giờ được đổi thành ‘sambashare’.
Thêm nhóm mới vào người dùng hiện tại
Tài khoản người dùng có thể thuộc về nhiều nhóm trong hệ thống Linux. Mỗi người dùng có một nhóm chính. Và Linux cũng cho phép thêm các nhóm thứ cấp vào người dùng.
Synatx:
sudo usermod -G [nhóm mới] [tên người dùng]
Thí dụ:
sudo usermod -G dơi nhúng
Đầu ra:
gaurav @ ubuntu: ~ $ sudo usermod -G nhúng batman gaurav @ ubuntu: ~ $ id batman uid = 1000 (batman) gid = 128 (sambashare) groups = 128 (sambashare), 30 (dip) gaurav @ ubuntu: ~ $
Ở đây nhóm mới có tên là ‘dip’ được thêm vào người dùng ‘batman’.
Ghi chú: Để thêm nhóm mới làm 'Nhóm phụ', bạn nên sử dụng -Một
tham số.
-Một
có nghĩa nối thêm
. Sử dụng -Một
trước -G
sẽ thêm nhóm làm 'Nhóm phụ' mà không thay đổi 'Nhóm chính' của người dùng.
Sử dụng lệnh sau để giữ nguyên nhóm chính của người dùng.
sudo usermod -a -G [nhóm để thêm] [Người dùng]
Thay đổi thư mục chính của người dùng
Khi bạn đăng nhập vào hệ thống của mình, phiên của bạn sẽ bắt đầu trong thư mục chính, thư mục này duy nhất cho tài khoản người dùng của bạn. Hệ thống chỉ định thư mục duy nhất này khi tài khoản người dùng được tạo. Linux cung cấp cho bạn một tùy chọn để thay đổi ‘Thư mục chính’ của bạn. Hầu hết thời gian, tên của ‘Home Directory’ giống với tên người dùng và được đặt dưới /Trang Chủ
danh mục.
Sử dụng lệnh sau để thay đổi "Home Directory" của người dùng.
Cú pháp:
sudo usermod -d [new_directory_path] [tên người dùng]
Để xác minh xem Home Directory đã thay đổi hay chưa, hãy sử dụng grep
yêu cầu. Tôi đã hiển thị thông tin về người dùng 'batman' từ / etc / passwd
tập tin.
gaurav @ ubuntu: ~ $ sudo usermod -d / var / hpq / batman gaurav @ ubuntu: ~ $ grep 'var / hpq /' / etc / passwd batman: x: 1001: 4 :: / var / hpq /: / bin / false gaurav @ ubuntu: ~ $
Ghi chú: Để di chuyển nội dung từ thư mục chính cũ sang thư mục mới, bạn phải sử dụng -m
. Sử dụng cú pháp như hình dưới đây.
sudo usermod -m -d [new_directory_path] [tên người dùng]
Thay đổi Uid (Định danh Người dùng) của Người dùng
Uid (Định danh người dùng) là giá trị số duy nhất được Linux gán cho mọi người dùng. Hệ thống xác định người dùng với một uid
được giao cho nó. UID số 0 được chỉ định cho người dùng root.
Bạn có thể thay đổi UID của người dùng bằng lệnh bên dưới.
Cú pháp:
sudo usermod -u [new_UID] người dùng
Thí dụ:
Kiểm tra uid hiện tại cho người dùng batman bằng cách sử dụng id [người dùng]
yêu cầu.
gaurav @ ubuntu: ~ $ id batman uid = 1000 (batman) gid = 4 (adm) groups = 4 (adm), 30 (dip)
Uid của người dơi hiện là 1000. Hãy thay đổi nó thành 536 bằng cách sử dụng usermod
-u
yêu cầu.
gaurav @ ubuntu: ~ $ sudo usermod -u 536 batman [sudo] mật khẩu cho gaurav: gaurav @ ubuntu: ~ $
Bây giờ, hãy kiểm tra lại uid của người dùng batman bằng cách sử dụng id [người dùng]
yêu cầu
gaurav @ ubuntu: ~ $ id batman uid = 536 (batman) gid = 4 (adm) groups = 4 (adm), 30 (dip) gaurav @ ubuntu: ~ $
Ở đây, chúng ta có thể thấy rằng uid của người dùng batman được thay đổi từ 1000 thành 536 bằng cách sử dụng usermod -u
yêu cầu.
Thêm nhận xét cá nhân bằng tài khoản người dùng
Hãy lấy một ví dụ về người dùng 'batman'. Người dùng này đang làm việc trong một văn phòng lớn và gần đây anh ta đã thay đổi số điện thoại cơ quan và số bàn của mình. Vì vậy, anh ấy có thể thêm các chi tiết đã sửa đổi này vào tài khoản người dùng của mình bằng cách sử dụng usermod -c
yêu cầu.
Cú pháp:
sudo usermod -c Người dùng "Bình luận của bạn"
Đầu ra:
gaurav @ ubuntu: ~ $ sudo usermod -c "Tony Stark, 405, 95985475" batman gaurav @ ubuntu: ~ $ sudo grep 'batman' / etc / passwd batman: x: 536: 4: Tony Stark, 405, 95985475: / var / hpq /: / bin / false gaurav @ ubuntu: ~ $
Những thay đổi sẽ được phản ánh trong / etc / passwd
tập tin.
Khóa / vô hiệu hóa người dùng
Nếu bạn muốn hạn chế quyền truy cập vào hệ thống cho một người dùng nhất định, bạn có thể làm như vậy bằng cách khóa mật khẩu của người dùng cụ thể đó. Vì vậy, ngay cả khi người dùng cố gắng đăng nhập bằng mật khẩu, anh ta sẽ không được cấp quyền truy cập vào hệ thống. !
biểu tượng sẽ được thêm vào trước mật khẩu được mã hóa của người dùng trong / etc / shadow
, nghĩa là mật khẩu đã bị vô hiệu hóa.
Cú pháp:
sudo usermod -L [người dùng]
Đầu ra:
gaurav @ ubuntu: ~ $ sudo usermod -L batman gaurav @ ubuntu: ~ $ sudo grep batman / etc / shadow batman:!: 17612: 0: 99999: 7 ::: gaurav @ ubuntu: ~ $
Mở khóa / cho phép người dùng
Bạn có thể dễ dàng mở khóa / kích hoạt mật khẩu của người dùng đã bị vô hiệu hóa trước đó. Bạn có thể kiểm tra / etc / shadow
nộp hồ sơ cho sự thay đổi. !
biểu tượng sẽ bị xóa khỏi mật khẩu được mã hóa của người dùng.
Cú pháp:
sudo usermod -U [người dùng]
gaurav @ ubuntu: ~ $ sudo usermod -U batman gaurav @ ubuntu: ~ $ sudo grep batman / etc / shadow batman: t: 18511: 0: 99999: 7 ::: gaurav @ ubuntu: ~ $
Thay đổi lớp vỏ người dùng
GNU / Linux shell là một tiện ích tương tác đặc biệt. Nó cung cấp một cách để người dùng khởi động chương trình, quản lý tệp trên hệ thống tệp và quản lý các tiến trình đang chạy trên hệ thống Linux. Vỏ chứa một tập hợp các lệnh bên trong mà bạn sử dụng để kiểm soát những thứ như sao chép tệp, di chuyển tệp, đổi tên tệp, hiển thị các chương trình hiện đang chạy trên hệ thống và dừng các chương trình đang chạy trên hệ thống.
Bạn có thể thay đổi người dùng của shell bằng cách sử dụng usermod -s
yêu cầu. Sử dụng cú pháp dưới đây.
Cú pháp:
sudo usermod -s / bin / sh [người dùng]
gaurav @ ubuntu: ~ $ sudo usermod -s / bin / sh batman [sudo] mật khẩu cho gaurav: gaurav @ ubuntu: ~ $ grep batman / etc / passwd batman: x: 536: 4: Đây là tài khoản demo của tôi: / var / www /: / bin / sh
Bạn có thể xác minh thay đổi bằng cách sử dụng grep
như được hiển thị trong đầu ra ở trên.
Đặt ngày hết hạn của người dùng
Nếu bạn muốn một tài khoản người dùng nhất định chỉ được sử dụng trong một khoảng thời gian cụ thể thì bạn có thể đặt ngày hết hạn trên tài khoản người dùng đó. Ngày hết hạn được đặt ở dạng YYYY-MM-DD
.
Cú pháp:
usermod -e [YYYY-MM-DD] [Người dùng]
Để kiểm tra ngày hết hạn hiện tại của tài khoản, hãy sử dụng chage -l [người dùng]
yêu cầu.
gaurav @ ubuntu: ~ $ sudo chage -l batman [sudo] mật khẩu cho gaurav: Lần thay đổi mật khẩu cuối cùng: 06/09/2020 Mật khẩu hết hạn: không bao giờ Mật khẩu không hoạt động: không bao giờ Tài khoản hết hạn: không bao giờ Số ngày tối thiểu giữa các lần thay đổi mật khẩu: 0 Số lượng tối đa số ngày giữa các lần thay đổi mật khẩu: 99999 Số ngày cảnh báo trước khi mật khẩu hết hạn: 7 gaurav @ ubuntu: ~ $
Trong kết quả trên, chúng ta có thể thấy rằng hiện tại ngày hết hạn của batman người dùng chưa được đặt. Bây giờ chúng ta sẽ sử dụng chế độ người dùng
lệnh đặt ngày hết hạn cho batman người dùng.
Thí dụ:
sudo usermod -e 2022-06-19 batman
Bây giờ, chúng tôi sẽ kiểm tra lại trạng thái ngày hết hạn của người dùng bằng cách sử dụng chage -l [người dùng]
yêu cầu.
gaurav @ ubuntu: ~ $ sudo chage -l batman [sudo] mật khẩu cho gaurav: Lần thay đổi mật khẩu cuối cùng: 06/09/2020 Mật khẩu hết hạn: không bao giờ Mật khẩu không hoạt động: không bao giờ Tài khoản hết hạn: 19/06/2022 Số ngày tối thiểu giữa các lần thay đổi mật khẩu: 0 Số ngày tối đa giữa các lần thay đổi mật khẩu: 99999 Số ngày cảnh báo trước khi mật khẩu hết hạn: 7 gaurav @ ubuntu: ~ $
Bằng cách này, chúng tôi đã đặt ngày hết hạn cho tài khoản người dùng ‘batman’ là ngày 19 tháng 6 năm 2022.
Sự kết luận
Trong hướng dẫn này, chúng ta đã thấy các ứng dụng của usermod
lệnh để sửa đổi dữ liệu tài khoản người dùng cơ bản một cách toàn diện. Vui lòng liên hệ với chúng tôi trong trường hợp chúng tôi bỏ lỡ điều gì đó.
Hãy xem các bài viết khác của chúng tôi bên dưới để tìm hiểu thêm về Công nghệ. Chúc bạn học vui vẻ!