學習資料整理

1.Sql導入數據方式:(1)軟件選擇導入,分隔符類型,直接導入java

2)寫入代碼導入python

 

 

二、Hadoop下載安裝官網下載安裝mysql

三、HDFSlinux

HDFS的可靠性:建立了多份數據備份,放置在了其餘計算機節點中,讀取速度也很快。android

結構NameNode(元數據 內存)DataNodes(文件內容 磁盤)程序員

運行機制:1)一個名字節點和多個數據節點算法

2)故障檢測sql

計算機網絡shell

1 電路交換與分組交換的區別是什麼?優劣對比?apache

答:先介紹基本概念:

  • 電路交換

概念:必須通過創建鏈接(佔用通訊資源)--->通話(一直佔用通訊資源)--->釋放鏈接三個步驟的交換方式稱爲電路交換。

  • 優勢:
  • 通訊質量有保證。
  • 缺點:
  • 線路傳輸效率比較低。
  • 特色:
  • 在通話的所有時間內,通話的兩個用戶始終佔用端到端的通訊資源。
  • 分組交換(也稱包交換)
  • 報文:咱們把要發送的整塊數據稱爲一個報文。
  • 分組又稱包。分組的首部也能夠稱爲包頭
  • 概念:通訊雙方以分組爲單位、使用存儲--轉發機制實現數據交互的通訊方式,被稱爲分組交換。

優勢:高效

  • 靈活
  • 迅速
  • 可靠

缺點:分組在路由器存儲轉發須要時延。

  • 攜帶首部控制信息形成必定開銷。

2 電路交換、報文交換和分組交換

  • 電路交換:整個報文的比特流連續地從原點直達終點,好像在一個管道中傳送。
  • 報文交換:整個報文先傳送到相鄰結點,所有存儲下來後查找轉發表,轉發到下一個結點。
  • 分組交換:單個分組(只是報文的一部分)傳送到相鄰結點,存儲下來後查找轉發表,轉發到下一個結點。

3 計算機網絡的定義

  • 概念:是指將地理位置不一樣的具備獨立功能的多臺計算機及其外部設備,經過通訊線路鏈接起來,在網絡操做系統,網絡管理軟件及網絡通訊協議的管理和協調下,實現資源共享和 信息傳遞的計算機系統。

4 相關概念

  • 帶寬:用來表示網絡的通訊線路所能傳送數據的能力。
  • 吞吐量:單位時間內經過某個網絡的數據量。
  • 時延(也叫延遲或遲延):指數據從網絡的一端傳送到另外一個端所需的時間。
  • 發送時延:主機或路由器發送數據幀所須要的時間。
  • 網絡協議(簡稱協議):爲進行網絡中的數據交換而創建的規則、標準或約定。
  • 體系結構:計算機網絡的各層以及協議的集合稱爲網絡的體系結構
  • 網關:網絡層使用的路由器

5 網絡各分層的功能

  • 差錯控制:使的和網絡對等端的相應層次的通訊更加可靠
  • 流量控制:是的發送端發送速率不要太快,要使接收端來得及接收。
  • 分段和重裝:發送端將要發送的數據塊劃分爲更小的單位,在接收端將其復原。
  • 複用和分用:發送端幾個高層會話複用一條低層的鏈接,在接收端再進行分用。
  • 鏈接創建和釋放:交換數據前先創建一條邏輯鏈接。數據傳送結束後釋放鏈接。

6 體系結構

網絡體系

1.網絡體系具備一系列的規範來管理介質訪問、物理尋址、計算機與傳輸介質的交互。在決定網絡體系時,其實是在決定如何設計網絡訪問層。

2.網絡體系包含對物理網絡的定義,以及該物理網絡上定義的通訊規範。

OSI的七層協議體系結構

7、應用層|
6、表示層|
5、會話層|
4、傳輸層|
3、網絡層|
2、數據鏈路層|
1、物理層|
從上而下提供端到端的服務。
巧記:應示、會傳、網數理

TCP/IP

TCP/IPInternet和不少其餘網絡上使用的網絡協議簇

  • 1.TCP/IP是一類協議系統,它是一套支持網絡通訊的協議集合。網絡是計算機或相似計算機的設備之間經過經常使用的傳輸介質進行通訊的集合。
  • 2.網絡協議就是一套通用規則,用來幫助定義複雜數據傳輸的過程。數據傳輸從一臺計算機上的應用程序開始,經過計算機網絡硬件,通過傳輸介質到正確目的地,而後上傳到目的地計算機網絡硬件,最後到達負責接收的應用程序。
  • 3.TCP/IP協議定義了網絡通訊過程,更重要的是,定義了數據單元的格式和內容,以便接收計算機可以正確解釋接收到的消息。TCP/IP被稱爲協議簇。
  • 4.TCP/IP標準定義了TCP/IP網絡的通訊規則;TCP/IP實現是一個軟件組件,計算機經過它參與到TCP/IP網絡中。

