創(chuàng)建新用戶
useradd命令(也可以使用adduser)用來創(chuàng)建新的用戶賬號,其命令格式如下:
-d 設(shè)置新用戶的登陸目錄
-e 設(shè)置新用戶的停止日期,日期格式為MM/DD/YY
-f 帳戶過期幾日后永久停權(quán)。當(dāng)值為0時(shí)賬號則立刻被停權(quán)。而當(dāng)值為-1時(shí)則關(guān)閉此功能。預(yù)設(shè)值為-1
-g 使新用戶加入群組
-G 使新用戶加入一個(gè)新組。每個(gè)群組使用逗號“,”隔開,不可以夾雜空白字
-s 指定新用戶的登陸Shell
-u 設(shè)定新用戶的ID值
成功創(chuàng)建一個(gè)新用戶以后,在/etc/passwd文件中就會增加一行該用戶的信息,其格 式為:〔用戶名〕:〔密碼〕:〔UID〕:〔GID〕:〔身份描述〕:〔主目錄〕:〔登陸Shell〕,其中個(gè)字段被冒號“:”分成7各部分,由于小于 500的UID和GID一般都是系統(tǒng)自己保留,不用做普通用戶和組的標(biāo)志,所以新增加的用戶和組一般都是UID和GID大于500的。
例如使用如下命令:
useradd jonllen
將會創(chuàng)建一個(gè)名為jonllen的用戶
設(shè)置和修改用戶口令passwd
passwd命令用來設(shè)置和修改用戶命令,只有超級用戶和用戶自己可以修改密碼,其他的普通 用戶沒有修改其他用戶密碼的權(quán)利。其命令為:passwd (用戶名)。為避免輸入密碼是被人注意到有多少位,Linux并不采用類似Windows的密碼回顯〔顯示為*號〕,所以,輸入的這些字符是看不見的。例 如,為新建的jonllen用戶設(shè)置密碼可使用如下命令:
passwd jonllen
根據(jù)系統(tǒng)的提示信息輸入兩次密碼,系統(tǒng)會顯示passwd ::all authentication tokens updated successfully。表示修改密碼成功了。新建用戶的工作只有在該用戶設(shè)置了口令后才算完成,否則無法使用該用戶名登陸。
修改用戶信息usermod
usermod命令用來修改用戶信息,其命令格式為:usermod〔選項(xiàng)〕〔用戶名),常 用命令選項(xiàng)如下:
-d 更新使用者新的登陸目錄
-e 設(shè)置新用戶的停止日期,日期格式為MM/DD/YY
-f 帳戶過期幾日后永久停權(quán)。當(dāng)值為0時(shí)賬號則立刻被停權(quán)。而當(dāng)值為-1時(shí)則關(guān)閉此功能。預(yù)設(shè)值為-1
-g 更新使用者新用戶加入群組
-G 定義使用者為一堆groups的成員。每個(gè)群組使用“??”隔開,不可以夾雜空白字
-l 變更用戶登陸時(shí)的名稱,同時(shí)使用者目錄名也會跟著更動成新的名稱
-s 指定新用戶Shell
-u 用戶ID值,必須為唯一的ID值。用戶目錄樹下所用的文檔目錄其userID會自動變更,放在擁護(hù)目錄外的文檔則要自行手動更動
例如,下面的命令修改用戶信息:
usermod –d/home –s/bin/bash jonllen
將用戶名jonllen的主目錄路徑設(shè)置在/home,登陸的Shell設(shè)置為/bin /bash。一般情況下usermod命令會參照命令指令的部分修改用戶賬號信息。但usermod不允許改變正在線上的使用者賬號名稱,因此,當(dāng)用 usermod來改變用戶賬號信息時(shí),必須確認(rèn)這名沒在電腦上執(zhí)行任何程序。
刪除用戶userdel
userdel命令用來刪除已經(jīng)存在的用戶及相關(guān)的文檔,其命令格式為:userdel 〔選項(xiàng)〕用戶名,userdel命令的常用選項(xiàng):
-r 將用戶目錄下的文檔一并刪除。在其他位置上的文檔也將一一找出并刪除。
Userdel不允許移除正在線上的用戶賬號,因此,如果想刪除這類用戶賬號,必須先殺掉用 戶在系統(tǒng)上運(yùn)行的程序才能進(jìn)行賬號刪除。
用戶間切換su
su 命令常用于不同用戶間切換。其命令格式為:su〔用戶名〕。su命令的常見用法是變成跟用戶或超級用戶,如果發(fā)出不帶用戶名的su命令,則系統(tǒng)提示輸入根 口令,輸入之后則可換為根用戶。如果登陸為根用戶,則可以用su命令成為系統(tǒng)上任何用戶而不需要口令。例如,如果登陸為jonllen,要切換為 root,只要用如下命令:
su root
然后系統(tǒng)提示輸入root口令,輸入正確的口令之后就可以切換到root。完成之后就可以用 exit命令返回到j(luò)onllen。
查看當(dāng)前在線用戶who
who命令主要用于查看當(dāng)前在線上的用戶情況。這個(gè)命令非常有用。如果用戶想和其他用戶建立 即使通訊,比如使用talk命令,那么首先要確定的就是該用戶確實(shí)在線上,不然talk進(jìn)程就無法建立起來。又如,系統(tǒng)管理員希望監(jiān)視每個(gè)登陸的用戶此時(shí) 此刻的所作所為,也要使用who命令。Who命令的常用命令格式和常用選項(xiàng)如下:
who (選項(xiàng))
-a 顯示所有用戶的所有信息
-m 顯示運(yùn)行該程序的用戶名,和“who am I”的作用一樣
-q 只顯示用戶的登陸賬號和登陸用戶的數(shù)量,該選項(xiàng)優(yōu)先級高于其他任何選項(xiàng)
-u 在登陸用戶后面顯示該用戶最后一次對系統(tǒng)進(jìn)行操作距今的時(shí)間
-H 顯示列標(biāo)題
所有的選項(xiàng)是可選的,例如,使用命令:
who -aH
查看所有用戶的所有信息及標(biāo)題。
新建組群groupadd
groupadd命令用來建立新的用戶組,其命令格式為:groupadd〔選項(xiàng)〕〔用戶名 稱〕,常用選項(xiàng)有:
-g GID值。除非使用-o參數(shù)不然該值必須是唯一,不可相同,數(shù)值不可為負(fù),GID值預(yù)設(shè)為最小不得小于500而逐次增加。0—499傳統(tǒng)上是保留系統(tǒng)賬號 使用。
-f 新增的一個(gè)已經(jīng)存在的群組賬號,系統(tǒng)會出現(xiàn)錯(cuò)誤訊息然后結(jié)束groupadd
如果是這樣的情況,不會新增這個(gè)群組(如果是這個(gè)情況,系統(tǒng)不會在新增一次)。也可同時(shí)加上 -g選項(xiàng),當(dāng)你加上一個(gè)GID時(shí),此時(shí)GID就不用是唯一值,可不加-o參數(shù),建好的群組會顯示建立后的結(jié)果(adding a group as neither –g or –o options were specified),這是Red Hat Linux額外增設(shè)的選項(xiàng)。
刪除群組groupdel
groupdel命令用來刪除已經(jīng)存在的用戶組,其命令格式為:groupdel (組名)。同userdel類似,如果有任何一個(gè)組內(nèi)的用戶在上線,就不能移除該用戶組,因此,如果組內(nèi)有用戶在線的話,最好先移出該用戶,然后在刪除該 用戶。
vi編輯器基本語法
vi是Linux里最基本的編輯器,可分為三種操作狀態(tài),分別是命令模式(Command mode)、插入模式(Insert mode)和底線命令模式(Last line mode),各模式的功能區(qū)分如下:
1.Comand mode:控制屏幕光標(biāo)的移動,字符或光標(biāo)的刪除,移動復(fù)制某區(qū)段及進(jìn)入Insert mode下,或者到Last line mode。
2.Insert mode:唯有在Insert mode下,才可做文字?jǐn)?shù)據(jù)輸入,按Esc等可回到Comand mode。
3.Last line mode:將儲存文件或離開編輯器,也可設(shè)置編輯環(huán)境,如尋找字符串、列出行號等。不過可以把vi簡化成兩個(gè)模式,即是將Last line mode也算入Command mode,把vi分成Command 和Insert mode。
[vi的基本操作]
在系統(tǒng)提示符號輸入vi及文件名稱后,即可進(jìn)入vi全屏幕編輯畫面:vi (文件名)。有一點(diǎn)要特別注意,就是進(jìn)入vi之后是默認(rèn)是處于“Command mode”命令模式,需要要切換到Insert mode才能輸入文字。
1.切換至Insert mode編輯文件
在Command mode下按‘i’、‘a’或‘o’三鍵就可進(jìn)入Insert mode。這時(shí)候就可以開始輸入文字了。
i 插入,從目前光標(biāo)所在之處插入所輸入的文字。
a 增加,目前光標(biāo)所在的下一個(gè)字開始輸入文字。
o 插入新的一行,從行首開始輸入文字。
2.Insert的切換→Command mode,按Esc鍵
3.離開vi及保存文件
在Command mode下,可按冒號“:”鍵入入Last line mode,例如:
:w filename (輸入“w filename”,將文章存入指定的文件名filename)
:wq (輸入“wq”,因?yàn)檫M(jìn)入之時(shí)已經(jīng)指定文件名testfile,所以會寫入testfile并離開vi)
:q! (輸入“q!”,強(qiáng)制離開并放棄編輯的文件)
[Command mode常用功能鍵命令]
1.移動光標(biāo)
vi可以直接用鍵盤上的光標(biāo)鍵來上下左右移動,但正規(guī)的vi是用小寫英文字母
h、j、k、l,分別控制光標(biāo)左、下、上、右移一格。
按Ctrl+B:屏幕往后移動一頁。[常用]
按Ctrl+F:屏幕往前移動一頁。[常用]
按Ctrl+U:屏幕往后移動半頁。
按Ctrl+D:屏幕往前移動半頁。
按 0 (數(shù)字零):移動文章的開頭。[常用]
按 G:移動到文章的最后。[常用]
按 w:光標(biāo)跳到下個(gè)word的開頭。[常用]
按 e:光標(biāo)跳到下個(gè)word的字尾。
按 b:光標(biāo)回到上個(gè)word的開頭。
按 $:移到光標(biāo)所在行的行尾。[常用]
按 ^:移到該行第一個(gè)非空白的字符。
按 0:移到該行的開頭位置。[常用]
按 #:移到該行的第#個(gè)位置,例:51、121。[常用]
2.刪除文字
x:每按一次刪除光標(biāo)所在位置的后面一個(gè)字符。[超常用]
#x:例如,6x 表刪除光標(biāo)所在位置的后面6個(gè)字符。[常用]
X:大寫的X,每按一次刪除光標(biāo)所在位置的前面一個(gè)字符。
#X:例如,20X 表刪除光標(biāo)所在位置的前面20個(gè)字符。
dd:刪除光標(biāo)所在行。[超常用]
#dd:例如,6dd表刪除從光標(biāo)所在的該行往下數(shù)6行之文字。[常用]
3.復(fù)制
yw:將光標(biāo)所在處到字尾的字符復(fù)制到緩沖區(qū)中(和#x、#X的功能相反)。
p:將緩沖區(qū)內(nèi)的字符粘貼到光標(biāo)所在位置(指令‘yw’與‘p必須搭配使用)。
yy:復(fù)制光標(biāo)所在行。[超常用]
p:復(fù)制單行到您想粘貼之處。(指令‘yy’與‘p’必須搭配使用)
#yy:如:6yy表示拷貝從光標(biāo)所在的該行往下數(shù)6行之文字。[常用]
p:復(fù)制多行到您想粘貼之處。(指令‘#yy’與‘p’必須搭配使用)
“ayy:將復(fù)制行放入buffer a, vi提供buffer功能,可將常用的數(shù)據(jù)存在buffer
“ap:將放在buffer a的數(shù)據(jù)粘貼。
“b3yy:將三行數(shù)據(jù)存入buffer b。
“b3p:將存在buffer b的資料粘貼
4.取代
r: 取代光標(biāo)所在處的字符:[常用]
R:取代字符直到按Esc為止。
5.復(fù)原(undo)上一個(gè)指令
u:假如您誤操作一個(gè)指令,可以馬上按u,回復(fù)到上一個(gè)操作。[超常用]
.: .可以重復(fù)執(zhí)行上一次的指令。
6.更改
cw:更改光標(biāo)所在處的字到字尾$處。
c#w:例如,c3w代表更改3個(gè)字。
7.跳至指定行
Ctrl+G:列出光標(biāo)所在行的行號。
#G:例如,15G,表示移動光標(biāo)至文章的第15行行首。[常用]
[Last line mode常用功能鍵命令]
要進(jìn)入Last line mode,先按Esc鍵確定您已經(jīng)處于Command mode下后,再按冒號“:”或“/”或“?”三鍵的其中一鍵進(jìn)入Last line mode。
1.列出行號
set nu:輸入“set nu”后,會在文章的每一行前面列出行號。
2.跳到文章的某一行
#:井號代表一個(gè)數(shù)字,在Last line mode提示符號“:”前輸入數(shù)字,再按Enter就會跳到該行了,如:15[Enter]就會跳到文章的第15行。[常用]
3.尋找字符串
/關(guān)鍵字:先按/,再輸入您想尋找的字,如果第一次找的關(guān)鍵字不是您相盡可能的,可以一直按 n會往下尋找到您要的關(guān)鍵字為止。
?關(guān)鍵字:先按?,再輸入您想尋找的字,如果第一次找的關(guān)鍵字不是您想要的,可以按n會往前 尋找到您要的關(guān)鍵字為止。
4.取代字符串
1,$s/string/replae/g:在last line mode輸入“1,$s/string/replace/g”會將全文的string字符串取代為replace字符串,其中1,$s就是指搜尋區(qū)間為文 章從頭至尾的意思,g則是表示全部取代不必確認(rèn)。%s/string/replace/c:同樣會將全文的string字符串取代為replace字符 串,和上面指令不同的地方是,%s和1,$s是相同的功能,c則是表示要替代之前必須再次確認(rèn)是否取代。
1,20s/string/replace/g:將1至20行間的string替代為 relpace字符串。
5.存文件
w:在last line mode提示符號“:”前按w即可將文件存起來。[超常用]
#,# w filename:如果您想摘取文章的某一段,存成另一個(gè)文件,可用這個(gè)指令#代表行號,例如30,50 w nice,將您正在編輯文章的第30~50行存成nice這個(gè)文件。
6.離開
q:按q就離開,有時(shí)如果無法離開vi,可搭配“?。簭?qiáng)置離開vi,如“q!”
qw:一般建議離開時(shí),搭配w一起使用,如此離開時(shí)還可存文件。[常用]
smb文件共享
1.啟動samba服務(wù)
/etc/init.d/samba start
2.訪問Windows共享目錄
smbclient -U Jonllen -L 192.168.0.77(之后根據(jù)提示輸入用戶Jonllen的密碼)
3.將共享目錄mount掛接到本地機(jī)上
mount -t smbfs -o username=Jonllen //home/windows
也可以把 passwd 直接作為參數(shù)傳遞
mount -t smbfs -o username=Jonllen,passwd=xxx //home/windows
直接把 IP 地址作為參數(shù)
mount -t smbfs -o username=Jonllen,passwd=xxxx,ip=xxx.xxx.xxx.xxx //home/windows
mount -t cifs //192.168.0.77/share /home/mnt -o username=jonllen,password=xxx,iocharset=utf8
4.創(chuàng)建一個(gè)允許讀寫的共享目錄
vi /etc/samba/smb.conf
[修改配置文件]
[global]
workgroup = fortuneage
netbios name = Linux249
server string = Linux Samba Server
security = share
[home]
path = /opt/share
writeable = yes
browseable = yes
guest ok = yes
[global]這段是全局配置,是必段寫的。workgroup 就是Windows中顯示的工作組;在這里我設(shè)置的是fortuneage;netbios name 就是在Windows中顯示出來的計(jì)算機(jī)名;server string 就是Samba服務(wù)器說明,可以自己來定義;這個(gè)不是什么重要的;security 這是驗(yàn)證和登錄方式,這里我們用了share ;驗(yàn)證方式有好多種,這是其中一種;另外一種常用的是user的驗(yàn)證方式;如果用share呢,就是不用設(shè)置用戶和密碼了。
[home]這個(gè)在Windows中顯示出來是共享的目錄;path = 可以設(shè)置要共享的目錄放在哪里;writeable 是否可寫,這里我設(shè)置為可寫;browseable 是否可以瀏覽,可以;可以瀏覽意味著,我們在工作組下能看到共享文件夾。如果您不想顯示出來,那就設(shè)置為 browseable=no;guest ok 匿名用戶以guest身份是登錄。
[建立相應(yīng)目錄并授權(quán)]
mkdir -p /opt/share
id nobody
chown -R nobody:nobody /opt/share
關(guān)于授權(quán)nobody,我們先用id命令查看了nobody用戶的信息,發(fā)現(xiàn)他的用戶組也是 nobody,我們要以這個(gè)為準(zhǔn)。有些系統(tǒng)nobody用戶組并非是nobody。
Linux應(yīng)用軟件安裝
1.rpm包
這種軟件包就像windows的EXE安裝文件一樣,各種文件已經(jīng)編譯好,并打了包,哪個(gè)文 件該放到哪個(gè)文件夾,都指定好了,安裝非常方便,在圖形界面里你只需要雙擊就能自動安裝,在shell命令行下如下安裝:
rpm -i oracle-xe-10.2.0.1-1.0.i386.rpm(--force --nodeps選項(xiàng)忽略所有依賴關(guān)系和文件問題)
[卸載方法]
因?yàn)長inux下的軟件名都包括版本號,所以卸載前最好先確定這個(gè)軟件的完整名稱。查找 RPM包軟件:rpm -qa xxx*,注意:xxx指軟件名稱開頭的幾個(gè)字母,不要求寫全,但別錯(cuò),*就是通配符號“*”,即星號,如你想查找機(jī)子里安裝的REALPLAYER軟 件,可以輸入:rpm -qa realplay*。找到軟件后,顯示出來的是軟件完整名稱,如firefox-1.0.1-1.3.2,執(zhí)行卸載命令:rpm -e firefox-1.0.1-1.3.2。查看安裝目錄:執(zhí)行命令rpm -ql firefox-1.0.1-1.3.2。
2.tar.gz(bz或bz2等)結(jié)尾的源代碼包,這種軟件包里面都是源程序,沒有編譯 過,需要編譯后才能安裝
用CD 命令進(jìn)入源代碼壓縮包所在的目錄,根據(jù)壓縮包類型解壓縮文件(*代表壓縮包名稱)
tar -zxvf ****.tar.gz
tar -jxvf ****.tar.bz(或bz2)
用CD命令進(jìn)入解壓縮后的目錄,輸入編譯文件命令:./configure(有的壓縮包已經(jīng) 編譯過,這一步可以省去),然后是命令:make,再是安裝文件命令:make install,安裝完畢。
[卸載方法]
用CD 命令進(jìn)入編譯后的軟件目錄,即安裝時(shí)的目錄,執(zhí)行反安裝命令:make uninstall,注意make install命令過程中的安裝目錄,或者閱讀安裝目錄里面的readme文件,當(dāng)然最好的辦法是在安裝的過程中指定安裝目錄,即 在./configure命令后面加參數(shù)--prefix=/**,如:./configure --prefix=/usr/local/aaaa,即把軟件裝在/usr/local/路徑的aaaa這個(gè)目錄里。一般的軟件的默認(rèn)安裝目錄在/usr /local或者/opt里,可以到那里去找找。
3.以bin結(jié)尾的安裝包,這種包類似于RPM包,安裝也比較簡單
用CD 命令進(jìn)入源代碼壓縮包所在的目錄,給文件加上可執(zhí)行屬性:chmod +x ***.bin(中間是字母x,小寫),執(zhí)行命令:./******.bin(realplayer for Linux就是這樣的安裝包)
[卸載方法]
把安裝時(shí)中選擇的安裝目錄刪除就OK。
[安裝完軟件后如何執(zhí)行]
有些軟件安裝后會自動在應(yīng)用程序列表里加上快捷鍵,和windows一樣,到那里找就行了;
如果在應(yīng)用程序列表里找不到的話,可以直接在/開始/運(yùn)行命令里輸入命令:啟動命令一般就是 軟件名,如firefox,realplay,xmms等;
也可以打開一個(gè)shell終端,輸入軟件名,和在“運(yùn)行命令”里一樣。如果不知道命令全程的 話,可以輸入開頭的字母,然后按tab鍵查找,系統(tǒng)會自動顯示以輸入字母開頭的所有命令/;
你也可以直接到安裝目錄下運(yùn)行啟動文件,Linux下的可執(zhí)行圖標(biāo)和shell終端圖標(biāo)很 像;
到/usr/bin目錄里找安裝的軟件啟動文件執(zhí)行命令。Linux系統(tǒng)把所有可執(zhí)行的文件 命令在/usr/bin目錄里都作了啟動連接,你可以去那個(gè)目錄尋找你安裝的文件的啟動命令,雙擊啟動;
Linux后臺服務(wù)
1.查看所有后臺服務(wù)命令
service --status-all
啟動服務(wù):service smb start
停止服務(wù):service smb stop
重新啟動:service smb restart
2.注冊后臺服務(wù)
cp /usr/local/mysql5/share/mysql/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig --level 2345 mysqld on
chown mysql:mysql -R /usr/local/mysql5/
service mysqld start
對比Windows注冊后臺服務(wù)的cmd命令
sc create mysql binPath= "C:\Program Files\MySQL\MySQL Server 5.0\bin\mysqld-nt.exe" DisplayName= "MySql" depend= Tcpip start= auto
sc delete mysql
Xshell設(shè)置顯示語言
export LANG=en_US