Pomoc Podmiana systemowego wolumenu z RAID 0 na single przy uzyciu dodatkowego dysku

spietrza

Download Station
Q's Professional
20 Marzec 2013
422
81
118
50
Poznań
QNAP
TVS-x71
Ethernet
802.11ad
<div class="bbWrapper">Witam wszystkich,<br /> <br /> trafił mi się ciekawy problem do rozwiązania. A dokładnie mam na tapecie QNAP-a 3 dyskami. SSD jako bufor oraz dwa 2 x 2TB w RAID0.<br /> Mam za zadanie dołożyć trzeci dysk o pojemności 4TB. I co teraz ??<br /> <br /> Dane z dysków 2 x 2TB kopiuję na dysk 4TB ( jako zewnętrzny ). Następnie czyszczę oba dyski 2 TB i zakładam na nich RAID 1.<br /> Następnie dane z 4TB kopiuję na dyski w grupie RAID 1. Następnie podpinam dysk 4TB i podnoszę grupę RAID 1 do RAID 5 dla 3 dysków.<br /> <br /> Czy to rozwiązanie będzie jak najbardziej optymalne i bezpieczne ?</div>
 
<div class="bbWrapper">Dziękuję za odpowiedź. Zgadza się. Na dzień dzisiejszy właściciel serwera nie patrzy na pojemność ( dzisiaj ledwo ma zajęte 1,76TB) ale zamierza pozostałe dwa dyski 2TB wymienić w przyszłości niedalekiej.</div>
 
  • Lubię to