TCP/IP的特性

  • 1.邏輯編址TCP/IP經過邏輯編址提供了子網化的能力。邏輯地址是一個通過網絡軟件來配置的地址。在TCP/IP中,計算機的邏輯地址稱爲IP地址。
  • 2.路由選擇:路由器是一種特殊的設備,可以讀取邏輯地址信息,並將數據經過網絡直接傳送到它的目的地。在局域網中,數據傳輸到另外一臺計算機或設備時,不用通過路由器,所以不會給大型網絡的傳輸線路帶來負擔。若是數據要傳送到子網之外的計算機上,路由器將負責轉發數據。
  • 3.名稱解析:域名到IP地址的映射稱爲名稱解析。域名服務器的專用計算機中存儲了用於顯示域名和IP地址轉換方式的表。
  • 4.錯誤控制和流量控制TCP/IP協議簇提供了確保數據在網絡中可靠傳送的特性。這些特性包括檢查數據的傳輸錯誤(確保到達的數據與發送的數據一致)和確認成功接收到網絡信息。
  • 5.應用支持:同一臺計算機能夠運行多種網絡應用程序。協議軟件必須提供某些方法來判斷接收到的數據包屬於哪一個應用程序。在TCP/IP中,這個經過系統的邏輯通道實現從網絡到應用程序的接口被稱爲端口。

TCP/IP體系結構

應用層(各類應用層協議如TELNET/FTP/SMTP等)|
傳輸層(TCPUDP)|
網際層IP|:尋址與發送
網絡接口層|

五層協議的體系結構

5、應用層(HTTP/FTP/SMTP)|
4、運輸層(TCP/UDP)|
3、網絡層(ICMP/IGMP/IP/RARP/ARP)|

INTERNET控制消息協議——ICMP
2、數據鏈路層|
1、物理層|

巧記:應運而生網絡、數據+物理。

7 各層次簡介

  • 應用層
    應用層直接爲用戶的應用進程提供服務。這裏的進程就是正在運行的程序。應用層的協議不少:HTTPSMTPFTP等等。
  • 一些協議

 

  • 運輸層
    運輸層的任務就是負責向兩個主機中進程之間的通訊提供服務。因爲一個主機可同時運行多個進程,所以運輸層有複用和分用的功能。

複用:就是多個應用層進程能夠同時使用下面運輸層的服務。
分用:運輸層把收到的信息又分別交付給上面應用層中相應的進程。

多路複用/多路分解

1.多路複用是指把多個來源的數據導向一個輸出,而多路分解是把從一個來源接收的數據發送到多個輸出。多路傳輸/多路分解讓TCP/IP協議棧較低層的協議不比關心哪一個程序在傳輸數據。與應用程序相關的操做都由傳輸層完成了,數據經過一個與應用程序無關的管道在傳輸層與網際層之間傳遞。

2.多路複用是指兩個或多個用戶共享公用信道的一種機制。經過多路複用技術,多個終端能共享一條高速信道,從而達到節省信道資源的目的,多路複用有頻分多路複用(FDMA),時分多路複用(TDMA),碼分多路複用(CDMA)幾種。

運輸層有如下兩種協議:

傳輸控制協議TCP(Transmission Control Protocol)
面向鏈接的,數據傳輸的單位是報文段,可以提供可靠的交付。

TCP數據格式

 

用戶數據報協議UDPUser Datagram Protocol

無鏈接的,數據傳輸單位是用戶數據報,不保證可靠的交付,只能提供最大努力的交付

  • 網絡層
    網絡層負責爲分組交換網上的不一樣主機提供通訊服務。在發送數據時,網絡層把運輸層產生的報文段或者用戶數據包封裝成分組或包進行傳送。在TCP/IP體系中,因爲網絡層使用IP協議,所以分組也叫作IP數據報,簡稱數據報。
    網絡的另外一個任務就是選擇合適的路由,使源主機運輸層所傳下來的分組,可以經過網絡中的路由器找到目的主機。
  • 數據鏈路層
    簡稱鏈路層,兩個相鄰結點之間傳送數據都是直接傳送的。這就須要使用專門的鏈路層協議
    在相鄰結點傳輸時,數據鏈路層把網絡層交下來的IP數據報組裝成幀。用進行傳輸。
  • 物理層
    在物理層上所傳數據的單位是比特
    物理層的任務就是透明地傳送比特流。

8 數據鏈路層

  • 使用的信道類型有:
  • 點對點信道
  • 廣播信道
  • 三個基本問題:
  • 封裝成幀:在一端數據的先後分別添加首部和尾部,構成了一個幀。
  • 透明傳輸:
  • 差錯檢測:檢測方法:CRC(循環冗餘校驗碼)

9 MAC地址的概念以及做用

  • 概念:MAC是硬件地址,用於定義網絡設備的位置。也叫物理地址。它就像咱們身份證上的身份證號碼,具備全球惟一性。
  • 一個主機會有一個MAC地址,而每一個網絡地址會有一個專屬於它的IP地址。
  • 做用
    專一於數據鏈路層,將一個數據幀從一個節點傳送到相同鏈路的另外一個結點。

10.物理尋址

1.網絡訪問層須要把邏輯IP地址與網絡適配器的固定物理地址相關聯。

