<em id="1rarx"><ins id="1rarx"></ins></em><sup id="1rarx"></sup>

<progress id="1rarx"><tr id="1rarx"></tr></progress>
<sup id="1rarx"><menu id="1rarx"></menu></sup>
<menuitem id="1rarx"></menuitem><optgroup id="1rarx"><small id="1rarx"><sub id="1rarx"></sub></small></optgroup>

    <sup id="1rarx"><menu id="1rarx"></menu></sup>
    <div id="1rarx"></div><div id="1rarx"><tr id="1rarx"><object id="1rarx"></object></tr></div>
      <em id="1rarx"></em>

          蘋果ios同步icloud照片到新手機

          2017年11月15日 沒有評論

          換了個新手機,想把icloud里面的照片下來。一直也沒搞懂蘋果的更新機制。

          設置的是通過icloud恢復,結果發現沒有可用備份。那只能設置為新手機了。

          設為新手機后使用已有的icloud賬戶登錄后,以前通訊錄,照片會自動恢復。

          設置方式是:照片需要打開 設置->照片->icloud照片圖庫

          打開照片后發現里還是沒有照片,網上查了查也看不到什么原理。

          最后無意間發現照片有了。

          原來是要想同步照片需要三個條件:
          1.需要打開icloud照片圖庫
          2.手機接入wifi
          3.手機充電狀態是。

          才會下載照片到新手機。

          分類: iOS/Mac 標簽: ,

          git skip worktree文件恢復

          2017年10月20日 1 條評論

          從遠程pull文件一致報error: Your local changes to the following files would be overwritten by merge:
          提示有文件未commit,可是本地已經無文件可,后來發現提示未提交這些文件都是skip worktre文件,需要恢復取消skipwork狀態,然后暫存本地的修改,再進行pull遠程文件就可以了。

          把所有標記為skip worktree的問價取消標記命令:

          git ls-files -v 顯示所有文件的狀態
          grep -i ^S cut -c 3- 提取從第三個字符開始到結尾,去掉狀態只保留路徑
          tr '\012' '\000'替換換行符 (\012) 為 (\000)
          xargs -0 git update-index --no-skip-worktree 把以0分割的路徑字符傳給 git update-index --no-skip-worktree 取消

          忽略修改,從而不用提交到庫里面。
          git update-index --assume-unchanged /path/file

          如果想恢復該文件,可以用
          git update-index --no-assume-unchanged /path/file 來恢復跟蹤

          分類: 小技巧 標簽:

          TCP連接建立的三次握手與連接斷開四次揮手

          2017年9月4日 沒有評論

          TCP三次握手

          一、什么是三次握手

          三次握手(Three-way Handshake),是指建立一個TCP連接時,需要客戶端和服務器總共發送3個包。

          二、三次握手的目的

          三次握手的目的是連接服務器指定端口,建立TCP連接,并同步連接雙方的序列號和確認號并交換 TCP 窗口大小信息。客戶端執行連接請求時。將觸發三次握手。

          三、三次握手過程

          第一次握手:
          客戶端發送一個TCP的SYN標志位置1的包指明客戶打算連接的服務器的端口,以及初始序號X,保存在包頭的序列號(Sequence Number)字段里。
          第二次握手:
          服務器發回確認包(ACK)應答。即SYN標志位和ACK標志位均為1同時,將確認序號(Acknowledgement Number)設置為客戶的ISN加1以.即X+1。
          第三次握手.
          客戶端再次發送確認包(ACK) SYN標志位為0,ACK標志位為1。如果正確則連接建立成功,客戶端和服務器進入ESTABLISHED狀態,完成三次握手,隨后客戶端與服務器之間可以開始傳輸數據了。把服務器發來ACK的序號字段+1,放在確定字段中發送給對方.并且在數據段放寫ISN的+1。

          TCP四次揮手

          一、什么是四次揮手

          TCP的連接的拆除需要發送四個包,因此稱為四次揮手(four-way handshake)。客戶端或服務器均可主動發起揮手動作,任何一方執行close操作即可產生揮手操作。

          二、四次揮手過程

          第一次揮手:

          客戶端發送一個FIN,用來關閉客戶端到服務器的數據傳送,客戶機進入FIN_WAIT_1狀態。
          第二次揮手:

          服務器收到FIN后,發送一個ACK給客戶端,確認序號為收到序號+1(與SYN相同,一個FIN占用一個序號),服務器進入CLOSE_WAIT狀態。
          第三次揮手:

          服務器發送一個FIN,用來關閉服務器到客戶端的數據傳送,服務器進入LAST_ACK狀態。
          第四次揮手:

          客戶端收到FIN后,客戶端進入TIME_WAIT狀態,接著發送一個ACK給服務器,確認序號為收到序號+1,服務器進入CLOSED狀態,完成四次揮手。

          有限狀態機FSM:Finite State Machine
          1、CLOSED 沒有任何連接狀態
          2、LISTEN 偵聽狀態,等待來自遠方TCP端口的連接請求
          3 、SYN-SENT 在發送連接請求后,等待對方確認
          4、SYN-RECEIVED 在收到和發送一個連接請求后,等待對方確認
          5、ESTABLISHED 代表傳輸連接建立,雙方進入數據傳送狀態
          6、FIN-WAIT-1 主動關閉,主機已發送關閉連接請求,等待對方確認
          7 、FIN-WAIT-2 主動關閉,主機已收到對方關閉傳輸連接確認,等待對方發送關閉傳輸連接請求
          8、 TIME-WAIT 完成雙向傳輸連接關閉,等待所有分組消失
          9、CLOSE-WAIT 被動關閉,收到對方發來的關閉連接請求,并已確認
          10、LAST-ACK 被動關閉,等待最后一個關閉傳輸連接確認,并等待所有分組消失

          11、CLOSING 雙方同時嘗試關閉傳輸連接,等待對方確認

          附加問題:

          【問題1】為什么連接的時候是三次握手,關閉的時候卻是四次揮手?
          答:因為當服務器收到客戶端的SYN連接請求報文后,可以直接發送SYN+ACK報文。其中ACK報文是用來回應的,SYN報文是用來同步的。但是關閉連接時,當服務器收到FIN報文時,很可能并不會立即關閉SOCKET,所以只能先回復一個ACK報文,告訴客戶端,”發送的FIN報文已經收到”。只有等到客戶端所有的報文都發送完了,客戶端才能發送FIN報文,因此不能一起發送。故需要四步揮手。
          【問題2】為什么TIME_WAIT狀態需要經過2MSL(最大報文段生存時間)才能返回到CLOSE狀態?
          答:四個報文都發送完畢,客戶端和服務器可以直接進入CLOSE狀態了,但有可能最后一個ACK丟失。所以TIME_WAIT狀態就是用來重發可能丟失的ACK報文,確保之前的數據不會丟失后再進入close狀態。

          原文:http://www.178linux.com/85976

          分類: 網絡編程 標簽:

          tcpdump抓取http的請求頭和響應信息

          2017年8月21日 沒有評論

          tcpdump過濾HTTP的GET請求:

          sudo tcpdump -s 0 -A 'tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x47455420'

          tcpdump過濾HTTP的POST請求:

          sudo tcpdump -s 0 -A 'tcp dst port 80 and (tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x504f5354)'

          tcpdump過濾HTTP的請求和響應頭信息,以及請求和響應消息體信息:

          tcpdump -A -s 0 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'
          tcpdump -X -s 0 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'

          分類: linux 標簽:

          The listener supports no services

          2017年8月14日 1 條評論

          [[email protected] ~]$ lsnrctl status

          LSNRCTL for Linux: Version 11.2.0.4.0 - Production on 14-AUG-2017 13:56:45

          Copyright (c) 1991, 2013, Oracle. All rights reserved.

          Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))
          STATUS of the LISTENER
          ------------------------
          Alias LISTENER
          Version TNSLSNR for Linux: Version 11.2.0.4.0 - Production
          Start Date 14-AUG-2017 13:54:44
          Uptime 0 days 0 hr. 2 min. 0 sec
          Trace Level off
          Security ON: Local OS Authentication
          SNMP OFF
          Listener Parameter File /home/oracle/product/11gR2/network/admin/listener.ora
          Listener Log File /home/oracle/product/diag/tnslsnr/localhost/listener/alert/log.xml
          Listening Endpoints Summary...
          (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
          (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
          The listener supports no services
          The command completed successfully

          tlister啟動沒有服務

          #netmgr
          在database services下增加實例名配置,替換紅色部分為你的實例名。

          客戶端連接報錯:
          ORA-12541:TNS:no listener
          把127.0.0.1 替換為你機器的ip

          分類: oracle 標簽:

          oralce刪除數據庫

          2017年8月14日 沒有評論

          sqlplus / as sysdba
          SQL> startup
          ORACLE instance started.

          Total System Global Area 2.0176E+10 bytes
          Fixed Size 2261928 bytes
          Variable Size 2818575448 bytes
          Database Buffers 1.7314E+10 bytes
          Redo Buffers 41463808 bytes
          Database mounted.
          Database opened.
          SQL> alter database close;

          Database altered.

          SQL> alter system enable restricted session;

          System altered.

          SQL> drop database;

          Database dropped.

          Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
          With

          刪除 /etc/oratab
          刪除 rm -rf product/
          刪除 rm -rf oraInventory/

          未關閉的進程殺掉
          [[email protected] ~]# ps -ef|grep ora
          root 4736 3961 0 13:17 pts/2 00:00:00 su - oracle
          oracle 4737 4736 0 13:17 pts/2 00:00:00 -bash
          oracle 4763 1 0 13:18 ? 00:00:00 /home/oracle/product/11gR2/bin/tnslsnr LISTENER -inherit
          root 5482 3790 0 13:36 pts/1 00:00:00 grep ora
          [[email protected] ~]# kill -9 4763

          這樣重新安裝數據庫,不會報實例沖突

          分類: oracle 標簽:

          eclipse工程有紅色嘆號

          2017年7月11日 沒有評論

          eclipse有紅色嘆號;

          一般情況可以這樣處理,處理方法來自網絡

          1,右鍵項目名稱 BuildPath ---> Configure Build Paht...中,然后上面有幾個選項卡找到 Libraries中出現紅色叉號的包為路徑錯誤的包。到classpath中修改相應包的當前路徑。然后回到eclipse中F5刷新工程。

          不行的話可以試試clean項目;

          project--->clean

          如果你的eclipse項目有紅色嘆號,而Libraries中沒有出現紅色叉號的包,我是這樣做的。

          1,先把eclipse轉換到Markers視圖,windows---->show view ---->markers

          你會發現這些報錯內容,
          Archive for required library: ‘XXXXXXXX001’ in project ‘xxxxxxxxx’ cannot be read or is not a valid ZIP file
          2,用記事本打開項目根目錄的.classpath文件,找到“”這一行,刪掉

          保存,刷新后,這個報錯就沒有了,從而紅色嘆號也沒有了。

          分類: java 標簽:

          word按tab不能多級標題

          2017年7月5日 沒有評論

          使用word 2010 ,經常用到tab鍵進行列表等級變換,但是在某些情況下,tab鍵不能回退到下一級,那么就需要修復word此功能。
          1第一步,打開word 2010 ,選擇“文件”-> “選項”:
          2第二步,在彈出框中選擇“校對”,然后選擇“自動更正選項(A)...”:
          3第三步,在彈出框中選擇“鍵入時自動套用格式”標簽卡,在“用Tab和Backspace設置左縮進和首行縮進”前打勾:
          4最后,保存退出

          分類: 小技巧 標簽:

          nginx的location、root、alias指令用法和區別

          2017年4月4日 7 條評論

          nginx指定文件路徑有兩種方式root和alias,指令的使用方法和作用域:
          [root]
          語法:root path
          默認值:root html
          配置段:http、server、location、if
          [alias]
          語法:alias path
          配置段:location

          root與alias主要區別在于nginx如何解釋location后面的uri,這會使兩者分別以不同的方式將請求映射到服務器文件上。
          root的處理結果是:root路徑+location路徑
          alias的處理結果是:使用alias路徑替換location路徑
          alias是一個目錄別名的定義,root則是最上層目錄的定義。
          還有一個重要的區別是alias后面必須要用“/”結束,否則會找不到文件的。。。而root則可有可無~~

          root實例:

          如果一個請求的URI是/t/a.html時,web服務器將會返回服務器上的/www/root/html/t/a.html的文件。

          alias實例:

          如果一個請求的URI是/t/a.html時,web服務器將會返回服務器上的/www/root/html/new_t/a.html的文件。注意這里是new_t,因為alias會把location后面配置的路徑丟棄掉,把當前匹配到的目錄指向到指定的目錄。

          注意:
          1. 使用alias時,目錄名后面一定要加"/"。
          3. alias在使用正則匹配時,必須捕捉要匹配的內容并在指定的內容處使用。
          4. alias只能位于location塊中。(root可以不放在location中)

          分類: nginx 標簽:

          git master origin HEAD的區別

          2017年3月29日 沒有評論

          HEAD :當前活躍分支的游標,可以用 checkout 命令改變 HEAD 指向的位置。形象的記憶就是:你現在在哪兒,HEAD 就指向哪兒,所以 Git 才知道你在那兒!

          master: 首次創建倉庫時默認分支的名字,在大多數情況下,master是指主干分支。

          origin: 默認的遠程倉庫的名字。

          HEAD是git內置的定義好的特定含義功能,不可以修改。master,origin都是常用的公共命名方式,可以有自己的定義。

          ps:
          FETCH_HEAD: 是一個版本鏈接,記錄在本地的一個文件中,指向著目前已經從遠程倉庫取下來的分支的末端版本

          參考
          http://marklodato.github.io/visual-git-guide/index-zh-cn.html

          分類: linux 標簽:
          印度快乐8官网
          <em id="1rarx"><ins id="1rarx"></ins></em><sup id="1rarx"></sup>

          <progress id="1rarx"><tr id="1rarx"></tr></progress>
          <sup id="1rarx"><menu id="1rarx"></menu></sup>
          <menuitem id="1rarx"></menuitem><optgroup id="1rarx"><small id="1rarx"><sub id="1rarx"></sub></small></optgroup>

            <sup id="1rarx"><menu id="1rarx"></menu></sup>
            <div id="1rarx"></div><div id="1rarx"><tr id="1rarx"><object id="1rarx"></object></tr></div>
              <em id="1rarx"></em>

                  <em id="1rarx"><ins id="1rarx"></ins></em><sup id="1rarx"></sup>

                  <progress id="1rarx"><tr id="1rarx"></tr></progress>
                  <sup id="1rarx"><menu id="1rarx"></menu></sup>
                  <menuitem id="1rarx"></menuitem><optgroup id="1rarx"><small id="1rarx"><sub id="1rarx"></sub></small></optgroup>

                    <sup id="1rarx"><menu id="1rarx"></menu></sup>
                    <div id="1rarx"></div><div id="1rarx"><tr id="1rarx"><object id="1rarx"></object></tr></div>
                      <em id="1rarx"></em>