Reakcje: kaktus
<div class="bbWrapper"><blockquote data-attributes="member: 6383" data-quote="spietrza" data-source="post: 30947" class="bbCodeBlock bbCodeBlock--expandable bbCodeBlock--quote js-expandWatch"> <div class="bbCodeBlock-title"> <a href="/goto/post?id=30947" class="bbCodeBlock-sourceJump" rel="nofollow" data-xf-click="attribution" data-content-selector="#post-30947">spietrza napisał:</a> </div> <div class="bbCodeBlock-content"> <div class="bbCodeBlock-expandContent js-expandContent "> trafił mi się ciekawy problem do rozwiązania. A dokładnie mam na tapecie QNAP-a 3 dyskami. SSD jako bufor oraz dwa 2 x 2TB w RAID0.<br /> Mam za zadanie dołożyć trzeci dysk o pojemności 4TB. I co teraz ?? </div> <div class="bbCodeBlock-expandLink js-expandLink"><a role="button" tabindex="0">Kliknij, aby rozwinąć...</a></div> </div> </blockquote>Nie.<br /> <ul> <li data-xf-list-type="ul">Masz wolumin główny o pojemności 4TB złożony z dwóch dysków RAID&#039;em 0.</li> <li data-xf-list-type="ul">Zakładamy, że do archiwizacji takiego woluminu potrzebujemy 4TB dysk</li> </ul>Kroki:<br /> <ol> <li data-xf-list-type="ol">Instalujesz więc w serwerze nowy dysk 4TB jako drugi wolumin Single Drive lub Grupa RAID.<br /> (Single Drive jak i Grupa RAID 1, 5, 6 pozwalają na migracje do RAID 1, 5, 6)</li> <li data-xf-list-type="ol">W App Center wyłączasz wszystkie Aplikacje.<br /> </li> <li data-xf-list-type="ol"><span style="color: #d14841"><u><b>UWAGA!</b></u></span><ul> <li data-xf-list-type="ul">Wyłączasz HD Station!</li> <li data-xf-list-type="ul">Jeśli używałeś natywnego Debiana według tutoriala z forum, konieczny jest restart serwera!</li> </ul></li> <li data-xf-list-type="ol">Wyłączasz wszystkie usługi sieciowe w tym Samba, Web, FTP, MySQL, ... Zostawiasz tylko SSH<br /> </li> <li data-xf-list-type="ol"><u><span style="color: #974806">Opcjonalnie dla wygody</span></u><span style="color: #d14841">:</span><ul> <li data-xf-list-type="ul">Dla wygody instalujesz Optware lub Qnapware<br /> </li> <li data-xf-list-type="ul">W App Center włączasz Optware/Qnapware</li> <li data-xf-list-type="ul">Instalujesz Midnight Commandera (pomocny będzie z niego edytor <code class="bbCodeInline">mcedit</code> i sam <code class="bbCodeInline">mc</code>)<br /> <div class="bbCodeBlock bbCodeBlock--screenLimited bbCodeBlock--code"> <div class="bbCodeBlock-title"> Bash: <button class="copy-button-cc" data-xf-init="copy-cc"> <span data-xf-init="tooltip" title="Kopiuj do schowka"><i class="fa fa-clipboard" aria-hidden="true"></i></span> </button> </div> <div class="bbCodeBlock-content" dir="ltr"> <pre class="bbCodeCode" dir="ltr" data-xf-init="code-block" data-lang="bash"><code># Dla Optware ipkg update ipkg install mc # Dla Qnapware opkg update opkg install mc</code></pre> </div> </div></li> </ul></li> <li data-xf-list-type="ol">Logujesz się do serwera po SSH (<a href="https://forum.qnap.net.pl/temat/jak-po%C5%82%C4%85czy%C4%87-si%C4%99-do-terminala-konsoli-linux-shell-bash-sh-w-serwerze-qnap-putty-windows.7553/" class="link link--internal" data-proxy-href="/proxy.php?link=https%3A%2F%2Fforum.qnap.net.pl%2Ftemat%2Fjak-po%25C5%2582%25C4%2585czy%25C4%2587-si%25C4%2599-do-terminala-konsoli-linux-shell-bash-sh-w-serwerze-qnap-putty-windows.7553%2F&amp;hash=f5a2c2a52fc782523d01d7505881aed5">FAQ - Jak połączyć się do terminala/konsoli Linux - shell Bash/SH w serwerze QNAP (PuTTY Windows)</a>)</li> <li data-xf-list-type="ol">Szukasz lokalizację, do której przyłączony jest pierwszy wolumin:<br /> <div class="bbCodeBlock bbCodeBlock--screenLimited bbCodeBlock--code"> <div class="bbCodeBlock-title"> Bash: <button class="copy-button-cc" data-xf-init="copy-cc"> <span data-xf-init="tooltip" title="Kopiuj do schowka"><i class="fa fa-clipboard" aria-hidden="true"></i></span> </button> </div> <div class="bbCodeBlock-content" dir="ltr"> <pre class="bbCodeCode" dir="ltr" data-xf-init="code-block" data-lang="bash"><code># metoda 1 przez szukanie katalogu Public: cd /share &amp;&amp; cd /share/$(readlink Public) &amp;&amp; cd .. pwd # metoda 2 przez szukanie katalogu Public - prawidłowa: cd $(getcfg `getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` path -f /etc/config/smb.conf) &amp;&amp; cd .. pwd</code></pre> </div> </div><br /> ... i sprawdzasz czy, aby to ten poleceniem, np. listując jego zawartość:<br /> <div class="bbCodeBlock bbCodeBlock--screenLimited bbCodeBlock--code"> <div class="bbCodeBlock-title"> Bash: <button class="copy-button-cc" data-xf-init="copy-cc"> <span data-xf-init="tooltip" title="Kopiuj do schowka"><i class="fa fa-clipboard" aria-hidden="true"></i></span> </button> </div> <div class="bbCodeBlock-content" dir="ltr"> <pre class="bbCodeCode" dir="ltr" data-xf-init="code-block" data-lang="bash"><code>ll /share/CACHEDEV1_DATA # Pelny przyklad: #cd $(getcfg `getcfg SHARE_DEF defPublic -d Public -f /etc/config/def_share.info` path -f /etc/config/smb.conf) &amp;&amp; cd .. #ll</code></pre> </div> </div></li> <li data-xf-list-type="ol">Szukasz lokalizacji, w której podłączono, drugi - nowy wolumin:<br /> <div class="bbCodeBlock bbCodeBlock--screenLimited bbCodeBlock--code"> <div class="bbCodeBlock-title"> Bash: <button class="copy-button-cc" data-xf-init="copy-cc"> <span data-xf-init="tooltip" title="Kopiuj do schowka"><i class="fa fa-clipboard" aria-hidden="true"></i></span> </button> </div> <div class="bbCodeBlock-content" dir="ltr"> <pre class="bbCodeCode" dir="ltr" data-xf-init="code-block" data-lang="bash"><code>mount | grep mapper</code></pre> </div> </div></li> <li data-xf-list-type="ol">Kopiujesz zawartość woluminu głównego/pierwszego do woluminu utworzonego na nowym dysku:<br /> <div class="bbCodeBlock bbCodeBlock--screenLimited bbCodeBlock--code"> <div class="bbCodeBlock-title"> Bash: <button class="copy-button-cc" data-xf-init="copy-cc"> <span data-xf-init="tooltip" title="Kopiuj do schowka"><i class="fa fa-clipboard" aria-hidden="true"></i></span> </button> </div> <div class="bbCodeBlock-content" dir="ltr"> <pre class="bbCodeCode" dir="ltr" data-xf-init="code-block" data-lang="bash"><code># Polecenie: #rsync -avh --progress /share/zrodlowy /share/docelowy # Przyklad uzycia: rsync -avhP /share/CACHEDEV1_DATA /share/CACHEDEV4_DATA # Options # -a, --archive archive mode; equals -rlptgoD: # -r, --recursive recurse into directories # -l, --links copy symlinks as symlinks # -p, --perms preserve permissions # -t, --times preserve modification times # -g, --group preserve group # -o, --owner preserve owner (super-user only) # -D same as --devices --specials # --devices preserve device files (super-user only) # --specials preserve special files # -v, --verbose increase verbosity # -h, --human-readable output numbers in a human-readable format # -P same as --partial --progress # --partial keep partially transferred files # --progress show progress during transfer</code></pre> </div> </div></li> <li data-xf-list-type="ol">Po zakończonym procesie kopiowania zmieniasz w pliku <code class="bbCodeInline">/etc/config/qpkg.conf</code> lokalizacje zainstalowanych aplikacji i wskazujesz nowy dysk.<br /> Możesz to zrobić manualnie np. edytorem z Midnight Commander&#039;a zamieniając lokalizacje instalacji w polach <code class="bbCodeInline">Install_Path</code> oraz <code class="bbCodeInline">Shell</code> dla każdej z aplikacji. <br /> <div class="bbCodeBlock bbCodeBlock--screenLimited bbCodeBlock--code"> <div class="bbCodeBlock-title"> Bash: <button class="copy-button-cc" data-xf-init="copy-cc"> <span data-xf-init="tooltip" title="Kopiuj do schowka"><i class="fa fa-clipboard" aria-hidden="true"></i></span> </button> </div> <div class="bbCodeBlock-content" dir="ltr"> <pre class="bbCodeCode" dir="ltr" data-xf-init="code-block" data-lang="bash"><code>mcedit /etc/config/qpkg.conf</code></pre> </div> </div><br /> Lub możesz to zrobić automatycznie:<br /> <div class="bbCodeBlock bbCodeBlock--screenLimited bbCodeBlock--code"> <div class="bbCodeBlock-title"> Bash: <button class="copy-button-cc" data-xf-init="copy-cc"> <span data-xf-init="tooltip" title="Kopiuj do schowka"><i class="fa fa-clipboard" aria-hidden="true"></i></span> </button> </div> <div class="bbCodeBlock-content" dir="ltr"> <pre class="bbCodeCode" dir="ltr" data-xf-init="code-block" data-lang="bash"><code>cp /etc/config/qpkg.conf /share/Public/kopia.qpkg.conf.bak # zamień CACHEDEV1 =&gt; CACHEDEV4 sed -i /etc/config/qpkg.conf -e &quot;s:CACHEDEV1:CACHEDEV4:&quot;</code></pre> </div> </div></li> <li data-xf-list-type="ol">Podobny zabieg jak powyżej zmiany lokalizacji danych będziesz musiał przeprowadzić na takich plikach jak <code class="bbCodeInline">/etc/config/...</code><br /> <div class="bbCodeBlock bbCodeBlock--screenLimited bbCodeBlock--code"> <div class="bbCodeBlock-title"> HTML: <button class="copy-button-cc" data-xf-init="copy-cc"> <span data-xf-init="tooltip" title="Kopiuj do schowka"><i class="fa fa-clipboard" aria-hidden="true"></i></span> </button> </div> <div class="bbCodeBlock-content" dir="ltr"> <pre class="bbCodeCode" dir="ltr" data-xf-init="code-block" data-lang="html"><code>uLinux.conf crontab smb.conf nfssetting def_share.info libtrash.conf php.user.ini php/php.ini rsyncd.conf apache/extra/apache-dav.conf</code></pre> </div> </div>W tym celu najlepiej zrobić kopię całego katalogu <code class="bbCodeInline">/etc/config</code>. Zrobisz ją łatwo programem Midnight Commander: <code class="bbCodeInline">mc</code></li> <li data-xf-list-type="ol">Zrestartuj serwer.</li> <li data-xf-list-type="ol">Po ponownym uruchomieniu serwera, większość funkcji powinna już działać przy użyciu nowego woluminu. Dla świętego spokoju wyłącz serwer i wyciągnij dyski z pierwszego woluminu, a następnie włącz.</li> <li data-xf-list-type="ol">Jeśli serwer uruchomił się poprawnie to wszystko jest okay. Włóż zatem dyski na gorąca, usuń stary wolumin i zacznij proces migracji nowego woluminu Single Drive/RAID 1 do RAID 5 przy użyciu niezagospodarowanych dysków.</li> </ol></div>
 