2.物理尋址是由介質訪問控制(MAC)子層負責的。

3.TCP/IP使用地址解析協議(ARP)和逆向地址解析協議(RARP)把IP地址關聯到網絡適配器的物理地址。ARP和RARP爲用戶提供的邏輯IP地址與局域網上使用的硬件地址創建了一個對應關係。

 

11 MAC地址和IP地址的區別

  • 對於網絡上的某一設備,IP地址是基於網絡 拓撲設計出的,能夠改動。而MAC地址則是生產廠商燒錄好的,不能改動。
  • 長度不一樣。IP32位,MAC地址是48位。
  • 分配依據不一樣。IP是基於網絡拓撲、MAC是基於製造商
  • 尋址協議層不一樣。IP應用於網絡層,MAC應用於數據鏈路層。

12 MAC幀格式


其中類型表示的是上一層使用的是什麼協議,以便把收到的Mac幀交給上一層的這個協議。

13 網際層:尋址與發送

 

網際協議IP

  • 地址解析協議ARP(Address resolution protocol)
  • 逆地址解析協議RARPReverse Address Resolutaion Protocol)
  • 網際控制報文協議ICMPInternet Control Message Protocol
  • 網際管理協議IGMP(Internet Group Management Protocol)

14 IP

  • IP地址的定義:網絡號+主機號
  • IP數據報的格式

 

IP尋址

1.劃分網絡ID和主機ID的最初方案是使用地址分類。

2.A類:0.0.0.0~127.255.255.255

B類:128.0.0.0~191.255.255.255

C類:192.0.0.0~223.255.255.255

D類:224.0.0.0~239.255.255.255

E類:240.0.0.0~247.255.255.255

規定首字節不能是12七、0、255,主機各位不能同時爲0和1

 

15 ARP協議的用途、算法,在哪一層會使用arp?

  • 用途:把IP地址解析爲物理地址。
  • 在網絡層會用到ARP

16 如何實現透明傳輸?

  • 概念:無論從鍵盤上輸入什麼字符均可以放在這樣的幀中傳輸過去,這樣的傳輸就是透明傳輸。也就是說用戶不受協議中任何限制,可隨機的傳輸任意比特編碼的信息。
    *實現方法:
  • 轉義字符填充法
  • 零比特填充法
  • 採用特殊的信號與編碼法
  • 肯定長度法

17 路由表的內容是什麼?

  • 目的網路地址
  • 距離
  • 下一跳路由器地址

18 UDP的首部格式

19 三次握手+四次斷開

  • 創建鏈接時,客戶端向服務器端發送一個SYN包,進入SYN_SEND狀態,在該狀態下,客戶端等待服務器的確認包。
  • 服務器端收到客戶端的SYN包後,首先向客戶端確認本身已收到的客戶端的SYN包,同時也要發送本身的SYN包,即要向發送方發送ACK+SYN包,而後進入SYN—RECEIVE狀態。
  • 客戶端收到服務器端的ACK+SYN包,向服務器端發送ACK包確認。而後完成三次握手,創建鏈接。 其中:
  • SYN:在鏈接創建時用來同步序號。
  • SYN=1ACK=0表示這是一個請求報文段。對方若贊成創建鏈接,則應在響應報文段中使SYN=1ACK=1。所以SYN1就表示這是一個鏈接請求或鏈接接收的報文。
  • ACKTCP數據包首部中的確認標誌,對已接收的TCP報文進行確認。0時確認號無效。TCP規定:在創建鏈接之後全部傳送的報文段都必須把ACK1

TCP如何保證可靠性:

TCP的可靠性是經過順序編號和確認(ACK)來實現的。TCP在開始傳送一個段時,爲準備重傳而首先將該段插入到發送隊列之中,同時啓動時鐘。其後,若是收到了接受端對該段的ACK信息,就將該段從隊列中刪去。若是在時鐘規定的時間內,ACK未返回,那麼就從發送隊列中再次送出這個段。TCP在協議中就對數據可靠傳輸作了保障,握手與斷開都須要通信雙方確認,數據傳輸也須要雙方確認成功,在協議中還規定了:分包、重組、重傳等規則;而UDP主要是面向不可靠鏈接的,不能保證數據正確到達目的地。

20 FTPTFTP的區別:

  • FTP 是完整、面向會話、常規用途文件傳輸協議;TFTP 用做 bones bare - 特殊目的文件傳輸協議。
  • 由於 TFTP 不支持驗證, 因此Windows NT FTP服務器不支持 TFTP
  • 能夠以交互方式使用 FTP; TFTP 容許文件只能單向的傳送。
  • FTP 提供用戶身份驗證; TFTP 卻不。
  • FTP 依賴於 TCP 是面向鏈接並提供可靠的控件; TFTP 依賴 UDP,須要減小開銷, 幾乎不提供控件。
  • FTP 使用周知 TCP 端口號: 數據和鏈接對話框的 21 20; TFTP 使用它的文件傳輸活動 UDP 端口號 69
  • FTP使用的是TCP21端口,TFTP使用的是UDP69端口; 通常防火牆都會封TCP端口而不會封UDP,因此TFTP有時比FTP好用,不過TFTP傳輸的文件通常較小,你要傳大文件就要用FTP

