<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          嵌入式開發(fā)中,好用的文件同步工具!

          共 2044字,需瀏覽 5分鐘

           ·

          2024-06-16 10:03


          rsync是什么?

          rsync(remote sync) 是一個用于文件同步的工具。它可以用于兩個本地目錄之間的文件同步,也可以用于本地設(shè)備與遠(yuǎn)程設(shè)備之間的文件同步。

          rsync與scp不同之處就是:rsync會檢查發(fā)送方和接收方已有的文件,僅傳輸有變動的部分(默認(rèn)規(guī)則是文件大小或修改時間有變動)。

          rsync的使用

          這里使用PC與開發(fā)板來進(jìn)行演示。

          注意:傳輸?shù)碾p方都必須安裝 rsync。

          我們的開發(fā)板上并沒有rsync,下面我們來一起編譯一個。

          下載rsync源碼:

          https://download.samba.org/pub/rsync/

          解壓、進(jìn)入rsync-3.2.3、創(chuàng)建tmp文件夾:

          tar -xvf rsync-3.2.3.tar.gz
          cd rsync-3.2.3/
          mkdir tmp

          輸入如下命令生成交叉編譯的Makefile文件:

          ./configure --prefix=$PWD/tmp --host=arm-linux-gnueabihf CC=arm-linux-gnueabihf-gcc

          此時可能會報如下錯誤:

          根據(jù)提示進(jìn)行修改。大概意思就是SIMD這個東西被使能了,SIMD是什么我們這里不需要管,我們關(guān)掉它即可。

          輸出命令 ./configure --help 查看配置參數(shù),可以看到關(guān)閉SIMD的方式如:

          輸入:

          ./configure --prefix=$PWD/tmp --disable-simd --host=arm-linux-gnueabihf CC=arm-linux-gnueabihf-gcc

          還是報錯:

          再次根據(jù)提示進(jìn)行修改configure命令:

          ./configure --prefix=$PWD/tmp --disable-simd --disable-openssl --disable-xxhash --disable-zstd --disable-lz4 --host=arm-linux-gnueabihf CC=arm-linux-gnueabihf-gcc

          這時候顯示 rsync 3.2.3 configuration successful

          可以生成了Makefile文件了。

          注意:如果還有錯誤的話根據(jù)提示進(jìn)行配置即可。

          PS:關(guān)于Makefile文件的支持可查閱上一篇文章:Makefile常用基礎(chǔ)知識梳理!

          然后編譯、安裝:

          make
          make install

          在tmp文件夾下得到:

          其中,rsync可執(zhí)行文件是我們板子要用到的,把其傳到板子的/usr/bin目錄下:

          scp rsync [email protected]:/usr/bin

          下面對rsync的使用進(jìn)行一個簡單的演示:

          在板子上先建100個文件:

          PC端同步板子里的這些文件到本地:

          rsync -avzu --progress [email protected]:/root/test .
          • -a:表示存檔模式,保存所有的元數(shù)據(jù),比如修改時間(modification time)、權(quán)限、所有者等。
          • -v:表示輸出細(xì)節(jié)。
          • -z:指定同步時壓縮數(shù)據(jù)。
          • -u:表示同步時跳過目標(biāo)目錄中修改時間更新的文件。
          • --progress:表示顯示進(jìn)展。

          板子再創(chuàng)建100個文件:

          PC端再接著同步:

          可以看到,文件是接著傳的,前面已經(jīng)傳過的不會再重新傳。

          以上就是本次關(guān)于rsync這個小工具的簡單分享。

          還有其它類似的工具嗎?歡迎留言討論



          春招已經(jīng)開始啦,大家如果不做好充足準(zhǔn)備的話,春招很難找到好工作。


          送大家一份就業(yè)大禮包,大家可以突擊一下春招,找個好工作!


          瀏覽 50
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  最新国产亚洲免费在线视频 | 亚洲大逼色 | 亚洲精品乱码久久久久99 | 午夜黄片视频 | 人人撸人人模 |