網絡工程師學Linux 必須掌握命令

網絡工程師學Linux 必須掌握命令
———用戶管理——
1.useradd 添加用戶
命令格式 :useradd [選項] 所添加的用戶名稱
選項 :
- d 添加用戶是指定主目錄
例: [root@localhost ~]# useradd -d /yema yema (添加yema用
戶並指定目錄爲 /yema)
- e 指定帳戶失效時間YYYY-MM-DD
例: [root@localhost ~]# useradd -e 20080808 test (添加yema用戶並
指定該用戶使用的過期時間爲2008年08月08日)
- g 指定用戶的初始化組
例: [root@localhost ~]# groupadd cn51 (新建一個名爲cn51的組)
[root@localhost ~]# useradd -g cn51 tom (新建tom 用戶並加入
cn51 組)
- G 指定用戶歸屬其他的組名
例:[root@localhost ~]# useradd -g cn51 -G root jack (新建tom用戶並
加入 cn51 組同時也加入root組)
- M 創建用戶時不自動建立用戶主目錄
例: [root@localhost ~]# useradd haha –M (新建一個haha 用戶 並不
允許其在/home自動生成自己的宿主目錄)
[root@localhost ~]# cd /home/ (建完後進入/home)
[root@localhost home]# ls (用ls 查看是否自動建立一haha 目錄)
1 jack test tom
- u 指定用戶的uid
例: [root@localhost home]# useradd -u 800 yema (新建一個uid 爲
800 的 yama用戶)
- s 指定用戶的登陸shell
例: [root@localhost ~]# useradd -s /sbin/nologin 888 新建一用戶並指
定其登陸shell 爲nologin
- n 建立用戶時不建立默認的組
例: [root@localhost ~]# useradd -n 111 建立一111 用戶但並不建立111
這個組
2 。 userdel 刪除用戶
語法:userdel [選項] 系統已有的用戶名
- r 刪除用戶時並同時刪除該用戶的宿主目錄
例: [root@localhost ~]# userdel -r 888
3.passwd 維護用戶密碼
- d 清空指定用戶的密碼
例: [root@localhost ~]# passwd -d root
- l 鎖定一個用戶帳號
例:[root@localhost ~]# passwd -l jack
- u 解除對指定帳號的鎖定
例: [root@localhost ~]# passwd -u jack
-w 設置密碼過期警告天數
例: [root@localhost ~]# passwd -w 8 root
-I 設置密碼過期後等待天數
例: [root@localhost ~]# passwd -w 8 tom (不能設置root 賬戶)
-n 設置密碼最短修改時間
例: [root@localhost ~]# passwd -n 3 root
-x 設置密碼有效時間
4. usermod 修改用戶賬號相關信息
語法: usermod [-選項] 用戶名
選項:
-u 修改UID,-o爲強制修改
例: [root@localhost ~]# usermod -u 500 -o 888
-g 修改初始組
例: [root@localhost ~]# usermod -g root tom
-L 鎖定帳號
例: [root@localhost ~]# usermod -L tom
-U 解除鎖定
例: [root@localhost ~]# usermod -U tom
-l 修改登陸名
例: [root@localhost ~]# usermod -l administrator tom
-s 修改用戶登陸shell
例: [root@localhost ~]# usermod -s /sbin/nologin yema
5.groupadd 新建組
命令格式: groupadd [-選項] 組名
選項:
- g 手工指定新建組的gid
例:[root@localhost ~]# groupadd -g 510 testgroup
- o 強制指定新建組的gid
例: [root@localhost ~]# groupadd -g 500 -o testgroup
6.groupmod 修改組
命令格式: groupmod [-選項] 組名
選項:
-g 指定gid
例:[root@localhost ~]# groupmod -g 555 testgroup
-n 指定新組名
例:[root@localhost ~]# groupmod -n newgroup testgroup
7 。 groupdel 刪除組
例:[root@localhost ~]# groupdel newgroup 注意:刪除一個組,只能刪
除空組
--------------進程管理-------------------
1.ps 顯示進程信息
x: 顯示系統進程和當前用戶進程
例: [root@localhost ~]# ps -x
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.3/FAQ
PID TTY STAT TIME COMMAND
1 ? S 0:01 init [5]
2 ? SN 0:00 [ksoftirqd/0]
3 ? S< 0:00 [events/0]
4 ? S< 0:00 [khelper]
5 ? S< 0:00 [kacpid]
18 ? S< 0:00 [kblockd/0]
28 ? S 0:00 [pdflush]
ax: 顯示所有進程
例:[root@localhost ~]# ps -ax
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.3/FAQ
PID TTY STAT TIME COMMAND
1 ? S 0:01 init [5]
2 ? SN 0:00 [ksoftirqd/0]
3 ? S< 0:00 [events/0]
4 ? S< 0:00 [khelper]
5 ? S< 0:00 [kacpid]
18 ? S< 0:00 [kblockd/0]
28 ? S 0:00 [pdflush]
29 ? S 0:00 [pdflush]
31 ? S< 0:00 [aio/0]
aux:顯示所有進程及進程的擁有者
例: [root@localhost ~]# ps -aux
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.3/FAQ
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.2 1996 560 ? S 12:18 0:01 init [5]
root 2 0.0 0.0 0 0 ? SN 12:18 0:00 [ksoftirqd/0]
root 3 0.0 0.0 0 0 ? S< 12:18 0:00 [events/0]
root 4 0.0 0.0 0 0 ? S< 12:18 0:00 [khelper]
root 5 0.0 0.0 0 0 ? S< 12:18 0:00 [kacpid]
root 18 0.0 0.0 0 0 ? S< 12:18 0:00 [kblockd/0]
root 28 0.0 0.0 0 0 ? S 12:18 0:00 [pdflush]
2.Pstree 以樹狀圖顯示正在執行的程序
例:[root@localhost ~]# pstree
init-+-acpid
|-anacron
|-atd
|-crond
|-cups-config-dae
|-cupsd
|-dbus-daemon-1
|-events/0-+-aio/0
| |-kacpid
| |-kblockd/0
| |-khelper
| `-2*[pdflush]
|-gdm-binary---gdm-binary-+-X
| `-gdmgreeter
|-gpm
|-hald
|-htt---htt_server
|-khubd
|-2*[kjournald]
|-klogd
|-kseriod
|-ksoftirqd/0
|-kswapd0
|-6*[mingetty]
|-portmap
|-rpc.idmapd
|-rpc.statd
|-scsi_eh_0
|-2*[sendmail]
|-sshd---sshd---bash---pstree
|-syslogd
|-udevd
|-xfs
`-xinetd
3.top 系統性能監視器
命令如:[root@localhost ~]# top 按空格鍵動態更新按q 鍵退出
4.kill 終止一個進程
命令如:[root@localhost ~]# kill XXX XXX爲系統某個服務的進程號
-9: 強制終止一個進程
命令如:[root@localhost ~]# kill -9 XXX XXX爲系統某個服務的進程號
5.hostname 修改主機名
例1 :hostname [root@localhost ~]# hostname 顯示主機名
localhost.localdomain
例2 :[root@localhost ~]# hostname yema 修改主機名爲yema
6.uname 顯示目前的版本等系統訊息
例 :[root@localhost ~]# uname
Linux
7.lsmod 顯示當前加載的內核模塊
例 : [root@localhost ~]# lsmod
Module Size Used by
parport_pc 24705 1
lp 12077 0
parport 37129 2 parport_pc,lp
autofs4 23237 0
sunrpc 157093 1
8.alias 建立別名
例:[root@localhost ~]# alias 888='ls -l' 此命令意思爲給ls –l 這條命令起了個888 別
名 以後我們可以在命令提示符後輸入888 就等於我們輸入了 ls –l 命令
9.unalias 刪除別名
例:[root@localhost ~]# unalias -a 888 -a 表示name 後面跟我們創建過的別名名稱
--------------軟件包的管理-----------
1 。 RPM最初是Red Hat Linux發行版專門用來管理Linux各項套件的程序,由於它遵
循GPL規則且功能強大方便,逐漸受到其他發行版的採用。
rpm命令格式:rpm [-選項] <軟件包名>
選項:
-i 安裝一個新軟件包
-U 升級一個已有軟件包,若沒有則全新安裝
-F 升級一個已有軟件包,若沒有則放棄安裝
-v 顯示詳細信息
-h 以#號顯示安裝進度
-e 卸載已安裝的rpm包軟件,卸載時目標寫軟件包名+版本號就可以了
--nodeps 安裝或卸載軟件時不檢查依賴關係
--force 強制安裝 (如重新安裝某個舊版本軟件)
示例:
例1 :
[root@localhost ~]# mount /media/cdrom/ 把第二張光盤放入光驅 此條命令是掛載光盤
mount: block device /dev/hdc is write-protected, mounting read-only
[root@localhost ~]# cd /media/cdrom/RedHat/RPMS/ 進入光盤rpm軟件包目錄
[root@localhost RPMS]# rpm -Uvh httpd-2.0.52-9.ent.i386.rpm 升級安裝軟件包
warning: httpd-2.0.52-9.ent.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing...
(100%########################################### [100%]
package httpd-2.0.52-9.ent is already installed
例二:
[root@localhost RPMS]# rpm -ivh httpd-2.0.52-9.ent.i386.rpm 安裝一個新包
warning: httpd-2.0.52-9.ent.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing...
(100%########################################### [100%]
package httpd-2.0.52-9.ent is already installed
選項:
-q 可以查詢安裝的rpm軟件包的相關信息,跟上不同的二級選項決定不同的查
詢方式
a 顯示所有以rpm包安裝的軟件
i <軟件名> 顯示已安裝軟件的詳細信息
l <軟件名> 顯示已安裝軟件的各文件位置
f <文件名> 查詢一個文件屬於哪個軟件包
示例:
例1 :
[root@localhost RPMS]# rpm -qf /etc/passwd
setup-2.5.37-1.1rpm
例 2 :
[root@localhost RPMS]# rpm -aq |grep samba
samba-common-3.0.10-1.4E
samba-3.0.10-1.4E
system-config-samba-1.2.21-1
samba-client-3.0.10-1.4E
----------------------網絡管理--------------------
1 ifconfig 顯示 IP 信息
例:[root@localhost RPMS]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:16:97:E8
inet addr:192.168.250.250 Bcast:192.168.255.255 Mask:255.255.0.0
inet6 addr: fe80::20c:29ff:fe16:97e8/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:19437 errors:0 dropped:0 overruns:0 frame:0
TX packets:2762 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1599642 (1.5 MiB) TX bytes:367531 (358.9 KiB)
Interrupt:10 Base address:0x1400
2 。 netconfig 配置網卡
[root@localhost RPMS]# netconfig —〉接下來的對話框選yes —〉在相應位置輸入你的正確
信息
3./etc/resolve.conf 文件的修改
例:[root@localhost ~]# vi /etc/resolv.conf
nameserver 10.0.0.1 更改DNS
search example.com 更改DNS後綴
4./etc/sysconfig/network
例:[root@localhost ~]# vi /etc/sysconfig/network
HOSTNAME=linuxos 更改主機名
GATEWAY=10.0.0.1 更改網關
5./etc/sysconfig/network-scripts/ifcfg-* 更改網卡信息
例:[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 設備名稱
ONBOOT=yes 是否啓用
BOOTPROTO=static 當前狀態
IPADDR=192.168.250.250 IP地址
NETMASK=255.255.0.0 子網掩碼
GATEWAY=192.168.250.254 網關地址
6.ping 檢測主機
例 :[root@localhost ~]# ping 目標主機名稱或IP地址 主機名必須是永久的不是臨時
更改的
-------------基礎指令-----------
1. logout 登出系統 (退出系統命令還有:exit、 Ctrl + d)
2.clear 清屏 (快捷鍵時 Ctrl+L)
3.su 用戶切換
例:[root@localhost ~]# su tom
- :使環境變量和欲轉換的用戶相同
例:[root@localhost ~]# su - tom
4.date 顯示/設定日期時間
例:[root@localhost ~]# date
Sat Mar 5 15:49:06 EST 2005
修改系統時間的格式爲:date MMDDhhmmyyyy
例:[root@localhost ~]# date 030417462008
Tue Mar 4 17:46:00 EST 2008
5 。 cal 顯示年曆或月曆
例:顯示年曆:[root@localhost ~]# cal 2008 
 例:顯示月曆:[root@localhost ~]# cal 8 2008  顯示2008年8月
6.man 查詢指令幫助
 man 所要查詢的命令
例: [root@localhost ~]# man passwd 查詢passwd 命令的幫助
7.ls 就相當於 DOS 的 dir 指令,查看目錄、文件列表
命令格式: ls [-選項] [目錄或文件]
選項:
-a 顯示所有文件,包括隱藏文件
例:[root@localhost ~]# ls -a /etc/ 顯示/etc下包括隱藏的所有文件
-l 以長格式顯示文件或目錄信息
例:[root@localhost ~]# ls -l /etc/
total 3136
-rw-r--r-- 1 root root 15276 Oct 5 2004 a2ps.cfg
-rw-r--r-- 1 root root 2562 Oct 5 2004 a2ps-site.cf
-d 只列出目錄
例:[root@localhost ~]# ls -dl /etc/
drwxr-xr-x 75 root root 12288 Mar 5 2005 /etc/
8.touch 創建一個新的空文件
語法:touch 所要創建的文件名
例: [root@localhost ~]# touch 888
9.cp 文件及目錄複製命令
命令格式: cp [-選項] <源文件> <目的路徑>
選項:
-r 複製整個目錄的內容
-i 如果目的地已有同名文件則提示是否覆蓋
-f 如果目的地已有同名文件,不提示,強制覆蓋
-p 複製完後保持目錄的權限值
10.ln 建立文件或目錄的鏈接(軟連接、硬連接)
命令格式: ln [-選項] <源文件> <新建連接目標文件>
選項:
-s 只做軟連接,可以跨越分區;不帶參數表示建立硬連接
11.rm 刪除文件或目錄
命令格式: rm [-選項] <源文件> <目的路徑>
選項:
-i 刪除文件或目錄的時候提示確認
-r 刪除目錄
-f 刪除文件或目錄的時候不提示確認
12.mv 移動文件或目錄,更改文件目錄名
命令格式: mv [-選項] <源文件> <目的路徑>
選項
-i 如果目的地已有同名文件則提示是否覆蓋
-f 如果目的地已有同名文件,不提示,強制覆蓋
13. cd 切換不同的目錄
命令格式: cd <目錄名> 絕對路徑和相對路徑:
示例: cd /boot/grub
cd boot/grub
cd命令中使用特殊含義的目錄
cd ~ 回到用戶主目錄
cd - 回到上一次的目錄
cd . 回到當前目錄
cd .. 回到上一級目錄
14.pwd顯示當前目錄所在路徑
15.mkdir 新建一個目錄
命令格式: mkdir [-選項] <目錄名>
選項:
-p 建立多級目錄
-m 建立目錄的時候指定權限
16 。 rmdir 刪除目錄名,目錄必須爲空
命令格式: rmdir [-選項] <目錄名>
選項:
-p 刪除多層目錄
-v 刪除文件的時候顯示信息
17.修改文件的權限值
可以使用3位8進制數表示文件權限對應關係:r=4,w=2,x=1
可以使用字母表示文件歸屬關係: u=user、g=group、o=other、a=all
增加權限使用+,去掉權限使用-
set位及粘滯位
權限值組合中的第4位數,對應關係:suid=4,sgid=2,粘滯位=1
使用字母表示時對應關係:s=set位,t=粘滯位
set位含義: 設置set位以後,其他用戶執行該文件時也會擁有設置該set位用戶的對應身
份和權限
粘滯位含義: 設置粘滯位以後,讓其他用戶無法刪除該文件
18.chown 更改文件或目錄的擁有者
命令格式: chown [-選項] 用戶名:組名 <文件或目錄名>
選項
-R 遞歸,包含其下所有目錄、子目錄及文件
19.chgrp 更改文件或目錄的所屬用戶組
命令格式: chgrp [-選項] 用戶名:組名 <文件或目錄名>
選項
-R 遞歸,包含其下所有目錄、子目錄及文件
20.cat 查看或連接文件內容
命令格式: cat [-選項] <文件名1> [文件名2] ……
選項:
-b 顯示內容時顯示行數
-n 顯示文件內容時包括所有空行
-s 有多個空行時合併成一個空行顯示
21.more 分頁顯示文件內容(less可以往前翻頁)
命令格式: more [-選項] <文件名>
選項:
+數字直接叢給定行數開始顯示
-數字 規定每次顯示多少行
-s 壓縮多個空行
22 。 tail 顯示一個文件的末尾幾行
命令格式:tail [-選項] <文件名>
選項:
-n <數字> 顯示文件末尾指定行數內容,n可以省略
示例:
tail -5 /etc/passwd
23.wc - 統計文件的行、詞、字數
24.which
命令格式: which [-選項] <目標文件名>
示例: which ls
25.whereis
命令格式: whereis [-選項] <目標文件名>
選項:
-b  只查找二進制文件
-B <目錄>  只在指定的目錄下查找二進制文件
-f 不顯示文件名前的路徑名稱
-m 只查找幫助文檔文件
-M <目錄>  只在指定的目錄下查找說明文件
-s 只查找原始代碼文件
-S <目錄> 只在設置的目錄下查找原始代碼文件
示例: whereis ls
26.locate (使用updatedb或locate -u命令更新默認數據庫)
命令格式: Locate [-選項] <目標文件名>
選項:
-u對整個根目錄製作數據庫
-e <目錄名> 將除指定目錄以外所有目錄生成數據庫
27.gzip 壓縮成.gz文件/gunzip 解壓.gz文件
命令格式: gzip [-選項] 文件名
選項:
-1 最快壓縮速度
-9 最高壓縮比例
-r 遞歸壓縮所有指定目錄下所有單個文件
-l 顯示詳細信息
-d 解壓縮.gz文件
示例:
gzip -rl ~/MyDocuments
gzip -d MyDocuments.gz
gunzip test.gz
注:
gzip壓縮的文件名默認添加.gz擴展名
gzip壓縮或解壓文件後會缺省刪除源文件
gzip只支持對單個文件操作,對目錄操作時需結合tar使用
28.bzip2 壓縮成.bz2文件/bunzip2解壓縮
命令格式:bzip2 [-選項] [文件名]
選項:
-d 解壓縮文件
-k 解壓後保留原文件
-1 最快壓縮速度
-9 最高壓縮比例
-s 佔用最少內存來壓縮
示例:
bzip2 -s install.log
bzip2 -d install.log
bunzip2 -v install.log
29.zip 打包並壓縮成.zip文件/unzip解壓縮
命令格式: zip [-選項] [文件名.zip] [文件名]
選項:
-d 從壓縮文件中刪除指定文件
-g 追加指定文件到已有的壓縮包中
-u 如果文件比包內的文件新則替換
-r 壓縮目錄
示例:
zip new1.zip my1.doc
zip -d new1.zip my2.doc
zip -g new1.zip my3.doc
zip -u new1.zip my4*.doc
zip -r new2.zip mydir
unzip new.zip
注:(winrar、winzip均支持.zip格式)
30.tar與gzip/bzip2的結合使用
與gzip結合使用
tar zcvf newtest.tar.gz /home/MyDocuments
tar zxvf newtest.tar.gz -C /home/test/
與bzip2結合使用
tar jcvf newtest.tar.gz /home/MyDocuments
tar jxvf newtest.tar.gz -C /home/test/
31.Shutdown 最基本的關機命令,也是較複雜的關機命令
命令格式: shutdown [-選項] 時間 <提示信息>
選項:
-t< 數字> 延遲指定分鐘數時間以後關機
-h 關機後關閉電源
-r 重新啓動機器
-f 重新啓動的時候跳過磁盤檢查
-c 取消將要執行的關機操作
示例:
Shutdown -k now just a kid
Shutdown -h now System shutdown now
32.關機與重啓
init
init 0 關機
init 6 重啓
reboot 重新啓動機器
halt
選項:
-p 關閉機器的時候關閉電源
-w 不做關機操作,只記錄日誌
poweroff
選項基本與halt相同
-h 關機前將硬盤轉入待機模式,清空緩存
34.Fdisk 分割硬盤工具
命令格式: Fdisk [-選項] 分區
注:在真實環境下分區後要執行partprobe命令纔會生效
35.Mkfs.ext3 格式化磁盤
命令格式: Mkfs.ext3 [-選項] 分區
注:格式化後的磁盤要自動掛載需把信息寫入/etc/fstab文件
36.du 查看文件/文件夾容量大小
命令格式:du [-選項] <文件名或文件夾名>
選項:
-s 只顯示目錄使用空間的總和
-h 以MB爲單位顯示容量1MB=1024Bytes
-a 統計所有文件包含子目錄
-H 以m爲單位顯示容量1m=1000Bytes
-c 只計算目錄的總用量
示例:
du -sh /etc
37.df 查看指定硬盤分區使用情況
命令格式: df [-選項] <分區>
選項:
-h 以MB爲單位顯示容量1MB=1024Bytes
-T 列出驅動器的文件類型
示例:
df -h /dev/sda1
df -T /dev/sda1
38.mount 加載設備
命令格式:mount [-t 格式] [設備] [目錄]
39 .umount 卸載設備
命令格式:umount [目錄名稱]
40.cd;eject 彈出光驅
-t 關閉光驅
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章