马哥linux 培训第一周作业
本周作業內容:
1、描述計算機的組成及其功能。
? ? ? ? 運算器、控制器、存儲器、輸入設備、輸出設備
????????????CPU
????????????bus:總線
????????????memory:?編址存儲設備
????????????read?ahead
????????IO:?與外部部件交互
????????????磁盤:
? ? ? ? ? ? 網卡:? ??
2、按系列羅列Linux的發行版,并描述不同發行版之間的聯系與區別。
? ??????Linux的發行版:
????????slackware:
????????????suse
????????????????opensuse
????????debian:
????????????ubuntu
????????????????mint
????????redhat:
????????????rhel:?redhat?enterprise?linux
????????????????每18個月發行一個新版本
????????????CentOS:兼容rhel的格式
????????????fedora:每6個月發行一個新版本
????????ArchLinux
????????Gentoo
????????LFS:?Linux?From?scratch
????????Android:?kernel+busybox+java虛擬機
3、描述Linux的哲學思想,并按照自己的理解對其進行解釋性描述。
? ? ? ? 1、一切皆文件;
????????????把幾乎所有資源,包括硬件設備都組織為文件格式;
????????2、由眾多單一目的小程序組成;一個程序只實現一個功能,而且要做好;
????????????組合小程序完成復雜任務;
????????3、盡量避免跟用戶交互;
????????????目標:實現腳本編程,以自動完成某些功能;
????????4、使用純文本文件保存配置信息;
????????????目標:一款使用的文本編程器即能完成系統配置工作;
4、說明Linux系統上命令的使用格式;詳細介紹ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相應的示例來闡述。
? ? ifconfig (顯示或者配置網絡設備)
[網絡設備] 網絡設備的名稱。
down 關閉指定的網絡設備。
up 啟動指定的網絡設備。
-arp 打開或關閉指定接口上使用的ARP協議。前面加上一個負號用于關閉該選項。
-allmuti 關閉或啟動指定接口的無區別模式。前面加上一個負號用于關閉該選項。
-promisc 關閉或啟動指定網絡設備的promiscuous模式。前面加上一個負號用于關閉該選項。
add<地址> 設置網絡設備IPv6的IP地址。
del<地址> 刪除網絡設備IPv6的IP地址。
media<網絡媒介類型> 設置網絡設備的媒介類型。
mem_start<內存地址> 設置網絡設備在主內存所占用的起始地址。
metric<數目> 指定在計算數據包的轉送次數時,所要加上的數目。
mtu<字節> 設置網絡設備的MTU。
netmask<子網掩碼> 設置網絡設備的子網掩碼。
tunnel<地址> 建立IPv4與IPv6之間的隧道通信地址。
-broadcast<地址> 將要送往指定地址的數據包當成廣播數據包來處理。
-pointopoint<地址> 與指定地址的網絡設備建立直接連線,此模式具有保密功能。
? ? 實例:
? ? //顯示網絡設備
$ ifconfig ?? ? tty 顯示終端機連接標準輸入設備的文件名稱
? ? ? ??tty?[-s][--help][--version]
? ? ? ??-s或--silent或--quiet 不顯示任何信息,只回傳狀態代碼。
? ? ? ? ? ? ? --help 在線幫助。
? ? ? ? ? ? ? --version 顯示版本信息。
? ? ? ? 實例:
? ? ? ? ? ???$ tty
? ? ? ??/dev/pts/4
??startx?啟動X Window的服務
? ? ? ? 實例:
? ? ? ? ? ? startx 切換到圖像界面
? ? export
? ? ? ??export[-fnp][變量名稱]=[變量設置值]
? ? ? ??-f 代表[變量名稱]中為函數名稱。
? ? ? ? ? ? ? -n 刪除指定的變量。變量實際上并未刪除,只是不會輸出到后續指令的執行環境中。
? ? ? ? ? ? ? -p 列出所有的shell賦予程序的環境變量。
? ? ? ? 實例:
? ? ? ? ? ? ??export -p //列出當前的環境變量值
? ? ? ? ? ? ??export MYENV //定義環境變量
? ? ? ??export MYENV=7 //定義環境變量并賦值
? history 顯示歷史指令記錄
? ? ? ??history [-raw] histfiles
? ? ? ? ? ? ? ? ? ??n? :數字,要列出最近的 n 筆命令列表
? ? ? ? ? ? ? ? ? ? -c :將目前的shell中的所有 history 內容全部消除
? ? ? ? ? ? ? ? ? ? -a :將目前新增的history 指令新增入 histfiles 中,若沒有加 histfiles,則預設寫入 ~/.bash_history
? ? ? ? ? ? ? ? ? ? -r :將 histfiles 的內容讀到目前這個 shell 的 history 記憶中
? ? ? ? ? ? ? ? ? ? -w :將目前的 history 記憶內容寫入 histfiles。
? ? ? ? ? ? ? ?實例:
? ? ? ? ? ? ? ? ? ??history 10?只列出最近10條記錄
? ? ? ? ? ? ? ? ? ??history -c?立即清空history當前所有歷史命令的記錄
? ? ? ? ? ??
? ? date(時間,日期)
? ? ? ? date [OPTION]... [+FORMAT]:顯示
? ? ? ? ? ? FORMAT:格式符號
? ? ? ? ? ? ? ? %D
? ? ? ? ? ? ? ? %F
? ? ? ? ? ? ? ? %T
? ? ? ? 實例:
? ? ? ? ? ? ? ? $?date?+%D
? ? ? ? ? ? ? ? 08/07/16
? ? ? ? ? ? ? ? $?date?+%F
? ? ? ? ? ? ? ? 2016-08-07
? ? ? ? ? ? ? ? $?date?+%H
? ? ? ? ? ? ? ? 20
? ? ? ? ? ? ? ? $?date?+%T
? ? ? ? ? ? ? ? 20:13:39
? ? ? ? ? ? ? ??$?date?"+%F?%T"
? ? ? ? ? ? ? ? 2016-08-07?20:14:16
? ? ? ? date [MMDDhhmm[[CC]YY][.ss]]:設置
? ? ? ? ? ? MM:月
? ? ? ? ? ? DD:幾號
? ? ? ? ? ? hh:小時
? ? ? ? ? ? mm:分鐘
? ? ? ? ? ? YY:兩位年份
? ? ? ? ? ? CCYY:四位年份
? ? ? ? ? ? .ss:秒鐘
? ? ? ? 實例:
? ? ? ? ? ? date?0805110916.32
? ? ? ? ? ? 2016年?08月?05日?星期五?11:09:32?CST
? ? ? ??
? ? ? ? ? ? hwclock:顯示硬件時鐘
? ? ? ? ? ? ? ? -s:--hctosys?將系統時鐘調整為與的硬件時鐘一致
? ? ? ? ? ? ? ? -w:--systohc?將硬件時鐘調整為與的系統時鐘一致。
? ? ? ? ? ??
? ? ? ? ? ???pwd 顯示當前目錄
? ? ? ? ? ? ? ? 實例:
? ? ? ? ? ? ? ? $?pwd
? ? ? ? ? ? ? ? /home/centos
? ? ? ? ?shutdown
? ? ? ? ? ??shutdown [-t seconds] [-rkhncfF] time [message]?關機
? ? ? ? ? ? ? ? 參數 :
? ? ? ? ? ? ? ? ? ? -t seconds : 設定在幾秒鐘之后進行關機程序
? ? ? ? ? ? ? ? ? ? -k : 并不會真的關機,只是將警告訊息傳送給所有使用者
? ? ? ? ? ? ? ? ? ? -r : 關機后重新開機
? ? ? ? ? ? ? ? ? ? -h : 關機后停機
? ? ? ? ? ? ? ? ? ? -n : 不采用正常程序來關機,用強迫的方式殺掉所有執行中的程序后自行關機
? ? ? ? ? ? ? ? ? ? -a : 取消目前已經進行中的關機動作
? ? ? ? ? ? ? ? ? ? -f : 關機時,不做 fcsk 動作(檢查 Linux 檔系統)
? ? ? ? ? ? ? ? ? ? -F : 關機時,強迫進行 fsck 動作
? ? ? ? ? ? ? ? ? ? time : 設定關機的時間
? ? ? ? ? ? ? ? ? ? message : 傳送給所有使用者的警告訊息
? ? ? ? ?poweroff ?關機
? ? ? ? ? ? poweroff是halt額軟鏈接而已
? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? -n : 在關機前不做將記憶體資料寫回硬盤的動作
? ? ? ? ? ? ? ? ? ? -w : 并不會真的關機,只是把記錄寫到 /var/log/wtmp 檔案里
? ? ? ? ? ? ? ? ? ? -d : 不把記錄寫到 /var/log/wtmp 檔案里(-n 這個參數包含了 -d) -?f : 強迫關機,不呼叫 shutdown 這個指令? ?
? ? ? ? ? ? ? ? ? ? -i : 在關機之前先把所有網絡相關的裝置先停止?
? ? ? ? ? ? ? ? ? ? ?-p : 當關機的時候,順便做關閉電源(poweroff)的動作
? ? ? ? ? ? ?
? ? ? ? ?reboot 重啟
? ? ? ? ? ? ? ? -n : 在重開機前不做將記憶體資料寫回硬盤的動作
? ? ? ? ? ? ? ? -w : 并不會真的重開機,只是把記錄寫到 /var/log/wtmp 檔案里
? ? ? ? ? ? ? ? -d : 不把記錄寫到 /var/log/wtmp 檔案里(-n 這個參數包含了 -d)
? ? ? ? ? ? ? ? -f : 強迫重開機?,不呼叫 shutdown 這個指令
? ? ? ? ? ? -i : 在重開機之前先把所有網絡相關的裝置先停止
5、如何在Linux系統上獲取命令的幫助信息,請詳細列出,并描述man文檔的章節是如何劃分的。
?內部命令幫助:
? # help COMMAND
? ?hash命令:
? ? shell搜尋到的外部命令的路徑結果會緩存至kv(key-value)存儲中;
? ?history命令:
? ? 作用是什么?相關的環境變量是什么?有用的選項?
? ? 管理命令歷史;
? ? ?登錄shell時,會讀取命令歷史文件中記錄下的命令:~/.bash_history
? ? ?登錄進shell后新執行的命令只會記錄在緩存中;這些命令會用戶退出時“追加”至命令歷史文件中;
? ? ?history:
? ? ? -a: 追加本次會話新執行的命令歷史列表至歷史文件中;
? ? ? -d: 刪除歷史中指定的命令;
? ? ? -c: 清空命令歷史;
? ? 快捷操作:
? ? ?!#: 調用歷史中第#條命令;
? ? ?!string:調用歷史中最近一個以string開頭的命令;
? ? ?!!: 上一條命令
?外部命令幫助獲取:
? (2) man COMMAND
? ?手冊頁:/usr/share/man
? ? man1 ... man8
? ? ?man1: 用戶命令
? ? ?man2: 系統調用
? ? ?man3: C庫調用
? ? ?man4: 設備文件及特殊文件
? ? ?man5: 配置文件格式
? ? ?man6: 游戲
? ? ?man7: 雜項
? ? ?man8: 管理類的命令
? ?注意:有些關鍵在不止一個章節中存在幫助手冊;
? ? 要查看指定章節中的手冊:man # COMMAND
? ?man命令的配置文件:/etc/man.config
? ? MANPATH /PATH/TO/SOMEWHERE: 指明新的手冊文件搜索位置
? ? # man -M /PATH/TO/SOMEWHERE COMMAND: 到指定位置下搜索COMMAND命令的手冊頁并顯示之;
? ?幫助手冊中的段落說明:
? ? NAME
? ? SYNOPSIS
? ? DESCRIPTION
? ? OPTIONS
? ? EXAMPLES
? ? AUTHOR
? ? REPORTING BUGS
? ? SEE ALSO
? ?SYNOPSIS:
? ? []:可選內容
? ? <>: 必選內容
? ? a|b:二選一
? ? ...: 同一內容可出現多次
? ?man命令的操作方法:
? ? Space, ^V, ^f, ^F: 向文件尾翻屏;
? ? b, ^B: 向文件首部翻屏;
? ? d, ^D: 向文件尾部翻半屏;
? ? u, ^U: 向文件首部翻半屏;
? ? RETURN, ^N, e, ^E or j or ^J: 向文件尾部翻一行;
? ? y or ^Y or ^P or k or ^K:向文件首部翻一行;
? ? q: 退出;
? ? #:跳轉至第#行;
? ? 1G: 回到文件首部
? ? G:翻至文件尾部
6、請羅列Linux發行版的基礎目錄名稱命名法則及功用規定
? ? ? ? /boot:引導文件存放目錄,內核文件(vnlinuz),引導加載器(bootloader,grub)都存放此目錄;
? ? ? ? /bin:供所有yoghurt使用的基本命令;不能獨立分區,os啟動即會用的程序;
? ? ? ? /sbin:管理類的基本命令;不能獨立分區,os啟動即會用的程序;
? ? ? ? /lib:基本共享庫文件,以及內核模塊文件(/lib/modules);
? ? ? ? /lib64:專用X86_64系統上的輔助共享庫文件存放位置;
? ? ? ? /etc:配置文件目錄
? ? ? ? /home:家目錄
? ? ? ? /root:管理員的家目錄
? ? ? ? /media:便攜式移動設備掛載點
? ? ? ? /mnt:臨時文件系統掛載點
? ? ? ? /dev:設備文件及特殊文件存儲位置
? ? ? ? ? ? ? ? b:block device 隨機訪問
? ? ? ? ? ? ? ? c:character device 線性訪問
? ? ? ? /opt:第三方程序
? ? ? ? /srv:系統上運行的服務用到的數據;
? ? ? ? /tmp:臨時文件
? ? ? ? /usr:universal shared, read-only data;
? ? ? ? ? ? bin:保證系統擁有完整功能而提供的應用程序;
? ? ? ? ? ? sbin:
? ? ? ? ? ? lib:
? ? ? ? ? ? lib64:
? ? ? ? ? ? include:C程序的頭文件(header )
? ? ? ? ? ? share:結構化獨立的數據,例如doc,man等;
? ? ? ? ? ? local:第三方應用程序安裝位置;
? ? ? ? ? ? ? ? bin, sbin, lib, lib64, etc, share
? ? ? ? /var:可變文件
? ? ? ? ? ? cache:應用程序緩存數據目錄;
? ? ? ? ? ? lib:可變狀態信息
? ? ? ? ? ? local:第三方可變數據
? ? ? ? ? ? lock:鎖文件
? ? ? ? ? ? log:日志文件
? ? ? ? ? ? opt:專用于為/opt下的應用程序存儲可變數據
? ? ? ? ? ? run:與運行程序相關的數據;存放進程的pid文件
? ? ? ? ? ? spool:程序的緩沖池
? ? ? ? ? ? tmp:系統重啟過程的臨時文件
? ? ? ? ? ? mail:郵箱
? ? ? ? /proc:用于輸出內核與進程信息相關的虛擬文件系統
? ? ? ? /sys:用于輸出當前系統上硬件設備相關信息的虛擬文件系統;
? ? ? ? /selinux:linux安全增強機制 ?
? ? ? ? 命名規范
1、Linux 系統區分英文字符的大小寫。命名目錄和命名文件的規則是相同的。
2、除非有特別的原因,否則用戶創建的文件和目錄名要使用小寫字符。大多數的 Linux 命令也使用小寫字符。 ? ? ??
3、Linux 系統下的文件名長度最多可到256個字符。
通常情況下,文件名的字符包括:字母、數字、"."(點)、"_"(下劃線)和"-"(連字符)。
4、不建議使用含有特殊意義的字符
Linux 允許在文件名中使用除上述符號之外的其它符號, 但并不建議這樣做。 有些轉意字符 (即該字符被系統借用,表示某種特殊含義)在Linux 的 shell 中有特殊的含義。這樣的轉意字符有:"?"(問號),"*"(星號), " "(空格), "$"(貨幣符), "&",?擴號等等。在文件名中應盡量避免使用這些字符。
文件名中可以有" "(空格),但建議用戶用"_"(下劃線)來替代。
"/" 既可代表目錄樹的根也可作為路徑名中的分隔符,因此"/"不能出現在文件名中。
"." 和 ".." 分別用來表示"當前目錄"和"父目錄", 因此它們也不能作為文件名。
? ? ? 在Linux下可以使用長文件名和目錄名,可以給它們取任何名字,但是必須遵守以下規則:
1、除了/外,所有的字符都可以;
2、有些字符最好不用,如空格符,制表符,退格符和字符:? @ # $&()\|; ‘’“”<>等;
3、避免使用+ -或.作為普通文件名的第一個字符(在Linux下以.開頭的文件是屬于隱藏文件);
4、在Linux下文件名大小寫敏感。
轉載于:https://blog.51cto.com/9862764/1837627
總結
以上是生活随笔為你收集整理的马哥linux 培训第一周作业的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Maven提高篇系列之(三)——使用自己
- 下一篇: linux 其他常用命令