Люди недооценивают срок службы современной флэш-памяти, поскольку большинство (приличных) флэш-карт занимают сотни терабайт данных и по-прежнему работают. Как указано здесь, на Ask Different (хотя это не совсем ваша проблема), пройдет некоторое время, прежде чем вы начнете беспокоиться о сроке службы вашей SD-карты.
Чтобы процитировать пример, мой SanDisk 32GB Extreme прослужил около пяти или шести лет с ежедневным чтением-записью в общей сложности около 300 ГБ / день. Если вы посчитаете, что это 547,5 ТБ, прежде чем они наконец закончатся в начале этого месяца.
Я понимаю, что записываемый / читаемый файл является файлом подкачки, что означает постоянные изменения, но это не должно вас сильно беспокоить (люди с большим опытом в этой области, поправьте меня, если я ошибаюсь) .
Если вам интересно, действительно измерьте, сколько данных поступает и снимается с вашей карты в день в среднем. В большинстве случаев средняя SD-карта может занимать до или даже более 500 ТБ. Затем вы можете использовать эти значения, чтобы приблизительно получить представление о предполагаемом времени до разрядки SD-карты.
Я считаю, что это было главным виновником и нуждалось в изменении.
Это было так же просто, как загрузить систему с диска SATA и запустить:
# gdisk /dev/nvme0n1
x для экспертного меню
g для GUID нового диска
R для рандомизации
w для записи изменений на диск
y для подтверждения
UUID диска был изменен... Нет необходимости менять их оба, конечно.
# fdisk -l | grep -i identifier
Disk identifier: 989573D5-37E7-437A-B680-9410F7234A94
Disk identifier: 1207A335-32CA-4B6C-A508-29A0E85597C4
Опять же, чтобы изменить те, которые я использовал:
# gdisk /dev/nvme0n1
x для экспертного меню
c для UUID нового раздела
1 для первого раздела; повторите эти шаги для второго раздела
R для рандомизации
w для записи изменений на диск
y для подтверждения
Это было так же просто, как бежать:
# update-grub
# update-initramfs -u -k all
Параметры загрузки пришлось удалить и обновить.
Диск NVMe загружается нормально.
Я не использую chroot
для клонирования. Я использую обычный cat
или более удобный pv
для целей клонирования диска. Я сейчас что-то об этом читал. Я никогда не нуждался в этом, никогда. И я клонировал уже около сотни дисков.
Всякий раз, когда я хочу сделать точную копию, я делаю это на своем сервере SATA,но этот новый M.2 PCIe не совсем подключается к нему. Поэтому я немного уточнил. Это выходит за рамки этих вопросов и ответов.
Я слышал, что есть адаптеры, но мне они не нравятся, поэтому я использовал свой сервер в качестве посредника в локальной сети.
Я не люблю осложнений. Клонирование систем, будь то Linux или Windows, для меня довольно просто. Но в таком случае (переход с SATA на M.2 )был непростым делом.
Это потому, что на одном диске стоял Linux, а на втором — Windows. И я хотел, чтобы все было на месте, без переустановки -, без rsync
или чего-то еще, что можно использовать для копирования. Вместо этого я делаю клонирование точных копий.
Все, что вам нужно, это ваш мозг и gdisk
, который я обычно использую для исправления PMBR и тому подобных вещей, которые неизбежны с моими методами, но очень быстро решаются.
Этот случай был другим, хотя я много готовился. Например, делать резервные копии (1 :1 )и тому подобное. Это был мой персональный компьютер, и я хотел просто переключить системные диски :M.2 + Windows & SATA + Linux. Я хотел сделать наоборот.
Этот вопрос возник, когда мне нужно было убедиться, что новый диск Linux работает нормально, поскольку это моя основная операционная система...
На основании предоставленной информации трудно сказать, что именно происходит, ваше предположение о проблеме с UUID, скорее всего, верно.
Вот как я могу выполнить вашу задачу:
Для последнего пункта я рекомендую следующий метод:
mount --bind
/dev, /proc, /sys
в новый «корень». Например.mount --bind /dev /mnt/nvmeroot/dev
chroot /mnt/nvmeroot/ /bin/bash
blkid
, чтобы узнать UUID новых разделов, соответствующим образом обновите /etc/fstab. grub-install
update-grub or grub2-mkconfig
Если что-то не работает:
e
(редактировать )в grub и удалите аргументы загрузки Linux в качестве параметров quiet, splash, rhgb
, чтобы вы могли видеть сообщения об ошибках во время загрузки. Drive won't boot... after cloning, why?
У меня нет под рукой /etc/default/grub
, но я воспользуюсь строчкой из вашего скрипта bootinfo
# auto-mount of windows drive
#/dev/disk/by-uuid/9CDAC383DAC357E2 /mnt/9CDAC383DAC357E2 auto nosuid,nodev,nofail,x-gvfs-show,ro 0 0
так что ваш исходный диск имеет UUID любой
вы клонируете содержимое этого диска на новый диск или NVME. И содержимое grub на новом диске по-прежнему будет ссылаться на uuid независимо от , который был старым диском, а не текущим новым диском.
Этот новый диск не будет иметь тот же UUID, что и исходный, вы должны исправить везде, где он использовался, в основном /etc/default/grub
и за ним следует grub2-mkconfig
, а также исправить свой /etc/fstab
.
I believe the problem arises from both drives having the same disk UUID, am I right?
UUID = универсальный уникальный идентификатор. UUID должен быть другим.
Существует несколько способов монтирования диска... по -uuid, или по -id, или по -имени, или по -метке, или по -пути в верхней части моего голова. Я не знаю, все ли дистрибутивы Linux следуют этой модели, но если вы посмотрите в /dev/disk/
, вы должны увидеть подпапки
если вы делаете по -имени , то это просто вызывает диск из /dev/sda1
или /dev/sd??
, что не является уникальным, и я не рекомендую делать... если есть только когда-либо один диск присутствует, тогда он будет /dev/sda
и будет работать, но он не будет уникальным и не будет явным, поэтому со временем вы рискуете. И все может быть еще сложнее, если NVME отображается по-другому, как/dev/nvme????
с вашего fdisk:
Disk /dev/nvme0n1: 477 GiB, 512110190592 bytes, 1000215216 sectors
Disk identifier: 1207A335-32CA-4B6C-A508-29A0E85597C4
Device Start End Sectors Size Type
/dev/nvme0n1p1 2048 194559 192512 94M EFI System
/dev/nvme0n1p2 194560 488396799 488202240 232,8G Linux filesystem
/dev/disk/?
и найдите соответствующий идентификатор. /etc/fstab
на этом диске, чтобы использовать этот идентификатор, он будет иметь текст, ссылающийся на старый диск, потому что вы клонировали.