啓動區以後的是超級區(Super block)。它存儲有文件系統的相關信息,包括文件系統的類型,inode的數目,數據塊的數目。node
隨後是多個inodes,它們是實現文件存儲的關鍵。在Linux系統中,一個文件能夠分紅幾個數據塊存儲每一個文件對應一個inode。這個inode中包含多個指針,指向屬於該文件各個數據塊。當操做系統須要讀取文件時,只須要對應inode的"地圖",收集起分散的數據塊,就能夠收穫咱們的文件了。linux
floralin@ubuntu:~$ ls -al
1)第一欄表明這個文件的類型與權限(permission):ubuntu
第一個字符d則是目錄,當爲-則是文件,如果[ l ]則表示爲連結檔(link file),是b則表示爲裝置文件裏面的可供儲存的接口設備(可隨機存取裝置),如果c則表示爲裝置文件裏面的串行端口設備,例如鍵盤、鼠標(一次性讀取裝置)。數組
接下來的字符中,以三個爲一組,均爲rwx三個參數組合,[ r ]表明可讀(read)、[ w ]表明可寫(write)、[ x ]表明可執行(execute)。第一組爲文件擁有者的權限,第二組爲同羣組的權限,第三組爲其餘非本羣組的權限。網絡
2)第二欄表示多少個檔名連結到此節點dom
3)第三欄表示文件的擁有賬號函數
4)第四欄表示這個文件所屬羣組url
5)第五欄表示這個文件的容量大小,默認單位爲bytesspa
6) 第六欄表示這個文件的建檔日期或是最近的修改日期操作系統
floralin@ubuntu:~/Desktop/linux_study$ mkdir test floralin@ubuntu:~/Desktop/linux_study$ ls test
刪除空文件夾
floralin@ubuntu:~/Desktop/linux_study$ rm test rm: cannot remove ‘test’: Is a directory floralin@ubuntu:~/Desktop/linux_study$ rmdir test floralin@ubuntu:~/Desktop/linux_study$ ls
改變文件屬性與權限
chgrp :改變文件所屬羣組 chown :改變文件擁有者 chmod :改變文件的權限, SUID, SGID, SBIT等等的特性
改變文件所屬羣組
floralin@ubuntu:~/Desktop/linux_study$ sudo chgrp users linux_study
floralin@ubuntu:~/Desktop/linux_study$ sudo chown root linux_study
floralin@ubuntu:~/Desktop/linux_study$ sudo chmod 755 linux_study
更改文件的權限爲755: owner r+w+x, group: r+x, others: r+x
$cat filename : 顯示文件 $cat file1 file2 : 鏈接顯示file1和file2 $head -1 filename :顯示文件第一行 $tail -5 filename : 顯示文件倒數第五行 $diff file1 file2 :顯示file1和file2的差異
floralin@ubuntu:~/Desktop/linux_study$ wc test2 6 15 71 test2
顯示日期
$date +"%Y-%m-%d_%T" 以YYYY-MM-DD_HH:MM:SS的格式顯示日期時間 (格式可參考$man date) $date --date="1999-01-03 05:30:00" 顯示從1900-01-03 05:30:00具體信息
網絡
顯示網絡藉口以及相應的IP地址。ifconfig可用於設置網絡接口:
floralin@ubuntu:~/Desktop/linux_study$ ifconfig
運行eth0接口
floralin@ubuntu:~/Desktop/linux_study$ sudo ifup eth0
關閉eth0接口
floralin@ubuntu:~/Desktop/linux_study$ sudo ifdown eth0
顯示無線網絡接口
floralin@ubuntu:~/Desktop/linux_study$ iwconfig
顯示路由表。route可用於修改路由表
floralin@ubuntu:~/Desktop/linux_study$ iwconfig
當前網絡鏈接狀態
floralin@ubuntu:~/Desktop/linux_study$ netstat
發送ping包到地址IP
floralin@ubuntu:~/Desktop/linux_study$ ping 10.21.171.15
向DHCP主機發送DHCP請求,以得到IP地址以及其餘設置信息
floralin@ubuntu:~/Desktop/linux_study$ sudo dhclient
使用wget 下載url指向的資源
floralin@ubuntu:~/Desktop/linux_study$ sudo dhclient
DNS查詢,尋找域名domain對應的ip
floralin@ubuntu:~/Desktop/linux_study$ sudo dhclient
floralin@ubuntu:~/Desktop/linux_study$ gzip test
floralin@ubuntu:~/Desktop/linux_study$ gzip -d test
[root@linux ~]# tar -cvf /tmp/etc.tar /etc <==僅打包,不壓縮! [root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc <==打包後,以 gzip 壓縮 [root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc <==打包後,以 bzip2 壓縮
將 /tmp/etc.tar.gz 文件解壓縮在 /usr/local/src 底下
[root@linux ~]# cd /usr/local/src [root@linux src]# tar -zxvf /tmp/etc.tar.gz
floralin@ubuntu:~$ ps -eo pid,comm,cmd
-e表明列出所有進程,-o pid,comm,cmd表明咱們須要pid,comm和cmd信息。
每一行表明一個進程,三列的信息分別表明,每一行進程的惟一PID表示、COMMAND是進程的簡稱、CMD是進程所對應的程序以及運行時所帶的參數(對於使用使用[ ]的,是kernel的一部分功能,被打扮成進程的樣子,方便操做系統管理)。
如何建立進程
實際上計算機在開機的時候,內核kernel只創建了一個init進程,linux kernel是並不直接創建新進程的系統調用。全部的進程是經過fork機制創建的。(fork,新的進程須要經過的的進程複製自身獲得)。當進程fork的時候,linux在內存中開闢出一片新的內存空間給新的進程,並將老的進程空間中的內容複製到新的空間中,今後兩個進程同時運行。能夠經過pstree命令來顯示整個進程樹:
子進程的終結
當子進程終結時,會通知父進程清空本身所佔據的內存,並在kernel中留下本身退出信息。
父進程在得知子進程終結時,會對該子進程使用wait系統調用。這個wait函數能從kernel中取出子進程的退出信息,並清空該信息在kernel中所佔據的空間。
可是,若是父進程早於子進程終結,子進程就會成爲一個孤兒(orphand)進程。孤兒進程會被過繼給init進程,init進程也就成了該進程的父進程。init進程負責該子進程終結時調用wait函數。
$kill -SIGCONT 9575
傳遞SIGCONT信號給ping進程。