کامند 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
تغییر میده.