Как вы переименовываете группу томов, содержащую корневой том в LVM?

Я пробовал все различные варианты, предлагаемые Edit -> Paste Special (Ctrl + Shift + V), и тот, который работал лучше всего для меня, - это вариант вставки его как HTML. Таким образом, он сохранил все форматирование и цвета. Это была сложная таблица с 11 колонками и более 200 строк с ячейками разных размеров.

Все форматирование сохранено.

Если это имеет значение, я использую Libreoffice 4.2.6.2. В более ранних версиях он может отличаться.

Надеюсь, что это поможет.

1
задан 29 April 2016 в 22:06

2 ответа

После переименования вы должны отредактировать как /etc/fstab, так и /boot/grub/grub.cfg, чтобы обновить использование имени для любой ссылки на ваш корень и, возможно, также на ваши места подкачки. /etc/initramfs-tools/conf.d/resume тоже.

Итак, добавьте этот код:

sed -i "s/${vg}/${newvg}/g" /etc/initramfs-tools/conf.d/resume
0
ответ дан 23 May 2018 в 11:37
  • 1
    Мне не нужно было делать это на Ubuntu. «update-initramfs -c -k all» было достаточно. Какой дистрибутив вы используете, который показал эту потребность? У него нет средства update-initramfs? Я перезагружаюсь сразу после запуска скрипта, который включает это, что также может быть фактором в моих разных результатах. – flickerfly 3 August 2016 в 18:07

Вот исправленная версия, исправление на замену строки vg, а также печать обновленных файлов.

#!/bin/bash

# Must be run with root permissions
# sudo will be sufficient
if [ "$(id -u)" -ne 0 ]; then
   echo "This script must be run as root" 1>&2
   exit 1
fi

# Ask for new hostname $newhost
read newhostname -p "Enter new hostname: "
#oldhostname=$(cat /etc/hostname)

echo "Changing LVM names"
# ${var//-} syntax removes all dashes from the name simplifying the
# requirement to use a double-dash in some places to escape the dash
newvg=${newhostname//-}

# Find the volume group that root is in
vg=$(lvdisplay -C | awk '$1=="root" {print $2}')
echo "old vg name: " $vg
echo "new vg name: " $newvg
if [[ ${vg} == *"-"* ]]; then
    # has dashes in current name
    vgrename ${vg} ${newhostname//-}
    vg=${vg//-/--}
    sed -i "s/${vg}/${newvg}/g" /etc/fstab
    sed -i "s/${vg}/${newvg}/g" /boot/grub/grub.cfg
    sed -i "s/${vg}/${newvg}/g" /etc/initramfs-tools/conf.d/resume
else
    # no dashes in current name
    vgrename ${vg} ${newvg}
    sed -i "s/${vg}/${newvg}/g" /etc/fstab
    sed -i "s/${vg}/${newvg}/g" /boot/grub/grub.cfg
    sed -i "s/${vg}/${newvg}/g" /etc/initramfs-tools/conf.d/resume
fi

#check files
echo fstab update:
grep ${newvg} /etc/fstab

echo grub.cfg update:
grep ${newvg} /boot/grub/grub.cfg

echo resume update:
grep ${newvg} /etc/initramfs-tools/conf.d/resume

update-initramfs -c -k all
0
ответ дан 23 May 2018 в 11:37

Другие вопросы по тегам:

Похожие вопросы: