2012-02-19 108 views
7

1)我有一個實例和sudo命令沒有工作做這個實例的一些錯誤 所以我不得不創建一個新的實例。將舊的EBS卷安裝到新的實例 - 亞馬遜EC2

2)我想用新的實例使用舊的EBS卷並停止舊的實例。

3)I創建(與新實例自動創建新EBS卷)

4)我建立舊卷的快照,並以新的實例連接的新實例。

5)因此,兩個EBS卷附有新實例。

6)當我使用SSH登錄到新實例時,我看不到任何舊數據。

7)我想要新的實例上的每個舊數據。


我的問題是..... 如何使用舊卷與新的實例?

請幫我..我從過去的10小時內連續:(嘗試它..

+1

我們需要更多的信息來回答這個問題。你以前的例子是一個微觀實例嗎?如果是,你停止了它,還是你終止了它?是在創建第一個實例時還是在單獨的EBS捲上自動創建的EBS捲上的舊數據?您是否使用'mount'在新實例上掛載了舊的EBS卷?您可以通過在SSH shell中運行'df'來檢查。你能告訴我們那個'df'命令的輸出嗎? – Daan 2012-02-19 15:17:46

+0

1)是的,都是同一區域的微型實例,2)我停止了舊的,3)它在單獨的捲上,第二個實例也創建了一個新卷,但我同時附加到新實例,4)我不知道如何掛載舊的EBS捲到新的實例,但我通過亞馬遜控制面板連接它5)DF輸出是文件系統1K塊已用可用使用%掛載在 /dev/xvda1 8256952 961696 7211384 12%/ tmpfs 305624 0 305624 0%/ dev/shm – 2012-02-19 16:02:23

回答

4

你需要做的是安裝在新實例舊卷什麼。去亞馬遜EC2控制面板,和點擊「Volumes」(位於Elastic Block Store下方),查看舊EBS卷的附件信息,類似<instance id> (<instance name>):/dev/sdg

請記下這裏給出的路徑,以便/ dev/sdg在上面的例子中,然後使用SSH連接到你的新實例,然後輸入mkdir /mnt/oldvolume,然後輸入mount /dev/sdg /mnt/oldvolume(或者控制面板中給出的任何路徑),你的文件現在應該在/mnt/oldvolume。如果這不能解決您的問題,請在完成所有這些操作後再次發佈df命令的輸出。因此,回顧一下,要在實例上使用EBS卷,需要使用控制面板(或API工具)將其附加到該實例,然後然後將其掛載到實例本身上。

+0

這是一個確切的解決方案...感謝大安:)是否有任何快速的方式來使用所有的Apache,MySQL配置與新的實例,可在「/ mnt/oldvolume」?基本上我想運行服務器(apache,mysql),因爲它們在舊實例上運行,包括所有舊配置 – 2012-02-19 20:44:56

+0

是的,請在新捲上替換'httpd.conf'和'my.cnf'(使用'whereis httpd.conf'和'whereis my.cnf'找到它們)與舊卷中的。如果您想要使用舊捲上的'www'和'mysql'目錄中的數據,最簡單的方法是創建如下的符號鏈接:'rm -rf/var/www','ln -s/mnt/\ var/www/var/www/var/www/var/lib/ 請注意,這將刪除任何你可能在新捲上的這些目錄中放入了數據,所以你可能想稍微改變一下,但這是一個大概的想法。 – Daan 2012-02-20 09:56:28

+0

不要忘記在執行此操作之前執行'service httpd stop'和'service mysqld stop',然後使用'service httpd start'和'service mysqld start'重新啓動它們,新設置 – Daan 2012-02-20 10:14:46