Автор Тема: Как сменить hostname?  (Прочитано 16017 раз)

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 360
  • Учиться .... Телепатами не рождаются, ими ....
Re: Как сменить hostname?
« Ответ #45 : 17.08.2016 23:13:46 »
Странно это ;-) но каких только программистов-извращенцев не бывает.

Оффлайн hasculdr

  • Участник
  • *
  • Сообщений: 682
Re: Как сменить hostname?
« Ответ #46 : 18.08.2016 01:20:28 »
Я насчет lo только предположил - у меня все тесты были на виртуалках, там везде hostid от lo был посчитан. Попробую альт поставить в виртуалку и проверю.

Оффлайн hasculdr

  • Участник
  • *
  • Сообщений: 682
Re: Как сменить hostname?
« Ответ #47 : 18.08.2016 02:49:40 »
Добился вычисления hostid по адресу локальной петли. Для этого нужно совпадение значений в файлах /etc/hosts и /etc/sysconfig/network. Т.е. в /etc/hosts строка 127.0.0.1 name.domain, и в /etc/sysconfig/network строка HOSTNAME=name.domain. Но образ один хрен не запускается).

Оффлайн hasculdr

  • Участник
  • *
  • Сообщений: 682
Re: Как сменить hostname?
« Ответ #48 : 19.08.2016 16:58:20 »
На alt-server-p7-i586 образ запустился даже с нулевым hostid.
Может быть на форуме есть понимающие в выводе strace?
$ strace ./i86bi_linux_l2-ipbasek9-ms.jan24-2013-B 34
execve("./i86bi_linux_l2-ipbasek9-ms.jan24-2013-B", ["./i86bi_linux_l2-ipbasek9-ms.jan"..., "34"], [/* 69 vars */]) = 0
strace: [ Process PID=1806 runs in 32 bit mode. ]
brk(NULL)                               = 0xc020000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xf7771000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=152866, ...}) = 0
mmap2(NULL, 152866, PROT_READ, MAP_PRIVATE, 3, 0) = 0xf774b000
close(3)                                = 0
open("/lib/libcrypto.so.4", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@\357\3\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=2062972, ...}) = 0
mmap2(NULL, 2078488, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xf754f000
mprotect(0xf7730000, 4096, PROT_NONE)   = 0
mmap2(0xf7731000, 94208, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1e1000) = 0xf7731000
mmap2(0xf7748000, 10008, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xf7748000
close(3)                                = 0
open("/lib/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\20O\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=135576, ...}) = 0
mmap2(NULL, 111168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xf7533000
mmap2(0xf754b000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0xf754b000
mmap2(0xf754d000, 4672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xf754d000
close(3)                                = 0
open("/lib/libm.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\360D\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=337460, ...}) = 0
mmap2(NULL, 340024, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xf74df000
mmap2(0xf7531000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x51000) = 0xf7531000
close(3)                                = 0
open("/lib/libgcc_s.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@\"\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=116292, ...}) = 0
mmap2(NULL, 119364, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xf74c1000                                                                                           
mmap2(0xf74dd000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b000) = 0xf74dd000                                                                     
close(3)                                = 0                                                                                                                                     
open("/lib/libc.so.6", O_RDONLY|O_CLOEXEC) = 3                                                                                                                                   
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0000\207\1\0004\0\0\0"..., 512) = 512                                                                                     
fstat64(3, {st_mode=S_IFREG|0755, st_size=1541792, ...}) = 0                                                                                                                     
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xf74c0000                                                                                           
mmap2(NULL, 1550844, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xf7345000                                                                                         
mprotect(0xf74b9000, 4096, PROT_NONE)   = 0                                                                                                                                     
mmap2(0xf74ba000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x174000) = 0xf74ba000                                                                   
mmap2(0xf74bd000, 10748, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xf74bd000                                                                         
close(3)                                = 0                                                                                                                                     
open("/lib/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3                                                                                                                                 
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0000\n\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=13836, ...}) = 0
mmap2(NULL, 16484, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xf7340000
mmap2(0xf7343000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0xf7343000
close(3)                                = 0
open("/lib/libz.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0p\32\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=99964, ...}) = 0
mmap2(NULL, 98564, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xf7327000
mmap2(0xf733e000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0xf733e000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xf7326000
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xf7325000
set_thread_area({entry_number:-1, base_addr:0xf7325700, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0 (entry_number:12)
mprotect(0xf74ba000, 8192, PROT_READ)   = 0
mprotect(0xf733e000, 4096, PROT_READ)   = 0
mprotect(0xf7343000, 4096, PROT_READ)   = 0
mprotect(0xf74dd000, 4096, PROT_READ)   = 0
mprotect(0xf7531000, 4096, PROT_READ)   = 0
mprotect(0xf754b000, 4096, PROT_READ)   = 0
mprotect(0xf7731000, 65536, PROT_READ)  = 0
mprotect(0xf7798000, 4096, PROT_READ)   = 0
munmap(0xf774b000, 152866)              = 0
set_tid_address(0xf7325768)             = 1806
set_robust_list(0xf7325770, 12)         = 0
rt_sigaction(SIGRTMIN, {0xf7537960, [], SA_SIGINFO}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0xf75379e0, [], SA_RESTART|SA_SIGINFO}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
ugetrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
uname({sysname="Linux", nodename="comp", ...}) = 0
fstat64(1, {st_mode=S_IFCHR|0600, st_rdev=makedev(136, 1), ...}) = 0
brk(NULL)                               = 0xc020000
brk(0xc041000)                          = 0xc041000
brk(NULL)                               = 0xc041000
write(1, "********************************"..., 64***************************************************************
) = 64
write(1, "IOS On Unix - Cisco Systems conf"..., 60IOS On Unix - Cisco Systems confidential, internal use only
) = 60
stat64("/home/hasculdr/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\270/iourc", {st_mode=S_IFREG|0666, st_size=35, ...}) = 0
open("/home/hasculdr/\320\227\320\260\320\263\321\200\321\203\320\267\320\272\320\270/iourc", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0666, st_size=35, ...}) = 0
read(3, "[license]\ncomp = ae90ef5c0697d4d"..., 4096) = 35
read(3, "", 4096)                       = 0
close(3)                                = 0
stat64("/home/hasculdr/.iourc", {st_mode=S_IFREG|0666, st_size=35, ...}) = 0
open("/home/hasculdr/.iourc", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0666, st_size=35, ...}) = 0
read(3, "[license]\ncomp = ae90ef5c0697d4d"..., 4096) = 35
read(3, "", 4096)                       = 0
close(3)                                = 0
uname({sysname="Linux", nodename="comp", ...}) = 0
open("/etc/hostid", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
uname({sysname="Linux", nodename="comp", ...}) = 0
open("/etc/resolv.conf", O_RDONLY|O_CLOEXEC) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=128, ...}) = 0
read(3, "# Generated by resolvconf\n# Do n"..., 4096) = 128
read(3, "", 4096)                       = 0
close(3)                                = 0
uname({sysname="Linux", nodename="comp", ...}) = 0
socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3
connect(3, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
close(3)                                = 0
socket(AF_UNIX, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3
connect(3, {sa_family=AF_UNIX, sun_path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
close(3)                                = 0
open("/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=1880, ...}) = 0
read(3, "#\n# Please refer to nsswitch.con"..., 4096) = 1880
read(3, "", 4096)                       = 0
close(3)                                = 0
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=152866, ...}) = 0
mmap2(NULL, 152866, PROT_READ, MAP_PRIVATE, 3, 0) = 0xf774b000
close(3)                                = 0
open("/lib/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@\32\0\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=46720, ...}) = 0
mmap2(NULL, 74564, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xf7312000
mmap2(0xf731d000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa000) = 0xf731d000
mmap2(0xf731f000, 21316, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xf731f000
close(3)                                = 0
mprotect(0xf731d000, 4096, PROT_READ)   = 0
munmap(0xf774b000, 152866)              = 0
open("/etc/host.conf", O_RDONLY|O_CLOEXEC) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=26, ...}) = 0
read(3, "order hosts,bind\nmulti on\n", 4096) = 26
read(3, "", 4096)                       = 0
close(3)                                = 0
futex(0xf74bef04, FUTEX_WAKE_PRIVATE, 2147483647) = 0
open("/etc/hosts", O_RDONLY|O_CLOEXEC)  = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=83, ...}) = 0
read(3, "127.0.0.1\tlocalhost.localdomain "..., 4096) = 83
read(3, "", 4096)                       = 0
close(3)                                = 0
uname({sysname="Linux", nodename="comp", ...}) = 0
write(2, "\nIOU License Error: host not fou"..., 49
IOU License Error: host not found in iourc file
) = 49
open("/etc/hostid", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
uname({sysname="Linux", nodename="comp", ...}) = 0
stat64("/etc/resolv.conf", {st_mode=S_IFREG|0644, st_size=128, ...}) = 0
open("/etc/resolv.conf", O_RDONLY|O_CLOEXEC) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=128, ...}) = 0
read(3, "# Generated by resolvconf\n# Do n"..., 4096) = 128
read(3, "", 4096)                       = 0
close(3)                                = 0
uname({sysname="Linux", nodename="comp", ...}) = 0
open("/etc/hosts", O_RDONLY|O_CLOEXEC)  = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=83, ...}) = 0
read(3, "127.0.0.1\tlocalhost.localdomain "..., 4096) = 83
read(3, "", 4096)                       = 0
close(3)                                = 0
write(2, "License for key 7f02b0 required "..., 326License for key 7f02b0 required on host "comp".
Obtain a license for this key and host from the following location:

http://wwwin-enged.cisco.com/ios/iou/license/index.html

Place in your iourc file as follows (see also the web page
for further details on iourc file format and location)

[license]
comp = <16 char license>;
) = 326
setitimer(ITIMER_REAL, {it_interval={0, 0}, it_value={0, 0}}, NULL) = 0
rt_sigprocmask(SIG_BLOCK, [], NULL, 8)  = 0
write(1, "\r\n", 2
)                     = 2
exit_group(0)                           = ?
+++ exited with 0 +++
« Последнее редактирование: 19.08.2016 17:05:42 от hasculdr »

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 182
  • antohami@
Re: Как сменить hostname?
« Ответ #49 : 20.08.2016 08:19:43 »
Это категорически неправильно. Вам повезло. Но в общем случае линк so.X -> so.Y не работает. Soname у библиотеки меняется не просто так.
libcrypto.so.4 -- это что очень старое. В Альте этот пакет можно взять только из пятой ветки: https://packages.altlinux.org/ru/Platform5/srpms/openssl097

Ок. Я собрал под Сизиф openssl097, отключив все субпакеты, кроме libssl4, за ненадобностью оных. Тестовое задание 168704

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 182
  • antohami@
Re: Как сменить hostname?
« Ответ #50 : 20.08.2016 12:42:19 »
На alt-server-p7-i586 образ запустился даже с нулевым hostid.

На p7 работает в любом случае, на p8 и Сизифе не работает. Systemd не при чём, как выяснилось.

Оффлайн hasculdr

  • Участник
  • *
  • Сообщений: 682
Re: Как сменить hostname?
« Ответ #51 : 21.08.2016 00:34:26 »
С p7 strace пока не получается сделать, но по имеющемуся образ вроде лезет в /etc/resolv.conf, nscd.socket и nsswitch.conf.

Оффлайн hasculdr

  • Участник
  • *
  • Сообщений: 682
Re: Как сменить hostname?
« Ответ #52 : 22.08.2016 13:05:36 »
Ок. Я собрал под Сизиф openssl097, отключив все субпакеты, кроме libssl4, за ненадобностью оных. Тестовое задание 168704
Устанавливается 64-разрядная версия, образ не находит ее и ругается:
# ./i86bi_linux-adventerprisek9-ms.152-2.15.T 22
./i86bi_linux-adventerprisek9-ms.152-2.15.T: error while loading shared libraries: libcrypto.so.4: cannot open shared object file: No such file or directory

Кстати, в убунтах и дебианах (разработчики gns3 вроде как собирают свой софт под эти дистры) делается симлинк на libcrypto.so.1.0.2g.
« Последнее редактирование: 22.08.2016 13:16:19 от hasculdr »

Оффлайн ruslandh

  • Поспешай не торопясь !
  • Модератор глобальный
  • *****
  • Сообщений: 32 360
  • Учиться .... Телепатами не рождаются, ими ....
Re: Как сменить hostname?
« Ответ #53 : 22.08.2016 13:44:25 »
Сделайте скрипт, который вызывает
LD_PRELOAD=...путь_до_libcrypto.so.4
запуск вашей прграммы
https://habrahabr.ru/post/199090/

Оффлайн andrew_b

  • Участник
  • *
  • Сообщений: 553
Re: Как сменить hostname?
« Ответ #54 : 22.08.2016 14:28:54 »
Устанавливается 64-разрядная версия, образ не находит ее и ругается:
# ./i86bi_linux-adventerprisek9-ms.152-2.15.T 22
./i86bi_linux-adventerprisek9-ms.152-2.15.T: error while loading shared libraries: libcrypto.so.4: cannot open shared object file: No such file or directory
Если образ 32-разрядный (а судя по имени файла это так и есть), надо доустановить 32-разрядную версию библиотеки. Имя пакета начинается с i586-.

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 182
  • antohami@
Re: Как сменить hostname?
« Ответ #55 : 22.08.2016 15:15:07 »
Устанавливается 64-разрядная версия, образ не находит ее и ругается:

Вы видимо делаете apt-repo test, а в данной ситуации нужно делать:
apt-repo add task 168704
apt-get update
apt-get install i586-libssl4

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 20 152
    • Домашняя страница
Re: Как сменить hostname?
« Ответ #56 : 22.08.2016 15:25:52 »
Устанавливается 64-разрядная версия, образ не находит ее и ругается:

Вы видимо делаете apt-repo test, а в данной ситуации нужно делать:
apt-repo add task 168704
apt-get update
apt-get install i586-libssl4
Это можно заменить в последнем apt-repo одной командой:
apt-repo test 168704 i586-libssl4(естественно, только на 64-битных системах)
Андрей Черепанов (cas@)