Lista pecet@man.lodz.pl
[Lista archiwów] [Inne Listy]

Re: [PECET] Odświeżanie SSD

To: pecet@man.lodz.pl
Subject: Re: [PECET] Odświeżanie SSD
From: pueblo <nomail@nomail.pl>
Date: Fri, 27 Jan 2023 19:58:11 +0100
W dniu 2023-01-26 o 01:53, Marcin Debowski pisze:
On 2023-01-25, pueblo <nomail@nomail.pl> wrote:


Już wcześniej sam pomyślałem o takim rzeźbieniu jakie proponujesz, ale miałem i mam obawy, czy nie pominę jakiejś informacji i zmieni się sygnatura dysku, jakieś id, czy guid partycji - i się zrobi kaszana, windows zdeaktywuje itp. No nie jestem biegły w tych niuansach dyskowych.

Ale spróbuję, tylko z pewną modyfikacją.

Tak to wygląda teraz
fdisk -l

Disk /dev/sda: 238.49 GiB, 256060514304 bytes, 500118192 sectors
Disk model: PLEXTOR PX-256M8
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt


Device         Start       End   Sectors   Size Type
/dev/sda1       2048    206847    204800   100M EFI System
/dev/sda2     206848    239615     32768    16M Microsoft reserved
/dev/sda3     239616 499074452 498834837 237.9G Microsoft basic data
/dev/sda4  499075072 500115455   1040384   508M Windows recovery environment


Wtedy weź sobie:

1) skurcz tę partycję z ntfs pod windows (pod Linuksem tez można, ale
tak będzie najprościej);

2) zrób jej kopie pod Linkuksem (np. dd, ale obraz samej partycji, nie
całego dysku);

3) zapisz sobie wszystkie ustawienia z gpt co by móc odtworzyć - nie mam
doświadczenia z gpt, ale zakładam, że ręcznie odtworzenie wystarczy (pod
linuksem zapisz sobie wynik sudo fdisk -l);


Tu bym zrobił tak, że zmniejszę na maksa sda3 i przesunę do niej sda4
A potem tak
dd if=/dev/sda of=Kopia.backup count=??
I tu mam małe niewiadome
Czy w count wpisać po prostu ostatni sector sda4 jaki mi pokaże fdisk -l(oczywiście po zmniejszeniu i przesunięciu partycji j.w.) Pytam, czy dd liczy tak samo sektory, jak fdisk? Nie chciałbym się przekonać, że dla jednego to są logiczne, a dla drugiego fizyczne.
Opcja bs w dd.
Domyślnie jest to 512, więc taka powinna zostać? W tym przypadku sektor fizyczny jest taki sam jak logiczny, ale co by było gdyby dysk miał sektory fizyczne 4096 - trzeba by ustawiać bs=4096?

4) zrób blkdiscard na całym dysku, z opcją -s (secure) jeśli dysk
obsługuje;

Jak już się bawić to na całego. Zrobię jeszcze Ata secure erase przez hdparm, tylko nie wiem co pierwsze - to, czy blkdiscard?

5) odtwórz ręcznie strukturę partycji gpt (sfdisk lub inny pozwalający
dokładnie definiować granice etc.) - robienie tego ręcznie będzie miało
taką zaletę, że zostaną zapisane tylko te sektory które są niezbędne;


No i tu jest mały problem, bo gpt ma zapasową kopię w ostatnich 34 sektorach dysku, które nie zostaną uwzględnione w pliku obrazu. Dd chyba nie umie skopiować do obrazu zakresu sektorów niestartującego od 0? Gdyby mógł, to bym zrobił po prostu kopię tych kilkudziesięciu ostatnich sektorów dysku. Nie wiem, co się stanie, jak przywrócę partycje z pliku obrazu. Czy kopia GPT się sama odtworzy, jeśli jej nie będzie? Może uda mi się czegoś nie spaprać i skopiuje wcześniej te ostatnie sektory jakimś edytorem i je przywrócę osobno, żeby były identycznie jak wcześniej.
6) przebutuj, bo czasami tablice partycje dla dysku nie są aktualizowane
w jądrze;

7) przekopiuj obraz ntfs z powrotem na dysk;

Czyli zrobiłbym to tak:
dd if=Kopia.backup of=/dev/sda  count=X(taki sam jak przy tworzeniu obrazu)
Będzie dobrze?

W mojej modyfikacji twojego przepisu zakładam, że nie ma różnicy w sposobie zapisu przywracanego obrazu w obu przypadkach - czyli z backupu partycji przez dd i backupu takiego jak sobie wymyśliłem, czyli od sektora A do B.(więcej niż jedna partycja) Rozmiarowo będzie to mniej niż 1GB więcej do backup/restore. Zostanie mi tylko przesunąć sda4 i rozszerzyć sda3 identycznie, jak było na samym początku

8) i teraz trzeba ztrimować dysk pod tym ntfs. Niby fstrim to robi, ale jak
sprawdzam u siebie to zawsze uwalnia tyle samo więc coś wydaje się być
nie tak.

Czyli co - nie użyć wtedy fstrim pod mintem?

<Pop. w Wątku] Aktualny Wątek [Nast. w Wątku>