root@ubuntu:/home/wangan/桌面/wang an# cd /root
root@ubuntu:~# ls
MyEclipse Professional 2014
root@ubuntu:~# cd MyEclipse\ Professional\ 2014
root@ubuntu:~/MyEclipse Professional 2014# ls
artifacts.xml dropins icon.xpm myeclipse.ini plugins
binary epl-v10.html libcairo-swt.so notice.html readme
configuration features myeclipse p2 Uninstaller
root@ubuntu:~/MyEclipse Professional 2014# ls -l
總用量 1068
-rw-r--r-- 1 root root 413582 Nov 19 19:20 artifacts.xml
drwxr-xr-x 3 root root 4096 Nov 19 19:20 binary
drwxr-xr-x 13 root root 4096 Nov 19 19:34 configuration
drwxr-xr-x 2 root root 4096 Nov 19 19:20 dropins
-rw-r--r-- 1 root root 16536 Jun 30 2013 epl-v10.html
drwxr-xr-x 204 root root 20480 Nov 19 19:20 features
-rw-r--r-- 1 root root 55371 Nov 15 2013 icon.xpm
複製代碼
在linux中的每個文件或目錄都包含有訪問權限,這些訪問權限決定了誰能訪問和如何訪問這些文件和目錄。php
經過設定權限能夠從如下三種訪問方式限制訪問權限:只容許用戶本身訪問;容許一個預先指定的用戶組中的用戶訪問;容許系統中的任何用戶訪問。同時,用戶可以控制一個給定的文件或目錄的訪問程度。一個文件活目錄可能有讀、寫及執行權限。當建立一個文件時,系統會自動地賦予文件全部者讀和寫的權限,這樣能夠容許全部者可以顯示文件內容和修改文件。文件全部者能夠將這些權限改變爲任何他想指定的權限。一個文件也許只有讀權限,禁止任何修改。文件也可能只有執行權限,容許它想一個程序同樣執行。html
三種不一樣的用戶類型可以訪問一個目錄或者文件:全部着、用戶組或其餘用戶。全部者就是建立文件的用戶,用戶是全部用戶所建立的文件的全部者,用戶能夠容許所在的用戶組能訪問用戶的文件。一般,用戶都組合成用戶組,例如,某一類或某一項目中的全部用戶都可以被系統管理員歸爲一個用戶組,一個用戶可以授予所在用戶組的其餘成員的文件訪問權限。最後,用戶也將本身的文件向系統內的全部用戶開放,在這種狀況下,系統內的全部用戶都可以訪問用戶的目錄或文件。在這種意義上,系統內的其餘全部用戶就是other用戶類。 每個用戶都有它自身的讀、寫和執行權限。第一套權限控制訪問本身的文件權限,即全部者權限。第二套權限控制用戶組訪問其中一個用戶的文件的權限。第三套權限控制其餘全部用戶訪問一個用戶的文件的權限,這三套權限賦予用戶不一樣類型(即全部者、用戶組和其餘用戶)的讀、寫及執行權限就構成了一個有9種類型的權限組。java
咱們能夠用-l參數的ls命令顯示文件的詳細信息,其中包括權限。以下所示:python
$ ls -lh
總用量 191M
-rwxrwx--- 1 root plugdev 18M 2007-02-28 18:05 ActionCube_v0.92.tar.bz2
-rwxrwx--- 1 root plugdev 60M 2007-04-30 22:52 nexuiz-223.zip
-rwxrwx--- 1 root plugdev 7.4M 2007-04-25 02:16 stardict-oxford-gb-2.4.2.tar.bz2
-rwxrwx--- 1 root plugdev 102M 2007-05-01 18:22 tremulous-1.1.0-installer.x86.run
-rwxrwx--- 1 root plugdev 4.9M 2007-04-30 14:32 wqy-bitmapfont-0.8.1-7_all.deb.bin
複製代碼
當執行ls -l 或 ls -al 命令後顯示的結果中,最前面的第2~10個字符是用來表示權限。第一個字符通常用來區分文件和目錄:mysql
第2~10個字符當中的每3個爲一組,左邊三個字符表示全部者權限,中間3個字符表示與全部者同一組的用戶的權限,右邊3個字符是其餘用戶的權限。這三個一組共9個字符,表明的意義以下:linux
每一個用戶都擁有本身的專屬目錄,一般集中放置在/home目錄下,這些專屬目錄的默認權限爲rwx------:面試
表示目錄全部者自己具備全部權限,其餘用戶沒法進入該目錄。執行mkdir命令所建立的目錄,其默認權限爲rwxr-xr-x,用戶能夠根據須要修改目錄的權限。正則表達式
此外,默認的權限可用umask命令修改,用法很是簡單,只需執行umask 777 命令,便表明屏蔽全部的權限,於是以後創建的文件或目錄,其權限都變成000,依次類推。一般root賬號搭配umask命令的數值爲02二、027和 077,普通用戶則是採用002,這樣所產生的權限依次爲75五、750、700、775。有關權限的數字表示法,後面將會詳細說明。sql
用戶登陸系統時,用戶環境就會自動執行rmask命令來決定文件、目錄的默認權限。 特殊權限 其實文件與目錄設置不止這些,還有所謂的特殊權限。因爲特殊權限會擁有一些「特權」,於是用戶若無特殊需求,不該該啓用這些權限,避免安全方面出現嚴重漏洞,形成黑客入侵,甚至摧毀系統!!!shell
s或S(SUID,Set UID):可執行的文件搭配這個權限,便能獲得特權,任意存取該文件的全部者能使用的所有系統資源。請注意具有SUID權限的文件,黑客常常利用這種權限,以SUID配上root賬號擁有者,無聲無息地在系統中開扇後門,供往後進出使用。
s或S(SGID,Set GID):設置在文件上面,其效果與SUID相同,只不過將文件全部者換成用戶組,該文件就能夠任意存取整個用戶組所能使用的系統資源。
T或T(Sticky):/tmp和 /var/tmp目錄供全部用戶暫時存取文件,亦即每位用戶皆擁有完整的權限進入該目錄,去瀏覽、刪除和移動文件。
由於SUID、SGID、Sticky佔用x的位置來表示,因此在表示上會有大小寫之分。加入同時開啓執行權限和SUID、SGID、Sticky,則權限表示字符是小寫的:
-rwsr-sr-t 1 root root 4096 6月 23 08:17 conf
若是關閉執行權限,則表示字符會變成大寫:
-rwSr-Sr-T 1 root root 4096 6月 23 08:17 conf 使用文件管理器來改變文件或目錄的權限 若是用戶要改變一個文件目錄的權限,右擊要改變權限的文件或者目錄,在彈出的快捷菜單中選擇「屬性」,系統將打開屬性對話框
在「屬性」對話框中,單擊「權限」標籤,就會打開「權限」選項卡。
在這裏你能夠修改文件或者目錄的全部者、組羣和其餘用戶的權限,並且能夠設置特殊權
對於特殊權限,最好不要設置,否則會帶來很嚴重的安全問題。
固然,在這裏你也能夠改變文件和目錄的全部者和所屬組。 使用chmod和數字改變文件或目錄的訪問權限 文件和目錄的權限表示,是用rwx這三個字符來表明全部者、用戶組和其餘用戶的權限。有時候,字符彷佛過於麻煩,所以還有另一種方法是以數字來表示權限,並且僅需三個數字。
數字設定的關鍵是mode的取值,一開始許多初學者會被搞糊塗,其實很簡單,咱們將rwx當作二進制數,若是有則有1表示,沒有則有0表示, 那麼rwx r-x r--
則能夠表示成爲:
111 101 100
再將其每三位轉換成爲一個十進制數,就是754。
例如,咱們想讓a.txt這個文件的權限爲:
本身 同組用戶 其餘用戶 可讀 是 是 是 可寫 是 是 可執行
那麼,咱們先根據上表獲得權限串爲:rw-rw-r--,那麼轉換成二進制數就是110 110 100,再每三位轉換成爲一個十進制數,就獲得664,所以我 們執行命令:
[root@localhost ~]# chmod 664 a.txt
按照上面的規則,rwx合起來就是4+2+1=7,一個rwxrwxrwx權限全開放的文件,數值表示爲777;而徹底不開放權限的文件「---------」其數字表示爲000。下面舉幾個例子:
-rwx------:等於數字表示700。
-rwxr―r--:等於數字表示744。
-rw-rw-r-x:等於數字表示665。
drwx―x―x:等於數字表示711。
drwx------:等於數字表示700。
複製代碼
在文本模式下,可執行chmod命令去改變文件和目錄的權限。咱們先執行ls -l 看看目錄內的狀況:
[root@localhost ~]# ls -l
總用量 368
-rw-r--r-- 1 root root 12172 8月 15 23:18 conkyrc.sample
drwxr-xr-x 2 root root 48 9月 4 16:32 Desktop
-r--r--r-- 1 root root 331844 10月 22 21:08 libfreetype.so.6
drwxr-xr-x 2 root root 48 8月 12 22:25 MyMusic
-rwxr-xr-x 1 root root 9776 11月 5 08:08 net.eth0
-rwxr-xr-x 1 root root 9776 11月 5 08:08 net.eth1
-rwxr-xr-x 1 root root 512 11月 5 08:08 net.lo
drwxr-xr-x 2 root root 48 9月 6 13:06 vmware
複製代碼
能夠看到固然文件conkyrc.sample文件的權限是644,而後把這個文件的權限改爲777。執行下面命令
[root@localhost ~]# chmod 777 conkyrc.sample
而後ls -l看一下執行後的結果:
[root@localhost ~]# ls -l
總用量 368
-rwxrwxrwx 1 root root 12172 8月 15 23:18 conkyrc.sample
drwxr-xr-x 2 root root 48 9月 4 16:32 Desktop
-r--r--r-- 1 root root 331844 10月 22 21:08 libfreetype.so.6
drwxr-xr-x 2 root root 48 8月 12 22:25 MyMusic
-rwxr-xr-x 1 root root 9776 11月 5 08:08 net.eth0
-rwxr-xr-x 1 root root 9776 11月 5 08:08 net.eth1
-rwxr-xr-x 1 root root 512 11月 5 08:08 net.lo
drwxr-xr-x 2 root root 48 9月 6 13:06 vmware
複製代碼
能夠看到conkyrc.sample文件的權限已經修改成rwxrwxrwx
若是要加上特殊權限,就必須使用4位數字才能表示。特殊權限的對應數值爲:
用一樣的方法修改文件權限就能夠了
例如:
[root@localhost ~]# chmod 7600 conkyrc.sample
[root@localhost ~]# ls -l
總用量 368
-rwS--S--T 1 root root 12172 8月 15 23:18 conkyrc.sample
drwxr-xr-x 2 root root 48 9月 4 16:32 Desktop
-r--r--r-- 1 root root 331844 10月 22 21:08 libfreetype.so.6
drwxr-xr-x 2 root root 48 8月 12 22:25 MyMusic
-rwxr-xr-x 1 root root 9776 11月 5 08:08 net.eth0
-rwxr-xr-x 1 root root 9776 11月 5 08:08 net.eth1
-rwxr-xr-x 1 root root 512 11月 5 08:08 net.lo
drwxr-xr-x 2 root root 48 9月 6 13:06 vmware
複製代碼
加入想一次修改某個目錄下全部文件的權限,包括子目錄中的文件權限也要修改,要使用參數-R表示啓動遞歸處理。
例如:
[root@localhost ~]# chmod 777 /home/user 注:僅把/home/user目錄的權限設置爲rwxrwxrw
[root@localhost ~]# chmod -R 777 /home/user 注:表示將整個/home/user目錄與其中的文件和子目錄的權限都設置爲rwxrwxrwx
複製代碼
使用命令chown改變目錄或文件的全部權 文件與目錄不只能夠改變權限,其全部權及所屬用戶組也能修改,和設置權限相似,用戶能夠經過圖形界面來設置,或執行chown命令來修改。
咱們先執行ls -l看看目錄狀況:
[root@localhost ~]# ls -l
總用量 368
-rwxrwxrwx 1 root root 12172 8月 15 23:18 conkyrc.sample
drwxr-xr-x 2 root root 48 9月 4 16:32 Desktop
-r--r--r-- 1 root root 331844 10月 22 21:08 libfreetype.so.6
drwxr-xr-x 2 root root 48 8月 12 22:25 MyMusic
-rwxr-xr-x 1 root root 9776 11月 5 08:08 net.eth0
-rwxr-xr-x 1 root root 9776 11月 5 08:08 net.eth1
-rwxr-xr-x 1 root root 512 11月 5 08:08 net.lo
drwxr-xr-x 2 root root 48 9月 6 13:06 vmware
複製代碼
能夠看到conkyrc.sample文件的所屬用戶組爲root,全部者爲root。 執行下面命令,把conkyrc.sample文件的全部權轉移到用戶user:
[root@localhost ~]# chown user conkyrc.sample
[root@localhost ~]# ls -l
總用量 368
-rwxrwxrwx 1 user root 12172 8月 15 23:18 conkyrc.sample
drwxr-xr-x 2 root root 48 9月 4 16:32 Desktop
-r--r--r-- 1 root root 331844 10月 22 21:08 libfreetype.so.6
drwxr-xr-x 2 root root 48 8月 12 22:25 MyMusic
-rwxr-xr-x 1 root root 9776 11月 5 08:08 net.eth0
-rwxr-xr-x 1 root root 9776 11月 5 08:08 net.eth1
-rwxr-xr-x 1 root root 512 11月 5 08:08 net.lo
drwxr-xr-x 2 root root 48 9月 6 13:06 vmware
複製代碼
要改變所屬組,可以使用下面命令:
[root@localhost ~]# chown :users conkyrc.sample
[root@localhost ~]# ls -l
總用量 368
-rwxrwxrwx 1 user users 12172 8月 15 23:18 conkyrc.sample
drwxr-xr-x 2 root root 48 9月 4 16:32 Desktop
-r--r--r-- 1 root root 331844 10月 22 21:08 libfreetype.so.6
drwxr-xr-x 2 root root 48 8月 12 22:25 MyMusic
-rwxr-xr-x 1 root root 9776 11月 5 08:08 net.eth0
-rwxr-xr-x 1 root root 9776 11月 5 08:08 net.eth1
-rwxr-xr-x 1 root root 512 11月 5 08:08 net.lo
drwxr-xr-x 2 root root 48 9月 6 13:06 vmware
複製代碼
要修改目錄的權限,使用-R參數就能夠了,方法和前面同樣。
答案:爲了中止正在運行的進程,讓其在後臺運行,咱們可使用組合鍵 Ctrl+Z。 2. 什麼是安裝Linux所需的最小分區數量,以及如何查看系統啓動信息?
答案:單獨一個/root分區足以執行全部的系統任務,可是強烈建議安裝Linux時,須要至少三個分區:/root,/boot,/swap。一個IDE硬盤驅動器支持高達63個分區,SCSI硬盤驅動器支持超過15個分區。 爲了檢查啓動信息,咱們可使用cat或者dmesg命令,以下所示: #cat /var/log/messages
或者#dmesg
3. 在你的Linux機器上跟蹤系統事件的守護進程名是什麼?
答案:'syslogd',它負責跟蹤系統信息,並將跟蹤日誌存儲在特定的日誌文件裏。 4. 在/root分區運行'fsck'命令的最低要求是什麼?
答案:/root分區必須掛載爲只讀模式,而不是讀寫模式 5. 如何分層複製/home目錄到另外一個目錄?
答案:Linux的'cpio'命令起到了效果。'cpio'能夠分層地複製文件和目錄層次結構到另外一個位置。 6. 在Linux中,怎樣實現日誌文件的自動替換?
答案:'logrotate'提供日誌自動替換功能。 7. 怎樣知道Linux中是誰在安排工做?
答案:使用'at'命令加上'-l'選項,就能夠查出。 8. 如何在不解壓tar包的前提下,查看包裏的內容?
答案:使用'tar -tvf'。選項‘t’(顯示內容),‘v’(詳細報告tar處理的文件信息),‘f’(使用檔案文件或者設備) 9. 什麼是頁面錯誤,它是怎麼發生的?
答案:當一個程序請求內存中不存在的數據時,就會產生頁面錯誤,致使的結果就是程序中止。 10. 什麼是在程序中返回代碼?
答案:返回代碼是shell的特性。返回代碼顯示了程序的狀態,一個成功的程序執行後返回‘0’,&&能夠用來決定那個應用程序先執行
[root@localhost ~]# bind ‘」\e[24~":"date"' 注意:相同的按鍵在不一樣的終端或終端模擬器下可能會產生不一樣的字符序列。 【附】也可使用showkey -a命令查看按鍵對應的字符序列。 推薦閱讀:不一樣應用場景的10個Linux面試問題與解答 http://www.linuxidc.com/Linux/2014-04/99710.htm 12. 問: 若是一個linux新手想要知道當前系統支持的全部命令的列表,他須要怎麼作? 答: 使用命令compgen -c,能夠打印出全部支持的命令列表。
ls 列出當前目錄文件(不包括隱含文件)
ls -a 列出當前目錄文件(包括隱含文件)
ls -l 列出當前目錄下文件的詳細信息
cd .. 回當前目錄的上一級目錄
cd - 回上一次所在的目錄
cd ~ 或 cd 回當前用戶的宿主目錄
mkdir 目錄名 建立一個目錄
rmdir 空目錄名 刪除一個空目錄
rm 文件名 文件名 刪除一個文件或多個文件
rm -rf 非空目錄名 刪除一個非空目錄下的一切
mv 路經/文件 /經/文件移動相對路經下的文件到絕對路經下
mv 文件名 新名稱 在當前目錄下更名
find 路經 -name 「字符串」 查找路經所在範圍內知足字符串匹配的文件和目錄
複製代碼
fdisk fdisk -l 查看系統分區信息
fdisk fdisk /dev/sdb 爲一塊新的SCSI硬盤進行分區
chown chown root /home 把/home的屬主改爲root用戶
chgrp chgrp root /home 把/home的屬組改爲root組
Useradd 建立一個新的用戶
Groupadd 組名 建立一個新的組
Passwd 用戶名 爲用戶建立密碼
Passwd -d用戶名 刪除用戶密碼也能登錄
Passwd -S用戶名 查詢帳號密碼
Usermod -l 新用戶名 老用戶名 爲用戶更名
Userdel–r 用戶名 刪除用戶一切
service [servicename] start/stop/restart 系統服務控制操做
/etc/init.d/[servicename] start/stop/restart 系統服務控制操做
uname -a 查看內核版本
cat /etc/issue 查看ubuntu版本
lsusb 查看usb設備
sudo ethtool eth0 查看網卡狀態
cat /proc/cpuinfo 查看cpu信息
lshw 查看當前硬件信息
sudo fdisk -l 查看磁盤信息
df -h 查看硬盤剩餘空間
free -m 查看當前的內存使用狀況
ps -A 查看當前有哪些進程
kill 進程號(就是ps -A中的第一列的數字)或者 killall 進程名( 殺死一個進程)
kill -9 進程號 強制殺死一個進程
reboot Init 6 重啓LINUX系統
Halt Init 0 Shutdown –h now 關閉LINUX系統
複製代碼
tar -c 建立包 –x 釋放包 -v 顯示命令過程 –z 表明壓縮包
tar –cvf benet.tar /home/benet 把/home/benet目錄打包
tar –zcvf benet.tar.gz /mnt 把目錄打包並壓縮
tar –zxvf benet.tar.gz 壓縮包的文件解壓恢復
tar –jxvf benet.tar.bz2 解壓縮
複製代碼
make 編譯
make install 安裝編譯好的源碼包
複製代碼
apt-cache search package 搜索包
apt-cache show package 獲取包的相關信息,如說明、大小、版本等
sudo apt-get install package 安裝包
sudo apt-get install package - - reinstall 從新安裝包
sudo apt-get -f install 修復安裝」-f = –fix-missing」
sudo apt-get remove package 刪除包
sudo apt-get remove package - - purge 刪除包,包括刪除配置文件等
sudo apt-get update 更新源
sudo apt-get upgrade 更新已安裝的包
sudo apt-get dist-upgrade 升級系統
sudo apt-get dselect-upgrade 使用 dselect 升級
apt-cache depends package 瞭解使用依賴
apt-cache rdepends package 是查看該包被哪些包依賴
sudo apt-get build-dep package 安裝相關的編譯環境
apt-get source package 下載該包的源代碼
sudo apt-get clean && sudo apt-get autoclean 清理無用的包
sudo apt-get check 檢查是否有損壞的依賴
sudo apt-get clean 清理全部軟件緩存(即緩存在/var/cache/apt/archives目錄裏的deb包)
複製代碼
查看軟件xxx安裝內容 #dpkg -L xxx
查找軟件 #apt-cache search 正則表達式
查找文件屬於哪一個包 #dpkg -S filename apt-file search filename
查詢軟件xxx依賴哪些包 #apt-cache depends xxx
查詢軟件xxx被哪些包依賴 #apt-cache rdepends xxx
增長一個光盤源 #sudo apt-cdrom add
系統升級
#sudo apt-get update
#sudo apt-get upgrade
#sudo apt-get dist-upgrade
複製代碼
清除因此刪除包的殘餘配置文件 #dpkg -l |grep ^rc|awk ‘{print $2}’ |tr ["\n"] [" 「]|sudo xargs dpkg -P -
編譯時缺乏h文件的自動處理 #sudo auto-apt run ./configure
查看安裝軟件時下載包的臨時存放目錄 #ls /var/cache/apt/archives
備份當前系統安裝的全部包的列表 #dpkg –get-selections | grep -v deinstall > ~/somefile
從上面備份的安裝包的列表文件恢復全部包 #dpkg –set-selections < ~/somefile sudo dselect
清理舊版本的軟件緩存 #sudo apt-get autoclean
清理全部軟件緩存 #sudo apt-get clean
刪除系統再也不使用的孤立軟件 #sudo apt-get autoremove
查看包在服務器上面的地址 #apt-get -qq –print-uris install ssh | cut -d\’ -f2
系統 查看內核 #uname -a
查看Ubuntu版本 #cat /etc/issue
查看內核加載的模塊 #lsmod
查看PCI設備 #lspci
查看USB設備 #lsusb
查看網卡狀態 #sudo ethtool eth0
查看CPU信息 #cat /proc/cpuinfo
顯示當前硬件信息 #lshw
硬盤 查看硬盤的分區 #sudo fdisk -l
查看IDE硬盤信息 #sudo hdparm -i /dev/hda
查看STAT硬盤信息 #sudo hdparm -I /dev/sda 或 #sudo apt-get install blktool #sudo blktool /dev/sda id
查看硬盤剩餘空間 #df -h #df -H
查看目錄佔用空間 #du -hs 目錄名
優盤無法卸載 #sync fuser -km /media/usbdisk
內存 查看當前的內存使用狀況 #free -m
進程 查看當前有哪些進程 #ps -A 停止一個進程 #kill 進程號(就是ps -A中的第一列的數字) 或者 killall 進程名
強制停止一個進程(在上面進程停止不成功的時候使用) #kill -9 進程號 或者 killall -9 進程名
圖形方式停止一個程序 #xkill 出現骷髏標誌的鼠標,點擊須要停止的程序便可
查看當前進程的實時情況 #top
查看進程打開的文件 #lsof -p
如何設置動態域名 #首先去http://www.3322.org申請一個動態域名 #而後修改 /etc/ppp/ip-up 增長撥號時更新域名指令 sudo vim /etc/ppp/ip-up #在最後增長以下行 w3m -no-cookie -dump
網絡 根據IP查網卡地址 #arping IP地址
查看當前IP地址 #ifconfig eth0 |awk ‘/inet/ {split($2,x,":");print x[2]}’
查看當前外網的IP地址 #w3m -no-cookie -dumpwww.edu.cn|grep-o‘[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}’ #w3m -no-cookie -dumpwww.xju.edu.cn|grep-o’[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}’ #w3m -no-cookie -dump ip.loveroot.com|grep -o’[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}’
查看當前監聽80端口的程序 #lsof -i :80
查看當前網卡的物理地址 #arp -a | awk ‘{print $4}’ ifconfig eth0 | head -1 | awk ‘{print $5}’
當即讓網絡支持nat #sudo echo 1 > /proc/sys/net/ipv4/ip_forward #sudo iptables -t nat -I POSTROUTING -j MASQUERADE
查看路由信息 #netstat -rn sudo route -n
手工增長刪除一條路由 #sudo route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1 #sudo route del -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1
修改網卡MAC地址的方法 #sudo ifconfig eth0 down 關閉網卡 #sudo ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE 而後改地址 #sudo ifconfig eth0 up 而後啓動網卡
統計當前IP鏈接的個數 #netstat -na|grep ESTABLISHED|awk ‘{print $5}’|awk -F: ‘{print $1}’|sort|uniq -c|sort -r -n #netstat -na|grep SYN|awk ‘{print $5}’|awk -F: ‘{print $1}’|sort|uniq -c|sort -r -n
統計當前20000個IP包中大於100個IP包的IP地址 #tcpdump -tnn -c 20000 -i eth0 | awk -F 「." ‘{print $1″."$2″."$3″."$4}’ | sort | uniq -c | sort -nr | awk ‘ $1 > 100 ‘
屏蔽IPV6 #echo 「blacklist ipv6″ | sudo tee /etc/modprobe.d/blacklist-ipv6
服務 添加一個服務 #sudo update-rc.d 服務名 defaults 99
刪除一個服務 #sudo update-rc.d 服務名 remove
臨時重啓一個服務 #/etc/init.d/服務名 restart
臨時關閉一個服務 #/etc/init.d/服務名 stop
臨時啓動一個服務 #/etc/init.d/服務名 start
設置 配置默認Java使用哪一個 #sudo update-alternatives –config java
修改用戶資料 #sudo chfn userid
給apt設置代理 #export http_proxy=http://xx.xx.xx.xx:xxx
修改系統登陸信息 #sudo vim /etc/motd
中文轉換文件名由GBK爲UTF8 #sudo apt-get install convmv convmv -r -f cp936 -t utf8 –notest –nosmart *
批量轉換src目錄下的全部文件內容由GBK到UTF8 #find src -type d -exec mkdir -p utf8/{} ; find src -type f -exec iconv -f GBK -t UTF-8 {} -o utf8/{} ; mv utf8/* src rm -fr utf8
轉換文件內容由GBK到UTF8 #iconv -f gbk -t utf8 $i > newfile
轉換 mp3 標籤編碼 #sudo apt-get install python-mutagen find . -iname 「*.mp3" -execdir mid3iconv -e GBK {} ;
控制檯下顯示中文 #sudo apt-get install zhcon 使用時,輸入zhcon便可
文件 快速查找某個文件 #whereis filename #find 目錄 -name 文件名
查看文件類型 #file filename
顯示xxx文件倒數6行的內容 #tail -n 6 xxx
讓tail不停地讀地最新的內容 #tail -n 10 -f /var/log/apache2/access.log
查看文件中間的第五行(含)到第10行(含)的內容 #sed -n ‘5,10p’ /var/log/apache2/access.log
查找包含xxx字符串的文件 #grep -l -r xxx .
全盤搜索文件(桌面可視化) gnome-search-tool
查找關於xxx的命令 #apropos xxx man -k xxx
經過ssh傳輸文件 #scp -rp /path/filenameusername@remoteIP:/path #將本地文件拷貝到服務器上 #scp -rpusername@remoteIP:/path/filename/path #將遠程文件從服務器下載到本地
查看某個文件被哪些應用程序讀寫 #lsof 文件名
把全部文件的後輟由rm改成rmvb #rename ’s/.rm$/.rmvb/’ *
把全部文件名中的大寫改成小寫 #rename ‘tr/A-Z/a-z/’ *
刪除特殊文件名的文件,如文件名:–help.txt #rm — –help.txt 或者 rm ./–help.txt
查看當前目錄的子目錄 #ls -d */. 或 echo */.
將當前目錄下最近30天訪問過的文件移動到上級back目錄 #find . -type f -atime -30 -exec mv {} ../back ;
將當前目錄下最近2小時到8小時以內的文件顯示出來 #find . -mmin +120 -mmin -480 -exec more {} ;
刪除修改時間在30天以前的全部文件 #find . -type f -mtime +30 -mtime -3600 -exec rm {} ;
查找guest用戶的以avi或者rm結尾的文件並刪除掉 #find . -name ‘.avi’ -o -name ‘.rm’ -user ‘guest’ -exec rm {} ;
查找的不以java和xml結尾,並7天沒有使用的文件刪除掉 #find . ! -name .java ! -name ‘.xml’ -atime +7 -exec rm {} ;
統計當前文件個數 #ls /usr/bin|wc -w
統計當前目錄個數 #ls -l /usr/bin|grep ^d|wc -l
顯示當前目錄下2006-01-01的文件名 #ls -l |grep 2006-01-01 |awk ‘{print $8}’
FTP 上傳下載文件工具-filezilla #sudo apt-get install filezilla
filezilla沒法列出中文目錄? 站點->字符集->自定義->輸入:GBK
本地中文界面 1)下載filezilla中文包到本地目錄,如~/ 2)#unrar x Filezilla3_zhCN.rar 3) 若是你沒有unrar的話,請先安裝rar和unrar #sudo apt-get install rar unrar #sudo ln -f /usr/bin/rar /usr/bin/unrar 4)先備份原來的語言包,再安裝;實際就是拷貝一個語言包。 #sudo cp /usr/share/locale/zh_CN/filezilla.mo /usr/share/locale/zh_CN/filezilla.mo.bak #sudo cp ~/locale/zh_CN/filezilla.mo /usr/share/locale/zh_CN/filezilla.mo 5)重啓filezilla,便可!
解壓縮 解壓縮 xxx.tar.gz #tar -zxvf xxx.tar.gz
解壓縮 xxx.tar.bz2 #tar -jxvf xxx.tar.bz2
壓縮aaa bbb目錄爲xxx.tar.gz #tar -zcvf xxx.tar.gz aaa bbb
壓縮aaa bbb目錄爲xxx.tar.bz2 #tar -jcvf xxx.tar.bz2 aaa bbb
解壓縮 RAR 文件
Nautilus 顯示隱藏文件 Ctrl+h
顯示地址欄 Ctrl+l
特殊 URI 地址
查看已安裝字體 在nautilus的地址欄裏輸入"fonts:///「,就能夠查看本機全部的fonts
程序 詳細顯示程序的運行信息 #strace -f -F -o outfile
日期和時間
設置日期 #date -s mm/dd/yy
設置時間 #date -s HH:MM
將時間寫入CMOS #hwclock –systohc
讀取CMOS時間 #hwclock –hctosys
從服務器上同步時間 #sudo ntpdate time.nist.gov #sudo ntpdate time.windows.com
控制檯
不一樣控制檯間切換 Ctrl + ALT + ← Ctrl + ALT + →
指定控制檯切換 Ctrl + ALT + Fn(n:1~7)
控制檯下滾屏 SHIFT + pageUp/pageDown
控制檯抓圖 #setterm -dump n(n:1~7)
數據庫 mysql的數據庫存放在地方 #/var/lib/mysql
從mysql中導出和導入數據 #mysqldump 數據庫名 > 文件名 #導出數據庫 #mysqladmin create 數據庫名 #創建數據庫 #mysql 數據庫名 < 文件名 #導入數據庫
忘了mysql的root口令怎麼辦 #sudo /etc/init.d/mysql stop #sudo mysqld_safe –skip-grant-tables #sudo mysqladmin -u user password ‘newpassword" #sudo mysqladmin flush-privileges
修改mysql的root口令 #sudo mysqladmin -uroot -p password ‘你的新密碼’
其它 下載網站文檔 #wget -r -p -np -khttp://www.21cn.com · r:在本機創建服務器端目錄結構; · -p: 下載顯示HTML文件的全部圖片; · -np:只下載目標站點指定目錄及其子目錄的內容; · -k: 轉換非相對連接爲相對連接。
如何刪除Totem電影播放機的播放歷史記錄 #rm ~/.recently-used
如何更換gnome程序的快捷鍵 點擊菜單,鼠標停留在某條菜單上,鍵盤輸入任意你所須要的鍵,能夠是組合鍵,會當即生效; 若是要清除該快捷鍵,請使用backspace
vim 如何顯示彩色字符 #sudo cp /usr/share/vim/vimcurrent/vimrc_example.vim /usr/share/vim/vimrc
如何在命令行刪除在會話設置的啓動程序 #cd ~/.config/autostart rm 須要刪除啓動程序
如何提升wine的反應速度 #sudo sed -ie ‘/GBK/,/^}/d’ /usr/share/X11/locale/zh_CN.UTF-8/XLC_LOCALE
#chgrp [語法]: chgrp [-R] 文件組 文件… [說明]: 文件的GID表示文件的文件組,文件組可用數字表示, 也可用一個有效的組名錶示,此命令改變一個文件的GID,可參看chown。 -R 遞歸地改變全部子目錄下全部文件的存取模式 [例子]: #chgrp group file 將文件 file 的文件組改成 group
#chmod [語法]: chmod [-R] 模式 文件… 或 chmod [ugoa] {+|-|=} [rwxst] 文件… [說明]: 改變文件的存取模式,存取模式可表示爲數字或符號串,例如: #chmod nnnn file , n爲0-7的數字,意義以下: 4000 運行時可改變UID 2000 運行時可改變GID 1000 置粘着位 0400 文件主可讀 0200 文件主可寫 0100 文件主可執行 0040 同組用戶可讀 0020 同組用戶可寫 0010 同組用戶可執行 0004 其餘用戶可讀 0002 其餘用戶可寫 0001 其餘用戶可執行 nnnn 就是上列數字相加獲得的,例如 chmod 0777 file 是指將文件 file 存取權限置爲全部用戶可讀可寫可執行。 -R 遞歸地改變全部子目錄下全部文件的存取模式 u 文件主 g 同組用戶 o 其餘用戶 a 全部用戶
#chown [語法]: chown [-R] 文件主 文件… [說明]: 文件的UID表示文件的文件主,文件主可用數字表示, 也可用一個有效的用戶名錶示,此命令改變一個文件的UID,僅當此文件的文件主或超級用戶可以使用。 -R 遞歸地改變全部子目錄下全部文件的存取模式 [例子]: #chown mary file 將文件 file 的文件主改成 mary #chown 150 file 將文件 file 的UID改成150
Ubuntu命令行下修改網絡配置 以eth0爲例
auto eth0 iface eth0 inet dhcp 用下面的命令使網絡設置生效: #sudo /etc/init.d/networking restart 固然,也能夠在命令行下直接輸入下面的命令來獲取地址 #sudo dhclient eth0
auto eth0 iface eth0 inet static address 192.168.3.90 gateway 192.168.3.1 netmask 255.255.255.0 network 192.168.3.0 broadcast 192.168.3.255 將上面的ip地址等信息換成你本身就能夠了.
用下面的命令使網絡設置生效: #sudo /etc/init.d/networking restart
auto eth0:1
iface eth0:1 inet static
address 192.168.1.60
netmask 255.255.255.0
network x.x.x.x
broadcast x.x.x.x
gateway x.x.x.x
複製代碼
根據你的狀況填上全部諸如address,netmask,network,broadcast和gateways等信息. 用下面的命令使網絡設置生效: #sudo /etc/init.d/networking restart
設置主機名稱(hostname) 使用下面的命令來查看當前主機的主機名稱: #sudo /bin/hostname 使用下面的命令來設置當前主機的主機名稱: #sudo /bin/hostname newname 系統啓動時,它會從/etc/hostname來讀取主機的名稱.
配置DNS 首先,你能夠在/etc/hosts中加入一些主機名稱和這些主機名稱對應的IP地址,這是簡單使用本機的靜態查詢. 要訪問DNS 服務器來進行查詢,須要設置/etc/resolv.conf文件. 假設DNS服務器的IP地址是192.168.3.2, 那麼/etc/resolv.conf文件的內容應爲: search test.com nameserver 192.168.3.2
安裝AMP服務 若是採用Ubuntu Server CD開始安裝時,能夠選擇安裝,這系統會自動裝上apache2,php5和mysql5。下面主要說明一下若是不是安裝的Ubuntu server時的安裝方法。 用命令在Ubuntu下架設Lamp其實很簡單,用一條命令就完成。在終端輸入如下命令: #sudo apt-get install apache2 mysql-server php5 php5-mysql php5-gd #phpmyadmin 裝好後,mysql管理員是root,無密碼,經過http://localhost/phpmyadmin就能夠訪問mysql了
修改 MySql 密碼 終端下輸入: #mysql -u root #mysql> GRANT ALL PRIVILEGES ON . TO root@localhost IDENTIFIED BY 「123456″; ’123456‘是root的密碼,能夠自由設置,但最好是設個安全點的。 #mysql> quit; 退出mysql
apache2的操做命令 啓動:#sudo /etc/init.d/apache2 start 重啓:#sudo /etc/init.d/apache2 restart 關閉:#sudo /etc/init.d/apache2 stop apache2的默認主目錄:/var/www/
FireFox 中安裝 FlashPlayer 插件 先下載插件: install_flash_player_9_linux.tar.gz #tar -zxf install_flash_player_9_linux.tar.gz #./flashplayer-installer
回答(y/n/q)? n/q #sudo cp libflashplayer.so /usr/lib/firefox/plugins 啓動 firefox 便可!
安裝媒體播放器 安裝的是mplayer 終端輸入:#sudo apt-get install mplayer mozilla-mplayer totem-xine libxine-extracodecs
另外須要一個w32codecs文件,是用來支持那些私有媒體格式的解碼器,源裏已經沒有w32codecs了,咱們能夠從這裏下載那個後綴爲.deb的安裝 http://www.debian-multimedia.org/pool/main/w/w32codecs/
mplayer調試(視頻、字幕) 啓動mplayer,右鍵->Preferences->Video Available drivers選擇xv 而後進入Font標籤 Font裏選擇一箇中文字體,Encoding裏設置爲Simplified Chinese charset (CP936)
安裝下載工具(多線程下載、BT下載、電驢) 仍是終端輸入:#sudo apt-get install d4x amule azureus 便可。 或者把 beryl-manager添加到啓動項內
字體更換 我推薦你們使用文泉驛字體,在 http://wqy.sourceforge.net 下載deb包安裝 在「系統「->"首選項「->"字體「中調整字體
apt下載的deb包清理 在使用完apt後,系統下載的deb包會留存在硬盤裏,咱們能夠把它們刪除,釋放硬盤空間。 終端輸入:#sudo apt-get clean
安裝rar壓縮、解壓工具 終端輸入:#sudo apt-get install rar unrar
啓用root(最高權限)賬戶 終端輸入:#sudo passwd root 輸入你但願的root用戶的密碼
安裝QQ 終端輸入:#sudo apt-get install eva 即可安裝eva了,若是你是使用scim(選擇中文語言支持的自動安裝的就是scim),爲了能夠在eva裏面輸入文字,要在終端輸入:sudo apt-get install scim-qtimm 系統會安裝支持QT的scim插件,這樣你就可使用eva聊qq了。
顯卡驅動安裝 進入「系統"->「系統管理"->「受限驅動管理器" 找到你的顯卡,把那個框點成對號,會提示你安裝顯卡驅動,而後按照提示一步一步安裝完畢,重啓便可。
beryl的安裝 你的系統在安裝完畢以後就已經有了一個內置的桌面效果軟件(能實現簡單的桌面特效,包括3D立方體),使用方法是(必須將顯卡驅動裝好)進入「系統"「首選項"「桌面效果",點擊「啓用桌面效果",若是你須要使用3D立方體桌面,那麼選中「立方體上的工做區"便可。 若是你對這個簡單的桌面特效工具不太滿意,想追求更華麗的桌面,那麼安裝beryl仍然是個很好的選擇。現在安裝beryl不會像之前同樣麻煩了,feisty的源裏已經有了beryl的軟件包,咱們只須要在終端裏輸入: #sudo apt-get install beryl-core beryl-plugins beryl-plugins-data emerald beryl-settings beryl-manager beryl beryl-dev emerald-themes 安裝完畢便可了。 啓動方法:「應用程序"->"系統工具"->"Beryl Manager" 或者直接在終端輸入:#beryl-manager
如何設定/改變/啓用 root 使用者的密碼? #sudo passwd root
爲了啓用 root 賬號 (也就是 設置一個口令) 使用: #sudo passwd root
當你使用完畢後屏蔽 root 賬號 使用: #sudo passwd -l root 這個將鎖住 root 賬號.
如何在終端機模式下切換到 root 身份? #sudo -s -H Password: <在這注明您的密碼>
安裝VNC server 第一步, 獲取安裝文件 #sudo apt-get install vnc4server 第二步, 修改VNC Password, 6-8位 #vncpasswd Password: ****** Verify:***** 第三步, 修改配置 系統->首選項->遠程桌面 選擇->請求用戶輸入此密碼->輸入至少6位密碼 第四步, 啓動VNC server #vncserver 第五步,經過客戶端鏈接 #vncviewer 192.168.0.1
安裝MS字體 #sudo apt-get install msttcorefonts
vim配置
首先安裝 vim 完整版本 #sudo apt-get install vim-full
vim中文在線幫助 a. 先下載文檔 vimcdoc-1.5.0.tar.gz b. 解壓, 執行./vimcdoc.sh, vi裏面, 執行:help, 就都是中文的了.
啓用本地配置 VIM version 7.1 (說明文檔) #cp etc/vim/vimrc ~/.vimrc #vim ~/.vimrc
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 通常設定 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 設定默認解碼 set fenc=utf-8 set fencs=utf-8,usc-bom,euc-jp,gb18030,gbk,gb2312,cp936 " 不要使用vi的鍵盤模式,而是vim本身的 set nocompatible
" history文件中須要記錄的行數 set history=100
" 在處理未保存或只讀文件的時候,彈出確認 set confirm
" 與windows共享剪貼板 set clipboard+=unnamed
" 偵測文件類型 filetype on
" 載入文件類型插件 filetype plugin on
" 爲特定文件類型載入相關縮進文件 filetype indent on
" 保存全局變量 set viminfo+=!
" 帶有以下符號的單詞不要被換行分割 set iskeyword+=_,$,@,%,#,-
" 語法高亮 syntax on
" 高亮字符,讓其不受100列限制 :highlight OverLength ctermbg=red ctermfg=white guibg=red guifg=white :match OverLength ‘%101v.*’
" 狀態行顏色 highlight StatusLine guifg=SlateBlue guibg=Yellow highlight StatusLineNC guifg=Gray guibg=White
「"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 文件設置 「"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 不要備份文件(根據本身須要取捨) set nobackup
" 不要生成swap文件,當buffer被丟棄的時候隱藏它 setlocal noswapfile set bufhidden=hide
" 字符間插入的像素行數目 set linespace=0
" 加強模式中的命令行自動完成操做 set wildmenu
" 在狀態行上顯示光標所在位置的行號和列號 set ruler set rulerformat=%20(%2*%<%f%=\ %m%r\ %3l\ %c\ %p%%%)
" 命令行(在狀態行下)的高度,默認爲1,這裏是2 set cmdheight=2
" 使回格鍵(backspace)正常處理indent, eol, start等 set backspace=2
" 容許backspace和光標鍵跨越行邊界 set whichwrap+=<,>,h,l
" 能夠在buffer的任何地方使用鼠標(相似office中在工做區雙擊鼠標定位) set mouse=a set selection=exclusive set selectmode=mouse,key
" 啓動的時候不顯示那個援助索馬里兒童的提示 set shortmess=atI
" 經過使用: commands命令,告訴咱們文件的哪一行被改變過 set report=0
" 不讓vim發出討厭的滴滴聲 set noerrorbells
" 在被分割的窗口間顯示空白,便於閱讀 set fillchars=vert:\ ,stl:\ ,stlnc:\
「"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 搜索和匹配 「"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 高亮顯示匹配的括號 set showmatch
" 匹配括號高亮的時間(單位是十分之一秒) set matchtime=5
" 在搜索的時候忽略大小寫 set ignorecase
" 不要高亮被搜索的句子(phrases) set nohlsearch
" 在搜索時,輸入的詞句的逐字符高亮(相似firefox的搜索) set incsearch
" 輸入:set list命令是應該顯示些啥? set listchars=tab:|\ ,trail:.,extends:>,precedes:<,eol:$
" 光標移動到buffer的頂部和底部時保持3行距離 set scrolloff=3
" 不要閃爍 set novisualbell
" 個人狀態行顯示的內容(包括文件類型和解碼) set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime("%d/%m/%y\ -\ %H:%M")}
" 老是顯示狀態行 set laststatus=2
「"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 文本格式和排版 「"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 自動格式化 set formatoptions=tcrqn
" 繼承前一行的縮進方式,特別適用於多行註釋 set autoindent
" 爲C程序提供自動縮進 set smartindent
" 使用C樣式的縮進 set cindent
" 製表符爲4 set tabstop=4
" 統一縮進爲4 set softtabstop=4 set shiftwidth=4
" 不要用空格代替製表符 set noexpandtab
" 不要換行 set nowrap
" 在行和段開始處使用製表符 set smarttab
「"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " CTags的設定 「"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 按照名稱排序 let Tlist_Sort_Type = 「name"
" 在右側顯示窗口 let Tlist_Use_Right_Window = 1
" 壓縮方式 let Tlist_Compart_Format = 1
" 若是隻有一個buffer,kill窗口也kill掉buffer let Tlist_Exist_OnlyWindow = 1
" 不要關閉其餘文件的tags let Tlist_File_Fold_Auto_Close = 0
" 不要顯示摺疊樹 let Tlist_Enable_Fold_Column = 0
「"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " Autocommands 「"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" " 只在下列文件類型被偵測到的時候顯示行號,普通文本文件不顯示
if has("autocmd") autocmd FileType xml,html,c,cs,java,perl,shell,bash,cpp,python,vim,php,ruby set number autocmd FileType xml,html vmap