21 以太網

1.以太網是目前使用最普遍的局域網技術,是當今現有局域網採用的最通用的通訊協議標準。

2.在典型的以太網上,所有計算機共享同一個傳輸介質。以太網使用成爲載波偵聽多路訪問/衝突檢測(CSMA/CD)的方法,來判斷計算機什麼時候能夠把數據發送到訪問介質。經過CSMA/CD,全部計算機都監視傳輸介質的狀態,在傳輸以前等待線路空閒。若是兩臺計算機嘗試同時發送數據,就會發生衝突,計算機就會中止發送,等待一個隨機的時間間隔,而後再次嘗試發送。

3.傳統以太網在中低負載狀況下運行良好,但在大負載狀況下會因爲衝突的增多而影響性能。在現代以太網中,像網絡交換機這樣的設備會對流量進行管理,減小衝突的發生,從而讓以太網的運行更具效率。

 

22交換機:每臺計算機也是經過一條線路鏈接到交換機。可是,交換機知道應該把接收到的數據發送到哪個端口。大多數交換機把端口與所鏈接設備的物理地址關聯起來。當一個端口所鏈接的計算機發送數據幀時,交換機會查看幀的目的地址,把幀發送到目的地址相關聯的端口

23 訪問過程

瀏覽器輸入網址以後的過程

1應用層:客戶端瀏覽器經過DNS解析到www.baidu.com的IP地址220.181.27.48,經過這個IP地址找到客戶端到服務器的路徑。客戶端瀏覽器發起一個HTTP會話到220.161.27.48,而後經過TCP進行封裝數據包,輸入到網絡層。

HTTP訪問服務器

2傳輸層:在客戶端的傳輸層,把HTTP會話請求分紅報文段,添加源和目的端口,如服務器使用80端口監聽客戶端的請求,客戶端由系統隨機選擇一個端口如5000,與服務器進行交換,服務器把相應的請求返回給客戶端的5000端口。而後使用IP層的IP地址查找目的端。

3.客戶端的網絡層不用關心應用層或者傳輸層的東西,主要作的是經過查找路由表肯定如何到達服務器,期間可能通過多個路由器,這些都是由路由器來完成的工做,經過查找路由表決定經過那個路徑到達服務器,其中用到路由選擇協議。

4.客戶端的鏈路層,包經過鏈路層發送到路由器,經過鄰居協議查找給定IP地址的MAC地址,而後發送ARP請求查找目的地址,若是獲得迴應後就可使用ARP的請求應答交換的IP數據包如今就能夠傳輸了,而後發送IP數據包到達服務器的地址。無論網絡層使用的是什麼協議,在實際網絡的鏈路上傳送數據幀時,最終仍是必須使用硬件地址。每個主機都設有一個 ARP 高速緩存(ARP cache),裏面有所在的局域網上的各主機和路由器的 IP 地址到硬件地址的映射表。當主機 A 欲向本局域網上的某個主機 B 發送 IP 數據報時,就先在其 ARP 高速緩存中查看有無主機 B 的 IP 地址。若有,就可查出其對應的硬件地址,再將此硬件地址寫入 MAC 幀,而後經過局域網將該 MAC 幀發往此硬件地址。

Linux知識點

linux 操做系統概述

1.常見操做系統

   - 服務端操做系統 : linux、unix、windows server

   - 單機操做系統 : windows(dos 、ucdos、win9五、win9八、win2000、xp、vista、win七、win8)

                     MAC 、linux(ubuntu)

   - 移動操做系統 Android、IOS 、Windows phone

2.linux操做系統介紹

  - 爲何要學習linux操做系統

    1. 大部分服務端都採用linux ,JEE部署到服務器中

    2. 一些企業和學校採用linux研發和教學

3. 不少嵌入式開發 用linux  

    4. 雲計算、大數據 是集羣網  linux : centos

  - 特色   

    1. 開放、開源、多用戶的網絡操做系統

2. 基於unix(unix-->minix-->linux(linus :林納斯 芬蘭 )),能夠定製內核

3. 假如了GNU組織(自由軟件組織 ,copyLeft) ,經過GPL(通用公共許可) 許可對外發布  

  - linux組成

     1. linux內核(linus 團隊管理)

 2. shell :用戶與內核交互的接口

 3. 文件系統 : ext三、ext4 等  windows 有 fat32  、ntfs

 4. 第三方應用軟件

  - linux操做系統版本   

    1. 內核版本 (linus 團隊管理)  3.8

2. 發行版本  :一些軟件公司之內核爲基礎,再添加一些軟件和文檔造成發行版本

   - red hat  : rhel ,centos

   - debian   : debian,ubuntu(桌面)

- android  

二.安裝linux系統

vmware安裝 : 建立虛擬機的軟件

vitual box :oracle 公司提供

虛擬機安裝

直接安裝 

建立虛擬機

安裝ubuntu鏡像

