- 計算機由CPU、存儲器、輸入設備、輸出設備組成。
CPU的功能:對數據運算加工,控制設備等
存儲器的功能:存儲數據,加載程序
輸入設備:下指令,提供數據等
輸出設備:輸出數據加工的結果
- linux發行版本:Debian:ubuntu、knopix
Slackware:S.u.S.E、SLES、openSUSE
RedHat:Redhat 9.0、RedHat Enterprise Linux:RHEL,收費的企業版,有售后有技術支持。
CentOS:Community ENTerprise OS,和RHEL一樣,免費,不提供技術支持
Fedora Core:6個月發行一次
- linux的哲學思想:一切皆文件,把幾乎所有資源統統抽象為文件形式;包括硬件設備, ?????甚至通信接口等;
- 由眾多功能單一的程序組成:一個程序只幫一件事,并且做好;組合小程序完成復雜任務;
3.盡量避免跟用戶交互;目標:易于以編程的方式實現自動化任務;
4.使用文本文件保存配置信息;
- linux系統上命令的使用格式:COMMAND(命令)+OPTIONS(選項)+ARGUMENTS(參數)
COMMAND:
發起命令:請求內核將某個二進制程序運行為一個進程;
程序運行為進程:由硬盤靜態程序加載到內存;
命令本身是一個可執行的程序文件;二進制格式的文件,有可能會調用共享庫文件;
多數系統程序文件都存放在:/bin, /sbin, /usr/bin, /usr/sbin, /usr/local/bin, /usr/local/sbin
普通命令:/bin, /usr/bin, /usr/local/bin
管理命令:/sbin, /usr/sbin, /usr/local/sbin
Ifconfig命令:查看活動接口的ip地址
顯示網絡設備信息(激活狀態的): [root@localhost ~]# ifconfig eth0 Link encap:Ethernet HWaddr 00:16:3E:00:1E:51 inet addr:10.160.7.81 Bcast:10.160.15.255 Mask:255.255.240.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:61430830 errors:0 dropped:0 overruns:0 frame:0 TX packets:88534 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:3607197869 (3.3 GiB) TX bytes:6115042 (5.8 MiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:56103 errors:0 dropped:0 overruns:0 frame:0 TX packets:56103 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:5079451 (4.8 MiB) TX bytes:5079451 (4.8 MiB)
說明: eth0表示第一塊網卡,其中HWaddr表示網卡的物理地址,可以看到目前這個網卡的物理地址(MAC地址)是00:16:3E:00:1E:51。 inet addr用來表示網卡的IP地址,此網卡的IP地址是10.160.7.81,廣播地址Bcast:10.160.15.255,掩碼地址Mask:255.255.240.0。 lo是表示主機的回壞地址,這個一般是用來測試一個網絡程序,但又不想讓局域網或外網的用戶能夠查看,只能在此臺主機上運行和查看所用的網絡接口。比如把 httpd服務器的指定到回壞地址,在瀏覽器輸入127.0.0.1就能看到你所架WEB網站了。但只是您能看得到,局域網的其它主機或用戶無從知道。 第一行:連接類型:Ethernet(以太網)HWaddr(硬件mac地址)。 第二行:網卡的IP地址、子網、掩碼。 第三行:UP(代表網卡開啟狀態)RUNNING(代表網卡的網線被接上)MULTICAST(支持組播)MTU:1500(最大傳輸單元):1500字節。 第四、五行:接收、發送數據包情況統計。 第七行:接收、發送數據字節數統計信息。
echo命令:回顯命令
1.顯示普通字符串:
echo “It is a test”
這里的雙引號完全可以省略,以下命令與上面實例效果一致:
echo It?is?a test
tty命令:查看終端設備:
Startx:用來啟動X Window,實際上啟動X window的程序為xinit。
實例:要在工作站上或X終端上啟動X會話,請輸入:startx
Export:用于設置或顯示環境變量。
實例:列出當前所有的環境變量:export -p
# export -p //列出當前的環境變量值
declare -x HOME=“/root“
declare -x LANG=“zh_CN.UTF-8“
declare -x LANGUAGE=“zh_CN:zh“
declare -x LESSCLOSE=“/usr/bin/lesspipe %s %s“
declare -x LESSOPEN=“|?/usr/bin/lesspipe %s“
declare -x LOGNAME=“root“
declare -x LS_COLORS=““
declare -x MAIL=“/var/mail/root“
declare -x OLDPWD
declare -x PATH=“/opt/toolchains/arm920t-eabi/bin:/opt/toolchains/arm920t-eabi/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games“
declare -x PWD=“/root“
declare -x SHELL=“/bin/bash“
declare -x SHLVL=“1“
declare -x SPEECHD_PORT=“6560“
declare -x SSH_CLIENT=“192.168.1.65?1674?22“
declare -x SSH_CONNECTION=“192.168.1.65?1674?192.168.1.3?22“
declare -x SSH_TTY=“/dev/pts/2“
declare -x TERM=“XTERM“
declare -x USER=“root“
declare -x XDG_SESSION_COOKIE=“93b5d3d03e032c0cf892a4474bebda9f-1273864738.954257-340206484“
Pwd:用于顯示工作目錄,執行pwd指令可立刻得知您目前所在的工作目錄的絕對路徑名稱。
實例:查看當前所在目錄:# pwd/root/test ??????????#輸出結果
History命令:用于顯示指定數目的指令命令,讀取歷史命令文件中的目錄到歷史命令緩沖區和將歷史緩沖區中的目錄寫入命令文件。
實例:使用history命令顯示最近使用的10條歷史命令,輸入如下命令:
[root@localhost ~]# history 10 92 ls 93 cd .. 94 ls 95 exit 96 ls -a 97 cd .ssh/ 98 ls 99 cat known_hosts 100 exit 101 history 10
shutdown命令:可以用來進行關機程序,并且在關機以前傳送訊息給所有使用者正在執行的程序,shutdown也可以用來重開機,使用權限:系統管理者。
語法
shutdown [-t seconds]?[-rkhncfF]?time [message]
參數說明:
- -t seconds : 設定在幾秒鐘之后進行關機程序
- -k : 并不會真的關機,只是將警告訊息傳送給所有只用者
- -r : 關機后重新開機
- -h : 關機后停機
- -n : 不采用正常程序來關機,用強迫的方式殺掉所有執行中的程序后自行關機
- -c : 取消目前已經進行中的關機動作
- -f : 關機時,不做 fcsk 動作(檢查 Linux 檔系統)
- -F : 關機時,強迫進行 fsck 動作
- time : 設定關機的時間
- message : 傳送給所有使用者的警告訊息
實例
立即關機
# shutdown -h now
Poweroff命令:用來關閉計算機操作系統并且切斷系統電源。
語法 poweroff(選項) 選項 -n:關閉操作系統時不執行sync操作; -w:不真正關閉操作系統,僅在日志文件“/var/log/wtmp”中; -d:關閉操作系統時,不將操作寫入日志文件“/var/log/wtmp”中添加相應的記錄; -f:強制關閉操作系統; -i:關閉操作系統之前關閉所有的網絡接口; -h:關閉操作系統之前將系統中所有的硬件設置為備用模式。 實例 如果確認系統中已經沒有用戶存在且所有數據都已保存,需要立即關閉系統,可以使用poweroff命令。 使用poweroff立即關閉系統: poweroff
reboot命令:用來重新啟動計算機。
語法
reboot [-n]?[-w]?[-d]?[-f]?[-i]
參數:
- -n : 在重開機前不做將記憶體資料寫回硬盤的動作
- -w : 并不會真的重開機,只是把記錄寫到 /var/log/wtmp 檔案里
- -d : 不把記錄寫到 /var/log/wtmp 檔案里(-n 這個參數包含了 -d)
- -f : 強迫重開機,不呼叫 shutdown 這個指令
- -i : 在重開機之前先把所有網絡相關的裝置先停止
實例
重新啟動
# reboot
Hwclock命令:用于顯示與設定硬件時鐘。
在Linux中有硬件時鐘與系統時鐘等兩種時鐘。硬件時鐘是指主機板上的時鐘設備,也就是通常可在BIOS畫面設定的時鐘。系統時鐘則是指kernel中的時鐘。當Linux啟動時,系統時鐘會去讀取硬件時鐘的設定,之后系統時鐘即獨立運作。所有Linux相關指令與函數都是讀取系統時鐘的設定。
語法
hwclock [–adjust][–debug][–directisa][–hctosys][–show][–systohc][–test][–utc][–version][–set?–date=<日期與時間>]
參數:
- –adjust hwclock每次更改硬件時鐘時,都會記錄在/etc/adjtime文件中。使用–adjust參數,可使hwclock根據先前的記錄來估算硬件時鐘的偏差,并用來校正目前的硬件時鐘。
- –debug 顯示hwclock執行時詳細的信息。
- –directisa hwclock預設從/dev/rtc設備來存取硬件時鐘。若無法存取時,可用此參數直接以I/O指令來存取硬件時鐘。
- –hctosys 將系統時鐘調整為與目前的硬件時鐘一致。
- –set –date=<日期與時間> 設定硬件時鐘。
- –show 顯示硬件時鐘的時間與日期。
- –systohc 將硬件時鐘調整為與目前的系統時鐘一致。
- –test 僅測試程序,而不會實際更改硬件時鐘。
- –utc 若要使用格林威治時間,請加入此參數,hwclock會執行轉換的工作。
- –version 顯示版本信息。
實例
顯示當前時間
# hwclock 2010年05月27日?星期四?18時04分31秒?-0.704214?seconds
查看版本信息
# hwclock -v
hwclock from?util-linux-2.12a
Date命令:Linux date命令可以用來顯示或設定系統的日期與時間,在顯示方面,使用者可以設定欲顯示的格式,格式設定為一個加號后接數個標記,其中可用的標記列表如下:
時間方面:
- % : 印出 %
- %n : 下一行
- %t : 跳格
- %H : 小時(00..23)
- %I : 小時(01..12)
- %k : 小時(0..23)
- %l : 小時(1..12)
- %M : 分鐘(00..59)
- %p : 顯示本地 AM 或 PM
- %r : 直接顯示時間 (12 小時制,格式為 hh:mm:ss [AP]M)
- %s : 從 1970 年 1 月 1 日 00:00:00 UTC 到目前為止的秒數
- %S : 秒(00..61)
- %T : 直接顯示時間 (24 小時制)
- %X : 相當于 %H:%M:%S
- %Z : 顯示時區
日期方面:
- %a : 星期幾 (Sun..Sat)
- %A : 星期幾 (Sunday..Saturday)
- %b : 月份 (Jan..Dec)
- %B : 月份 (January..December)
- %c : 直接顯示日期與時間
- %d : 日 (01..31)
- %D : 直接顯示日期 (mm/dd/yy)
- %h : 同 %b
- %j : 一年中的第幾天 (001..366)
- %m : 月份 (01..12)
- %U : 一年中的第幾周 (00..53) (以 Sunday 為一周的第一天的情形)
- %w : 一周中的第幾天 (0..6)
- %W : 一年中的第幾周 (00..53) (以 Monday 為一周的第一天的情形)
- %x : 直接顯示日期 (mm/dd/yy)
- %y : 年份的最后兩位數字 (00.99)
- %Y : 完整年份 (0000..9999)
若是不以加號作為開頭,則表示要設定時間,而時間格式為 MMDDhhmm[[CC]YY][.ss],其中 MM 為月份,DD 為日,hh 為小時,mm 為分鐘,CC 為年份前兩位數字,YY 為年份后兩位數字,ss 為秒數。
使用權限:所有使用者。
當您不希望出現無意義的 0 時(比如說 1999/03/07),則可以在標記中插入 – 符號,比如說 date ‘+%-H:%-M:%-S’ 會把時分秒中無意義的 0 給去掉,像是原本的 08:09:04 會變為 8:9:4。另外,只有取得權限者(比如說 root)才能設定系統時間。
當您以 root 身分更改了系統時間之后,請記得以 clock -w 來將系統時間寫入 CMOS 中,這樣下次重新開機時系統時間才會持續抱持最新的正確值。
語法
date [-u]?[-d datestr]?[-s datestr]?[–utc]?[–universal]?[–date=datestr]?[–set=datestr]?[–help]?[–version]?[+FORMAT]?[MMDDhhmm[[CC]YY][.ss]]
參數說明:
- -d datestr : 顯示 datestr 中所設定的時間 (非系統時間)
- –help : 顯示輔助訊息
- -s datestr : 將系統時間設為 datestr 中所設定的時間
- -u : 顯示目前的格林威治時間
- –version : 顯示版本編號
實例
顯示當前時間
# date三?5月?12?14:08:12?CST 2010# date ‘+%c’ 2010年05月12日?星期三?14時09分02秒# date ‘+%D’ //顯示完整的時間05/12/10# date ‘+%x’ //顯示數字日期,年份兩位數表示2010年05月12日# date ‘+%T’ //顯示日期,年份用四位數表示14:09:31# date ‘+%X’ //顯示24小時的格式14時09分39秒
按自己的格式輸出
# date ‘+usr_time: $1:%M %P -hey’
usr_time:?$1:16?下午?-hey
顯示時間后跳行,再顯示目前日期
date ‘+%T%n%D’
顯示月份與日數
date ‘+%B %d’
顯示日期與設定時間(12:34:56)
date –date ’12:34:56′
- 如何在linux系統上獲取命令的幫助信息,請詳細列出,并描述man文檔的章節是如何劃分的。
獲取命令的使用幫助:
內部命令:
help COMMAND
外部命令:
(1) 命令自帶簡要格式的使用幫助
# COMMAND –help
(2) 使用手冊:manual
位置:/usr/share/man
# man COMMAND
SECTION:
NAME:功能性說明
SYNOPSIS:語法格式
DESCRIPTION:描述
OPTIONS:選項
EXAMPLES:使用示例
AUTHOR: 作者
BUGS: 報告程序bug的方式
SEE ALSO: 參考
…
SYNOPSIS:
[]:可選內容;
<>:必須提供的內容;
a|b|c:多選一;
…:同類內容可出現多個;
使用手冊:壓縮格式的文件,有章節之分;
/usr/share/man
man1, man2, …
1:用戶命令;
2:系統調用;
3:C庫調用;
4:設備文件及特殊文件;
5:文件格式;(配置文件格式)
6:游戲使用幫助;
7:雜項;
8:管理工具及守護進行;
- 請羅列linux發行版的基礎目錄名稱命令法則及功用規定。
Linux文件系統:
Linux:glibc
程序編譯方式:
動態鏈接
靜態編譯
進程的類型:
終端:硬件設備,關聯一個用戶接口
與終端相關:通過終端啟動
與終端無關:操作引導啟動過程當中自動啟動
操作系統的組成:
靜態:kernel, application
文件系統:層級結構
FHS:
Filesystem Hierarchy Standard
/bin:所有用戶可用的基本命令程序文件;
/sbin:供系統管理使用的工具程序;
/boot:引導加載器必須用到的各靜態文件:kernel, initramfs(initrd), grub等;
/dev:存儲特殊文件或設備文件;
設備有兩種類型:字符設備(線性設備)、塊設備(隨機設備);
/etc:系統程序的配置文件,只能為靜態;
/home:普通的家目錄的集中位置;一般每個普通用戶的家目錄默認為此目錄下與用戶名同名的子目錄,/home/USERNAME;
/root:管理員的家目錄;可選;
/lib:為系統啟動或根文件系統上的應用程序(/bin, /sbin等)提供共享庫,以及為內核提供內核模塊
libc.so.*:動態鏈接的C庫;
ld*:運行時鏈接器/加載器;
modules:用于存儲內核模塊的目錄;
/lib64:64位系統特有的存放64位共享庫的路徑;
/media:便攜式設備掛載點,cdrom, floppy等;
/mnt:其它文件系統的臨時掛載點;
/opt:附加應用程序的安裝位置;可選路徑;
/srv:當前主機為服務提供的數據;
/tmp:為那些會產生臨時文件的程序提供的用于存儲臨時文件的目錄;可供所用戶執行寫入操作;有特殊權限;
/usr:usr Hierarchy,全局共享的只讀數據路徑;
bin, sbin
lib, lib64
include:C程序頭文件;
share:命令手冊頁和自帶文檔等架構特有的文件的存儲位置
local:另一個層級目錄;
X11R6:X-Window程序的安裝位置
src:程序源碼文件的存儲位置
/usr/local:Local hierarchy,讓系統管理員安裝本地應用程序;也通常用于安裝第三方程序;
/var:/var Hierarchy,存儲常發生變化的數據的目錄;
cache Application cache data
lib Variable state information
local Variable data for /usr/local
lock Lock files
log Log files and directories
opt Variable data for /opt
run Data relevant to running processes
spool Application spool data
tmp Temporary files preserved between system reboots
/proc:基于內存的虛擬文件系統,用于為內核及進程存儲其相關信息;它們多為內核參數,例如net.ipv4.ip_forward, 虛擬為net/ipv4/ip_forward, 存儲于/proc/sys/, 因此其完整路徑為/proc/sys/net/ipv4/ip_forward;
/sys:sysfs虛擬文件系統提供了一種比proc更為理想的訪問內核數據的途徑;其主要作用在于為管理Linux設備提供一種統一模型的的接口;
參考:https://www.ibm.com/developerworks/cn/linux/l-cn-sysfs/
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/89478