<div class="bbWrapper"><a href="https://forum.qnap.net.pl/uzytkownicy/1/" class="username" data-xf-init="member-tooltip" data-user-id="1" data-username="@Silas Mariusz">@Silas Mariusz</a> no naprawdę super. Widzę w tym jedno zagrożenie. Wymagane jest wyłączenie ręczne usług, administrator to tylko człowiek jak o czymś zapomni to będzie kaszka manna. Przerwany zostanie proces czy jedynie zostanie pominięty w kopiowaniu ??<br /> <br /> Jeśli dało by się z linii komend wyłącz wszystko to tak naprawdę można by ten proces z skryptu uruchomić i pójść do domu, zgadza się ??</div>
 
<div class="bbWrapper"><blockquote data-attributes="member: 6383" data-quote="spietrza" data-source="post: 30985" class="bbCodeBlock bbCodeBlock--expandable bbCodeBlock--quote js-expandWatch"> <div class="bbCodeBlock-title"> <a href="/goto/post?id=30985" class="bbCodeBlock-sourceJump" rel="nofollow" data-xf-click="attribution" data-content-selector="#post-30985">spietrza napisał:</a> </div> <div class="bbCodeBlock-content"> <div class="bbCodeBlock-expandContent js-expandContent "> Wymagane jest wyłączenie ręczne usług, administrator to tylko człowiek jak o czymś zapomni to będzie kaszka manna. Przerwany zostanie proces czy jedynie zostanie pominięty w kopiowaniu ?? </div> <div class="bbCodeBlock-expandLink js-expandLink"><a role="button" tabindex="0">Kliknij, aby rozwinąć...</a></div> </div> </blockquote>Ehhhh.<br /> Włącz myślenie.<br /> <br /> <blockquote data-attributes="member: 6383" data-quote="spietrza" data-source="post: 30985" class="bbCodeBlock bbCodeBlock--expandable bbCodeBlock--quote js-expandWatch"> <div class="bbCodeBlock-title"> <a href="/goto/post?id=30985" class="bbCodeBlock-sourceJump" rel="nofollow" data-xf-click="attribution" data-content-selector="#post-30985">spietrza napisał:</a> </div> <div class="bbCodeBlock-content"> <div class="bbCodeBlock-expandContent js-expandContent "> Przerwany zostanie proces czy jedynie zostanie pominięty w kopiowaniu ?? </div> <div class="bbCodeBlock-expandLink js-expandLink"><a role="button" tabindex="0">Kliknij, aby rozwinąć...</a></div> </div> </blockquote>Czy Ty, aby kopiować pliki w swoim Apple wyłączasz komputer?<br /> <br /> Wytłumacze Ci po co wyłaczamy usługi.<br /> Po to, bo przenosimy dane na nowy wolumin, a usługi są podpięte pod stary. Więc pasuje je przenieść na nowy. Nie sądzisz?<br /> <br /> <blockquote data-attributes="member: 6383" data-quote="spietrza" data-source="post: 30985" class="bbCodeBlock bbCodeBlock--expandable bbCodeBlock--quote js-expandWatch"> <div class="bbCodeBlock-title"> <a href="/goto/post?id=30985" class="bbCodeBlock-sourceJump" rel="nofollow" data-xf-click="attribution" data-content-selector="#post-30985">spietrza napisał:</a> </div> <div class="bbCodeBlock-content"> <div class="bbCodeBlock-expandContent js-expandContent "> Jeśli dało by się z linii komend wyłącz wszystko to tak naprawdę można by ten proces z skryptu uruchomić i pójść do domu, zgadza się ?? </div> <div class="bbCodeBlock-expandLink js-expandLink"><a role="button" tabindex="0">Kliknij, aby rozwinąć...</a></div> </div> </blockquote>Dałoby się.</div>
 