打開虛擬機鏡像: 虛擬機+操做系統(ubuntu)

打開*.vmx 文件

用戶名 itcast 密碼 123

三.linux系統環境

默認有6個命令交互通道和一個圖形界面交互通道,默認進入到的是圖形界面通道

命令交互模式切換:ctrl+alt+f1—f6

圖形交互界面 ctrl+alt+f7

1.圖形界面交互模式

- terminal: 圖形界面的命令終端,它是圖形界面交互通道的延伸,要依賴於圖形界面

 

2.命令交互模式

命令提示符: 

itcast@ubuntu:~−itcast:用戶名−ubuntu:主機名− :路徑,假如當前的路徑正好是該用戶存放數據的根目錄,則顯示 −−itcast:用戶名−ubuntu:主機名− :路徑,假如當前的路徑正好是該用戶存放數據的根目錄,則顯示 − :用戶的類型 $表明普通用戶 # 表明 超級用戶

3.linux文件系統

- 目錄結構

- 文件權限分析

  w :可寫   r: 只讀  x:可執行  - :無權限

  文件權限

   1. 字符表示法

     drwxr-xr-x

  第一個字符 :文件的類型  - :普通文件  d:文件夾  c :串口文件  l :鏈接文件

       2-4 字符  : 該文件的屬主用戶的權限

   5-7  字符 : 與屬主用戶同一組的其餘用戶的權限

   8-10 字符 :  不一樣組的其餘用戶的權限

    2. 數字表示法

   -rw-r--r--   :文件的默認權限   644

   drwxr-xr-x   : 目錄的默認權限  755  

4、linux的經常使用命令

1.註銷、關機、重啓

- 註銷 :logout :登出 、exit

- 關機 :

shutdown - h 時間

- h :關機

- 時間 :

1. now :立刻

2. 12.30 :指定具體時間

3. 3 :幾分鐘之後

sudo : superuser do :由超級用戶來執行該命令

要配置sudo 命令 : 受權 哪些用戶能執行哪些命令

由超級用戶配置 sudo

/etc/sudoers

sudo shutdown -h now 當前帳號:itcast

- 重啓 :

shutdown -r 時間

-r :restart

2.linux基本命令 :文件操做命令

 1. ls   : 查看目錄內容

    - l :查看詳細信息

- a :查看全部文件(隱藏)

    man :manual : 手工,幫助 ,幫助命令,比如windows help

 命令: man ls

 2. mkdir :建立目錄

      Desktop:

    - java

      - JEE : aa.txt  bb.txt  

      - Android

 3. cd  切換目錄

    - cd ..  記得要加空格

- cd ./java  進入當前目錄的子目錄

- cd ../xxx  進入上一級目錄的子目錄

   tab :自動補全

 4. touch  :建立一個空白的普通文件

    touch aa.txt

 5. echo  :把內容重定向到指定的文件中 ,有則打開,無則建立

 6. cat、more  :查看文件內容

    - cat :查看文件內容

- more :分頁查看文件內容,按空格鍵換頁

 7. cp、mv、rm   

    - cp :複製

   cp bj.txt ./java/jee

- mv :剪切、重命名

   1. 剪切 :mv aa.txt ../android/

   2. 重命名 :假如剪切的文件 存放在同一個目錄中 ,則是重命名

       mv bb.txt cc.txt

- rm :刪除文件或者文件夾

  -f : 假如要刪除的文件不存在,也不提示

  -i : 刪除前提示 ,默認不刪除,要刪除,輸入y

  -d : 刪除空白目錄

  -r :遞歸刪除

 8. wc :word count :統計字符數

     154  233 3418

 - 154 :行數

 - 233 :單詞數

 - 3418 :字符數

   命令: wc bj.txt

 9. ln :建立鏈接文件

    - 默認建立的是硬鏈接,比如複製 ,可是兩個文件會同步

   命令:ln ./java/android/aa.txt  aaa

- s :建立的是軟鏈接

 10. pwd   :查看當前目錄的絕對路徑

 

 11. 管道命令 |

   命令: ls -la | wc

 12. 重定向

    - > :覆蓋模式

命令:  echo "ww">aaa

- >>:追加模式

命令: echo "ww">>aaa

 13. passwd   :設置密碼  ,ubuntu默認 root帳號是沒有開啓 ,只要設置root密碼便可開啓

     sudo passwd root

 14. su  切換目錄

     su root

 root用戶切換到其餘帳號不須要密碼

3.linux 系統命令

1.stat :查看文件的詳細信息

stat bj.txt

2.who與whoami

who : 查看在線的用戶

whoami :查看當前本身的用戶

3.hostname : 顯示主機名

hostname

4.uname :顯示系統信息

-a :顯示完整的系統信息

 5.top :顯示當前耗時的進行的信息 ,每3秒刷新一次

     cltr+c 中斷

 6.ps :顯示當前進程的快照

   - axu

 7.du :顯示文件的大小信息

 8.df :磁盤使用狀況  disk free

 9.ifconfig :查看或者配置網卡信息 ,比如windows 的ipconfig

    ipv4:32位  2-32次方     ipv6  128位     是 ipv4  2-96次方倍數

