Làm cách nào để đặt tên máy chủ cho hệ thống Debian Jessie?


19

Debian Jessie đi kèm systemd. Đề xuất đặt tên máy chủ là sử dụng hostnamectl cho systemd. Tuy nhiên, lệnh này không hoạt động (thậm chí để hiển thị tên máy chủ hiện tại) trên hình ảnh Debian Jessie được khởi động trên EC2 :

sudo hostnamectl
sudo: unable to resolve host ip-172-30-0-17
Failed to create bus connection: No such file or directory

Vì vậy, tôi đã cố gắng tiếp tục với khuyến nghị của Debian tại đây .

echo "myhostname" > /etc/hostname
echo "127.0.0.1 myhostname" >> /etc/hosts
/etc/init.d/hostname.sh start
/etc/init.d/networking force-reload

Tuy nhiên, sau khi đăng xuất và đăng nhập lại, tên máy chủ không thay đổi. Tuy nhiên, nó thay đổi sau khi khởi động lại, nhưng đó không phải là mong muốn đối với tôi.

Phương pháp này được sử dụng để làm việc trong Debian Wheezy.

Bất kỳ trợ giúp để có được quyền này được đánh giá cao.


Câu trả lời:


33

Tìm thấy vấn đề. AMI cơ sở trên EC2 cho Debian Jessie, chưa cài đặt dbus. hostnamectl dường như cần dbus. Vì vậy, sửa chữa là:

apt-get update && apt-get install -y dbus

Và sau đó:

hostname=myname
echo "127.0.0.1      $hostname" >> /etc/hosts
hostnamectl set-hostname "$hostname"
echo "$hostname" > /etc/hostname # uneeded

Điều này đã làm việc.


3
Bắt tốt về sự phụ thuộc dbus. FYI: Tôi đã học cách cấu hình các hệ thống systemd và phát hiện ra rằng nó hostnamectl set-hostname myhostnametự động cập nhật nội dung của /etc/hostname(tên máy chủ tĩnh) để không cần echolệnh đầu tiên .
Anthony G - công lý cho Monica

Cũng cảnh báo về RAIN hiện tại, các mảng có thể được điều chỉnh quá không? root @ debian: ~ # rm / etc / ssh / ssh_host_ * root @ debian: ~ # dpkg-recfigure openssh-server Và có thể regen initrd nữa
rzr

1
@donatello Có vẻ như cũng timedatectlcó sự phụ thuộc tương tự vào dbus ... cảm ơn vì đã chia sẻ giải pháp của bạn!
Gergely Lukacsy

2

Để thay đổi hostanme của máy chủ EC2 của bạn, bạn phải làm theo các bước dưới đây:

  1. Đăng nhập bằng root:$: sudo su -
  2. Cài đặt dbus:$: apt-get update && apt-get install -y dbus
  3. Thiết lập tên máy chủ: hostnamectl set-hostname <HOSTNAME>

Đảm bảo thay đổi <HOSTNAME>với tên máy chủ bạn muốn đặt.


0

Chúng tôi thực sự không cần phải cài đặt bất kỳ gói nào, chúng tôi chỉ cần chỉnh sửa tệp theo phân phối của bạn từ danh sách dưới đây.

root@ServerOne:~# ls -l /etc/cloud/templates/
total 32
-rw-r--r-- 1 root root 1487 Nov 18  2015 chef_client.rb.tmpl
-rw-r--r-- 1 root root  941 May  3 23:37 hosts.debian.tmpl
-rw-r--r-- 1 root root  914 Nov 18  2015 hosts.freebsd.tmpl
-rw-r--r-- 1 root root  912 Nov 18  2015 hosts.redhat.tmpl
-rw-r--r-- 1 root root  866 Nov 18  2015 hosts.suse.tmpl
-rw-r--r-- 1 root root  812 Nov 18  2015 resolv.conf.tmpl
-rw-r--r-- 1 root root 1506 Nov 18  2015 sources.list.debian.tmpl
-rw-r--r-- 1 root root 2841 Nov 18  2015 sources.list.ubuntu.tmpl
root@ServerOne:~#

Chỉnh sửa dòng như bên dưới, (Đã nhận xét một dòng là dòng gốc), thay thế {{fqdn}} và {{hostname}} như bên dưới.

#127.0.1.1 {{fqdn}} {{hostname}}
127.0.1.1 ServerOne.opsplus.io ServerOne

Hoặc, đặt "Manage_etc_hosts:" thành false như bên dưới và bạn có thể tự do sửa đổi tập tin / etc / hosts vì nó sẽ dừng ghi đè tệp máy chủ.

root@ServerOne:~# cat /etc/cloud/cloud.cfg.d/01_debian_cloud.cfg
apt_preserve_sources_list: true
manage_etc_hosts: true
root@ServerOne:~#
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.