N22-妙手-第一周博客作業

  1.        描述計算機的組成及其功能

1946年馮諾依曼提出馮 諾依曼結構,也稱普林斯頓結構,即一種將程序指令存儲器和數據存儲器合并在一起的存儲器結構。根據他的結構,計算機組成是:

(1)運算器:負責數據的算術運算和邏輯運算


(2)控制器:  負責對程序信息和數據進行分析,控制并協調其輸入,輸出操作或內存訪問。


(3)存儲器:  用來存放計算程序以及參與運算的各種數據


(4)輸入設備: 下指令,提供數據


(5)輸出設備: 輸出數據運算加工的結果


如下圖所示


計算機組成.PNG

2. 按系列羅列Linux的發行版,并描述不同發行版之間的聯系與區別

    (1)Linux的各發行版都是居于GNU/Linux內核開發完成,這里以發行版的三大家族做介紹

Linux發行版.PNG

    (2)各發行版之間的聯系:他們都是用GNU/Linux作為操作系統內核

    (3)各發行版之間的區別:

            a. 第一種區別:一類是商業公司維護的發型版本,另一類是社區組織的發型版本

            b. 各發行版使用的shell不同,GUI不同,系統軟件以及應用軟件不同

3. 描述Linux的哲學思想,并按照自己的理解對其進行描述性解釋

    (1)在Linux中,一切皆文件,甚至包括硬件設備,通信接口等

    (2)所有的配置信息都保存為文本文件

    (3)由眾多目的單一的程序小程序組成,由小程序組合起來完成復雜任務。一個程序制作一件事情,并且做到最好

    (4)盡量避免和系統用戶有交互操作。

    (5)提供機制,而非策略

4. 說明Linux系統上命令的使用格式;詳細介紹ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相應的示例來闡述

    (1)Linux系統上命令的使用格式:

            COMMAND [OPTIONS…] [ARGUMENTS…]

                COMMAND:請求內核將某個可執行二進制程序運行為一個進行

                OPTIONS:命令選項

                    長選項:例如:–human-readable, –skip-alias, –interactive等

                        注意:長選項不能合并

                

                    短選項:例如 -c, -l 等

                        如果同一命令內,同時有多個命令選項。多數可合并。例如: cd -a -l /tmp 可以寫為 cd -al /tmp

                ARGUMENTS:命令的作用對象:命令對arugments生效

                        注意:不同的命令參數,有些命令可以同時帶多個參數,多個參數之間要用空白字符分隔。

    (2)命令介紹及其示例:ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date

            ifconfig:

                配置網絡接口(ifconfig – configure a network interface)

                使用格式:ifconfig [-v] [-a] [-s] [interface]

            沒有選項示例:獲取網卡的信息

eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.104  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::20c:29ff:fee1:cfa0  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:e1:cf:a0  txqueuelen 1000  (Ethernet)
        RX packets 12195  bytes 940936 (918.8 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 7952  bytes 15406354 (14.6 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 8  bytes 688 (688.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8  bytes 688 (688.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:1f:d9:ca  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

            有選項:

                ifconfig -a:顯示所有可用的網絡接口信息

[Meng@localhost ~]$ ifconfig -a
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.104  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::20c:29ff:fee1:cfa0  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:e1:cf:a0  txqueuelen 1000  (Ethernet)
        RX packets 12412  bytes 960306 (937.7 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8084  bytes 15439540 (14.7 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 0  (Local Loopback)
        RX packets 8  bytes 688 (688.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8  bytes 688 (688.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 52:54:00:1f:d9:ca  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0-nic: flags=4098<BROADCAST,MULTICAST>  mtu 1500
        ether 52:54:00:1f:d9:ca  txqueuelen 500  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

        echo:回顯命令,在輸出設備顯示參數

            echo [-neE] [arg …]

            不帶OPTIONS

[Meng@localhost ~]$ echo $PATH
/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/Meng/.local/bin:/home/Meng/bin
[Meng@localhost ~]$ echo $HISTCONTROL
ignoredups
[Meng@localhost ~]$ echo $SHELL
/bin/bash

        帶OPTIONS

            -n:不換行顯示輸出信息

            -e:支持轉義字符生效

            \n:換行

[Meng@localhost ~]$ echo "Hello World"
Hello World
[Meng@localhost ~]$ echo -n "Hello World"
Hello World[Meng@localhost ~]$ echo -e "Hello \nWorld"
Hello 
World

    tty:顯示終端文件名

        tty [OPTION]…

        不帶OPTIONS

[Meng@localhost ~]$ tty
/dev/pts/3

        帶OPTIONS

            -s:不返回任何終端件名

[Meng@localhost ~]$ tty -s
[Meng@localhost ~]$

        注意:物理終端:/dev/console,虛擬終端:/dev/tty#,偽終端:/dev/pts/#,串行終端:/dev/ttys#

    pwd:列出當前工作目錄

        pwd [OPTION]…

        不帶OPTIONS

[Meng@localhost ~]$ pwd
/home/Meng

    startx:啟動圖形界面

        startx [ [ client ] options … ] [ — [ server ] [ display ] options … ]

    export:設置和顯示ell環境變量

        export [-fn] [name[=value] …]

[Meng@localhost ~]$ export USERNAME="MENG"
[Meng@localhost ~]$ echo $USERNAME
MENG

            

    history:顯示歷史命令,歷史命令保存在 ~/.bash_history文件中

        history [-c] [-d offset] [n]

   

         不帶OPTIONS

[Meng@localhost ~]$ history
    1  history -r
    2  tty
    3  ip addr list
    4  ifconfig

        帶OPTIONS:

         

        -c:清空命令

-d offset:刪除指定命令歷史

-n:刪除多少個命令

-r:從文件讀取命令歷史至歷史列表中

-w:把歷史列表中的命令追加到歷史文件中

history #:顯示最近#條的命令

[Meng@localhost ~]$ history 10
  364  clear
  365  export USERNAME="MENG"
  366  echo $USERNAME
  367  tty
  368  type history
  369  help history
  370  clear
  371  history
  372  clear
  373  history 10
[Meng@localhost ~]$ history -c
[Meng@localhost ~]$ history
    1  history

    shutdown

        shutdown [OPTIONS…] [TIME] [WALL…]

帶OPTIONS

[Meng@localhost ~]$ su root
Password: 
[root@localhost Meng]# shutdown -r +10 "Save all your work"
Shutdown scheduled for Mon 2016-08-15 09:24:41 CST, use 'shutdown -c' to cancel.
[root@localhost Meng]# 
Broadcast message from root@localhost.localdomain (Mon 2016-08-15 09:14:42 CST):

Save all your work
The system is going down for reboot at Mon 2016-08-15 09:24:41 CST!


[root@localhost Meng]# shutdown -c

Broadcast message from root@localhost.localdomain (Mon 2016-08-15 09:14:47 CST):

The system shutdown has been cancelled at Mon 2016-08-15 09:15:47 CST!

[root@localhost Meng]# shutdown -P +10 "Save your work"
Shutdown scheduled for Mon 2016-08-15 09:25:24 CST, use 'shutdown -c' to cancel.
[root@localhost Meng]# 
Broadcast message from root@localhost.localdomain (Mon 2016-08-15 09:15:24 CST):

Save your work
The system is going down for power-off at Mon 2016-08-15 09:25:24 CST!


[root@localhost Meng]# shutdown -c

Broadcast message from root@localhost.localdomain (Mon 2016-08-15 09:15:33 CST):

The system shutdown has been cancelled at Mon 2016-08-15 09:16:33 CST!

[root@localhost Meng]#

    poweroff:關機命令

    reboot:重啟命令

    hwclock:顯示或者設置硬件時鐘

        

        hwclock [function] [option…]

            -s  –hctosys 把系統時間設成跟硬件一樣

            -w  –systohc 把硬件時鐘設成跟系統一樣

[root@localhost Meng]# hwclock -s
[root@localhost Meng]# hwclock
Mon 15 Aug 2016 06:19:35 PM CST  -0.864332 seconds
[root@localhost Meng]# hwclock -w
[root@localhost Meng]# hwclock
Mon 15 Aug 2016 06:19:55 PM CST  -0.614682 seconds

    date:顯示或設置系統時間

        date [OPTION]… [+FORMAT]

[root@localhost Meng]# date
Mon Aug 15 18:22:04 CST 2016
[root@localhost Meng]# date +%D 
08/15/16
[root@localhost Meng]# date +%F
2016-08-15
[root@localhost Meng]# date +%T
18:22:35
[root@localhost Meng]# date +%H
18
[root@localhost Meng]#

        

5. 如何在Linux系統上獲取命令的幫助信息,請詳細列出,并描述man文檔的章節是如何劃分的

    (1)命令分為內建命令和外建命令,首先需要確定類型。

    (2)如果是內建命令,結果如下所示

[Meng@localhost ~]$ type cd
cd is a shell builtin

              那么使用:~]$ help COMMAND來獲取幫助

    (3)如果是外建命令,結果如下所示

[Meng@localhost ~]$ type cat
cat is /usr/bin/cat

            那么分為如下幾種方法

                <1> man命令:manual手冊

                            ~]$ man cat

                <2> 命令自帶幫助命令獲取,簡要描述命令的作用

                        COMMAND –help

                <3> 獲取命令的在線文檔

                        info COMMAND

                <4> 主流發行版官方文檔,去程序的官方網站獲取

                <5> 程序自帶幫助文檔

                        README

                        INSTALL

                        CHANGES

                <6> 搜索引擎

                <7> 書籍

    (4)man章節的詳細劃分:

            man使用手冊是壓縮格式的文件,每個章節分別:

                <1> 用戶命令:普通用戶和管理員都能使用的命令

                <2> 系統調用

                <3> C庫調用

                <4> 設備文件和特殊文件

                <5> 文件格式解釋

                <6> 游戲使用幫助

                <7> 雜項

                <8> 管理工具及守護進程

            查看制定章節命令使用手冊:man # COMMAND

6. 請羅列Linux發行版的基礎目錄名稱命名法則及功用規定

    Linux的所有發行版的目錄命令法則及公用規定都遵循FHS(File Hierarchy Standard)標準

        /bin:所有用戶的二進制可執行文件

        /boot:系統啟動過程的必須靜態文件

        /dev, 設備文件

        /etc:程序,系統配置文件

        /lib:動態鏈接共享文件,供二進制文件調用,不能單獨運行

        /lib64:特別存放64位動態鏈接共享庫文件

    

        /media:可移動設備文件存儲目錄

        /mnt:提供其他文件系統臨時的掛載點

        /opt:附加程序安裝位置

    /sbin:系統管理類二進制可執行文件,root 用戶使用

    /srv:當前主機為服務提供數據的文件的存放的目錄

    

        /tmp:用于可執行程序臨時產生的文件,可提供寫權限給所有用戶

    

        /usr:全局只讀共享數據的存放目錄,第二個文件層級系統

    /usr/bin:二進制可執行程序文件

    /usr/lib:動態鏈接共享庫文件

    /usr/lib64:特有的64位動態鏈接庫文件

    /usr/local:第三方程序的安裝目錄

    /usr/share:只讀的獨立架構數據文件

    /usr/include:C語言的庫文件

    /usr/tmp:臨時文件存放目錄

        /var:存儲經常發生變化的文件

        /root:root用戶的主目錄

原創文章,作者:mxb93,如若轉載,請注明出處:http://www.www58058.com/35449

(0)
mxb93mxb93
上一篇 2016-08-15
下一篇 2016-08-15

相關推薦

  • 一次簡單的內核編譯(二)

      前言:     此次編譯是繼一次簡單的內核編譯(一)進行操作編譯的,請先查看第一篇再來看此片文章 一、使用busybox代替自己制作的init腳本,實現內核啟動;  1、在這里我們使用靜態編譯busybox,所以需要先安裝glibc-static依賴包,如果不安裝會報錯     2、解…

    Linux干貨 2015-06-01
  • 分布式存儲介紹、FastDFS 部署

    什么是分布式系統? 簡單來說,多臺主機提供同一個服務,例如負載均衡集群,就是一個分布式系統。 什么是分布式存儲? 看看某寶,上面多少圖片,如果使用傳統的單機存儲,需要準備多大的磁盤空間?讀寫性能如何提升? 上圖就是一個分布式存儲的結構,此處存儲節點不在是磁盤,而是多個主機組成,多個主機內部通信實現數據副本,客戶端發來的請求發往前端,前端分發至后端,有點像負載…

    2017-03-08
  • 文件歸檔,shell循環和函數運用

    文件歸檔 tar (1)  創建歸檔 tar -c -f / PATH/TO/SOMEFILE .tar FILE… tar cf / PATH/TO/SOMEFILE .tar FILE… (2)  查看歸檔文件中的文件列表 tar -t -f  /PATH/TO/SOMEFILE .tar (3) &…

    Linux干貨 2016-08-21
  • linux系統上的特殊權限SUID,SGID,STICKY

    特殊權限:SUID SGID STICKY     linux的安全上下文:     1.進程以用戶的身份運行,進程是發起此用戶的代理,因此以此用戶的身份和權限完成所有的操作。     2.權限匹配模型:     1)判斷進程的屬主,是否以被訪問的文件屬主。如果是,則應用屬主權限…

    Linux干貨 2016-08-05
  • N25第四周作業

    1、復制/etc/skel目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其它用戶均沒有任何訪問權限。 [root@localhost ~]# cp -r /etc/skel/ /home/tuser1 [root@localhost ~]# ls&nbsp…

    Linux干貨 2016-12-24
  • yum函數介紹以及自建yum倉庫

    一、前言     在之前介紹了yum的配置(詳細請移步 http://www.www58058.com/archives/6445)。但是有沒有發現一個問題,雖然我們已將倉庫指向一個可用的倉庫服務器,但是隨著Linux的不斷升級和改版,我們是否還需要不斷的去修改倉庫的配置文件,如果只有一臺還好,那如果我們有多…

    Linux干貨 2015-07-24

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-17 16:12

    寫的很好,排版還可以在漂亮一點,加油,圖畫的很漂亮,繼續堅持

欧美性久久久久