標籤:c java a int get com
# useradd –d /usr/sam -m sam
此命令建立了一個使用者sam,其中-d和-m選項用來為登入名稱sam產生一個主目錄/usr/sam(/usr為預設的使用者主目錄所在的父目錄)。
假設目前使用者是sam,則下面的命令修改該使用者自己的口令:
# passwd
Old password:******
New password:*******
Re-enter new password:*******
如果是超級使用者,可以用下列形式指定任何使用者的口令:
# passwd sam
New password:*******
Re-enter new password:*******
>>參考1====================================
1、添加使用者
首先用adduser命令添加一個普通使用者,命令如下:
#adduser tommy //添加一個名為tommy的使用者
#passwd tommy //修改密碼
Changing password for user tommy.
New UNIX password: //在這裡輸入新密碼
Retype new UNIX password: //再次輸入新密碼
passwd: all authentication tokens updated successfully.
2、賦予root許可權
方法一:修改 /etc/sudoers 檔案,找到下面一行,把前面的注釋(#)去掉
## Allows people in group wheel to run all commands
%wheel ALL=(ALL) ALL
然後修改使用者,使其屬於root組(wheel),命令如下:
#usermod -g root tommy
修改完畢,現在可以用tommy帳號登入,然後用命令 su - ,即可獲得root許可權進行操作。
方法二:修改 /etc/sudoers 檔案,找到下面一行,在root下面添加一行,如下所示:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
tommy ALL=(ALL) ALL
修改完畢,現在可以用tommy帳號登入,然後用命令 su - ,即可獲得root許可權進行操作。
>>參考2====================================
用useradd新增的使用者不能直接用ssh遠端存取,需要修改ssh相關配置
如下:
vi /etc/ssh/sshd_config
添加
AllowUsers [email protected] admin
多個使用者用空格隔開
>>參考3====================================
如何讓普通使用者獲得root使用者的許可權執行操作而不需要知道root使用者的密碼或向root使用者進行切換呢?有一個命令sudo可以實現這個功能.
Sudo的工作流程:
(1)root使用者編輯/etc/sudoers檔案,添加要分配的普通使用者記錄,其中有這麼一行記錄:root ALL=(ALL) ALL,在這行後面添加:Sam ALL=(ALL) ALL
(2) 那麼sam使用者在執行操作時,如果所執行的操作自己沒有許可權,則會去/etc/sudoers檔案中尋找是否有對應的記錄,如果有的話則臨時獲得root許可權,執行只有root才能執行的操作.
注意:這裡會提示輸入密碼,但是輸入的是sam使用者的密碼,而不是root使用者的密碼.例如:
Shell> sudo mkdir –p a/b/c/d
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
Password: #這裡的密碼是sam使用者自己的密碼,而不是root的密碼
幾個操作:
1) 編輯/etc/sudoers檔案,使用visudo命令,
Shell> visudo
其實visudo命令也是調用vi去編輯sudoer檔案的,但是在儲存時會去檢查你修改後檔案的文法,如果錯誤是不能儲存的,但是如果直接用vi來編輯該檔案,強制儲存雖然成功,但是如果有語
法錯誤這裡並不能給出提示,也就導致了後面sudo命令的不可用.
2) 記錄解析:
Sam ALL=(ALL) ALL
使用者帳戶 登入的主機=(可以變換的身份) 可以下達的命令
上述語句的意思是 sam使用者可以在任何地方登入,並可切換成任何使用者進行任何操作.這裡如果(ALL)不寫,唯寫為 sam ALL=ALL,他預設只能切換為root使用者.
>>參考4====================================
linux chown命令參數及用法詳解--改變檔案的所有者:
要變更檔 program.c 的所有者: chown jim program.c
program.c 的使用者存取權限現在應用到 jim。作為所有者,jim 可以使用 chmod 命令允許或拒絕其他使用者訪問 program.c。
要將目錄 /tmp/src 中所有檔案的所有者和組更改為使用者 john 和組 build:chown -R john:build /tmp/src
如: tomcat的安裝目錄的所有者修改(#chown -R user:group /usr/java/tomcat5.5)
>>參考5====================================
linux下添加,刪除,修改,查看使用者和使用者組
1,建立組
groupadd test
增加一個test組
2,修改組
groupmod -n test2 test
將test組的名子改成test2
3,刪除群組
groupdel test2
刪除 組test2
4,查看組
a),查看當前登入使用者所在的組 groups,查看apacheuser所在組groups apacheuser
b),查看所有組 cat /etc/group
c),有的linux系統沒有/etc/group檔案的,這個時候看下面的這個方法
cat /etc/passwd |awk -F [:] ‘{print $4}’ |sort|uniq | getent group |awk -F [:] ‘{print $1}’
這裡用到一個命令是getent,可以通過組ID來尋找組資訊,如果這個命令沒有的話,那就很難尋找,系統中所有的組了.
二,使用者操作
1,增加使用者
查看複製列印?
[[email protected] mytest]# useradd –help
Usage: useradd [options] LOGIN
Options:
-b, –base-dir BASE_DIR 設定基本路徑作為使用者的登入目錄
-c, –comment COMMENT 對使用者的注釋
-d, –home-dir HOME_DIR 設定使用者的登入目錄
-D, –defaults 改變設定
-e, –expiredate EXPIRE_DATE 設定使用者的有效期間
-f, –inactive INACTIVE 使用者到期後,讓密碼無效
-g, –gid GROUP 使使用者只屬於某個組
-G, –groups GROUPS 使使用者加入某個組
-h, –help 協助
-k, –skel SKEL_DIR 指定其他的skel目錄
-K, –key KEY=VALUE 覆蓋 /etc/login.defs 設定檔
-m, –create-home 自動建立登入目錄
-l, 不把使用者加入到lastlog檔案中
-M, 不自動建立登入目錄
-r, 建立系統帳號
-o, –non-unique 允許使用者擁有相同的UID
-p, –password PASSWORD 為新使用者使用加密密碼
-s, –shell SHELL 登入時候的shell
-u, –uid UID 為新使用者指定一個UID
-Z, –selinux-user SEUSER use a specific SEUSER for the SELinux user mapping
[[email protected] mytest]# useradd --help
Usage: useradd [options] LOGIN
Options:
-b, --base-dir BASE_DIR 設定基本路徑作為使用者的登入目錄
-c, --comment COMMENT 對使用者的注釋
-d, --home-dir HOME_DIR 設定使用者的登入目錄
-D, --defaults 改變設定
-e, --expiredate EXPIRE_DATE 設定使用者的有效期間
-f, --inactive INACTIVE 使用者到期後,讓密碼無效
-g, --gid GROUP 使使用者只屬於某個組
-G, --groups GROUPS 使使用者加入某個組
-h, --help 協助
-k, --skel SKEL_DIR 指定其他的skel目錄
-K, --key KEY=VALUE 覆蓋 /etc/login.defs 設定檔
-m, --create-home 自動建立登入目錄
-l, 不把使用者加入到lastlog檔案中
-M, 不自動建立登入目錄
-r, 建立系統帳號
-o, --non-unique 允許使用者擁有相同的UID
-p, --password PASSWORD 為新使用者使用加密密碼
-s, --shell SHELL 登入時候的shell
-u, --uid UID 為新使用者指定一個UID
-Z, --selinux-user SEUSER use a specific SEUSER for the SELinux user mappinguseradd test
passwd test
增加使用者test,有一點要注意的,useradd增加一個使用者後,不要忘了給他設定密碼,不然不能登入的。
2,修改使用者
usermod -d /home/test -G test2 test
將test使用者的登入目錄改成/home/test,並加入test2組,注意這裡是大G。
gpasswd -a test test2 將使用者test加入到test2組
gpasswd -d test test2 將使用者test從test2組中移出
3,刪除使用者
userdel test
將test使用者刪除
4,查看使用者
a),查看當前登入使用者
[[email protected] ~]# w
[[email protected] ~]# who
b),查看自己的使用者名稱
[[email protected] ~]# whoami
c),查看單個使用者資訊
[[email protected] ~]# finger apacheuser
[[email protected] ~]# id apacheuser
d),查看使用者登入記錄
[[email protected] ~]# last 查看登入成功的使用者記錄
[[email protected] ~]# lastb 查看登入不成功的使用者記錄
e),查看所有使用者
[[email protected] ~]# cut -d : -f 1 /etc/passwd
[[email protected] ~]# cat /etc/passwd |awk -F \: ‘{print $1}’
----------------------------------------------------------------
Linux下有三類使用者:
1.超級使用者: root 具有作業系統的一切許可權, UID為0
2.普通使用者:具有作業系統有限的許可權 UID為500—6000
3.偽使用者: 是為了方便系統管理,滿足相應的系統進程檔案屬主的要求,不能登入系統,UID為1--499
Linux通過 /etc/passwd進行使用者管理,
執行命令開啟該檔案: vi /etc/passwd
在此檔案中只定義帳號,不定義口令。一行定義一個使用者,分為七個部分:
第一列為帳號名稱,
第二列為使用者密碼(密碼不在此定義),
第三列為使用者標識碼(使用者ID),用來確認使用者身份
第四列為使用者所在組的表示(使用者組ID),
第五列為使用者相關資訊(如root),
第六列為使用者家目錄(/root),
第七列為使用者的環境(使用者使用的shell)
shell:命令列命令解析器,如 echo $SHELL,查看當前shell
id 賬戶名,查看當前賬戶的uid
改變所屬使用者組:
chgrp [-R] dirname/filename ..
-R: 進行遞迴(recursive)的持續更改,即連同子目錄下得所有檔案、目錄都更新成這個使用者組。常常用在更改某一目錄的情況
eg: chgrp users install.log //users為使用者組名
變更檔擁有者:
檔案擁有者必須已經存在於系統中們也就是在/etc/passwd這個檔案中有記錄的使用者名稱稱才可改變
chown [-R] 帳號名稱:檔案或目錄
chown [-R] 帳號名稱:使用者組名稱、檔案或目錄
eg: chown bin install.log
chown root:root install.log
當需要複製檔案給其他人時:
cp 源檔案 目的文
eg: cp .bashrc .bashrc_test
ls -al .bashrc*
更改9個屬性:
數字類型改變檔案許可權
使用chmod命令改變檔案的屬性,屬性的設定方法有兩種,分別可以使用數字或者是符號:
Linux 檔案的基本屬性有9個,分別是 owner/group/others組別的read/write/excute屬性。
eg: -rwxrwxrwx中,三個為一組,其中可以使用數字來表示各個屬性,各屬性的對照表位:
r:4
w:2
x:1
將同一組(owner/group/others)的3個屬性(r/w/x)累加,如當前屬性為[-rwxrwx---],則是:
owner=rwx=4+2+1=7
group=rwx=4+2+1=7
others= --- =0+0+0=0
該屬性為770.
更改屬性的命令chmod文法:
chmod [-R] xyz 檔案或目錄
xyz:就是數字類型的許可權屬性,為rwx屬性數值的和
eg:
ls -al .bashrc
chmod 777 .bashrc
ls -al .bashrc
符號類型改變檔案許可權
可以通過u(user)、g(group)、o(others)來表示三組的屬性,a表示all,即全部的三組,讀寫屬性可以寫成r、w、x:
chmod
u
g
o
a
+(加入)
-(除去)
=(設定)
r
w
x
檔案或目錄
eg: chmod u=rwx,go=rx .bashrc
如果想把一個檔案屬性設定為 -rwxr-xr--,可以這樣: chmod u=rwx,g=rx,o=r filename
如果不知道檔案的原先屬性,但想增加其的每人均可寫入的許可權,可以這樣:
chmod a+w filename
去掉所有人的x屬性:
chmod a-x filename