How do I rename a Linux host without needing to reboot for the rename to take effect?Redhat doesn't set my desired hostname on reboothostname -f says “hostname: the specified hostname is invalid”. Guess why?Trouble changing hostname on a Rightscale provisioned CentOS instanceHow do I change HOSTNAME on an Ubuntu server?Setting the hostname: FQDN or short name?EC2 hostname ubuntu and ejabberdOk to rename live windows 2008 server without rebooting?changing the hostname doesn't map the local ip to hostnamehostname doesn't persist after reboot in CentOS 7 instanceChanging hostname on ubuntu-server (VPS) - recommended or not?
Professor falsely accusing me of cheating in a class he does not teach, two months after end of the class. What precautions should I take?
Can I intentionally omit previous work experience or pretend it doesn't exist when applying for jobs?
Should you avoid redundant information after dialogue?
I quit, and boss offered me 3 month "grace period" where I could still come back
Why do they not say "The Baby"
Is `curl something | sudo bash -` a reasonably safe installation method?
How do I write a romance that doesn't look obvious
Does Google Maps take into account hills/inclines for route times?
Ways to express "The reader may wish to..." / "The reader may want to..."
Modeling, view and projection transformation using vector and point in homogenous form
Are there any double stars that I can actually see orbit each other?
What is temperature on a quantum level?
Why is the total number of hard disk sectors shown in fdisk not the same as theoretical calculation?
What is the German equivalent of 干物女 (dried fish woman)?
Is killing off one of my queer characters homophobic?
Mistakenly modified `/bin/sh'
What does "Fotze" really mean?
How does one stock fund's charge of 1% more in operating expenses than another fund lower expected returns by 10%?
Missing Contours in ContourPlot
What are some symbols representing peasants/oppressed persons fighting back?
Can a continent naturally split into two distant parts within a week?
How can an advanced civilization forget how to manufacture its technology?
What is this welding tool I found in my attic?
Why does the autopilot disengage even when it does not receive pilot input?
How do I rename a Linux host without needing to reboot for the rename to take effect?
Redhat doesn't set my desired hostname on reboothostname -f says “hostname: the specified hostname is invalid”. Guess why?Trouble changing hostname on a Rightscale provisioned CentOS instanceHow do I change HOSTNAME on an Ubuntu server?Setting the hostname: FQDN or short name?EC2 hostname ubuntu and ejabberdOk to rename live windows 2008 server without rebooting?changing the hostname doesn't map the local ip to hostnamehostname doesn't persist after reboot in CentOS 7 instanceChanging hostname on ubuntu-server (VPS) - recommended or not?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
I searched for an answer to this question on serverfault and could not find it. I know it is possible, but I can't remember how to do it. How do I change a Linux host's hostname and get that change to take effect without a reboot?
I am using Ubuntu 16 and Ubuntu 18.
A big feature of Ubuntu is the graphical desktop and graphical system utilities. However, we are running Ubuntu in our production environment so we chose not to use the graphical desktop or utilities in order not to have those features consume resources we need in our production environment.
I know that to rename the host, I edit the files:
/etc/hostname
/etc/hosts
In the /etc/hostname
one just replaces the current hostname (soon to be former hostname) with the new hostname.
Ubuntu in the /etc/hosts
file has the line:
127.0.1.1 your-hostname your-hostname
It acts as bootstrapping while your host is booting up and establishing itself within your network. Prior to changing the hostname, your-hostname
is the current (soon to be former hostname) and as a part of changing your host's hostname, one replaces that name with the new name.
What I am familiar with is executing the above two steps and then rebooting your host. But plenty of times, like with a production server, one would like to execute that rename, but not reboot one's host.
How can I change hostname on a host and get that change to take effect without rebooting the host?
linux ubuntu hostname
add a comment |
I searched for an answer to this question on serverfault and could not find it. I know it is possible, but I can't remember how to do it. How do I change a Linux host's hostname and get that change to take effect without a reboot?
I am using Ubuntu 16 and Ubuntu 18.
A big feature of Ubuntu is the graphical desktop and graphical system utilities. However, we are running Ubuntu in our production environment so we chose not to use the graphical desktop or utilities in order not to have those features consume resources we need in our production environment.
I know that to rename the host, I edit the files:
/etc/hostname
/etc/hosts
In the /etc/hostname
one just replaces the current hostname (soon to be former hostname) with the new hostname.
Ubuntu in the /etc/hosts
file has the line:
127.0.1.1 your-hostname your-hostname
It acts as bootstrapping while your host is booting up and establishing itself within your network. Prior to changing the hostname, your-hostname
is the current (soon to be former hostname) and as a part of changing your host's hostname, one replaces that name with the new name.
What I am familiar with is executing the above two steps and then rebooting your host. But plenty of times, like with a production server, one would like to execute that rename, but not reboot one's host.
How can I change hostname on a host and get that change to take effect without rebooting the host?
linux ubuntu hostname
1
There's no such thing as "Ubuntu 16" and "Ubuntu 18", there can be as big differences between 16.04 and 16.10 as there are between 16.10 and 17.04.
– pipe
Mar 27 at 8:35
add a comment |
I searched for an answer to this question on serverfault and could not find it. I know it is possible, but I can't remember how to do it. How do I change a Linux host's hostname and get that change to take effect without a reboot?
I am using Ubuntu 16 and Ubuntu 18.
A big feature of Ubuntu is the graphical desktop and graphical system utilities. However, we are running Ubuntu in our production environment so we chose not to use the graphical desktop or utilities in order not to have those features consume resources we need in our production environment.
I know that to rename the host, I edit the files:
/etc/hostname
/etc/hosts
In the /etc/hostname
one just replaces the current hostname (soon to be former hostname) with the new hostname.
Ubuntu in the /etc/hosts
file has the line:
127.0.1.1 your-hostname your-hostname
It acts as bootstrapping while your host is booting up and establishing itself within your network. Prior to changing the hostname, your-hostname
is the current (soon to be former hostname) and as a part of changing your host's hostname, one replaces that name with the new name.
What I am familiar with is executing the above two steps and then rebooting your host. But plenty of times, like with a production server, one would like to execute that rename, but not reboot one's host.
How can I change hostname on a host and get that change to take effect without rebooting the host?
linux ubuntu hostname
I searched for an answer to this question on serverfault and could not find it. I know it is possible, but I can't remember how to do it. How do I change a Linux host's hostname and get that change to take effect without a reboot?
I am using Ubuntu 16 and Ubuntu 18.
A big feature of Ubuntu is the graphical desktop and graphical system utilities. However, we are running Ubuntu in our production environment so we chose not to use the graphical desktop or utilities in order not to have those features consume resources we need in our production environment.
I know that to rename the host, I edit the files:
/etc/hostname
/etc/hosts
In the /etc/hostname
one just replaces the current hostname (soon to be former hostname) with the new hostname.
Ubuntu in the /etc/hosts
file has the line:
127.0.1.1 your-hostname your-hostname
It acts as bootstrapping while your host is booting up and establishing itself within your network. Prior to changing the hostname, your-hostname
is the current (soon to be former hostname) and as a part of changing your host's hostname, one replaces that name with the new name.
What I am familiar with is executing the above two steps and then rebooting your host. But plenty of times, like with a production server, one would like to execute that rename, but not reboot one's host.
How can I change hostname on a host and get that change to take effect without rebooting the host?
linux ubuntu hostname
linux ubuntu hostname
edited Mar 28 at 22:20
Paul Gear
3,12411 silver badges34 bronze badges
3,12411 silver badges34 bronze badges
asked Mar 26 at 1:36
Peter Jirak EldritchPeter Jirak Eldritch
1492 silver badges5 bronze badges
1492 silver badges5 bronze badges
1
There's no such thing as "Ubuntu 16" and "Ubuntu 18", there can be as big differences between 16.04 and 16.10 as there are between 16.10 and 17.04.
– pipe
Mar 27 at 8:35
add a comment |
1
There's no such thing as "Ubuntu 16" and "Ubuntu 18", there can be as big differences between 16.04 and 16.10 as there are between 16.10 and 17.04.
– pipe
Mar 27 at 8:35
1
1
There's no such thing as "Ubuntu 16" and "Ubuntu 18", there can be as big differences between 16.04 and 16.10 as there are between 16.10 and 17.04.
– pipe
Mar 27 at 8:35
There's no such thing as "Ubuntu 16" and "Ubuntu 18", there can be as big differences between 16.04 and 16.10 as there are between 16.10 and 17.04.
– pipe
Mar 27 at 8:35
add a comment |
2 Answers
2
active
oldest
votes
You can change the kernel's idea of the hostname on a systemd-based system using the hostnamectl
tool. For example:
hostnamectl set-hostname whatever
You can view the system's current idea of the hostname with:
hostnamectl # equivalent to hostnamectl status
Keep in mind that this does not change a running process's idea of the hostname. Such a process would have to check the hostname again in order to be updated, and almost no process does. Thus such a process would need to be restarted. In order for every process to begin using the new hostname, they must be restarted. It's generally easier to just reboot the system than to restart every service individually.
1
Do I need to restart networking on my server if I do not wish to reboot it after the rename? I found this:sudo /etc/init.d/network restart
Aside from that, restarting networking on my server via that command your point about restarting any running process that needs to know the server's name is valid. Agreed that restarting the host would fix that. That said, there are times that I really want to rename a host, but really do not want to reboot it. Any opinion aboutsudo /etc/init.d/network restart
and its usefulness in getting the new hostname to take effect wout reboot?
– Peter Jirak Eldritch
Mar 26 at 8:51
3
@PeterJirak: Completely useless. If those programs (which need to know the hostname) didn't bother to watch for hostname updates before, then they won't bother now. Telling the system to reconfigure IP addresses on eth0 won't affect that even a little bit.
– grawity
Mar 26 at 12:14
@PeterJirak What do you mean by "getting the new hostname to take effect"? As previously discussed, it takes effect immediately, and any newly started process will be aware of it. I also don't understand why you're asking about restarting the network? What does that have to do with the hostname?
– Michael Hampton♦
Mar 26 at 17:35
5
It's a common misconception that the entirety of "networking" is a userspace service that can be restarted, just because there's an /etc/init.d script named like that.
– grawity
Mar 26 at 18:37
2
@PeterJirak As a side note, running services in/etc/init.d
is the wrong way on systemd systems. It is just there for backward compatibility to the old System V.
– rexkogitans
Mar 27 at 5:45
|
show 1 more comment
You can change the in-kernel hostname using:
hostname NEWNAME
On Linux this is practically equal to either of the following:
sysctl kernel.hostname=NEWNAME
echo NEWNAME > /proc/sys/kernel/hostname
This does not depend on systemd (unlike hostnamectl which requires systemd-hostnamed) or any other non-standard tools, and often (especially in shellscript-init systems) is how the initial hostname was set in the first place.
Most programs and services don't actually use the hostname; the few which do (e.g. Postfix or services using Kerberos) can be restarted one-by-one.
(Some programs cache the hostname until restart, others query it every time they need it. Programs also have the ability to poll(2) /proc/sys/kernel/hostname to receive change notifications, but few do.)
2
Keep in mind that these methods are not persistent and will not survive a reboot.
– Michael Hampton♦
Mar 27 at 14:19
3
Fortunately, OP has already covered persistence in their question itself.
– grawity
Mar 27 at 14:26
1
postfix may have the host name hard coded in one or two places in/etc/postfix/main.cf
and/etc/mailname
, so those will need to be edited, too.
– Mark Plotnick
Mar 27 at 17:18
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "2"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f959952%2fhow-do-i-rename-a-linux-host-without-needing-to-reboot-for-the-rename-to-take-ef%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
You can change the kernel's idea of the hostname on a systemd-based system using the hostnamectl
tool. For example:
hostnamectl set-hostname whatever
You can view the system's current idea of the hostname with:
hostnamectl # equivalent to hostnamectl status
Keep in mind that this does not change a running process's idea of the hostname. Such a process would have to check the hostname again in order to be updated, and almost no process does. Thus such a process would need to be restarted. In order for every process to begin using the new hostname, they must be restarted. It's generally easier to just reboot the system than to restart every service individually.
1
Do I need to restart networking on my server if I do not wish to reboot it after the rename? I found this:sudo /etc/init.d/network restart
Aside from that, restarting networking on my server via that command your point about restarting any running process that needs to know the server's name is valid. Agreed that restarting the host would fix that. That said, there are times that I really want to rename a host, but really do not want to reboot it. Any opinion aboutsudo /etc/init.d/network restart
and its usefulness in getting the new hostname to take effect wout reboot?
– Peter Jirak Eldritch
Mar 26 at 8:51
3
@PeterJirak: Completely useless. If those programs (which need to know the hostname) didn't bother to watch for hostname updates before, then they won't bother now. Telling the system to reconfigure IP addresses on eth0 won't affect that even a little bit.
– grawity
Mar 26 at 12:14
@PeterJirak What do you mean by "getting the new hostname to take effect"? As previously discussed, it takes effect immediately, and any newly started process will be aware of it. I also don't understand why you're asking about restarting the network? What does that have to do with the hostname?
– Michael Hampton♦
Mar 26 at 17:35
5
It's a common misconception that the entirety of "networking" is a userspace service that can be restarted, just because there's an /etc/init.d script named like that.
– grawity
Mar 26 at 18:37
2
@PeterJirak As a side note, running services in/etc/init.d
is the wrong way on systemd systems. It is just there for backward compatibility to the old System V.
– rexkogitans
Mar 27 at 5:45
|
show 1 more comment
You can change the kernel's idea of the hostname on a systemd-based system using the hostnamectl
tool. For example:
hostnamectl set-hostname whatever
You can view the system's current idea of the hostname with:
hostnamectl # equivalent to hostnamectl status
Keep in mind that this does not change a running process's idea of the hostname. Such a process would have to check the hostname again in order to be updated, and almost no process does. Thus such a process would need to be restarted. In order for every process to begin using the new hostname, they must be restarted. It's generally easier to just reboot the system than to restart every service individually.
1
Do I need to restart networking on my server if I do not wish to reboot it after the rename? I found this:sudo /etc/init.d/network restart
Aside from that, restarting networking on my server via that command your point about restarting any running process that needs to know the server's name is valid. Agreed that restarting the host would fix that. That said, there are times that I really want to rename a host, but really do not want to reboot it. Any opinion aboutsudo /etc/init.d/network restart
and its usefulness in getting the new hostname to take effect wout reboot?
– Peter Jirak Eldritch
Mar 26 at 8:51
3
@PeterJirak: Completely useless. If those programs (which need to know the hostname) didn't bother to watch for hostname updates before, then they won't bother now. Telling the system to reconfigure IP addresses on eth0 won't affect that even a little bit.
– grawity
Mar 26 at 12:14
@PeterJirak What do you mean by "getting the new hostname to take effect"? As previously discussed, it takes effect immediately, and any newly started process will be aware of it. I also don't understand why you're asking about restarting the network? What does that have to do with the hostname?
– Michael Hampton♦
Mar 26 at 17:35
5
It's a common misconception that the entirety of "networking" is a userspace service that can be restarted, just because there's an /etc/init.d script named like that.
– grawity
Mar 26 at 18:37
2
@PeterJirak As a side note, running services in/etc/init.d
is the wrong way on systemd systems. It is just there for backward compatibility to the old System V.
– rexkogitans
Mar 27 at 5:45
|
show 1 more comment
You can change the kernel's idea of the hostname on a systemd-based system using the hostnamectl
tool. For example:
hostnamectl set-hostname whatever
You can view the system's current idea of the hostname with:
hostnamectl # equivalent to hostnamectl status
Keep in mind that this does not change a running process's idea of the hostname. Such a process would have to check the hostname again in order to be updated, and almost no process does. Thus such a process would need to be restarted. In order for every process to begin using the new hostname, they must be restarted. It's generally easier to just reboot the system than to restart every service individually.
You can change the kernel's idea of the hostname on a systemd-based system using the hostnamectl
tool. For example:
hostnamectl set-hostname whatever
You can view the system's current idea of the hostname with:
hostnamectl # equivalent to hostnamectl status
Keep in mind that this does not change a running process's idea of the hostname. Such a process would have to check the hostname again in order to be updated, and almost no process does. Thus such a process would need to be restarted. In order for every process to begin using the new hostname, they must be restarted. It's generally easier to just reboot the system than to restart every service individually.
edited Mar 26 at 18:43
answered Mar 26 at 2:54
Michael Hampton♦Michael Hampton
181k28 gold badges342 silver badges672 bronze badges
181k28 gold badges342 silver badges672 bronze badges
1
Do I need to restart networking on my server if I do not wish to reboot it after the rename? I found this:sudo /etc/init.d/network restart
Aside from that, restarting networking on my server via that command your point about restarting any running process that needs to know the server's name is valid. Agreed that restarting the host would fix that. That said, there are times that I really want to rename a host, but really do not want to reboot it. Any opinion aboutsudo /etc/init.d/network restart
and its usefulness in getting the new hostname to take effect wout reboot?
– Peter Jirak Eldritch
Mar 26 at 8:51
3
@PeterJirak: Completely useless. If those programs (which need to know the hostname) didn't bother to watch for hostname updates before, then they won't bother now. Telling the system to reconfigure IP addresses on eth0 won't affect that even a little bit.
– grawity
Mar 26 at 12:14
@PeterJirak What do you mean by "getting the new hostname to take effect"? As previously discussed, it takes effect immediately, and any newly started process will be aware of it. I also don't understand why you're asking about restarting the network? What does that have to do with the hostname?
– Michael Hampton♦
Mar 26 at 17:35
5
It's a common misconception that the entirety of "networking" is a userspace service that can be restarted, just because there's an /etc/init.d script named like that.
– grawity
Mar 26 at 18:37
2
@PeterJirak As a side note, running services in/etc/init.d
is the wrong way on systemd systems. It is just there for backward compatibility to the old System V.
– rexkogitans
Mar 27 at 5:45
|
show 1 more comment
1
Do I need to restart networking on my server if I do not wish to reboot it after the rename? I found this:sudo /etc/init.d/network restart
Aside from that, restarting networking on my server via that command your point about restarting any running process that needs to know the server's name is valid. Agreed that restarting the host would fix that. That said, there are times that I really want to rename a host, but really do not want to reboot it. Any opinion aboutsudo /etc/init.d/network restart
and its usefulness in getting the new hostname to take effect wout reboot?
– Peter Jirak Eldritch
Mar 26 at 8:51
3
@PeterJirak: Completely useless. If those programs (which need to know the hostname) didn't bother to watch for hostname updates before, then they won't bother now. Telling the system to reconfigure IP addresses on eth0 won't affect that even a little bit.
– grawity
Mar 26 at 12:14
@PeterJirak What do you mean by "getting the new hostname to take effect"? As previously discussed, it takes effect immediately, and any newly started process will be aware of it. I also don't understand why you're asking about restarting the network? What does that have to do with the hostname?
– Michael Hampton♦
Mar 26 at 17:35
5
It's a common misconception that the entirety of "networking" is a userspace service that can be restarted, just because there's an /etc/init.d script named like that.
– grawity
Mar 26 at 18:37
2
@PeterJirak As a side note, running services in/etc/init.d
is the wrong way on systemd systems. It is just there for backward compatibility to the old System V.
– rexkogitans
Mar 27 at 5:45
1
1
Do I need to restart networking on my server if I do not wish to reboot it after the rename? I found this:
sudo /etc/init.d/network restart
Aside from that, restarting networking on my server via that command your point about restarting any running process that needs to know the server's name is valid. Agreed that restarting the host would fix that. That said, there are times that I really want to rename a host, but really do not want to reboot it. Any opinion about sudo /etc/init.d/network restart
and its usefulness in getting the new hostname to take effect wout reboot?– Peter Jirak Eldritch
Mar 26 at 8:51
Do I need to restart networking on my server if I do not wish to reboot it after the rename? I found this:
sudo /etc/init.d/network restart
Aside from that, restarting networking on my server via that command your point about restarting any running process that needs to know the server's name is valid. Agreed that restarting the host would fix that. That said, there are times that I really want to rename a host, but really do not want to reboot it. Any opinion about sudo /etc/init.d/network restart
and its usefulness in getting the new hostname to take effect wout reboot?– Peter Jirak Eldritch
Mar 26 at 8:51
3
3
@PeterJirak: Completely useless. If those programs (which need to know the hostname) didn't bother to watch for hostname updates before, then they won't bother now. Telling the system to reconfigure IP addresses on eth0 won't affect that even a little bit.
– grawity
Mar 26 at 12:14
@PeterJirak: Completely useless. If those programs (which need to know the hostname) didn't bother to watch for hostname updates before, then they won't bother now. Telling the system to reconfigure IP addresses on eth0 won't affect that even a little bit.
– grawity
Mar 26 at 12:14
@PeterJirak What do you mean by "getting the new hostname to take effect"? As previously discussed, it takes effect immediately, and any newly started process will be aware of it. I also don't understand why you're asking about restarting the network? What does that have to do with the hostname?
– Michael Hampton♦
Mar 26 at 17:35
@PeterJirak What do you mean by "getting the new hostname to take effect"? As previously discussed, it takes effect immediately, and any newly started process will be aware of it. I also don't understand why you're asking about restarting the network? What does that have to do with the hostname?
– Michael Hampton♦
Mar 26 at 17:35
5
5
It's a common misconception that the entirety of "networking" is a userspace service that can be restarted, just because there's an /etc/init.d script named like that.
– grawity
Mar 26 at 18:37
It's a common misconception that the entirety of "networking" is a userspace service that can be restarted, just because there's an /etc/init.d script named like that.
– grawity
Mar 26 at 18:37
2
2
@PeterJirak As a side note, running services in
/etc/init.d
is the wrong way on systemd systems. It is just there for backward compatibility to the old System V.– rexkogitans
Mar 27 at 5:45
@PeterJirak As a side note, running services in
/etc/init.d
is the wrong way on systemd systems. It is just there for backward compatibility to the old System V.– rexkogitans
Mar 27 at 5:45
|
show 1 more comment
You can change the in-kernel hostname using:
hostname NEWNAME
On Linux this is practically equal to either of the following:
sysctl kernel.hostname=NEWNAME
echo NEWNAME > /proc/sys/kernel/hostname
This does not depend on systemd (unlike hostnamectl which requires systemd-hostnamed) or any other non-standard tools, and often (especially in shellscript-init systems) is how the initial hostname was set in the first place.
Most programs and services don't actually use the hostname; the few which do (e.g. Postfix or services using Kerberos) can be restarted one-by-one.
(Some programs cache the hostname until restart, others query it every time they need it. Programs also have the ability to poll(2) /proc/sys/kernel/hostname to receive change notifications, but few do.)
2
Keep in mind that these methods are not persistent and will not survive a reboot.
– Michael Hampton♦
Mar 27 at 14:19
3
Fortunately, OP has already covered persistence in their question itself.
– grawity
Mar 27 at 14:26
1
postfix may have the host name hard coded in one or two places in/etc/postfix/main.cf
and/etc/mailname
, so those will need to be edited, too.
– Mark Plotnick
Mar 27 at 17:18
add a comment |
You can change the in-kernel hostname using:
hostname NEWNAME
On Linux this is practically equal to either of the following:
sysctl kernel.hostname=NEWNAME
echo NEWNAME > /proc/sys/kernel/hostname
This does not depend on systemd (unlike hostnamectl which requires systemd-hostnamed) or any other non-standard tools, and often (especially in shellscript-init systems) is how the initial hostname was set in the first place.
Most programs and services don't actually use the hostname; the few which do (e.g. Postfix or services using Kerberos) can be restarted one-by-one.
(Some programs cache the hostname until restart, others query it every time they need it. Programs also have the ability to poll(2) /proc/sys/kernel/hostname to receive change notifications, but few do.)
2
Keep in mind that these methods are not persistent and will not survive a reboot.
– Michael Hampton♦
Mar 27 at 14:19
3
Fortunately, OP has already covered persistence in their question itself.
– grawity
Mar 27 at 14:26
1
postfix may have the host name hard coded in one or two places in/etc/postfix/main.cf
and/etc/mailname
, so those will need to be edited, too.
– Mark Plotnick
Mar 27 at 17:18
add a comment |
You can change the in-kernel hostname using:
hostname NEWNAME
On Linux this is practically equal to either of the following:
sysctl kernel.hostname=NEWNAME
echo NEWNAME > /proc/sys/kernel/hostname
This does not depend on systemd (unlike hostnamectl which requires systemd-hostnamed) or any other non-standard tools, and often (especially in shellscript-init systems) is how the initial hostname was set in the first place.
Most programs and services don't actually use the hostname; the few which do (e.g. Postfix or services using Kerberos) can be restarted one-by-one.
(Some programs cache the hostname until restart, others query it every time they need it. Programs also have the ability to poll(2) /proc/sys/kernel/hostname to receive change notifications, but few do.)
You can change the in-kernel hostname using:
hostname NEWNAME
On Linux this is practically equal to either of the following:
sysctl kernel.hostname=NEWNAME
echo NEWNAME > /proc/sys/kernel/hostname
This does not depend on systemd (unlike hostnamectl which requires systemd-hostnamed) or any other non-standard tools, and often (especially in shellscript-init systems) is how the initial hostname was set in the first place.
Most programs and services don't actually use the hostname; the few which do (e.g. Postfix or services using Kerberos) can be restarted one-by-one.
(Some programs cache the hostname until restart, others query it every time they need it. Programs also have the ability to poll(2) /proc/sys/kernel/hostname to receive change notifications, but few do.)
edited Mar 26 at 18:38
answered Mar 26 at 15:38
grawitygrawity
7,02221 silver badges35 bronze badges
7,02221 silver badges35 bronze badges
2
Keep in mind that these methods are not persistent and will not survive a reboot.
– Michael Hampton♦
Mar 27 at 14:19
3
Fortunately, OP has already covered persistence in their question itself.
– grawity
Mar 27 at 14:26
1
postfix may have the host name hard coded in one or two places in/etc/postfix/main.cf
and/etc/mailname
, so those will need to be edited, too.
– Mark Plotnick
Mar 27 at 17:18
add a comment |
2
Keep in mind that these methods are not persistent and will not survive a reboot.
– Michael Hampton♦
Mar 27 at 14:19
3
Fortunately, OP has already covered persistence in their question itself.
– grawity
Mar 27 at 14:26
1
postfix may have the host name hard coded in one or two places in/etc/postfix/main.cf
and/etc/mailname
, so those will need to be edited, too.
– Mark Plotnick
Mar 27 at 17:18
2
2
Keep in mind that these methods are not persistent and will not survive a reboot.
– Michael Hampton♦
Mar 27 at 14:19
Keep in mind that these methods are not persistent and will not survive a reboot.
– Michael Hampton♦
Mar 27 at 14:19
3
3
Fortunately, OP has already covered persistence in their question itself.
– grawity
Mar 27 at 14:26
Fortunately, OP has already covered persistence in their question itself.
– grawity
Mar 27 at 14:26
1
1
postfix may have the host name hard coded in one or two places in
/etc/postfix/main.cf
and /etc/mailname
, so those will need to be edited, too.– Mark Plotnick
Mar 27 at 17:18
postfix may have the host name hard coded in one or two places in
/etc/postfix/main.cf
and /etc/mailname
, so those will need to be edited, too.– Mark Plotnick
Mar 27 at 17:18
add a comment |
Thanks for contributing an answer to Server Fault!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fserverfault.com%2fquestions%2f959952%2fhow-do-i-rename-a-linux-host-without-needing-to-reboot-for-the-rename-to-take-ef%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
There's no such thing as "Ubuntu 16" and "Ubuntu 18", there can be as big differences between 16.04 and 16.10 as there are between 16.10 and 17.04.
– pipe
Mar 27 at 8:35