usermod ایجاد تغییرات روی یوزرها

کامند usermod برای ویرایش اکانت های روی سیستم استفاده میشه.

این کامند هم مثل سایر کامند یکسری آپشن داره که شروع به توضیح آنها میکنم.

 

-c

با این آپشن میتونیم کامنتی به یک یوزر اضافه کنیم. مثال:

amin@xubuntu:/etc$ cat passwd | grep mzz
mzz:x:1001:1001:MZZ-USER:/home/mzz:/bin/sh
amin@xubuntu:/etc$ sudo usermod -c "*MZZ is my brother's user*" mzz
amin@xubuntu:/etc$ cat passwd | grep mzz
mzz:x:1001:1001:*MZZ is my brother's user*:/home/mzz:/bin/sh

میبینید که کامنت یوزر mzz رو تغییر داد.

 

-g

gid گروه یک یوزر رو با این آپشن میتونیم تغییر بدیم مثلا اگر gid یوزری ۱۰۰۱ باشه میتونیم gid اونرو به شماره ۱۰۰۵ تغییر بدیم. مثال:

amin@xubuntu:/etc$ id mzz
uid=1001(mzz) gid=1001(mzz) groups=1001(mzz)
amin@xubuntu:/etc$ sudo usermod -g 1005 mzz
amin@xubuntu:/etc$ id mzz
uid=1001(mzz) gid=1005(tester) groups=1005(tester)

 

-G

این آپشن مثل قبلی هست فقط در این آپشن ما میتونیم یک یوزر رو هم زمان عضو چند گروه کنیم. مثال:

amin@xubuntu:/etc$ id mzz
uid=1001(mzz) gid=1005(tester) groups=1005(tester)
amin@xubuntu:/etc$ sudo usermod -G sudo,vboxusers,ssh mzz
amin@xubuntu:/etc$ id mzz
uid=1001(mzz) gid=1005(tester) groups=1005(tester),27(sudo),109(ssh),125(vboxusers)

برای جداسازی نام گروه ها از , استفاده میکنیم.

-l

با این آپشن میتونیم نام یوزر رو تغییر بدیم. مثال:

sudo usermod -l mohammad2z mzz

 

-L

با این آپشن میتونیم یوزری رو Lock کنیم که دیگه نشه با اون یوزر لاگین کرد. مثال:

amin@xubuntu:/etc$ sudo usermod -L mohammad2z
amin@xubuntu:/etc$ sudo cat shadow | grep mohammad2z
mohammad2z:!$6$ONa/Myeh$OIPe8thfndfDCLuc640NvZZcM7FA6YioLiMQHTsW2/LOisbcq316fRA2F1f9mDGreyOxdHM8/E8M/Hgd/BpUW0:16098:0:99999:7:::

علامت !‌ که بعد نام یوزر آمده بمعنی Lock بودن یوزر هست.
 

-U

 

برای Unlock کردن یوزری که Lock شده استفاده میشه. مثال:

amin@xubuntu:/etc$ sudo usermod -U mohammad2z
amin@xubuntu:/etc$ sudo cat shadow | grep mohammad2z
mohammad2z:$6$ONa/Myeh$OIPe8thfndfDCLuc640NvZZcM7FA6YioLiMQHTsW2/LOisbcq316fRA2F1f9mDGreyOxdHM8/E8M/Hgd/BpUW0:16098:0:99999:7:::

در اینجا علامت !‌ از بین رفته.
 

-u

این آپشن برای تغییر uid یوزر استفاده میشه. مثال:

sudo usermod -u 1004 mohammad2z

 

-o

زمانی که uid یک یوزری مثلا ۱۰۰۰ باشه و ما قصد داریم uid یوزی دیگری رو به همون uid تغییر دهیم از اگر آپشن قبلی ( u- ) استفاده کنیم با پیام خطای زیر روبرو میشیم:

amin@xubuntu:~$ sudo usermod -u 1000 tester
usermod: UID '1000' already exists

راه حل استفاده از آپشن o- هست. مثال:

amin@xubuntu:~$ sudo usermod -ou 1000 tester

 

-d

با این آپشن میشه آدرس home directory یک یوزر رو تغییر داد. مثال:

sudo usermod -d /home/amin/newuser tester

 

-m

فقط با آپشن d- استفاده میشه و کارش اینه که home directory یوزر - همراه با محتوایات آن رو به جای جدید منتقل میکنه. مثال:

sudo usermod -md /home/amin/tester1 tester1

home directory یوزر tester از آدرس

/home/tester1

به

/home/amin/tester1

منتقل شد.

 

-f

این آپشن برای مشخص کردن تعداد روزهایی که یوزر بعد از اینکه پسوردش فاقد اعتبار شد (expire) وقت دارد تا پسوردش رو تغییر بده در غیر این صورت اکانت قفل میشود و اجازه لاگین کردن رو نخواهد داشت. مثال:

sudo usermod -f 4 tester1

در این مثال اگر یوزر tester بعد از expire شدن پسوردش فقط ۴ روز برای تغییر پسورد مهلت خواهد داشت.

-e

با این آپشن میتونیم تاریخ غیر فعال شدن یوزر رو مشخص کنیم. بعد از اتمام تاریخ اکانت غیر فعال شده و امکان لاگین کردن به آن وجود ندارد. فرمت تاریخ به این شکل YYYY-MM-DD هست. مثال:

sudo usermod -e 2014-05-22 tester1

برای مشاهده نتیجه میتونیم کامند chage به همراه آپشن l- بکار ببریم. مثال:

amin@xubuntu:~$ sudo usermod -e 2014-05-22 tester1
amin@xubuntu:~$ sudo chage -l tester1
Last password change                    : Jan 28, 2014
Password expires                    : never
Password inactive                    : never
Account expires                        : May 22, 2014
Minimum number of days between password change        : 0
Maximum number of days between password change        : 99999
Number of days of warning before password expires    : 7

 

-s

این آپشن برای تغییر login shell یک یوزر استفاده میشه. مثال:

sudo usermod -s /bin/sh mohammad2z

login shell یوزر tester رو از

/bin/bash

به

/bin/sh

تغییر میده.