Skocz do zawartości

maggreg

Użytkownicy
  • Postów

    649
  • Dołączył

  • Ostatnia wizyta

Treść opublikowana przez maggreg

  1. maggreg

    MySQL

    Konfig wygląda ok. Sprawdź czy w katalogu data nie masz osieroconych logów ew. skasuj łącznie z indeksem. Zajrzyj do logów (eventvwr.msc > aplikacja) i podaj co wypisuje przy błędzie. Jaki numer błędu masz przy starcie usługi? Spróbuj ew. zmienić "Programy" na "programy". pzdr
  2. maggreg

    MySQL

    I rozumiem, że usługa nie chce wystartować? W takim razie upewnij się, że podkatalog tmp w d:/Programy/nginx/mysql istnieje, jeżeli nie to go załóż. "bind-address = localhost" zamień na "bind-address = 127.0.0.1" pzdr
  3. maggreg

    MySQL

    Sprawdź e pliku konfiguracyjnym my.ini czy ustawienia wskazują na właściwe katalogi. Chodzi o klucze [client] i [mysqld]. Bywa, że problem stanowi wielkość liter w ścieżkach, np. zamiast (wg obrazka) "D:\Programy" należy zastosować "d:\Programy". Bazę można też "spróbować" bez instalacji, jest dostępna wersja do rozpakowania, wystarczy tylko utworzyć usługę i ją uruchomić: d:\Programy\mysql\bin\mysqld.exe --install-manual MySql --defaults-file=d:\Programy\mysql\my.ini net start mysql oczywiście konfig trzeba zrobić ręcznie ale w wersji podstawowej jest to dość proste. mała ściągawka: http://eksith.wordpress.com/2010/11/07/nginx-php-mysql-windows/ pzdr
  4. Hm, aż tak linuxowego gruba nie znam żeby rozstrzygnąć autorytatywnie więc tylko zgaduję, że być może instalator gruba rozpoznał pena i utworzył na nim coś na kształt dysku recovery. Inna sprawa, że Grub może po prostu ignorować napęd FAT i szukać w pierwszej kolejności czegoś bardziej linuxowego, to menu które widzisz może być wbudowane bezpośrednio w loader. Generalnie lepiej do zabaw narzędziowych nadają się loadery do tego celu stworzone jak grub4dos czy syslinux i proponowałbym skorzystanie właśnie z nich. Pamiętaj też o tym co wspominałem wcześniej, pen z którego botujemy z automatu staje się dyskiem nr. 0 przesuwając dysk wewnętrzny w hierarchii i tutaj zachowanie w zależności od loadera też może być różne. WinRE oczywiście może się znaleźć na penie i proponowana konstrukcja powinna być prawidłowa, dla G4D mamy zresztą prościej: title BOOTMGR root (hd0,0) chainloader (hd0,0)/bootmgr tak jak i dla syslinux: label BCD (DART & WinPE2.1) kernel /Syslinux/chain.c32 APPEND fs ntldr=/BOOTMGR Oczywiście trzeba jeszcze zbudować konfig BCD w katalogu "boot", potrzebny też będzie init dla ram dysku najlepiej w tym samym katalogu (czyli plik "BOOT.SDI"). konfig buduje się z poziomu windowsa skryptem w stylu: bcdedit -createstore BCD set BCDEDIT=bcdedit -store BCD %BCDEDIT% -create {ramdiskoptions} -d "Ramdisk options" %BCDEDIT% -set {ramdiskoptions} ramdisksdidevice boot %BCDEDIT% -set {ramdiskoptions} ramdisksdipath \Boot\boot.sdi %BCDEDIT% -deletevalue {ramdiskoptions} description for /f "tokens=3" %a in ('%BCDEDIT% -create -d "Windows PE" -application osloader') do set GUID=%a %BCDEDIT% -set %GUID% systemroot \Windows %BCDEDIT% -set %GUID% detecthal Yes %BCDEDIT% -set %GUID% winpe Yes %BCDEDIT% -set %GUID% osdevice ramdisk=[boot]\Boot\winpe.wim,{ramdiskoptions} %BCDEDIT% -set %GUID% device ramdisk=[boot]\Boot\winpe.wim,{ramdiskoptions} %BCDEDIT% -create {bootmgr} -d "Windows Boot Manager" %BCDEDIT% -set {bootmgr} timeout 0 %BCDEDIT% -set {bootmgr} displayorder %GUID% Przy czym "tokens=3" może wymagać zmiany w zależności od języka systemu w którym wykonujemy skrypt, dla spolszczonego bcdedit powinno być "tokens=2". W "[boot]\Boot\winpe.wim" oczywiście podajemy faktyczną ścieżkę do pliku wim i odpowiednią nazwę czyli przykładowo "[boot]\recovery\winre.wim" Wyzerowanie rozruchu z poziomu linuxa jest banalne, wystarczy zwykły dd: dd if=/dev/zero of=/dev/hdX bs=512 count=1 Można też analogicznie zrzucić sobie taki mbr celem późniejszego użycia w chainloadingu: dd if=/dev/hdX of=/tmp/boot.bs bs=512 count=1 większość loaderów potrafi załadować coś takiego bezpośrednio, nawet te windowsowe, można wtedy linuxa odpalać z BCD. pzdr
  5. A czy Grub2 radzi sobie z truecrypt-em, z tego co mi pamięć podpowida to nie radzi sobie w ogóle. Wpisy nie odnajdują pliku bo powinny dostać info o konkretnej partycji, w twoim konfigu masz: find --set-root /ntldr czyli szukaj ntldr, jak znajdziesz to ustaw fokus i uruchom, zawsze przy statycznej konfiguracji lepiej (bez znaczenia czy w grub czy grub2) ustawić fokus na konkretną partycję. np. coś takiego: root (hd0,0) chainloader (hd0,0)/ntldr czy odpowiedni w lini: --config-file="root (hd0,0);chainloader (hd0,0)/ntldr" tak samo należy skonfigurować ustawienia w grub2, albo podając partycję bezpośrednio albo numer partycji zgodnej z msdos np. msdos2 itp. To ostatnie dotyczy konfiguracji uruchamianej z EFI, co prawda twój układ partycji sugeruje, że nie zachodzi taka sytuacja ale mimo to --fs-uuid nie jest jednoznaczne. Zresztą ustawienie fokusa przez "search --no-floppy --fs-uuid --set xxxx" dla xp też powinno zadziałać. I na koniec - może nie wyraziłem się jednoznacznie ale chciałem już wcześniej zaznaczyć, że odpalanie konsoli (to właściwie nie jest konsola) odzyskiwania dla visty/siódemki z pliku iso jest rozwiązaniem skrajnie niepotrzebnym, niewygodnym i na dodatek niejednoznacznym, bo teraz się zastanawiam, czy ty próbujesz odpalić iso całego DVD czy z samym recovery? Pomijając fakt, że jest to rozwiązanie znacznie bardziej przydatne niż konsola XP (w ogóle odpalanie winpe >= 2.0 bo wiele przydatnych narzędzi jest dystrybuowanych w ten sposó to jest też dużo prostsze. Recovery pod postacią pliku winRE.wim znajduje się w katalogu /windows/system32/Recovery i wystarczy go podpiąć pod menu gotowe lub (jeżeli już używamy loaderów) zbudować mu oddzielne BCD, niektóre typy instalacji powodują, że winre zostaje usunięte z dysku ale zawsze można je znaleźć we wszystkich obrazach obecnych w install.wim systemów 7 i 2008 pod podaną wcześniej ścieżką. Jeżeli natomiast winre znajduje się na swoim miejscu i na dodatek chcemy je dodać do domyślnego kontenera BCD to możemy się posłużyć obecną w systemie komendą reagentc.exe np. taka komenda: reagentc /setreimage /path C:\Recovery\WindowsRE\ /target C:\Windows /bootkey 4100 przemieści nam winre do ścieżki C:\Recovery\WindowsRE\, ustawi jako domyślnie poddawany naprawie system ten dostępny w ścieżce C:\Windows i na dokładkę spowoduje, że będziemy mogli recovry odpalić przytrzymując przy starcie systemu klawisz F7 zamiast F8 i ręczne wybranie odpowiedniej opcji. Oczywiście z wielu względów lepiej jeżeli recovery (jak i sama konfiguracja botująca) znajdują się na innej partycji niż sam system, przede wszystkim awaria powodująca brak dostępu do partycji z systemem nie odcina nas od systemu recovery i czy ogólnie winpe w którym możemy odpalać troszkę więcej narzędzi diagnostyczno/naprawczych niż te zawarty w samym RE. Jeżeli nie używasz konfiguracji z EFI to nie powinno być problemu z grub4dos (i fs pena nie powinien mieć w tym przypadku żadnego znaczenia), mogą być potrzebne tylko odpowiednie mapowania, pamiętaj że botując z pena to on de facto staje się na ten czas dyskiem hd0 i systemów należy szukać na hd1 albo dokonać swapu (może to być dla niektórych systemów niezbędne). swap w grub4dos jest dość prosty: map (hd0) (hd1) map (hd1) (hd0) map --hook albo ze sprawdzeniem, ćzy mamy do czynienia z twardym dyskiem i dopiero wtedy map: checkrange 0x80 read 0x8280 && map (hd0) (hd1) checkrange 0x80 read 0x8280 && map (hd1) (hd0) map --hook I jeszcze mały przykład, jeżeli chcemy odpalić kilka BCD z tej samej partycji ale jednocześnie nie mamy zamiaru edytować pliku bootmgr mały przykład pomysłowego użycia grub4dos do tego celu: find --set-root /bootmgr map --mem /bootmgr (rd) cat --hex --locate=\x74\x3\xE9\x8\x0\x39\x56 --replace=\xEB\x8\xE9\x8\x0\x39\x56 (rd)+1 cat --hex --skip=0x54733 --locate=C\x00D --length=3 (rd)+1 && set offset=0x54733 write --offset=%offset% (rd)+1 C\x001 chainloader (rd)+1 root () w locie edytuje bootmgr i wskazuje mu jako kontener z konfiguracją botowania bc1 (bcd <> bc1), w samym BC1 musimy tylko ustawić ignorowanie sumy kontrolnej (bcdedit /set loadoptions DISABLE_INTEGRITY_CHECKS). pzdr ps grub oczywiście nie może się znajdować na partycji trucrypt może natomiast (dzięki dodatkowym pośrednikom) odpalić system z takiej partycji.
  6. Jaki konkretnie loader znajduje się na penie, w konfigu widzę chainload do grub4dos a sam konfig pochodzi z grub2, o tyle ważne, że loadery te mają inną składnię. Czy dysk ma coś domyślnie uruchamiać, innymi słowy czy partycja z loderem ma być aktywna, teoretycznie jeżeli loader miałby znaleźć się na zewnętrznym nośniku to loader na dysku staje się zbędny. Iso w grubach dodajemy poprzez mapowanie, najlepiej ze względu na ciągłość mapować poprzez pamięć czyli map --mem, w grub2 nie mamy funkcji map ale można poeksperymentować z loopback, jednak praktycznie w przypadku konsoli (a tak naprawdę winpe) najlepiej podłączyć je bezpośrednio a nie z iso. Grub (a grub4dos na pewno) powinien poradzić sobie z chainloadem winpe z pliku wim, pytanie tylko czy winpe ma się znaleźć na dysku czy na penie, widzę odnośnik do win2008 więc winpe można podpiąć pod jego menu można też oczywiście odseparować. W przypadku windowsów grub2 ma zresztą wbudowaną procedurę (troszkę inną niż to co masz w konfigu), mamy coś takiego: menuentry "Windows 7 BIOS/MBR" { insmod part_msdos insmod ntldr insmod ntfs ntldr (hd0,msdos1)/bootmgr } menuentry "Windows XP BIOS/MBR" { insmod part_msdos insmod ntldr insmod ntfs ntldr (hd0,msdos1)/ntldr } Również w przypadku efi i gpt dokumentacja wskazuje bezpośrednio na loader choć z użyciem chain-a: menuentry "Windows 7 UEFI/GPT" { insmod part_gpt insmod search_fs_uuid insmod chain search --fs-uuid --no-floppy --set=root 28cf-35de chainloader ($root)/EFI/MICROSOFT/BOOT/bootmgfw.efi } pzdr antyface! - Usunięto elementów: 0
  7. maggreg

    Czyszczenie rejestru

    Klucz jest przypisany do konkretnej edycji systemu natomiast nie jest przypisany ani do wersji bitowej ani też językowej. Dodatkowo w przypadku takich instalacji "fabrycznych" klucz z naklejki nie jest wykorzystywany, jeżeli użyjesz instalatora z partycji recovery to nie powinien cię w ogóle pytać o klucz. W procesie produkcji sprzętu używa się kluczy przypisanych do producenta (ew. linii produktów) a nie konkretnego egzemplarza. Oczywiście jeżeli dokonasz reinstalacji z innego nośnika niż recovery możesz użyć klucza z naklejki lub odczytać użyty w systemie klucz SLP (oraz towarzyszący mu plik licencji) unikając dzięki temu ew. procedury aktywacyjnej. Pierwszy z brzegu przykład zastosowania powyższego: http://www.elektroda.pl/rtvforum/topic2139727.html Wracając do "ukrytej" partycji, jej zajętość można przeczytać bez uciekania się do zewnętrznych programów systemowym aparatem skryptowym. Na szybko proponuję coś takiego w VBS (można oczywiście użyć zamiennie powershell): Set objWMIService = GetObject("winmgmts:\\.\root\cimv2") Set objDictionary = CreateObject("Scripting.Dictionary") Set colVolumes = objWMIService.ExecQuery("Select * from Win32_Volume Where DriveType = 3") For Each objItem in colVolumes 'if IsNull(objItem.DriveLetter) Then objDictionary.Add objItem.DeviceID , "Punkt montowania: " & objItem.Caption objDictionary.Add objItem.DeviceID & "Przypisana etykieta" , "Przypisana etykieta: " & objItem.Label objDictionary.Add objItem.DeviceID & "Pojemność" , "Pojemność: " & Split( objItem.Capacity/1048576 , ",")(0)& " MB" objDictionary.Add objItem.DeviceID & "Wolne miejsce" , "Wolne miejsce: " & Split( objItem.FreeSpace/1048576 , ",")(0)& " MB" objDictionary.Add objItem.DeviceID & "Zajęte miejsce" , "Zajęte miejsce: " & Split( (objItem.Capacity - objItem.FreeSpace)/1048576 , ",")(0)& " MB" &vbCrLf 'End If Next For Each wpis in objDictionary.items wpisy = wpisy & wpis & vbCrLf Next objDictionary.RemoveAll Wscript.echo wpisy jeżeli chcemy wylistować tylko volumeny bez przypisanego punktu montowania w powyższym przykładzie należy usunąć apostrofy z linii: if IsNull(objItem.DriveLetter) Then End If pzdr
  8. Sorry, że po niewczasie ale dopiero teraz mi mignął ten wątek. Ten klucz obliguje jak zostaną potraktowane poszczególne sterowniki podczas pieczętowania systemu z pomocą Sysprep. Zasadniczo zapieczętowanie systemu z uogólnieniem (generalize) powoduje odświeżenie instalacji sterowników o ile nie utworzymy pliku odpowiedzi który wymusi inne zachowanie. Jak widać mechanizm jest dość pamiętliwy, u mnie siedzą jeszcze wpisy dotyczące karty którą miałem kiedy system był w fazie RC, sam mechanizm też bywa zawodny i potrafi całkowicie wyrzucić z systemu sterowniki do urządzenia które jest fizycznie obecne (bywało tak ze sterami do mobilnego GForce czy też z intelowskim HD w niektórych procesorach serii i). Jeżeli użyjesz na tym systemie sysprepa to sterowniki których narzedzie nie znajdzie na dysku a są na liście wypiszą w odpowiednim logu błędy ale nie są one krytyczne i nie zablokują możliwości zapieczętowania. pzdr
  9. SHIFT + F10 powinien odpalić konsolę, z jej poziomu możesz sprawdzić w logach instalacji (katalog windowsa/panther) co aktualnie robi instalator. Profilaktycznie na czas instalacji systemu odłącz urządzenia massstorage na usb (np czytnik kart), jeżeli klawiatura/myszka jest na ps2 możesz się pokusić o całkowite wyłączenie usb w biosie, również ew. drugi monitor powinien być w czasie instalacji odpięty (dotyczy także np. telewizora przez hdmi). pzdr
  10. Uwaga - skrypty podane poniżej są już mocno nieaktualne, od ich opublikowania Youtube wprowadziło wiele zmian, jeżeli ktoś jest zainteresowany działającymi wersjami proszę pytać na priv!!! Od dłuższego czasu używałem skryptu YousableTubeFix ale sam skrypt jest dość ciężki na dodatek w przypadku Opery używa emulacji pewnych elementów z Greasemonkey. Ponieważ tak naprawdę najbardziej interesował mnie w nim przycisk pobierania i funkcja wymuszania rozmiaru oraz jakości domyślnej dla filmików postanowiłem "dłubnąć" coś własnego. Jakiś czas temu bawiłem się też skryptami podmieniającymi sam odtwarzacz na coś lżejszego i troszkę lepie wyglądającego, co prawda udało mi się wtedy uzyskać działającą wersję ale nie było to nic wartego udostępnienia, teraz postanowiłem wrócić do tego i wykorzystać procedury również dla downloadera. Tak powstały trzy skrypty, oto one: Pierwszy dodający baton z menu pozwalającym na zassanie oglądanego wideo we wszystkich zdefiniowanych w skrypcie formatach (domyślnie nie zawiera definicji dla formatów 3d), tworzy baton z menu "prawie" identycznym jak w wymienionym wcześniej YousableTubeFix choć korzysta do tego z innych procedur: // ==UserScript== // @name Przycisk pobierania YT // @description Pozwala zapisać na dysku oglądany film // @include http://www.youtube.com/watch?* // @include http://*.youtube.com/watch?* // @include https://www.youtube.com/watch?* // @include https://*.youtube.com/watch?* // ==/UserScript== (function () { if( location.pathname.match(/\.(txt|text|js|css|cpp|src)$/) ) { return; } if(typeof(unsafeWindow)=='undefined'){unsafeWindow=window;}// Opera if (typeof(unsafeWindow.yt.playerConfig) === "object"){ var config_attrs = unsafeWindow.yt.playerConfig["attrs"]; var config_args = unsafeWindow.yt.playerConfig["args"]; var config_params = unsafeWindow.yt.playerConfig["params"]; } var autoplay = "false"; var url_src = config_args["url_encoded_fmt_stream_map"].replace(/url=/g,"").split(","); var allformats = [ {'key':'38','value':'Original Definition MP4 4K','format':'Video: MP4 H.264 <> Audio: AAC 48'}, {'key':'37','value':'Full High Definition MP4 1080p','format':'Video: MP4 H.264 <> Audio: AAC 44.1'}, {'key':'46','value':'Full High Definition WebM 1080p','format':'Video: WebM VP8 <> Audio: Vorbis 44.1'}, {'key':'22','value':'High Definition MP4 720p','format':'Video: MP4 H.264 <> Audio: AAC 44.1'}, {'key':'45','value':'High Definition WebM 720p','format':'Video: WebM VP8 <> Audio: Vorbis 44.1'}, {'key':'35','value':'Standard Definition FLV 480p','format':'Video: FLV H.264 <> Audio: AAC 44.1'}, {'key':'44','value':'Standard Definition WebM 480p','format':'Video: WebM VP8 <> Audio: Vorbis 44.1'}, {'key':'43','value':'Low Definition WebM 360p','format':'Video: WebM VP8 <> Audio: Vorbis 44.1'}, {'key':'34','value':'Low Definition FLV 360p','format':'Video: FLV H.264 <> Audio: AAC 44.1'}, {'key':'18','value':'Low Definition MP4 360p','format':'Video: MP4 H.264 <> Audio: AAC 44.1'}, {'key':'5','value':'Low Quality FLV 240p','format':'Video: FLV Sorenson Spark <> Audio: MP3 22.05'} ]; var title = "title="+ encodeURIComponent( document.getElementById("eow-title").getAttribute("title").replace(/(\?)/g,"_").replace(/(\?|\*|\"|\')/g,"%27").replace(/(\/|\\|\:)/g," - ") ); var createNode = (function(type, attributes, props ) { var node = document.createElement(type); if (attributes) { for (var attr in attributes) {if (attributes.hasOwnProperty(attr)) node.setAttribute(attr, attributes[attr]); }} if (props) { for (var prop in props) {if ((props.hasOwnProperty(prop)) && (prop in node)) node[prop] = props[prop]; }} return node; }); var watchcontainer = document.getElementById("watch-actions"); mainbutton = createNode("button", {class: "yt-uix-button yt-uix-button-default yt-uix-tooltip yt-uix-tooltip-reverse", "data-button-menu-id": "yt-main-download-menu", id: "download-button", title: "Pobierz na dysk", type: "button"}, {disabled: false}); watchcontainer.insertBefore(mainbutton, watchcontainer.firstChild); mainbutton.appendChild(createNode("span", {class: "yt-uix-button-content", id: "yt-main-download-button-content"},{textContent: "Pobierz: "})); mainbutton.appendChild(createNode("img", {style: "vertical-align: baseline", class: "yt-uix-button-arrow"})); maindiv = createNode("div", {class: "yt-uix-button-menu hid", id: "yt-main-download-menu"}); watchcontainer.appendChild(maindiv); for (var i=0; i<allformats.length; i++){ for (var j=0; j<url_src.length; j++){ if (allformats[i].key == url_src[j].split("&itag=")[1]){ maindiv.appendChild(createNode("a", {"class":"yt-uix-button-menu-item", "title":allformats[i].format,"onClick":"document.location.href ='" + decodeURIComponent(url_src[j].split("&itag=")[0]) + "&" +title.replace(/\%2527/g,'%27')+ "'"},{textContent:allformats[i].value} )); } } }; })(); Macierz "allformats" została posortowana wg. jakości materiałów, można sobie ją zmienić wg własnych preferencji, można też zmienić sobie opisy które pojawiają się w menu i po najechaniu przyciskiem, wreszcie można sobie dodać (bodź usunąć) inne formaty, np. 3d. Drugi skrypt podmienia standardowy odtwarzacz na flowplayer, powiększa odtwarzany klip domyślnie do formatu 970x579 (można sobie dopasować do własnych preferencji/monitora), sam filmik natomiast jest odtwarzany w maksymalnej obsługiwanej przez odtwarzacz rozdzielczości: A tak to wygląda po użyciu: // ==UserScript== // @name Alternatywny player YouTube - Flow Player // @description Zastępuje standardowy odtwarzacz, inspirowane wersją by clicker dla JW Player- clickerinjo [at] gmail [dot] com // @include http://*.youtube.com/watch?*v=* // @include http://youtube.com/watch?*v=* // @include http://*youtube.com/* // ==/UserScript== (function() { if( location.pathname.match(/\.(txt|text|js|css|cpp|src)$/) ) { return; } if (document.getElementsByTagName("embed")){ setTimeout(function(){ if(typeof(unsafeWindow)=='undefined'){unsafeWindow=window;}// Opera if (typeof(unsafeWindow.yt.playerConfig) === "object"){ var config_attrs = unsafeWindow.yt.playerConfig["attrs"]; var config_args = unsafeWindow.yt.playerConfig["args"]; var config_params = unsafeWindow.yt.playerConfig["params"]; }; var original_sidebar = document.getElementById( "watch-sidebar" ); original_sidebar.setAttribute( "style", "margin-top:10px;"); var original_player = document.getElementById( config_attrs["id"] ); var container = original_player.parentNode; container.removeChild(original_player); container.setAttribute( "style", ( typeof container.getAttribute( "style" ) === "undefined" ) ? container.getAttribute( "style" )+" ;width: 970px; height: 579px;" : "width: 970px; height: 579px;" ); container.parentNode.setAttribute( "style", ( typeof container.parentNode.getAttribute( "style" ) === "undefined" ) ? container.parentNode.getAttribute( "style" )+" ;width: 970px; height: 579px;" : "width: 970px; height: 579px;" ); var autoplay = "false"; var url_src = config_args["url_encoded_fmt_stream_map"].replace(/url=/g,"").split(","); var allfmts = [ "37","22","35","34","18","5" ]; for (var i=0; i<allfmts.length; i++){ for (var j=0; j<url_src.length; j++){ if (allfmts[i] == url_src[j].split("&itag=")[1]){ var format = allfmts[i]; var vidID = encodeURIComponent(decodeURIComponent(url_src[j].split("&quality=")[0])); break;} } if (vidID != null){break;} }; var flvar = "config={"+ "'clip':{'url':'"+vidID+"','baseUrl':'http://172.16.0.5/flowplayer/','autoBuffering':true,'autoPlay':"+autoplay+"},"+ "'playerId':'myPlayer',"+ "'canvas':{'backgroundGradient': 'none','border':'2px solid #778899'},"+ "'play':{'url': 'http://172.16.0.5/flowplayer/play_large_red.png','width':83,'height':83,'opacity':0.8}"+ "}"; var player = document.createElement( "embed" ); player.setAttribute( "src", "http://172.16.0.5/flowplayer/flowplayer-3.2.7.swf" ); player.setAttribute( "style", "display: block !important;background-image:url(http://i.ytimg.com/vi/"+config_args['video_id']+"/hqdefault.jpg)"); player.setAttribute( "height", config_attrs["height"] ); player.setAttribute( "width", config_attrs["width"] ); player.setAttribute( "type", "application/x-shockwave-flash" ); player.setAttribute( "id", config_attrs["id"] ); player.setAttribute( "allowscriptaccess", config_params["allowscriptaccess"] ); player.setAttribute( "allowfullscreen", config_params["allowfullscreen"] ); player.setAttribute( "bgcolor", config_params["bgcolor"] ); player.setAttribute( "format", format ); player.setAttribute( "quality", "best" ); player.setAttribute( "wmode", "gpu" ); player.setAttribute( "seamlesstabbing", "true" ); player.setAttribute( "flashvars",flvar ); container.appendChild( player ); },10); } })(); Kolejność wg której odtwarzacz dobiera rozdzielczość została ustalona przez macierz "allfmts", jeżeli preferujemy inną kolejność można to łatwo zmienić.Oczywiście potrzebujemy też serwera* z którego będzie wczytywany sam flowplayer (autorzy programu proszą aby nie podpinać się pod ich serwer), ja w przykładzie użyłem serwera lokalnego, może to być Apache a może też np. prosty i łatwy do skonfigurowania serwerek Serva który choćby do testów będzie bardzo wygodny (nie wymaga instalacji). Oczywiście adres i ścieżkę do odtwarzacza należy podmienić na własną "http://172.16.0.5/flowplayer/flowplayer-3.2.7.swf" > Serva znajdziemy pod adresem Serva A odtwarzacz FlowPlayer pod adresem FlowPlayer Trzeci skrypt jest podobny do poprzedniego z tą różnicą, że domyślny odtwarzacz zostaje podmieniony na JWPlayer: Tak wygląda w działaniu: // ==UserScript== // @name Alternatywny player YouTube - JW Player // @description Zastępuje standardowy odtwarzacz, inspirowane wersją by clicker - clickerinjo [at] gmail [dot] com // @include http://*.youtube.com/watch?*v=* // @include http://youtube.com/watch?*v=* // @include http://*youtube.com/* // ==/UserScript== (function() { if( location.pathname.match(/\.(txt|text|js|css|cpp|src)$/) ) { return; } if (document.getElementsByTagName("embed")){ setTimeout(function(){ if(typeof(unsafeWindow)=='undefined'){unsafeWindow=window;}// Opera if (typeof(unsafeWindow.yt.playerConfig) === "object"){ var config_attrs = unsafeWindow.yt.playerConfig["attrs"]; var config_args = unsafeWindow.yt.playerConfig["args"]; var config_params = unsafeWindow.yt.playerConfig["params"]; }; var original_sidebar = document.getElementById( "watch-sidebar" ); original_sidebar.setAttribute( "style", "margin-top:10px;"); var original_player = document.getElementById( config_attrs["id"] ); var container = original_player.parentNode; container.removeChild(original_player); container.setAttribute( "style", ( typeof container.getAttribute( "style" ) === "undefined" ) ? container.getAttribute( "style" )+" ;width: 970px; height: 579px;" : "width: 970px; height: 579px;" ); container.parentNode.setAttribute( "style", ( typeof container.parentNode.getAttribute( "style" ) === "undefined" ) ? container.parentNode.getAttribute( "style" )+" ;width: 970px; height: 579px;" : "width: 970px; height: 579px;" ); var autoplay = "false"; var url_src = config_args["url_encoded_fmt_stream_map"].replace(/url=/g,"").split(","); var allfmts = [ "37","22","35","34","18","5" ]; for (var i=0; i<allfmts.length; i++){ for (var j=0; j<url_src.length; j++){ if (allfmts[i] == url_src[j].split("&itag=")[1]){ var format = allfmts[i]; var vidID = encodeURIComponent(decodeURIComponent(url_src[j].split("&quality=")[0])); break;} } if (vidID != null){break;} }; var player = document.createElement( "embed" ); player.setAttribute( "src", "http://172.16.0.5/mediaplayer/player.swf" ); player.setAttribute( "style", "display: block !important;"); player.setAttribute( "height", config_attrs["height"] ); player.setAttribute( "width", config_attrs["width"] ); player.setAttribute( "type", "application/x-shockwave-flash" ); player.setAttribute( "id", config_attrs["id"] ); player.setAttribute( "allowscriptaccess", config_params["allowscriptaccess"] ); player.setAttribute( "allowfullscreen", config_params["allowfullscreen"] ); player.setAttribute( "bgcolor", config_params["bgcolor"] ); player.setAttribute( "format", format ); player.setAttribute( "quality", "best" ); player.setAttribute( "wmode", "gpu" ); player.setAttribute( "znak", "greg" ); player.setAttribute( "seamlesstabbing", "true" ); player.setAttribute( "flashvars", "image=http://i.ytimg.com/vi/"+config_args['video_id']+"/hqdefault.jpg&volume=75&provider=http&smoothing=true&autostart="+autoplay+"&frontcolor=0x888888&backcolor=0x000000&skin=http://172.16.0.5/mediaplayer/skin.zip&file="+vidID); container.appendChild( player ); },10); } })(); Wszystkie uwagi podane przy wcześniejszym skrypcie dotyczą również tego, dodatkowo skrypt podstawia dla playera skórkę (skin.zip) którą również musimy podać z serwera. JwPlayer znajdziemy pod adresem JwPlayer Oba powyższe odtwarzacze obsługują wyłącznie flashowe wersje oryginalnego playerka choć nie powinno być problemu z dalszą rozbudową (ja na pewno spróbuję).Wszystkie skrypty działają bez żadnych zmian również z Firefoxem (oczywiście potrzebny plugin Greasemonkey: http://www.greasespot.net )Skrypty w przypadku Opery należy zapisać z rozszerzeniem user.js, skrypty bez części "user" Opera interpretuje odmiennie co w tym przypadku nie jest wymagane/wskazane *Niestety nie możemy użyć bezpośredniej ścieżki do pliku typu "file:///P:/--/baton/mediaplayer/" ze względu na zabezpieczenia zawarte w samym flashu. Jeżeli ktoś poszukuje skrytptu pozwalającego w większym stopniu wpływać na wyglad i zachowanie Youtuba to oryginalne wersje "YousableTubeFix" znajdzie pod adresami: Wersja podstawowa dla FF http://userscripts.o...ipts/show/13333 Wersja dla Opery http://userscripts.o...ipts/show/36453 I dla Chroma (z którym moje skrypty nie chcą działać ale nie drążyłem tematu) http://userscripts.o...ipts/show/57201 Dodatkowo jeżeli ktoś nie potrzebuje całego "YousableTubeFix" a mój skrypt mu nie działa lub się nie podoba polecam downloader z linku: http://userscripts.o...ipts/show/25105 Skrypty podmieniające odtwarzacz działają również w "komitywie" z "YousableTubeFix" ale muszą się wykonać po nim, w FF można kolejność skryptów ustawiać w Operze natomiast wykonują się w kolejności alfabetycznej więc należy to uwzględnić w nazwie pliku np. z9-jwplayer.user.js pzdr
  11. Hm: Spójrz na to: To odczyty z mojej macierzy RAID 0 - składa się z dwóch szybkich dysków WDC Black WD2002FAEX, jak widzisz wykres jest dość równomierny na całej powierzchni ale błędem byłoby zakładać, że dyski te mają prędkość niezależną od geometrii, prędzej należy założyć, że elektronika a zwłaszcza duży szybki cache niwelują te różnice. Między wykresami widać też sporą różnicę wynikającą z wielkości bloków użytych podczas testu, na tej podstawie też można wysnuć ciekawe wnioski, jak widać test z małymi blokami (tu 16kB) jest dość płaski przy relatywnie niskiej średniej odczytu ale już dla bloków 4MB mamy dużo ciekawsze osiągi ale coś wyraźnie się przycina (pewnie bufor systemowy). Takie testy choć dają ogólny pogląd o parametrach dysku to jednak nie przekładają się w praktyce na to co sugerujesz. Jeżeli jednak chcesz się pobawić to proponuję test praktyczny, potrzebne będą dwa dyski, najlepiej jeden szybki SSD (aby nie wpłynął negatywnie na wynik), drugi dysk badany. Badany dysk podzielić na kilka jednakowych partycji (myślę, że pewien ogląd dadzą trzy). Na dysku SSD umieś kilkanaście>kilkadziesiąt GB danych w różnych grupach ,duże pliki po kilka GB np. iso dvd, pliki średnie po kilka MB np. mp-trójki i pliki małe od kilku bajtów do kilkudziesięciu kilo np. jakieś dokumenty. Potem zrób test kopiowania takiej zawartości na poszczególne partycje i zmierz czasy. Następnie zrób test odwrotny czyli kopiowanie z poszczególnych partycji na SSD. Dopiero taki test da wgląd w to który obszar danego dysku (podkreślam - danego dysku w danej konfiguracji kontrolera) charakteryzuje się najlepszymi parametrami użytkowymi i z jakim rzędem wielkości mamy do czynienia. Oczywiście dla większej miarodajności takiego testu warto jeszcze znać kondycję samego dysku (czasy odczytu sektorów, ponieważ niewielki "gorszy" obszar może wpłynąć na wynik całego obszaru) a sam dysk powinien być wyzerowany, ale są to szczegóły które dla odpowiedzi którego obszaru tego konkretnego dysku użyć mają mniejsze znaczenie a nawet wprost przeciwnie. Być może w przypadku twojej konfiguracji wynik będzie zgodny z tym czego oczekujesz ale podkreślam, nie należy tego uogólniać na wszystkie dyski/kontrolery/systemy. pzdr
  12. Skąd takie informacje, jakieś uzasadnienie, teoretycznie najszybsze są sektory umieszczone na brzegach talerzy bo dysk przy stałej prędkości kątowej osiąga tam największą prędkość liniową. W grę wchodzi też gęstość sektorów która nie musi być jednolita i oczywiście szybkość i bezwładność samej głowicy przekładające się na czas dostępu, dodatkowo sprawę komplikuje ilość talerzy w dysku która "rozmnaża" obszary teoretycznie najszybsze ale przy synchronicznej pracy głowic pojawiają się zależności wpływające na czas dostępu. To wszystko wpływa na transfer wewnętrzny dysku ale po drodze jest jeszcze elektronika, bufory i cache zarówno w sprzęcie jak i w systemie które powodują, że nie ma to żadnego przełożenia na właściwości użytkowe dysku. Poradnik skupia się na konkretnym aspekcie który jest słuszny przy przyjętych w nim założeniach. Oczywiście partycja ta jest mało przydatna przy konfiguracji z pojedynczym systemem natomiast w konfiguracji z wieloma systemami tak dywersyfikacja powoduje, że awaria jednego systemu nie powinna mieć wpływu na pozostałe, przy standardowej wielkości natomiast nie pełni ona żadnych funkcji naprawczych, nie ma na niej ani zestawu recovery ani backupu (winre w systemie 32bit to ok. 140MB więc na takiej partycji się nie zmieści). W takiej konfiguracji jak twoja jest to bardziej kosmetyka (nie mieszamy plików systemowych z rozruchowymi), mnie się taki zaproponowany przez MS układ podoba ale to oczywiście rzecz gustu. Nawiązując do wideo poradnika i ogólnej koncepcji instalacji na konkretnym (własnym) układzie, całość można sobie bardzo uprościć. Poniżej plik autounatend.xml który należy umieścić na nośniku który będzie widoczny podczas instalacji. Można go wrzucić bezpośrednio na płytę ale można np. na pena, jeżeli w czasie startu setupu pen będzie podłączony to plik zostanie automatycznie użyty. <?xml version="1.0" encoding="utf-8"?> <unattend xmlns="urn:schemas-microsoft-com:unattend"> <settings pass="windowsPE"> <component name="Microsoft-Windows-Setup" processorArchitecture="x86" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <DiskConfiguration> <Disk wcm:action="add"> <CreatePartitions> <CreatePartition wcm:action="add"> <Order>1</Order> <Size>40960</Size> <Type>Primary</Type> </CreatePartition> </CreatePartitions> <ModifyPartitions> <ModifyPartition wcm:action="add"> <Format>NTFS</Format> <Label>WIN7</Label> <Order>1</Order> <PartitionID>1</PartitionID> <Active>true</Active> </ModifyPartition> </ModifyPartitions> <DiskID>0</DiskID> <WillWipeDisk>true</WillWipeDisk> </Disk> <WillShowUI>OnError</WillShowUI> </DiskConfiguration> <ImageInstall> <OSImage> <InstallTo> <DiskID>0</DiskID> <PartitionID>1</PartitionID> </InstallTo> <WillShowUI>OnError</WillShowUI> </OSImage> </ImageInstall> </component> </settings> <cpi:offlineImage cpi:source="wim:7" xmlns:cpi="urn:schemas-microsoft-com:cpi"></cpi:offlineImage> </unattend> Plik w wersji dla systemu 32bit, po jego zastosowaniu setup nie będzie pytał o miejsce instalacji, dysk zostanie wyczyszczony, utworzona zostanie pojedyncza partycja 40GB i na niej zostanie zainstalowany system. Plik wpływa tylko na ten fragment setupu, pozostałą część należy sobie przeklikać choć namawiam do dalszej automatyzacji. A oto wynik: I to tyle bo rzeczywiście wykraczamy daleko poza ramy wskazane w pytaniu choć w przypadku @Punisher2010 nadmiar może zaprocentować w przyszłości . pzdr
  13. Z góry zakładasz, że ta partycja będzie zawierała wyłącznie podstawową strukturę rozruchową systemu win7 ale tak naprawdę dzięki takiemu układowi możemy ją wykorzystać dla rozruchu kilku systemów, oczywiście 100MB może się wydawać przesadą ale z punktu widzenia pojemności dysków montowanych w komputerach "certyfikowanych" dla win7 jest to wartość pomijalna. Zresztą "marketingowo" przeciętny nabywca komputera jest dziś traktowany jako osoba która nie zauważa takich rzeczy, ba w takich urządzeniach które wiodą dziś prym na rynku jak choćby i-pad system plików jest całkiem schowany przed użytkownikiem. Z drugiej strony osoba bardziej obeznana z technologią informatyczną może sobie domyślną konfigurację zamienić, nic nie stoi na przeszkodzie aby z tej partycji zrezygnować całkowicie podczas instalacji czy też ustawić jej mniejszy (a jak ktoś woli i większy) rozmiar z pomocą diskaparta, moja partycja boot np. ma 512MB, partycja ta zresztą może spełniać również funkcję partycji recovery zarówno wyłącznie do celów naprawczych (wtedy musi zmieścić winpe) jak i jako pełna instalaka (wtedy może mieć od powiedzmy 4 czy 5 do ok 20 GB). A to jeszcze nie wszystko z czym mamy do czynienia, po woli ale nieuchronnie zmierzamy ku EFI i/lub dysków GPT (bez tego nie da się wykorzystać całości dysków większych niż 2GB) a tu pojawiają się dodatkowe partycje związane z tymi mechanizmami (np. dyski GPT rezerwują sobie ok 128MB). pzdr
  14. Rzeczywisty rozmiar nieprzydzielonej przestrzeni jest tak naprawdę sumą mechanizmu opisanego przez @picasso i pochodnej adresowania LBA. Dysk dynamiczny potrzebuje 1MB przestrzeni jednak jeżeli kontroler pracuje w trybie adresowania 48bit obszar zajmowany przez partycję musi się dzielić bez reszty przez 8MB dlatego w niektórych przypadkach właśnie ok 9MB może zostać nieprzydzielone. Teoretycznie jeżeli dysk jest przyłączony do kontrolera RAID może pozostać dodatkowy obszar potrzebny np. dla migracji pojedynczego dysku do RAID 1, ale ponieważ dotyczy to raczej sprzętowych kontrolerów (nie FAKE) więc to tylko teoria. Ponieważ w twoim przypadku mamy do czynienia z dyskiem (partycjami) mniejszym niż 137MB to tryb adresowania 48bit można dla kontrolera wyłączyć (jeżeli bios na to pozwala) ograniczając automatycznie rezerwą do wspomnianego 1MB. pzdr
  15. Tak gwoli ścisłości panowie to siódemka nie zawiera domyślnie dx 9 natomiast zawiera dx 11 (wstecznie obsługujące też dziesiątkę). Dla samego MPC nie trzeba zresztą instalować całej paczki, wystarczy do katalogu z programem wrzucić D3DX9_43.dll, jeżeli natomiast będziesz chciał na tym systemie też zagrać to pełny zestaw się przyda (inna sprawa, że większość w miarę świeżych gier zainstaluje go sama w bonusie). Jeżeli zalezy ci na wydajności (i jakości) to polecam zamiast paczki k-lite czy innych takich multi-zestawów zainstalować ten pakiet: http://forum.doom9.o...ad.php?t=156191 Jest to bardzo dobrze zoptymalizowany pakiet pochodzący w całości od jednego programisty umiący wykorzystać nowoczesny sprzęt (łącznie z dekodowaniem sprzętowym na kartach nvidii). Zawiera własny splitter jak i kodeki audio i video rozpoznające większość formatów jakie można spotkać na co dzień. pzdr
  16. Nawiązując do tego co napisał @piotreek, NTFS nieźle nadaje się do penów dla których możemy (programowo czy sprzętowo) wyłączyć możliwość zapisu. Oczywiście zabezpieczony pen ma inną funkcjonalność niż przenoszenie danych, np. odpalanie narzędzi live lub portable (choć w tym przypadku wiele z nich będzie jednak chciało nośnika zapisywalnego). Manipulacje rejestrem zaś ograniczają się do systemu na którym są wprowadzane a zakładamy, że pen jest nośnikiem użytkowanym z więcej niż jednym komputerem. exFAT znów nie jest (na tą chwilę) kompatybilny z narzędziami typu syslinux (na marginesie właśnie ukazała się pierwsza wersja testowa obsługująca NNFS - 4.06) czy grub. pzdr
  17. Kolega @Punisher2010 chyba pisze książkę pod tytułem "Co głupiego może zrobić swojemu systemowi nierozgarnięty użytkownik". A na to pytanie jest bardzo prosta, ogólna odpowiedź, wyłączyć można te usługi które odpowiadają funkcjom przez ciebie nieużywanym i jednocześnie nie rzutujące na prawidłowość działania samego systemu. A że dla każdego będzie to inna lista, no cóż, ja nie używam drukarki więc nie potrzebuję bufora wydruku ale czy można jego wyłączenie rekomendować innym. I jeszcze inna kwestia, co z funkcjonalnościami uruchamianymi przez "harmonogram"? Też nie każdy potrzebuje pełną/domyślną listę. pzdr
  18. Osobiście sprawdzałem wg opisu: http://stilger.eu/20...a-napedzie-usb/ i działała tak jak działać powinna (instalacja i uruchamianie na usb2 trwa wieki). pzdr
  19. Takie instalacje sprowadzają się do przestawienia sterowników odpowiedzialnych za urządzenia massstorage USB oraz sterowników dla nich nadrzędnych w tryb startowania w momencie botowania systemu. Opisy dostępne na necie jak i wszelkie skrypty czy automatyzatory dla tego procesu przewidują przy tym, że mamy do czynienia ze standardowym kontrolerem dla którego sterowniki zawiera windows. Jeżeli dysk zostanie podłączony przez kontroler posiadający niezależne sterowniki producenta (np wszyskie obecne kontrolery USB3) to opisywane metody nie zadziałają, trzeba by również sterowniki dedytkowane przestawić tak aby były ładowane w fazie botowania (przy czym nie koniecznie muszą wspierać taką możliwość). pzdr
  20. Wiesiu, kwestia sprzętu (być może ucha), ja słyszę to wyraźnie w konfiguracji którą podałem (dopiszę, że w 24bit i 192KHz) ale np. na głośnikach już muszę się bardzo starać (ta sama karta i program > zestaw technicsa) i gdyby nie to, że mam świadomość występowania jakiegoś zakłócenia w takim przypadku bym to kompletnie zignorował. pzdr
  21. Ja osobiście słyszę wyraźne zakłócenia (choć nie nazwałbym tego trzaskami) w tym materiale. Odsłuch - Foobar przez ASIO na Xonar ST + słuchawki audiofilskie AudioTechnica ATH-AD900. Zakłócenia nie są regularne, na początku nagrania słyszę je w 1, 2 i 3 s. , następnie ok 5 i 6 i ostatnie ok 8 s. po czym nagranie wydaje się czyste już do końca. Charakterystyka zakłócenia jak dla mnie wskazuje na zakłócenie związane z zapisem/odczytem danych na dysku, postaraj się zaobserwować przy odsłuchu czy pojawia się ono dokładnie w tym samym momencie co zapalenie diody od dysku. Jeżeli tak to problem jest niezwykle trudny do wyeliminowania (podobny efekt występował kiedyś na chipsetach VIA z kartami Creatice serii Live), związany jest on z obciążeniem szyny przesyłu danych przez równoczesne żądanie od kilku urządzeń. Można próbować zmiany sterowników chipsetu (urządzeń massstorage), zmiany trybu pracy dysku (ahci<>raid<>sata) czy choćby przepięcia dysku na inny kanał sata. pzdr
  22. Muszę zgłosić głos odrębny do tego co napisał Wiesław w kwestii AHCI. Wokół tego zagadnienia istnieje wiele mitów i legend i najlepiej samemu sprawdzić jakie tak naprawdę zachowuje się nasza konfiguracja z i bez tej opcji. AHCI tak naprawdę uruchamia zaawansowane funkcjje samego kontrolera SATA z których najważniejsze są HotSwap i NCQ, o ile to pierwsze jest bezwzględnie przydatne np. dla dysków ESATA (choć sterowniki nie wspierają tego trybu w 64-bitowym systemie) o tyle NCQ w przypadku SSD może rzeczywiście zastanawiać ale (i tu cytat): Na podstawie powyższego można by założyć, że warto ten tryb włączać w ciemno ale nie jest tak do końca. Przede wszystkim jest to tryb wspierany - i owszem - przez bios natomiast obsługiwany de facto softwarowo, więc obciąża procesor, w nowoczesnym komputerze nie powinno być to problemem ale drugim istotnym czynnikiem jest jakość sterowników dla poszczególnych chipsetów, które czasami potrafią zabić nawet mocny procesor operacjami odczytu. Zgadzam się natomiast co do meritum tematu, w przypadku kolegi @Davidfox cała zabawa jest z praktycznego punktu widzenia bezsensowna, choć trudno odmówić jej aspektu poznawczego. @Davidfox - napisałeś: zasadniczo powinieneś zmienić wartości na 4. Ponadto iastor wyrzucić całkowicie, również z gałęzi HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\CriticalDeviceDatabase, prawdopodobnie będzie to wpis "pci#ven_8086&dev_2821&cc_0106". Rozumiem też, że same poprawki wprowadzasz w rejestrze podpiętym offline a nie w rejestrze systemu WinPe? pzdr
  23. Przy takich zabawach należy najpierw zrobić pieczętowanie z uogólnieniem (oczywiście bez rearma) no ale mądry po szkodzie. Jeżeli mimo uwag @picasso nadal chcesz próbować to po pierwsze zrób kopię całej partycji rozruchowej/systemowej (ghost, imagex, clonezille czy co tam masz pod ręką), przyda się jeżeli płyta wróci albo coś się nie uda. Po drugie wy-listuj w trybie offline (z poziomy winpe) sterowniki OEM: dism /image:c: /Get-Drivers /format:table gdzie c: jest partycją z windowsem i podaj rezultat na forum. pzdr
  24. maggreg

    Naprawa Raid 1

    Tylko gwoli wyjaśnienia ponieważ: Nie ma takiego zagadnienia, w przypadku mirroru (a nie musi on się składać tylko z dwóch dysków choć inne konfiguracje są raczej czysto teoretyczne) wszystkie dyski są równoważne, nie ma dysku nadrzędnego i podrzędnego czy też głównego i zapasowego, technicznie dane są równocześnie zapisywane na obu dyskach i w tym znaczeniu każdy dysk jest mirrorem wszystkich pozostałych dysków w macierzy i vice versa. W momencie kiedy taki raid się zdegraduje (jeden z dysków ulega uszkodzeniu bądź odpięciu) drugi dysk (w przypadku konfiguracji dwu-dyskowej) powinien przejść w tryb raid0 (choć jedno-dyskowy) i o ile jest sprawny funkcjonować, mirror nie wyklucza używania takiego zestawu do czasu wymiany uszkodzonego dysku, cierpi na tym tylko bezpieczeństwo danych, zastąpienie uszkodzonego dysku powinno odbudować macierz do stanu jaki mamy w momencie wymiany dysku a nie uszkodzenia poprzedniego. Jak się to dobywa zależy w tym przypadku od sterowników, pamiętajmy że oba opisywane tutaj kontrolery są tak naprawdę rozwiązaniami softwarowymi (określanymi też czasami jako fake raid) wspieranymi tylko przez bios a sam proces ich obsługi przejmują sterowniki (z wykorzystaniem procesora) a co za tym idzie wszelkie operacje "odbudowy" bywają uproszczone w stosunku do w pełni sprzętowych rozwiązań. Niezależnie jednak od tego każdy z dysków w macierzy powinien posiadać znacznik informujący, że był członkiem tej macierzy, również dysk który został zdegradowany powinien mieć odpowiednie oznaczenie. Jest logiczne, jeżeli dysk dołączany do macierzy zawiera jakiekolwiek dane to zostaną one nadpisane danymi z dysku który w momencie dodawania nowego członka był dyskiem "działającym", oprogramowanie nie zakłada, że na obu dyskach mogą znajdować się te same dane bo nie taka jest idea mirroru. Jeżeli natomiast komunikat informuje, że znikną dane ze wszystkich dysków (a nie "pozostałych"), oznacza to, że konfiguracja raid została całkiem wymazana i jest budowana od podstaw, i w tym przypadku jednak powinna być możliwość migracji z pojedynczego dysku w stronę mirroru bez utraty danych. pzdr
  25. Tylko tak pod rozwagę (abstrahując od kosmetycznego zabarwienia proponowanej zmiany) - czy uważacie, że osoby do których jest adresowany ten soft (czytaj: będą wiedziały jak go bezpiecznie używać) naprawdę potrzebują spolszczenia czy może ta podstawowa wiedza informatyczna implikuje również podstawową znajomość języka angielskiego wystarczającą w przypadku tego softu. ps. fajnie, że pod długiej przerwie soft jest znowu rozwijany. pzdr
×
×
  • Dodaj nową pozycję...