Linux 環境下開發 常用指令
java開發,由於其很多應用都是釋出在Linux作業系統上,因此瞭解、掌握一些常用的Linux命令對與提高Java開發人員的工作效率是很有必要的。本文著重介紹Java開發相關的一些常用命令,其中以Tomcat應用相關作為重點。
1、 如何登陸到Linux機器上
習慣使用命令操作的開發人員可以使用Telnet等登入到Linux機器上進行相關操作,建議大家將Linux機器的SSH服務開啟,使用SSH客戶端軟體登入到Linux機器上,可以很方便的進行檔案編輯、許可權更改、上傳、下載檔案等處理。
2、 如何查詢檔案
在實際工作當中,大家經常會碰到如何某個檔案在哪個目錄下面,系統有沒有類似“abc”開頭的檔案等問題,這時我們就需要在Linux下查詢相關檔案。如我在Linux下安裝了tomcat6,但是不知道預設安裝到哪個目錄下了,這時我就可以查tomcat*檔案。Linux下查詢檔案使用find命令,如:find / -name httpd.conf,表示在根目錄下查詢檔名為httpd.conf檔案,為此find命令可以這樣變通使用,其變式如下:
find path[要查詢的路徑] –name filename[檔名,可以使用萬用字元]
大家只要瞭解在Linux下可以使用find查詢檔案,可以查詢某個具體目錄下的特定檔案即可,至於find命令具體使用,可以google“linux find”。
3、 如何啟動tomcat,查詢程序、殺程序
專案有新版本,需要將tomcat服務停掉,這時我就需要查詢Linux下面是否有tomcat程序?可以使用ps –ef|grep tomcat 來檢視是否有tomcat程序,如果有的話請記住程序號,可使用kill [-9,可選強行殺] 程序號,殺掉程序,不過tomcat的話,最好先使用shutdown將其服務停掉,shutdown失敗的話,再強行將其殺掉,執行startup.sh或者catalina.sh –run命令重新啟動tomcat即可。
4、 如何查詢埠
有時tomcat啟動的時候,會報8080埠被佔用的情況,在windows下更是常見,這時我們就要追查該埠到底有沒有被佔用,被哪個程式佔用?
可以使用命令 netstat –an列舉所有埠號,也可以使用netstat -pan|grep 8080檢視8080埠號的使用情況。
假如,確實有另一程序在使用8080埠,則可使用下述命令殺掉該程序。
kill -9 $(netstat -tlnp|grep 8080|awk '{print $7}'|awk -F '/' '{print $1}') 其中8080為埠號
5、 如何檢視CPU、記憶體使用情況
應用部署到Linux伺服器之後,有時我們會跟蹤效能情況,如cpu使用情況、記憶體耗用情況等,使用top命令可以檢視cpu、記憶體使用情況。
Top命令檢視的資訊是動態資訊,而且其預設的排序可能不是你想要的排序,此時,可以用SHIFT+N對程序號進行排序,或者用SHIFT+M對記憶體佔用率進行排序等。
6、 一些常用的基本命令:
uname -a 檢視核心版本
ls -al 顯示所有檔案的屬性
pwd 顯示當前路徑
cd - 返回上一次目錄 cd ~ 返回主目錄
date s 設定時間、日期
cal 顯示日曆 cal 2006
bc 計算器具
man & info 幫助手冊
locale 顯示當前字型 locale -a 所有可用字型 /etc/sysconfig/i18n設定檔案
LANG=en 使用英文字型
sync 將資料同步寫入硬碟
shutdonw -h now & half & poweroff 關機
reboot 重啟
startx & init 5 進入圖形介面
/work & ?work 向上、下查詢文件內容
chgrp 改變檔案群組 chgrp testing install.log
chown 改變所屬人 chown root:root install.log
chmod 改變屬性 chmod 777 install.log read=4 write=2 execute=1
cp 複製 cp filename
rm 刪除檔案 rm -rf filename 強制刪除檔案
rmdir 刪除資料夾
mv 移動 mv 123.txt 222.txt 重新命名
mkdir 建立資料夾
touch 建立檔案 更新當前時間
cat 由第一行開始顯示 cat |more 分頁
nl 在內容前加行號
more & less 一面一面翻動
head -n filename 顯示第N行內容
tail -n filename 顯示後N行內容
od 顯示非純文件
df -h 顯示分割槽空間
du 顯示目錄或檔案的大小
fdisk 分割槽設定 fdisk -l /dev/hda 顯示硬碟分割槽狀態
mkfs 建立各種檔案系統 mkfs -t ext3 /dev/ram15
fsck 檢查和修復LINUX檔案
ln 硬連結 ln -s 軟體連結
whereis 查詢命令
locate 查詢
find 查詢 find / -name "***.*** "
which 檢視工具
whoami 顯示當前使用者
gcc -v 檢視GCC版本
chattr +i filename 禁止刪除 chattr -i filename 取消禁止
lsattr 顯示隱藏檔屬性
updatedb 更新資料庫
mke2fs 格式化 mkfs -t ext3
dd if=/etc/passwd of=/tmp/passwd.bak 備份
mount 列出系統所有的分割槽
mount -t iso9660 /dev/cdrom /mnt/cdrom 掛載光碟
mount -t vfat /dev/fd0 /mnt/floppy 掛載軟盤
mount -t vfat -o iocharset=utf8,umask=000 /dev/hda2 /mnt/hda2 掛載fat32分割槽
mount -t ntfs -o nls=utf8,umask=000 /dev/hda3 /mnt/hda3 掛載ntfs分割槽
Linux-NTFS Project: http://linux-ntfs.sourceforge.net/
umount /mnt/hda3 缷載
ifconfig 顯示或設定網路裝置
service network restart 重啟網絡卡
ifdown eth0 關閉網絡卡
ifup eth0 開啟網絡卡
clear 清屏
history 歷史記錄 !55 執行第55個指令
stty 設定終端 stty -a
fdisk /mbr 刪除GRUB
at 僅進行一次的工作排程
crontab 迴圈執行的例行性命令 [e]編輯,[l]顯示,[r]刪除任務
& 後臺執行程式 tar -zxvf 123.tar.gz & ---------> 後臺執行
jobs 觀看後臺暫停的程式 jobs -l
fg 將後臺程式調到前臺 fg n ------> n是數字,可以指定進行那個程式
bg 讓工作在後臺執行
kill 結束程序 kill -9 PID [9]強制結束,[15]正常結束,[l]列出可用的kill訊號
ps aux 檢視後臺程式
top 檢視後臺程式 top -d 2 每兩秒更新一次 top -d 2 -p10604 觀看某個PID
top -b -n 2 > /tmp/top.txt -----> 將 top 的資訊進行 2 次,然後將結果輸出到 /tmp/top.txt
pstree 以樹狀圖顯示程式 [A]以 ASCII 來連線, [u]列出PID, [p]列出帳號
killall 要刪除某個服務 killall -9 httpd
free 顯示記憶體狀態 free -m --------> 以M為單位顯示
uptime 顯示目前系統開機時間
netstat 顯示網路狀態 netstat -tulnp------> 找出目前系統上已在監聽的網路連線及其 PID
dmesg 顯示開機資訊 demsg | more
nice 設定優先權 nice -n -5 vi & -----> 用 root 給一個 nice 植為 -5 ,用於執行 vi
renice 調整已存在優先權
runlevel 顯示目前的runlevel
depmod 分析可載入模組的相依性
lsmod 顯示已載入系統的模組
modinfo 顯示kernel模組的資訊
insmod 載入模組
modprobe 自動處理可載入模組
rmmod 刪除模組
chkconfig 檢查,設定系統的各種服務 chkconfig --list -----> 列出各項服務狀態
ntsysv 設定系統的各種服務
cpio 備份檔案
【目錄】
一、shell命令
1、內建命令
2、外部命令
3、實用程式
4、使用者程式
5、shell指令碼
二、命令幫助文件
1、命令自身的幫助功能
2、man手冊
3、線上幫助文件
三、分類介紹
(一)檔案、目錄操作命令
(二)檢視檔案內容命令
(三)基本系統命令
(四)監視系統狀態命令
(五)磁碟操作命令
(六)使用者和組相關命令
(七)備份壓縮命令
(八)網路相關命令
(九)其他命令
【參考資料】
一、shell命令
作為使用者和Linux核心之間的介面程式,shell的一個很重要的功能就是對使用者輸入的命令進行解釋。這些命令可以分為以下幾類:
1、內建命令
處於效率的考慮,將一些常用的命令解釋程式構造在shell內部。
用enable命令可以檢視到shell的內建命令。
例如,GNU bash 3.1.17的內建命令如下:
. : [ alias bg bind break builtin caller cd command compgen complete continue declare dirs disown echo eval exec exit export false fc fg getopts hash help history jobs kill let local logout popd printf pushd pwd read
readonly return set shift shopt source suspend test times trap true type typeset ulimit umask unalias unset wait
2、外部命令
存放在/bin, /sbin目錄下的命令。
3、實用程式
存放在/usr/bin, /usr/sbin, /usr/share, /usr/local/bin等目錄下的實用工具和程式。
4、使用者程式
使用者程式經過編譯生成可執行檔案後, 也可作為shell命令執行。
5、shell指令碼
由shell指令碼編寫的批處理檔案。
二、命令幫助文件
我們可以通過下述三種方法獲得幫助:
1、命令自身的幫助功能
大多數命令都可以通過--help引數獲取自身提供的幫助。
2、man手冊
可以通過man命令來檢視任何命令的聯機幫助資訊。它將命令名作為引數, 該命令的語法格式為: man 【命令名】。
三、分類介紹
(一)檔案、目錄操作命令
1、ls命令
功能:顯示檔案和目錄的資訊
ls 以預設方式顯示當前目錄檔案列表
ls -a 顯示所有檔案包括隱藏檔案
ls -l 顯示檔案屬性,包括大小,日期,符號連線,是否可讀寫及是否可執行
ls -lh 顯示檔案的大小,以容易理解的格式印出檔案大小 (例如 1K 234M 2G)
ls -lt 顯示檔案,按照修改時間排序
2、cd命令
功能:改名目錄
cd dir 切換到當前目錄下的dir目錄
cd / 切換到根目錄
cd .. 切換到到上一級目錄
cd ../.. 切換到上二級目錄
cd ~ 切換到使用者目錄,比如是root使用者,則切換到/root下
3、cp命令
功能:copy檔案
cp source target 將檔案source複製為target
cp /root /source. 將/root下的檔案source複製到當前目錄
cp –av soure_dir target_dir 將整個目錄複製,兩目錄完全一樣
4、rm命令
功能:刪除檔案或目錄
rm file 刪除某一個檔案
rm -f file 刪除時候不進行提示。可以於r引數配合使用
rm -rf dir 刪除當前目錄下叫dir的整個目錄
5、mv命令
功能:檔案移動,或者改名,在uinx下面沒有改名的命令,如果想改名,可以使用該命令
mv source target 將檔案source更名為target
6、diff
功能:比較檔案內容
diff dir1 dir2 比較目錄1與目錄2的檔案列表是否相同,但不比較檔案的實際內容,不同則列出
diff file1 file2 比較檔案1與檔案2的內容是否相同,如果是文字格式的檔案,則將不相同的內容顯示,如果是二進位制程式碼則只表示兩個檔案是不同的
comm file1 file2 比較檔案,顯示兩個檔案不相同的內容
7、ln命令
功能:建立連結
ln source_path target_path 硬連線
ln -s source_path target_path 軟連線
(二)檢視檔案內容命令
1、cat命令
顯示檔案的內容,和DOS的type相同
cat file
2、more命令
功能:分頁顯示命令
more file
more命令也可以通過管道符(|)與其他的命令一起使用,例如:
ps ux|more
ls|more
3、tail 命令
功能:顯示檔案的最後幾行
tail -n 100 aaa.txt 顯示檔案aaa.txt檔案的最後100行
4、vi命令
vi file 編輯檔案file
vi 原基本使用及命令:
輸入命令的方式為先按[ESC]鍵,然後輸入:w(寫入檔案),:w!(不詢問方式寫入檔案),:wq儲存並退出,:q退出,q!不儲存退出
(三)基本系統命令
1、man命令
功能:檢視某個命令的幫助
例如:
man ls 顯示ls命令的幫助內容
2、w命令
功能:顯示登入使用者的詳細資訊
例如:
Sarge:~# w
22:06:51 up 43 min, 1 user, load average: 0.00, 0.00, 0.00
USER TTY FROM [email protected] IDLE JCPU PCPU WHAT
zhoulj pts/0 10.140.0.109 21:24 0.00s 0.85s 0.09s sshd: zhoulj [priv]
3、who命令
功能:顯示登入使用者
例如:
Sarge:~# who
zhoulj pts/0 Mar 13 21:24 (10.140.0.109)
4、last命令
功能:檢視最近那些使用者登入系統
例如:
Sarge:~# last
zhoulj pts/0 10.140.0.109 Mon Mar 13 21:24 still logged in
reboot system boot 2.6.8-2-386 Mon Mar 13 21:23 (00:43)
zhoulj pts/0 10.140.0.105 Sun Mar 12 22:51 - down (00:00)
zhoulj pts/0 10.140.0.105 Sun Mar 12 22:51 - 22:51 (00:00)
root tty1 Sun Mar 12 22:50 - down (00:01)
root tty1 Sun Mar 12 22:46 - 22:48 (00:02)
root tty1 Sun Mar 12 22:43 - 22:46 (00:02)
reboot system boot 2.6.8-2-386 Mon Mar 13 06:34 (-7:-41)
wtmp begins Mon Mar 13 06:34:11 2006
5、date命令
功能:系統日期設定
date 顯示當前日期時間
date -s 20:30:30 設定系統時間為20:30:30
date -s 2002-3-5 設定系統時期為2003-3-5
date -s "060520 06:00:00" 設定系統時期為2006年5月20日6點整。
6、clock命令
功能:時鐘設定
clock –r 對系統Bios中讀取時間引數
clock –w 將系統時間(如由date設定的時間)寫入Bios
7、uname命令
功能:檢視系統版本
uname -R 顯示作業系統核心的version
例如:
Sarge:~# uname -a
Linux Sarge 2.6.8-2-386 #1 Tue Aug 16 12:46:35 UTC 2005 i686 GNU/Linux
8、關閉和重新啟動系統命令
reboot 重新啟動計算機
shutdown -r now 重新啟動計算機,停止服務後重新啟動計算機
shutdown -h now 關閉計算機,停止服務後再關閉系統
halt 關閉計算機
一般用shutdown -r now,在重啟系統是,關閉相關服務,shutdown -h now也是如此。
9、su命令
功能:切換使用者
su - 切換到root使用者
su - zhoulj 切換到zhoulj使用者,
注意:- ,他很關鍵,使用-,將使用使用者的環境變數
(四)監視系統狀態命令
1、top命令
功能:檢視系統cpu、記憶體等使用情況
2、free命令
功能:檢視記憶體和swap分割槽使用情況
例如:
Sarge:~# free -tm
total used free shared buffers cached
Mem: 187 42 145 0 6 16
-/+ buffers/cache: 19 167
Swap: 243 0 243
Total: 430 42 388
3、uptime
功能:現在的時間 ,系統開機運轉到現在經過的時間,連線的使用者數量,最近一分鐘,五分鐘和十五分鐘的系統負載
例如:
Sarge:~# uptime
21:54:46 up 31 min, 1 user, load average: 0.00, 0.00, 0.00
4、vmstat命令
功能:監視虛擬記憶體使用情況
例如:
# vmstat
procs memory swap io system cpu
r b swpd free buff cache si so bi bo in cs us sy id wa
1 0 0 63704 8100 32272 0 0 8 3 103 17 0 1 98 1
5、ps命令
功能:顯示程序資訊
ps ux 顯示當前使用者的程序
ps uxwww 顯示當前使用者的程序的詳細資訊
ps aux 顯示所有使用者的程序
ps ef 顯示系統所有程序資訊
6、kill命令
功能:幹掉某個程序,程序號可以通過ps命令得到
kill -9 1001 將程序編號為1001的程式幹掉
kill all -9 apache 將所有名字為apapche的程式殺死,kill不是萬能的,對僵死的程式則無效。
(五)磁碟操作命令
1、df命令
功能:檢查檔案系統的磁碟空間佔用情況。可以利用該命令來獲取硬碟被佔用了多少空間,目前還剩下多少空間等資訊。
引數 功能
-a 列出全部目錄
-Ta 列出全部目錄,並且顯示檔案型別
-B 顯示塊資訊
-i 以i節點列出全部目錄
-h 按照日常習慣顯示(如:1K、100M、20G)
-x [filesystype] 不顯示[filesystype]
例如:
# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda1 ext3 265M 64M 187M 26% /
tmpfs tmpfs 94M 0 94M 0% /dev/shm
/dev/sda6 ext3 714M 8.1M 667M 2% /home
/dev/sda8 ext3 956M 215M 691M 24% /usr
/dev/sda7 ext3 714M 57M 619M 9% /var
2、du命令
功能:檢測一個目錄和(遞迴地)所有它的子目錄中的檔案佔用的磁碟空間。
引數 功能
-s [dirName] 顯示目錄佔用總空間
-sk [dirName] 顯示目錄佔用總空間,以k為單位
-sb [dirName] 顯示目錄佔用總空間,以b為單位
-sm [dirName] 顯示目錄佔用總空間,以m為單位
-sc [dirName] 顯示目錄佔用總空間,加上目錄統計
-sh [dirName] 只統計目錄大小
例如:
# du -sh /etc
1.3M /etc
3、mount命令
功能:使用mount命令就可在Linux中掛載各種檔案系統。
格式:mount -t <檔案系統> 裝置名 掛載點
(1)mount /dev/sda1 /mnt/filetest
mount -t vfat /dev/hda /mnt/fatfile
mount -t ntfs /dev/hda /mnt/ntfsfile
mount -t iso9660 /dev/cdrom /mnt/cdrom
mount -o <選項> 裝置名 掛載點
(2)使用usb裝置
modprobe usb-storage
mkdir /mnt/usb
mount -t auto /dev/sdx1 /mnt/usb
umount /mnt/usb
4、mkswap命令
功能:使用mkswap命令可以建立swap空間,如:
debian:~# mkswap -c /dev/hda4
debian:~# swapon /dev/hda4 #啟用新建立的swap空間,停用可使用swapoff命令
5、fdisk命令
功能:對磁碟進行分割槽
fdisk /dev/xxx 格式化xxx裝置(xxx是指磁碟驅動器的名字,例如hdb,sdc)
fdisk -l 顯示磁碟的分割槽表
6、mkfs命令
功能:格式化檔案系統,可以指定檔案系統的型別,如ext2、ext3、fat、ntfs等
格式1:mkfs.ext3 options /dev/xxx
格式2:mkfs -t ext2 options /dev/xxx
引數 功能
-b <1024|2048|4096> 塊大小
-i <number> 節點大寫
-m <number> 預留管理空間大小
例如:
debian:~#mkfs.ext3 /dev/sdb1
7、e2fsck命令
功能:磁碟檢測
e2fsck /dev/hda1 檢查/dev/hda1是否有檔案系統錯誤,提示修復方式
e2fsck -p /dev/hda1 檢查/dev/hda1是否有錯誤,如果有則自動修復
e2fsck -y /dev/hda1 檢查錯誤,所有提問均於yes方式執行
e2fsck -c /dev/hda1 檢查磁碟是否有壞區
8、tune2fs命令
功能:調整ext2/ext3檔案的引數
引數 功能
-l <device> 檢視檔案系統資訊
-c <count> 設定強制自檢的掛載次數
-i <n day> 設定強制自檢的間隔時間,單位天
-m <percentage> 保留塊的百分比
-j 將ext2檔案系統轉換成ext3格式
# tune2fs -l /dev/sda1
9、dd命令
功能:功能:把指定的輸入檔案拷貝到指定的輸出檔案中,並且在拷貝過程中可以進行格式轉換。
跟DOS下的diskcopy命令的作用類似。
dd if=/dev/fd0 of=floppy.img 將軟盤的內容複製成一個映象
dd if=floppy.img of=/dev/fd0 將一個映象的內容複製到軟盤,做驅動盤的時候經常用。
(六)使用者和組相關命令
1、groupadd命令
功能:新增組
groupadd test1 新增test1組
groupadd -g 1111 test2 新增test2組,組id為1111
2、useradd命令
功能:新增使用者
useradd user1 新增使用者user1,home為/home/user1,組為user1
useradd -g test1 -m -d /home/test1 test1 新增使用者test1,home為/home/test1,組為test1
user list 顯示已登陸的使用者列表
3、passwd命令
功能:更改使用者密碼
passwd user1 修改使用者user1的密碼
passwd -d root 將root使用者的密碼刪除
4、userdel命令
功能:刪除使用者
userdel user1 刪除user1使用者
5、chown命令
功能:改變檔案或目錄的所有者
chown user1 /dir 將/dir目錄設定為user1所有
chown -R user1.user1 /dir 將/dir目錄下所有檔案和目錄,設定為user1所有,組為user1。-R遞迴到下面的每個檔案和目錄
6、chgrp命令
功能:改變檔案或目錄的所有組
chgrp user1 /dir 將/dir目錄設定為user1所有
7、chmod命令
功能:改變使用者的許可權
chmod a+x file 將file檔案設定為可執行,指令碼類檔案一定要這樣設定一個,否則得用bash file才能執行
chmod 666 file 將檔案file設定為可讀寫
chmod 750 file 將檔案file設定為,所有者為完全許可權,同組可以讀和執行,其他無許可權
8、id命令
功能:顯示使用者的資訊,包括uid、gid等
# id zhoulj
uid=500(zhoulj) gid=500(zhoulj) groups=500(zhoulj)
9、finger命令
功能:顯示用的資訊
注意:debian下沒有該命令。
# finger zhoulj
Login: zhoulj Name:
Directory: /home/zhoulj Shell: /bin/bash
On since Sun May 21 07:59 (CST) on pts/0 from 192.168.1.4
No mail.
No Plan.
(七)備份壓縮命令
1、gzip格式命令
功能:壓縮檔案,gz格式的
注意:生成的檔案會把原始檔覆蓋
gzip -v <filename> 壓縮檔案,並且顯示進度
-d <filename> 解壓縮
gnuzip -f <filename> 解壓縮
例如:
# gzip a.sh
#ll
-rwxr-xr-x 1 root root 71 12月 18 21:08 a.sh.gz
# gzip -d a.sh.gz
#ll
-rwxr-xr-x 1 root root 48 12月 18 21:08 a.sh
2、zip格式命令
功能:壓縮和解壓縮zip命令
zip <DSTfilename> <SRCfilename>
unzip <filename>
例如:
# zip a.sh.zip a.sh
adding: a.sh (stored 0%)
# ll
-rw-r--r-- 1 root root 188 5月 21 10:37 a.sh.zip
# unzip a.sh.zip
Archive: a.sh.zip
replace a.sh? [y]es, [n]o, [A]ll, [N]one, [r]ename: r
new name: a1.sh
extracting: a1.sh
# ll
-rwxr-xr-x 1 root root 48 12月 18 21:08 a1.sh
3、bzip2格式命令
功能:bzip2格式壓縮命令,
注意:生成的檔案會把原始檔覆蓋
bzip2 <filename>
bunzip2 <filename>
例如:
# bzip2 a.sh
# ll
-rwxr-xr-x 1 root root 85 12月 18 21:08 a.sh.bz2
# bunzip2 a.sh.bz2
# ll
-rwxr-xr-x 1 root root 48 12月 18 21:08 a.sh
4、tar命令
功能:歸檔、壓縮等,比較重要,會經常使用。
-cvf <DSTfilename.tar> <SRCfilename> 壓縮檔案或目錄
-xvf <SRCfilename> 解壓縮檔案或目錄
-zcvf <DSTfilename> <SRCfilename> 壓縮檔案或,格式tar.gz
-zxvf <DSTfilename> <SRCfilename> 解壓縮檔案或,格式tar.gz
-zcvf <DST.tgz> <SRCfilename> 壓縮檔案或,格式tgz
-zxvf <DST.tgz> <SRCfilename> 解壓縮檔案或,格式tgz
舉例:
# tar cvf abc.tar *.sh
# tar xvf abc.tar
# tar czvf abc.tar.gz *.sh
# ll
-rw-r--r-- 1 root root 20480 5月 21 10:50 abc.tar
-rw-r--r-- 1 root root 1223 5月 21 10:53 abc.tar.gz
# tar xzvf abc.tar.gz
(八)網路相關命令
1、ifconfig命令
功能:顯示修改網絡卡的資訊
ifconfig 顯示網路資訊
ifconfig eth0 顯示eth0網路資訊
修改網路資訊:
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 設定網絡卡1的地址192.168.1.1,掩碼為255.255.255.0
ifconfig eth0:1 192.168.1.2 捆綁網絡卡1的第二個地址為192.168.1.2
ifconfig eth0:x 192.168.1.n 捆綁網絡卡1的第n個地址為192.168.1.n
例如:
# ifconfig eth0:1 192.168.1.11
# ifconfig
eth0 Link encap:Ethernet HWaddr 00:0C:29:06:9C:24
inet addr:192.168.1.5 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:4220 errors:0 dropped:0 overruns:0 frame:0
TX packets:3586 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:342493 (334.4 Kb) TX bytes:469020 (458.0 Kb)
Interrupt:9 Base address:0x1400
eth0:1 Link encap:Ethernet HWaddr 00:0C:29:06:9C:24
inet addr:192.168.1.11 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
Interrupt:9 Base address:0x1400
2、route命令
功能:顯示當前路由設定情況
route 顯示當前路由設定情況,比較慢一般不用。
route add -net 10.0.0.0 netmask 255.255.0.0 gw 192.168.1.254 新增靜態路由
route del -net 10.0.0.0 netmask 255.255.0.0 gw 192.168.1.254 新增靜態路由
route add default gw 192.168.1.1 metric1 設定192.168.1.1為預設的路由
route del default 將預設的路由刪除
舉例:
# route add -net 10.0.0.0 netmask 255.255.0.0 gw 192.168.1.254
# netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
10.0.0.0 192.168.1.254 255.255.0.0 UG 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0
# route del -net 10.0.0.0 netmask 255.255.0.0 gw 192.168.1.254
# netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0
3、netstat命令
功能:顯示網路狀態
netstat -an 檢視網路埠資訊
netstat -nr 檢視路由表資訊,比route快多了,
4、啟動網路的命令
redhat族的命令:
/etc/init.d/network
debian命令:
/etc/init.d/networking
例如:
/etc/init.d/network stop 停止網路
/etc/init.d/network start 啟動網路
5、手工修改網路配置
(1)debian系統
配置檔案位置為:/etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0 eth1
iface eth0 inet static
address 10.4.5.6
netmask 255.255.255.0
network 10.4.5.0
broadcast 10.4.5.255
iface eth1 inet static
address 219.25.5.60
netmask 255.255.255.192
network 219.25.5.0
broadcast 219.25.5.63
gateway 219.25.5.30
修改後儲存配置後,執行
/etc/init.d/networking restart
網路配置就改變了
(2)redhat系統
配置檔案位置為:/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.168.1.255
IPADDR=192.168.1.5
NETMASK=255.255.255.0
NETWORK=192.168.1.0
GATEWAY=192.168.1.254
ONBOOT=yes
TYPE=Ethernet
修改後儲存配置後,執行
/etc/init.d/network restart
或者
service network restart
網路配置就改變了。
預設DNS的檔案的位置為:/etc/resolv.conf
#cat /etc/resolv.conf
search test.com.cn
nameserver 192.168.1.11
6、網路排錯
(1)ping命令
功能:不說了,不知道就用幹這行了。
ping www.163.com
(2)traceroute命令
功能:路由跟蹤
traceroute www.163.com
traceroute 207.68.173.7
(3)nslookup命令
功能:域名解析排錯
例如:
$ nslookup
Note: nslookup is deprecated and may be removed from future releases.
Consider using the `dig' or `host' programs instead. Run nslookup with
the `-sil[ent]' option to prevent this message from appearing.
> www.dlut.edu.cn
Server: 192.168.1.11
Address: 192.168.1.11#53
Non-authoritative answer:
Name: www.dlut.edu.cn
Address: 202.118.66.66
> server 202.118.66.6
Default server: 202.118.66.6
Address: 202.118.66.6#53
> www.baidu.com
Server: 202.118.66.6
Address: 202.118.66.6#53
Non-authoritative answer:
www.baidu.com canonical name = www.a.shifen.com.
Name: www.a.shifen.com
Address: 202.108.22.5
(九)其他命令
1、ssh命令
功能:遠端登陸到其他UNIX主機
ssh -l user1 192.168.1.2 使用使用者名稱user1登陸到192.168.1.2
ssh [email protected] 使用使用者名稱user1登陸到192.168.1.2
2、scp命令
功能:安全copy
例如:
scp abc.tar.gz [email protected]:~ 將本地的abc.tar.gz 複製到 192.168.1.5的user1使用者的根(/home/user1)下。
3、telnet命令
功能:登陸到遠端主機
例如:
telnet 192.168.1.5
4、touch命令
功能:修改檔案的時間戳,當檔案不存在時可以建立檔案
例如touch aaa.txt 建立一個空檔案,檔名為aaa.txt