簡體   English   中英

復制Linux liveUSB會導致init.d腳本出錯

[英]Copy Linux liveUSB causes errors with init.d scripts


總體問題


當我安裝一個編寫為通過/etc/init.d/在后台啟動時運行的簡單Java應用程序時,它可以在我明確安裝了該應用程序的liveUSB上運行。 當我復制該記憶棒時,它永遠無法成功啟動。 當啟動liveUSB復制時,當liveUSB啟動過程到達我的腳本時,Java應用程序將始終掛起。 我的腳本,即使每5分鍾也能完全執行一次應做的工作,並且會一直運行直到您關閉計算機電源為止。

  1. 我的腳本阻止了其他所有內容
  2. 除了我的腳本外,什么都沒有
  3. 你不能取消我的劇本
  4. 沒有GUI
  5. 您只能看到的文本是我腳本的命令行輸出

設置和測試 -一切順利:)


我有一個帶有3個分區的Linux liveUSB。 簡單的標准Xubuntu圖像已加載。

  • sda1> 2GB存儲
  • sda2> 2GB系統
  • sda3>卡斯伯剩余的gb

我創建了一個簡單的Java應用程序,該應用程序在啟動時在后台運行。 為了做到這一點,我遵循以下步驟:

  1. 將Java應用程序編譯成類
  2. 將類文件放在/ home / user / folder /
  3. 將我的startup.sh腳本復制到/etc/init.d/
  4. 在/etc/init.d/中
    • 鍵入“ update-rc.d startup.sh start 20 2 5。stop 20 0 1 6。”
    • 此更新的運行級別成功
  5. 現在,我可以重新啟動/重新啟動/關閉任何操作,一切運行正常!

復制 -這就是棘手的地方!


創建此棍子的副本時,請按照以下步驟操作:

  1. 裝載sda2
    • 將所有內容從該文件​​夾復制到/ home / user / Desktop / tmp-system /
  2. 裝載sda3
    • 將所有內容從該文件​​夾復制到/ home / user / Desktop / tmp-casper /
  3. 進入/ home / user / Desktop / tmp-system /
    • 鍵入“ tar -cvf system.tar”。
  4. 進入/ home / user / Desktop / tmp-casper /
    • 鍵入“ tar -cvf casper.tar”。
  5. 數量
    • sda2
    • sda3
  6. 插入空的USB(例如sdb)
    • 設置分區(與要復制的存儲棒相同)
    • 解壓到分區
      • tar -xvf system.tar ...進入sdb2
      • tar -xvf casper.tar ...進入sdb3

測試 -這就是所有出錯的地方!


  1. 將新創建的liveUSB插入計算機
  2. 從USB啟動
  3. 一切開始正常
  4. 我編寫的Java應用程序被觸發
    • 引導過程永遠掛起
    • 沒有可用的cmd提示
    • 沒有可用的GUI
    • 就像線程正在運行一樣(而且是這樣!每5分鍾可以查看一次輸出-正是這種方式)

解決方案嘗試和陷阱


1個

我可以掛載復制的liveUSB,然后編輯startup.sh以不啟動我的Java應用程序,並且它仍然不會啟動(就像我懷疑的那樣?)。


2

如果我使用“ dd if = sda of = sdb”,則liveUSB的副本將正常運行。 但是,這不是可接受的解決方案。 如果我將帶有dd的16GB記憶棒復制到64GB記憶棒,那會將64GB記憶棒變成16GB。


3

測試了startup.sh和Java應用程序本身的許多變體。 所有這些都會產生相同的錯誤。


4

我用來復制的方法適用於其他形式的應用程序,文件或其他任何形式。


5

我也想嘗試避免使用任何其他庫或程序來幫助運行Java應用程序。

您最好做的是使用一種方法快速創建一個liveUSB Linux記憶棒,然后添加Java程序設置和目錄。 這是一些幫助- 可將Pendrive啟動為Live CD

我絕對喜歡您提到的第一點。 即使沒有Java程序,也無法復制liveUSB。 您已經花了很多時間來調試該程序。 我覺得您對安裝Java程序制作許多liveUSB感興趣。 由於dd不是一個選項,因此我想對於以某種方式使用Kickstart過程進行快速LiveUSB安裝並復制Java東西更有意義。 謝謝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM