(1) 檢視系統時間:
[root@node0 test]# date
Sun Nov 19 21:43:03 CST 2017
[root@node0 test]# date +%Y-%m-%d
2017-11-19
(2) 更改系統時間:
[root@node0 test]# date -s "2000-12-02 14:24:12"
Sat Dec 2 14:24:12 CST 2000
Sat Dec 2 14:24:15 CST 2000
2000-12-02
(3) 檢視硬體時間:
[root@node0 test]# hwclock
Sun 19 Nov 2017 09:46:18 PM CST -0.425662 seconds
Sun Nov 19 14:15:52 CST 2017
(4) 設定硬體時間:
[root@node0 test]# hwclock -s
Sun Nov 19 21:46:40 CST 2017
Sun 19 Nov 2017 09:46:44 PM CST -0.391607 seconds
(5) 進行計算:
[root@node0 test]# echo $[2+3] # 使用echo指令進行計算
5
[root@node0 test]# bc # 互動式電腦
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
2+3
1-2
-1
quit # 輸入quit指令退出bc互動式電腦
[root@node0 test]# bc
q # 輸入英文字母将會計算出0
dsghs
quit
(6) 修改Linux系統曆史記錄的條目
存放位置:~/.bash_history
history指令可以檢視Linux系統的曆史指令,-c參數可以清空Linux終端的曆史指令。
使用 !字元串 可以執行最近一次使用的以指定字元串開頭的Linux指令。<Ctrl>+<r>鍵可以搜尋Linux曆史指令。
************************************************************************************************
修改Linux曆史指令顯示每一條指令執行的時間:
[root@node0 test]# vim /etc/bashrc # 編輯腳本檔案
export HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S--->" # 追加資料
[root@node0 test]# source /etc/bashrc # 重新整理資料
[root@node0 ~]# history # 測試檢視
1 2017-11-19 21:56:16--->ls
2 2017-11-19 21:56:20--->date
3 2017-11-19 21:56:26--->history
4 2017-11-19 21:56:31--->cd
5 2017-11-19 21:56:33--->ll
......
(7) 重定向輸出:
重定向輸入
<
将文本輸入來源由鍵盤改為指定的檔案。
重定向輸出
>
将指令行的正常輸出結果儲存到指定的檔案。
重定向錯誤
2>
将指令行的錯誤資訊儲存到檔案,覆寫。
2>>
将指令行的錯誤資訊儲存到檔案,追加。
混合重定向
&>
相當于>和2>,,覆寫到同一個檔案
Linux的目錄:
可分享的(shareable)
不可分享的(unshareable)
不變的(static)
/usr(軟體放置處)
/etc(配置檔案目錄)
/opt(第三方軟體)
/boot(開啟與核心)
可變動的(variable)
/var/mail(使用者郵件)
/var/run(程式相關)
/var/spool/news(新聞討論區)
/var/lock(程式相關)
根目錄是整個系統最重要的一個目錄,因為不但所有的目錄都是由根目錄衍生出來的,
同時根目錄也與開機/還原/系統修複等動作有關。 由于系統開機時需要特定的開機軟體、
核心檔案、開機所需程式、 函式庫等等檔案資料,若系統出現錯誤時,根目錄也必須要包
含有能夠修複檔案系統的程式才行。 因為根目錄是這麼的重要,是以在 FHS 的要求方面,
他希望根目錄不要放在非常大的分區, 因為越大的分區内你會放入越多的資料,如此一來
根目錄所在分區就可能會有較多發生錯誤的機會。
是以 FHS 标準建議:根目錄(/)所在分區應該越小越好, 且應用程式所安裝的軟體最好
不要與根目錄放在同一個分區内,保持根目錄越小越好。 如此不但效能較佳,根目錄所在
的檔案系統也較不容易發生問題。說白了,就是根目錄和 Windows 的 C 盤一個樣。
FHS 認為根目錄(/)下應該包含如下子目錄:
目錄
應放置檔案内容
/bin
系統有很多放置執行檔的目錄,但/bin比較特殊。因為/bin放置的是在單人維護模式下還能夠被操作的指令。在/bin底下的指令可以被root與一般帳号所使用,主要有:cat,chmod(修改權限), chown, date, mv, mkdir, cp, bash等等常用的指令。
/boot
主要放置開機會使用到的檔案,包括Linux核心檔案以及開機選單與開機所需設定檔等等。Linux kernel常用的檔名為:vmlinuz ,如果使用的是grub這個開機管理程式,則還會存在/boot/grub/這個目錄。
/dev
在Linux系統上,任何裝置與周邊裝置都是以檔案的型态存在于這個目錄當中。 隻要通過存取這個目錄下的某個檔案,就等于存取某個裝置。比要重要的檔案有/dev/null, /dev/zero, /dev/tty , /dev/lp*, / dev/hd*, /dev/sd*等等
/etc
系統主要的設定檔幾乎都放置在這個目錄内,例如人員的帳号密碼檔、各種服務的啟始檔等等。 一般來說,這個目錄下的各檔案屬性是可以讓一般使用者查閱的,但是隻有root有權力修改。 FHS建議不要放置可執行檔(binary)在這個目錄中。 比較重要的檔案有:/etc/inittab, /etc/init.d/, /etc/modprobe.conf, /etc/X11/, /etc/fstab, /etc/sysconfig/等等。 另外,其下重要的目錄有:/etc/init.d/ :所有服務的預設啟動script都是放在這裡的,例如要啟動或者關閉iptables的話: /etc/init.d/iptables start、/etc/init.d/ iptables stop
/etc/xinetd.d/ :這就是所謂的super daemon管理的各項服務的設定檔目錄。
/etc/X11/ :與X Window有關的各種設定檔都在這裡,尤其是xorg.conf或XF86Config這兩個X Server的設定檔。
/home
這是系統預設的使用者家目錄(home directory)。 在你新增一個一般使用者帳号時,預設的使用者家目錄都會規範到這裡來。比較重要的是,家目錄有兩種代号:
~ :代表目前使用者的家目錄,而 ~guest:則代表使用者名為guest的家目錄。
/lib
系統的函式庫非常的多,而/lib放置的則是在開機時會用到的函式庫,以及在/bin或/sbin底下的指令會呼叫的函式庫而已 。 什麼是函式庫呢?妳可以将他想成是外挂,某些指令必須要有這些外挂才能夠順利完成程式的執行之意。 尤其重要的是/lib/modules/這個目錄,因為該目錄會放置核心相關的模組(驅動程式)。
/media
media是媒體的英文,顧名思義,這個/media底下放置的就是可移除的裝置。 包括軟碟、光碟、DVD等等裝置都暫時挂載于此。 常見的檔名有:/media/floppy, /media/cdrom等等。
/mnt
如果妳想要暫時挂載某些額外的裝置,一般建議妳可以放置到這個目錄中。在古早時候,這個目錄的用途與/media相同啦。 隻是有了/media之後,這個目錄就用來暫時挂載用了。
/opt
這個是給第三方協力軟體放置的目錄 。 什麼是第三方協力軟體啊?舉例來說,KDE這個桌面管理系統是一個獨立的計劃,不過他可以安裝到Linux系統中,是以KDE的軟體就建議放置到此目錄下了。 另外,如果妳想要自行安裝額外的軟體(非原本的distribution提供的),那麼也能夠将你的軟體安裝到這裡來。 不過,以前的Linux系統中,我們還是習慣放置在/usr/local目錄下。
/root
系統管理者(root)的家目錄。 之是以放在這裡,是因為如果進入單人維護模式而僅挂載根目錄時,該目錄就能夠擁有root的家目錄,是以我們會希望root的家目錄與根目錄放置在同一個分區中。
/sbin
Linux有非常多指令是用來設定系統環境的,這些指令隻有root才能夠利用來設定系統,其他使用者最多隻能用來查詢而已。放在/sbin底下的為開機過程中所需要的,裡面包括了開機、修複、還原系統所需要的指令。至于某些伺服器軟體程式,一般則放置到/usr/sbin/當中。至于本機自行安裝的軟體所産生的系統執行檔(system binary),則放置到/usr/local/sbin/當中了。常見的指令包括:fdisk, fsck, ifconfig, init, mkfs等等。
/srv
srv可以視為service的縮寫,是一些網路服務啟動之後,這些服務所需要取用的資料目錄。 常見的服務例如WWW, FTP等等。 舉例來說,WWW伺服器需要的網頁資料就可以放置在/srv/www/裡面。呵呵,看來平時我們編寫的代碼應該放到這裡了。
/tmp
這是讓一般使用者或者是正在執行的程式暫時放置檔案的地方。這個目錄是任何人都能夠存取的,是以你需要定期的清理一下。當然,重要資料不可放置在此目錄啊。 因為FHS甚至建議在開機時,應該要将/tmp下的資料都删除。
事實上FHS針對根目錄所定義的标準就僅限于上表,不過仍舊有些目錄也需要我們了解一下,具體如下:
應放置檔案内容
/lost+found
這個目錄是使用标準的ext2/ext3檔案系統格式才會産生的一個目錄,目的在于當檔案系統發生錯誤時,将一些遺失的片段放置到這個目錄下。 這個目錄通常會在分割槽的最頂層存在,例如你加裝一個硬碟于/disk中,那在這個系統下就會自動産生一個這樣的目錄/disk/lost+found
/proc
這個目錄本身是一個虛拟檔案系統(virtual filesystem)喔。 他放置的資料都是在記憶體當中,例如系統核心、行程資訊(process)(是程序嗎?)、周邊裝置的狀态及網絡狀态等等。因為這個目錄下的資料都是在記憶體(記憶體)當中,是以本身不占任何硬碟空間。比較重要的檔案(目錄)例如: /proc/cpuinfo, /proc/dma, /proc/interrupts, /proc/ioports, /proc/net/*等等。呵呵,是虛拟記憶體嗎[guest]?
/sys
這個目錄其實跟/proc非常類似,也是一個虛拟的檔案系統,主要也是記錄與核心相關的資訊。 包括目前已載入的核心模組與核心偵測到的硬體裝置資訊等等。 這個目錄同樣不占硬碟容量。
依據FHS的基本定義,/usr裡面放置的資料屬于可分享的與不可變動的(shareable, static), 如果你知道如何透過網絡進行分區的挂載(例如在伺服器篇會談到的NFS伺服器),那麼/usr确實可以分享給區域網路絡内的其他主機來使用喔。
/usr不是user的縮寫,其實usr是Unix Software Resource的縮寫, 也就是Unix作業系統軟體資源所放置的目錄,而不是使用者的資料啦。這點要注意。 FHS建議所有軟體開發者,應該将他們的資料合理的分别放置到這個目錄下的次目錄,而不要自行建立該軟體自己獨立的目錄。
因為是所有系統預設的軟體(distribution釋出者提供的軟體)都會放置到/usr底下,是以這個目錄有點類似Windows 系統的C:\Windows\ + C:\Program files\這兩個目錄的綜合體,系統剛安裝完畢時,這個目錄會占用最多的硬碟容量。 一般來說,/usr的次目錄建議有底下這些:
/usr/X11R6/
為X Window System重要資料所放置的目錄,之是以取名為X11R6是因為最後的X版本為第11版,且該版的第6次釋出之意。
/usr/bin/
絕大部分的使用者可使用指令都放在這裡。請注意到他與/bin的不同之處。(是否與開機過程有關)
/usr/include/
c/c++等程式語言的檔頭(header)與包含檔(include)放置處,當我們以tarball方式 (*.tar.gz 的方式安裝軟體)安裝某些資料時,會使用到裡頭的許多包含檔。
/usr/lib/
包含各應用軟體的函式庫、目标檔案(object file),以及不被一般使用者慣用的執行檔或腳本(script)。 某些軟體會提供一些特殊的指令來進行伺服器的設定,這些指令也不會經常被系統管理者操作, 那就會被擺放到這個目錄下啦。要注意的是,如果你使用的是X86_64的Linux系統, 那可能會有/usr/lib64/目錄産生
/usr/local/
統管理者在本機自行安裝自己下載下傳的軟體(非distribution預設提供者),建議安裝到此目錄, 這樣會比較便于管理。舉例來說,你的distribution提供的軟體較舊,你想安裝較新的軟體但又不想移除舊版, 此時你可以将新版軟體安裝于/usr/local/目錄下,可與原先的舊版軟體有分别啦。 你可以自行到/usr/local去看看,該目錄下也是具有bin, etc, include, lib...的次目錄
/usr/sbin/
非系統正常運作所需要的系統指令。最常見的就是某些網絡伺服器軟體的服務指令(daemon)
/usr/share/
放置共享檔案的地方,在這個目錄下放置的資料幾乎是不分硬體架構均可讀取的資料, 因為幾乎都是文本檔案嘛。在此目錄下常見的還有這些次目錄:/usr/share/man:聯機幫助檔案
/usr/share/doc:軟體雜項的檔案說明
/usr/share/zoneinfo:與時區有關的時區檔案
/usr/src/
一般原始碼建議放置到這裡,src有source的意思。至于核心原始碼則建議放置到/usr/src/linux/目錄下。
如果/usr是安裝時會占用較大硬碟容量的目錄,那麼/var就是在系統運作後才會漸漸占用硬碟容量的目錄。 因為/var目錄主要針對常态性變動的檔案,包括緩存(cache)、登入檔(log file)以及某些軟體運作所産生的檔案, 包括程式檔案(lock file, run file),或者例如MySQL資料庫的檔案等等。常見的次目錄有:
/var/cache/
應用程式本身運作過程中會産生的一些暫存檔
/var/lib/
程式本身執行的過程中,需要使用到的資料檔案放置的目錄。在此目錄下各自的軟體應該要有各自的目錄。 舉例來說,MySQL的資料庫放置到/var/lib/mysql/而rpm的資料庫則放到/var/lib/rpm去
/var/lock/
某些裝置或者是檔案資源一次隻能被一個應用程式所使用,如果同時有兩個程式使用該裝置時, 就可能産生一些錯誤的狀況,是以就得要将該裝置上鎖(lock),以確定該裝置隻會給單一軟體所使用。 舉例來說,刻錄機正在刻錄一塊CD光牒,你想一下,會不會有兩個人同時在使用一個刻錄機燒片? 如果兩個人同時刻錄,那片子寫入的是誰的資料?是以當第一個人在刻錄時該刻錄機就會被上鎖, 第二個人就得要該裝置被解除鎖定(就是前一個人用完了)才能夠繼續使用
/var/log/
非常重要。這是登入檔案放置的目錄。裡面比較重要的檔案如/var/log/messages, /var/log/wtmp(記錄登入者的資訊)等。
/var/mail/
放置個人電子郵件信箱的目錄,不過這個目錄也被放置到/var/spool/mail/目錄中,通常這兩個目錄是互為連結檔案。
/var/run/
某些程式或者是服務啟動後,會将他們的PID放置在這個目錄下
/var/spool/
這個目錄通常放置一些隊列資料,所謂的“隊列”就是排隊等待其他程式使用的資料。 這些資料被使用後通常都會被删除。舉例來說,系統收到新信會放置到/var/spool/mail/中, 但使用者收下該信件後該封信原則上就會被删除。信件如果暫時寄不出去會被放到/var/spool/mqueue/中, 等到被送出後就被删除。如果是工作排程資料(crontab),就會被放置到/var/spool/cron/目錄中。
本文轉自 棋帥小七 51CTO部落格,原文連結:http://blog.51cto.com/xvjunjie/2044315