<div class="bbWrapper">Cały czas jadę na becie więc w obrocie jestem <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite1988" alt=":)" title="Smile :)" loading="lazy" data-shortname=":)" /><br /> Spotkałem się ostatnio w jednym z zewnętrznych programów że jeśli usługa nie była wyłączna to przerywał cały proces kopiowania nie informując o tym użytkownika. Dlatego dobrze jest spytać czasami co i jak.<br /> Jeśli da się skrypt to jest piękne rozwiązanie. Właśnie dałeś mi pomysł na aplikację do napisania <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite1988" alt=":)" title="Smile :)" loading="lazy" data-shortname=":)" /> Dziękuję</div>
 
<div class="bbWrapper">Chce ci się dla tych kilku zmian w configach pisać &quot;aplikacje&quot; ? Przy całej operacji przenoszenia danych ich podmiana to 0,0001% czasu.<br /> Rób to ręcznie i daj znać czy zaskoczy wszystko po tej zmianie i wywaleniu cachedev1 - bo szczerze mnie to intresuje.</div>
 
<div class="bbWrapper">Operację będę wykonywał z soboty na niedzielę. Dam znać jak skończę. <br /> Aplikację dla tej operacji nie,ale tak pomyślałem że dużo ludzi ma problem co i jak.<br /> Więc taki automat dobrze by było napisać na przyszłość żeby tzw samo się zrobiło.</div>
 
