ping
не использует /etc/hostname
для разрешения сопоставления IP-имен, он использует службу имен(netns
)для выполнения этих преобразований. Кстати, /etc/hostname
является частью systemd :
.
$ rpm -qf /etc/hostname
systemd-219-42.el7_4.10.x86_64
Короткое имя, которое вы видите, sub
, исходит из вашего файла /etc/hosts
через службу имен. Если вы используете strace
, вы можете увидеть, как ping
находитsub
:
$ strace -s 2000 ping -c1 www.google.com |& grep /etc/host
open("/etc/host.conf", O_RDONLY|O_CLOEXEC) = 4
open("/etc/hosts", O_RDONLY|O_CLOEXEC) = 4
open("/etc/hosts", O_RDONLY|O_CLOEXEC) = 4
Таким образом, простой способ решить вашу проблему — указать имя вашего сервера так, как вы хотите ping
, чтобы оно отображалось в файле /etc/hosts
.
$ ping -c1 www.google.com
PING www.google.com (74.125.141.99) 56(84) bytes of data.
64 bytes from vl-in-f99.1e100.net (74.125.141.99): icmp_seq=1 ttl=63 time=109 ms
--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 109.903/109.903/109.903/0.000 ms
Now if we were to add that IP, 74.125.141.103, to your `/etc/hosts` file we could manipulate `ping` into showing whatever we want for it:
Добавьте это к/etc/hosts
:
74.125.141.99 blah.blah.com
Теперь повторите наш тест:
$ ping -c1 www.google.com
PING www.google.com (74.125.141.99) 56(84) bytes of data.
64 bytes from blah.blah.com (74.125.141.99): icmp_seq=1 ttl=63 time=109 ms
--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 109.886/109.886/109.886/0.000 ms
Имейте в виду, что порядок добавления хостов в /etc/hosts
может привести к тому, что имена будут отображаться так, как вы видели.
Например, если бы у нас было это в нашем/etc/hosts
:
74.125.141.99 blah blah.blah.com
ping
появится, как вы видите, с коротким именем:
$ ping -c1 www.google.com
PING www.google.com (74.125.141.99) 56(84) bytes of data.
64 bytes from blah (74.125.141.99): icmp_seq=1 ttl=63 time=108 ms
--- www.google.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 108.065/108.065/108.065/0.000 ms
О дополнительном GPT :да, проблема все еще существует, даже если новый диск еще не содержит существующий GPT, если только новый диск не имеет точно такого же размера, что и исходный диск, что маловероятно. Дополнительный GPT должен располагаться в конце диска, и если вы скопируете образ исходного диска в начало большего целевого диска, включая дополнительный GPT, он не окажется в конце диска..
Создание файла образа — это способ обойти проблему с разными размерами логических секторов. Вот еще одна идея :перед началом копирования заново создайте таблицу разделов на целевом устройстве с помощью fdisk или gdisk. Вам не нужно делать точную копию, достаточно сделать один раздел, который имеет тот же размер, что и раздел, который вы хотите скопировать, и расположение (начального сектора )на диске также не имеет значения. Затем вместо копирования всего диска просто скопируйте данные из исходного раздела в целевой раздел.
Например, предположим, что исходный диск — /dev/sda
, а раздел, который вы хотите скопировать, — /dev/sda1
. Если целевой диск в корпусе — /dev/sdb
, создайте таблицу разделов и раздел /dev/sdb1
того же размера, что и /dev/sda1
. Затем, вместо попытки копирования из /dev/sda
в /dev/sdb
, скопируйте вместо этого из /dev/sda1
в /dev/sdb1
.
Изменить :это решение устраняет проблему с дополнительным GPT, и вам не нужно иметь дело с файлом изображения. Однако потенциальная проблема с несоответствием размера логического сектора все еще существует. Структура таблицы разделов зависит от размера сектора. В случае несоответствия диск, разбитый на разделы в корпусе, не может быть использован при извлечении из корпуса, и наоборот. Вы можете разбить диск, находясь в корпусе, и копировать файлы в разделы (, включая вышеупомянутый файл образа ), но диск нельзя использовать вне корпуса без его повторного -разбиения на разделы.
Вы можете проверить размер сектора диска, используя sudo blkid /dev/XXX -o NAME,LOG-SEC
.