設置虛擬機ip地址:

  1. 設置vmware的鏈接方式

     - 共享宿主機的ip地址,在網上鄰居找不到

     - 橋接方式,須要單獨設置ip,能夠在網上鄰居查找

  2. 圖形界面設置ip地址

      edit connection --》ipv4--》manual(手工設置)--》add  (ip地址,子網掩碼)

      3.命令方式設置ip地址

     靜態設置ip:

     sudo ifconfig eth0 192.168.15.122 netmask 255.255.255.0

 10.ping  測試與目標主機鏈接狀況

 11.clear  : 清除屏幕  windows: cls  

 12.man  :幫助命令

     man 命令

 13.kill  :殺死進程

    kill  pid

 14.netstat  :網絡鏈接詳細信息

 15. useradd

    - 查看用戶信息

   sudo cat /etc/passwd

 itcast:x:1000:1000:UbuntuA,,,:/home/itcast:/bin/bash

  - itcast:用戶名

  - x :密碼 :已經加密 ,密碼存放在  /etc/shadow

  - 1000: 帳號id ,userId

  - 1000: 組id ,group id

      - UbuntuA,,,  :帳號描述

      - /home/itcast :該帳號存放文件的默認位置  ~

  - /bin/bash:該用戶的shell腳本的解析方式  ,sh 、bash、rbash

    - 建立用戶

  sudo useradd lijun -d  /home/lijun   -s /bin/bash

   -d :指定該用戶的home 路徑

   - s :該用戶的shell解析方式

  步驟:

    1. 建立 /home/lijun 目錄

    2. 執行 useradd 命令

    3. 用 passwd 設置密碼

    4. su 切換用戶

5、打包、壓縮文件 

windows : zip、rar

linux :gz ,bzip,zip

 1.tar :打包、拆包命令

    tar - cxzjvf  <打包後的文件>   <欲打包的目錄>

  - c :建立的一個歸檔文件 ,即打包文件夾

  - x :拆包

  - z :以gzip 格式壓縮,默認壓縮倍數 6倍  (0-9)

  - j :以bzip2格式壓縮

  - v :顯示打包或者拆包的文件信息

  - f : 後面緊接一個 歸檔文件

   - 打包文件

      tar -cvf news.tar  ./java   摘要  

   - 拆包文件

      tar -xvf news.tar

 2.gzip 、bzip2 壓縮與解壓

    1. 壓縮文件

  gzip news.tar

2. 解壓文件

  gzip -d news.tar.gz

    -d :解壓

 3.打包及壓縮

   - 打包及壓縮

      tar -czvf news.tar.gz ./java

   - 拆包及壓解縮

      tar -xzvf  news.tar.gz

6、軟件管理 

windows : .exe 安裝 、卸載

安裝: mysql.exe cc.exe

卸載  該軟件惟一的標識 ,包名 alibaba

android : *.apk 卸載 包名

red hat :*.rpm

ubuntu : 對debian的升級 *.deb 格式

 1.安裝軟件

   - dpkg :debian  package

      離線安裝:

  安裝 sudo dpkg - i  <文件名>

    -i :install

   命令:sudo dpkg -i ./tree_1.6.0-1_i386.deb

  卸載 sudo dpkg - r  <包名>

    -r :remove

       命令:sudo dpkg -r tree

   - apt-get  :advance  package  tools

     對dpkg命令的升級,在線安裝

  安裝 sudo apt-get -install  <包名>

  卸載 sudo apt-get -remove  <包名>

 2.vim 軟件  :比如記事本 ,可是比記事本要強大  

 1. 安裝vim

 2. 使用vim

   操做模式:

     1. 通常模式 ,默認進入的通常模式,該模式不能編輯文檔 ,只能查看

         i(insert)  進入 插入模式

     2. 編輯模式、插入模式

         該模式能夠編輯文檔,按esc 退出插入模式,進入到通常模式

     3. 命令模式 :在 通常模式中按:進入命令模式

        - q: 安全退出,當沒有操做該文檔,則直接按q退出vim

    - q!:當修改了內容,可是不想保存,則q!強制退出

    - wq :保存退出

    - set number 顯示行號

    - set nonumber 取消行號顯示

7、搭建Java服務器,而且實現遠程安全訪問linux系統

1.經過ssh實現安全遠程訪問linux系統

   ssh :secure shell

     加密:

   1. 對稱加密 (加密密鑰與解密密鑰相同)

      des 、aes

   2. 非對稱加密(加密密鑰與解密密鑰不一樣)

      RSA :公鑰、私鑰

 數字摘要:

   md5 \sha1

   1. 查看是否安裝了ssh服務端與客戶端

     sudo apt-cache policy openssh-client openssh-server

   2. 安裝ssh 服務端與客戶端軟件

      sudo dpkg -i ./ssh/*

 

   3. 經過windows ssh客戶端來訪問linux服務端

      - putty :遠程登陸

  - winscp433setup.exe :文件傳輸

2. 安裝jdk

   進入 root用戶

   實現步驟:

    1. jdk 存放在哪裏  /opt

2. 把軟件拷貝到/opt

3. 綠色軟件,解壓

4.設置環境變量

   vim /etc/profile

export JAVA_HOME="/opt/jdk1.6.0_39"

    export PATH="$JAVA_HOME/bin:$PATH"

5. 刷新配置 ,讓配置生效

   source /etc/profile

6. 編寫Demo.java,測試

   -javac Demo.java

       - java Demo

3. 安裝tomcat

   步驟:

    1. 安裝在哪裏 /opt

2. 拷貝、解壓

   tar -xzvf  apache-tomcat.tar.gz

3. 運行

   - ./startup.sh

   - ./shutdown.sh

4. 安裝Eclipse

   步驟:

     1.安裝在/opt

 2. 拷貝、解壓

   cp eclipse.tar.gz  /opt

   tar -xzvf  eclipse.tar.gz

重點: 

1.linux系統環境

命令交互通道 

命名提示符 

2. linux 目錄結構、文件權限

drwxr-xr-x

3. linux 命令

- 開關機

- 文件操做

- 系統命令

1. top 2. who 3. ifconfig 4. ping 5. kill 6. man 7.clear 8.netstat

4. 軟件管理

- dpkg :離線 .deb .rpm .apk

- apt-get :在線

5. 壓縮解壓

tar -cxgzvf 打包後的文件 要打包的文件

6. vim 的使用

三種模式 

7. ssh理解 secure shell

8. java開發環境搭建

Python 知識點

Python是一個面向對象的解釋型的交互式高級腳本語言:Python被設計成一種高可讀性的語言,由於它大量地使用了英語中的單詞做爲關鍵字,並且不像其餘語言使用標點符號構成複雜的語法結構,Python的語法結構很是少。

Python是一種面向對象的語言:即Python是支持面向對象的,支持在對象中進行代碼封裝。

Python是一種解釋型語言:即Python程序是在運行時由解釋器解釋執行的,於是不用事先編譯源程序。這一點和Perl和PHP相似。

Python是一種交互式語言:即你可以在Python提示符下直接交互式地編寫你的程序。

Python是初學者的語言:Python是一種很是適合初學者的語言,它支持多種類型的應用程序的開發,如簡單的文本處理、www瀏覽器應用程序開發、遊戲開發等等。

1)什麼是Python?使用Python的優勢有哪些?缺點有哪些?

Python是一種面向對象的解釋性的交互式語言,帶有對象、模塊、線程、異常和內存自動管理的機制。

使用Python的優勢有:簡單、易學、輕即可移植、可擴展、可讀性、具備多種內建數據類型、開源等等。

使用Python的缺點有:運行速度慢,代碼不能加密(解釋性語言,發佈python應用只能發佈源代碼,不像C發佈編譯後的應用文件)

2)什麼是PEP 8?

PEP 8是一種編碼規範,是一系列關於如何讓Python代碼更加具備可讀性的編碼建議。

3)什麼是序列化(pickling)和反序列化(unpickling)?

序列化:將在內存中的變量轉爲可存儲或傳輸的過程。應用JSON傳輸,序列化爲統一格式json

反序列化:與序列化的過程相反

Pickle模塊容許咱們將Python對象轉換成一個string表示的信息,而且可使用dump函數將其保存到一個文件中去,這樣的過程稱爲序列化。而使用文件中保存的對象信息重構Python對象的過程稱爲反序列化。

4)Python是如何被解釋執行的?

Python是一種解釋型語言,它能夠直接從源代碼運行程序。程序員編寫的源代碼首先轉變成一種中間語言代碼,而後再被轉換成可以直接執行的機器語言代碼。

5)Python是如何進行內存管理的?

Python內存空間是以Python私有堆的形式進行管理的。全部的Python對象和數據結構都存放在一個私有堆中。解釋器能夠訪問私有堆,而程序員不能夠。

將Python堆空間中的內存分配給Python對象的工做是由Python內存管理器完成的。而內核API則會提供給程序員一些相關的工具來完成涉及到內存的編碼工做。

Python還內置垃圾回收器,從而進行回收釋放內存到堆空間。

6)可以找到程序中的bug進行靜態分析的工具備哪些?

PyChecker是一種可以發現Python源代碼中的bug並對其中的代碼風格和複雜度進行警告的靜態分析工具。另一種工具是Pylint,它可以驗證模塊是否知足編碼標準。

7)什麼是Python裝飾器?

用來裝飾一個函數從而使這個函數在不修改自己的函數定義外,動態產生額外的功能;裝飾函數的入參爲須要被裝飾的函數。裝飾器本質上是一個返回函數的高階函數

一個Python裝飾器是咱們在符合Python語法的同時又方便地對函數作的一些特定的修改。

8)列表、元組、集合、字典的區別是什麼?

列表:元素可變(任何數據類型),有序(可索引),append/insert/pop;

元組:元素不可變,但元素中的可變元素是可變的;有序(可索引);並且元組能夠被散列,例如做爲字典的鍵。

集合:無序(不可被索引)、互異

字典:無序,鍵值對(key:value),key惟一不可重複

9)怎樣理解字典和列表?

它們是一種用來建立可變對象的語法結構,數據容器。

dic插入、查找速度比list快,不會隨key的增長而增長,但list會隨着元素的增長而增長(偏移量)

10)參數是如何經過值或者引用傳遞的?

python中確切說應該是「傳對象引用」的方式,引用對象傳遞。 一切皆對象,參數皆引用

若是函數收到的是一個可變對象(好比列表、字典)的引用,則可修改對象的原始值==至關於「引用傳遞」方式;

若是函數收到的是一個不可變對象(好比數字、字符、元組),就不能直接修改原始對象指向的值==至關於「值傳遞」方式;

11)Python提供哪些內置類型?(原文有語法錯誤,根據我的理解翻譯)

分爲可變類型和不可變類型。

可變類型:

列表

集合

字典

不可變類型:

字符串

元組

數字

12)Python中的命名空間是什麼?

名字到對象的一個映射;

一個對象擁有一個ID(內存地址)、一個類型、一個值,但能夠有不一樣的名字,好比:a=1,b=a,a和b指向同一個對象;

命名空間就是用來映射這個關係的;

13)Python中的lambda表達式是什麼?

lambda表達式是一個匿名函數,省去了對函數命名,因此叫匿名函數。一般用做代碼行內的嵌入函數。

14)爲何Python中的lambda表達式沒有聲明?

Python中的lambda表達式沒有聲明是由於它只是用來建立一個新的函數對象,而且在運行時才返回值給對象。

15)Python中的pass是什麼意思?

pass是Python中的空操做語句,或者說,它是一個複雜語句中的一個空間佔位符,只是用來表示空白,什麼都不用寫。

16)Python的迭代器是什麼?

迭代器是用來迭代可迭代對象的,好比包含一組元素的列表。 iter()生成迭代器對象,next()依次訪問迭代器對象的下一個值

17)Python中的unittest是什麼?

unittest是Python中的單元測試框架。它支持共享的測試創建、自動測試、關閉測試、彙集測試等等。

18)什麼是切片?

從一組序列中截取一段序列的機制,好比列表、元組、字符串等類型中選擇一個範圍中的元素。

19)Python中的生成器是什麼?

一種特殊的迭代器,用關鍵字yield表示,它特殊的地方在於運用在函數中函數體沒有return返回,而是使用關鍵字yield返回值,yield每返回一次,函數狀態掛起 。這種函數叫作生成器函數,被調用時返回一個生成器對象;

20)Python中的docstring是什麼?

docstring是一個py文件、函數、類開頭部分的用'''編寫的一段註釋文檔和說明,經過help函數可查看該文檔說明。

docstring是Python中產生文檔的方式,它能夠爲Python中的函數、模塊和類產生說明文檔。

21)Python中如何拷貝一個對象?

使用標準庫的copy模塊:copy.copy()淺拷貝,copy.deepcopy()深拷貝

copy.copy()淺拷貝:拷貝了對象,但拷貝對象的值仍然是指向原對象的值(至關於引用),修改拷貝對象的元素,則被拷貝對象的值也會被修改

copy.deepcopy()深拷貝: 不只拷貝了對象,同時也拷貝了對象中的元素,得到了全新的對象,與被拷貝對象徹底獨立;但這須要犧牲必定的時間和空間。

22)Python中負的索引是什麼意思?

Python中可使用整數和負數進行索引。對於正索引,0是第一個,1是第二個,以此類推。對於負索引,-1是最後一個,-2是倒數第二個,以此類推。

23)怎樣將一個數字轉換成字符串?

使用內置函數str()便可。若是想要八進制或者十六進制的形式,可使用oct或者hex函數。

24)xrange和range的區別是什麼?

xrange返回一個xrange生成器對象,而range返回一個list對象。

生成很大數列的時候,range會使用和其範圍大小相同的內存;相比xrange的性能要高不少

25)Python中的模塊和包是什麼?

在Python中,模塊就是一種構建程序的方式。每個Python程序文件都是一個模塊,這個文件還能夠引入其餘模塊如對象和屬性等。

包就是一個帶有__init__.py文件的文件夾,裏面可包含多個模塊

26)@property、@staticmethod、@classmethod:

@property:特性,被其裝飾過的方法(函數),能夠當成屬性同樣去調用和訪問。如:a()是一個方法==》c.a(對象.屬性)調用

@staticmethod:靜態方法,被其裝飾的函數中不含self參數,至關於類外面的方法,但會在類中被調用(跟類有關係但在運行時又不須要實例和類參與)。經過類名調用

@classmethod:類方法,經過類名調用(通常類中的方法是實例方法,經過實例調用),使用時將類做爲方法的第一個參數傳入,如:

@classmethod

def test(cls):

    print(cls,cls.x)

27) 如何理解self?

self爲類中方法的默認第一個參數,self指向建立的實例自己。 調用時self不須要傳,Python解釋器本身會把實例變量傳進去

相關文章
相關標籤/搜索