<div class="bbWrapper"><blockquote data-attributes="member: 6383" data-quote="spietrza" data-source="post: 31019" class="bbCodeBlock bbCodeBlock--expandable bbCodeBlock--quote js-expandWatch"> <div class="bbCodeBlock-title"> <a href="/goto/post?id=31019" class="bbCodeBlock-sourceJump" rel="nofollow" data-xf-click="attribution" data-content-selector="#post-31019">spietrza napisał:</a> </div> <div class="bbCodeBlock-content"> <div class="bbCodeBlock-expandContent js-expandContent "> Operację będę wykonywał z soboty na niedzielę. Dam znać jak skończę. </div> <div class="bbCodeBlock-expandLink js-expandLink"><a role="button" tabindex="0">Kliknij, aby rozwinąć...</a></div> </div> </blockquote>Udalo sie?</div>
 
<div class="bbWrapper">Ta, poszło wszystko prawidłowo. Ale zrobiłem tym sposobem jaki opisałem. W październiku dostane TVS-871T to wtedy przetestuję metodę <a href="https://forum.qnap.net.pl/uzytkownicy/1/" class="username" data-xf-init="member-tooltip" data-user-id="1" data-username="@Silas Mariusz">@Silas Mariusz</a><br /> Właśnie wykonałem procedurę <a href="https://forum.qnap.net.pl/uzytkownicy/1/" class="username" data-xf-init="member-tooltip" data-user-id="1" data-username="@Silas Mariusz">@Silas Mariusz</a> . Co do punktu 11 jedynie podam że php.ini jest ulokowany w /mnt/HDA_ROOT/.config/<br /> Dodatkowo plik apache-dav.conf nie trzeba edytować ponieważ nie ma tam ścieżki do CACHEDEV<br /> Robię restart i zobaczymy co z tego wyszło <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite1988" alt=":)" title="Smile :)" loading="lazy" data-shortname=":)" /><br /> No i wszystko zadziałało. QTS na nowym dysku odpalony. Usunąłem stary wolumn i teraz dołożę go do istniejącego<br /> Znalazłem jeden problem a dokładnie dotyczy on stacji do wirtualizacji.<br /> Ona dalej odwołuje się do starej lokalizacji. W samej stacji nie widzę opcji zmiany ścieżki, jedynie Restore ale nar azie nie klikałem aby nie zepsuć.<br /> <br /> <script class="js-extraPhrases" type="application/json"> { "lightbox_close": "Zamknij", "lightbox_next": "Następny", "lightbox_previous": "Poprzedni", "lightbox_error": "Żądana treść nie może zostać załadowana. Proszę spróbować ponownie później.", "lightbox_start_slideshow": "Rozpocznij pokaz slajdów", "lightbox_stop_slideshow": "Zatrzymaj pokaz slajdów", "lightbox_full_screen": "Pełny ekran", "lightbox_thumbnails": "Miniaturki", "lightbox_download": "Pobierz", "lightbox_share": "Udostępnij", "lightbox_zoom": "Zoom", "lightbox_new_window": "Nowe okno", "lightbox_toggle_sidebar": "Przełącz pasek boczny" } </script> <div class="bbImageWrapper js-lbImage" title="ai59.tinypic.com_20r92jo.png" data-src="https://forum.qnap.net.pl/attachments/ai59-tinypic-com_20r92jo-png.10254/" data-lb-sidebar-href="" data-lb-caption-extra-html="" data-single-image="1"> <img src="https://forum.qnap.net.pl/attachments/ai59-tinypic-com_20r92jo-png.10254/" data-url="" class="bbImage" data-zoom-target="1" style="" alt="ai59.tinypic.com_20r92jo.png" title="ai59.tinypic.com_20r92jo.png" width="636" height="72" loading="lazy" /> </div><br /> Dodatkowo jeszcze Plex, trzyma bazę starą ale już nowych filmów nie widzi. Szuka w starej lokalizacji, muszę poszukać w plikach konfiguracyjnych plex-a aby zmienić jego starą ścieżkę<br /> Co do Plex-a wystarczy wejść w każdą bibliotekę i w lewym górnym rogu nacisnąć na ustawienia. Następnie Edytuj bibliotekę i dodajesz nowy folder z plikami <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite1988" alt=":)" title="Smile :)" loading="lazy" data-shortname=":)" /></div>
 
  • ·
  • TS-x69L
  • ·
  • 1 GbE
  • ·
  • QNAP: 4.2.1 Build 20160601 S: DSM 6.0.1-7393 Update 2
<div class="bbWrapper">Mam pytanie odnośnie migracji RAID:<br /> Urządzenie: TS431-P<br /> Obecnie dwa dyski 4TB w RAID1 oraz dwa dyski 4TB w RAID0. Pierwsza konfiguracja: są tam dane produkcyjne a na drugiej kopie.<br /> Chce dyski w RAID0 sformatować i dołączyć do RAID1 robiać RAID5. Oczywiście nie chce utracić danych z RAID1. <br /> Czy jak sformatuje i znzniszcze RAID0, to pojawi się opcja rozszerzenia RAID1 do RAID5 i QNAP zrobi to w locie?</div>