linux查看hostname
『壹』 如何在linux shell中獲取本機主機名
1、查看主機名查看當前系統主機名,輸入hostname命令查看。
『貳』 linux怎麼查看hostname
兩種方法命令:
#hostname
#cat /proc/sys/kernel/hostname
『叄』 Linux如何配置主機名稱
查看hostname
1、查詢命令:hostname
2、輸出對應的文本文件:cat /proc/sys/kernel/hostname
修改hostname
1、hostname命令可以設置系統的hostname,
[root@linuxprobe~]hostnamenewhostname
newhostname即要設置的新的hostname,運行後立即生效,但是在系統重啟後會丟失所做的修改,如果要永久更改系統的hostname,就要修改相關的設置文件。
2、修改系統配置文件 /etc/sysconfig/network
[root@linuxprobe~]#vi/etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=linuxprobe
3、修改hosts文件或者dns伺服器
[root@linuxprobe~]#vi/etc/hosts
127.0.0.1localhost.localdomain
4、用sysctl 修改kernel.hostname
[root@linuxprobe~]#sysctlkernel.hostname=hadoop
kernel.hostname=hadoop
備注
1、請使用sudo許可權
2、更多詳細的Linux基本學習教程和書籍可以從linuxprobe.com找到
『肆』 linux查看當前的主機名並保存到c.txt文件中
你可以使用以下命令來查看當前的主機名並保存到 c.txt 文件中:
hostname > c.txt
執行這個命令後,會在當前目錄下創建一個名為 c.txt 的文件,並將當前的主機名寫入文件中。
你也可以使用以下命令來達到同樣的效果:
echo `hostname` > c.txt
總之,通過使用 hostname 命令和輸出重定向符號(">"),你就可以在 Linux 系統中查看當前的主機名並保存到文件中了。
『伍』 獲取Linux IP地址的六種方法總結
本文總結六種查看Linux IP地址的方法,方便以後的運維開發工作。
在介紹前先學習一下三個命令行篩選的主要的指令,也是頻繁使用到的命令。
1、head。 head 命令可用於查看文件的開頭部分的內容,有一個常用的參數 -n 用於顯示行數,默認為 10。
運行head --help查看說明信息:
-q 隱藏文件名
-v 顯示文件名
-c<數目> 顯示的位元組數。
-n<行數> 顯示的行數。
2、grep。 grep 命令用於查找文件里符合條件的字元串。運行grep --help查看說明信息,參數太多主要有以下幾種:
grep -r遞歸選擇。
grep -v反選,顯示不包含匹配文本的所有行。
grep -n顯示符合樣式的那一行之前。
grep -A顯示符合範本樣式的那一列之外,並顯示該行之後的內容。
3、awk。 強大的文本分析工具,命令使用過於復雜(awk --help),只需要知道 awk '{print$2}'為列印第二行數據。
4、tail 。tail命令可用於查看文件的結束部分的內容,有一個常用的參數 -n 用於顯示行數,默認為 10。tail --help查看主要的參數:
tail -n顯示最後多少行
tail -c顯示最後十個字元
tail -f 循環讀取,跟蹤顯示最後十行
5、cut。 顯示每行從開頭算起的文字。
cut -b :以位元組為單位進行分割。
cut -c :以字元為單位進行分割
cut -d :自定義分隔符,默認為製表符
cut -f :與-d一起使用,指定顯示哪個區域
無線網卡地址:
echo wlan0=`ifconfig wlan0 | head -n2 | grep inet | awk '{print$2}'`
有線網卡地址:
echo eth0=`ifconfig eth0 | head -n2 | grep inet | awk '{print$2}'`
或者命令:
ifconfig | grep "inet " | cut -d: -f2 | awk '{print $1}' | grep -v "^127."
無線網卡地址:
ip address | grep wlan0 | awk '{print$2}'
有線網卡地址:
ip address | grep eth0 | awk '{print$2}'
或者
echo eth0=`ip address show eth0 | head -n4 | grep inet | awk '{print$2}'
echo wlan0=`ip address show wlan0 | head -n4 | grep inet | awk '{print$2}'
運行hostname -help命令查看說明信息:
Program options:
-a, --alias alias names
-A, --all-fqdns all long host names (FQDNs)
-b, --boot set default hostname if none available
-d, --domain DNS domain name
-f, --fqdn, --long long host name (FQDN)
-F, --file read host name or NIS domain name from given file
-i, --ip-address addresses for the host name
-I, --all-ip-addresses all addresses for the host
-s, --short short host name
-y, --yp, --nis NIS/YP domain name
hostname -i得到環回地址127.0.1.1, hostname -I得到具體的網卡信息192.168.31.82 。
php語言查看ip就是使用函數shell_exec來執行shell命令。
比如:
<?php
echo shell_exec("echo wlan0=`ifconfig wlan0 | head -n2 | grep inet | awk '{print$2}'`");
?>
然後執行php ip.php 。shell_exec()裡面可以放置任何shell命令。這個方法的意義在於php可以通過網頁對外提供服務。
#!/usr/bin/env python
import socket
import fcntl
import struct
def get_ip_address(ifname):
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
return socket.inet_ntoa(fcntl.ioctl(
s.fileno(),
0x8915, # SIOCGIFADDR
struct.pack('256s', ifname[:15])
)[20:24])
Local_wlan0=get_ip_address("wlan0")
Local_lo=get_ip_address("lo")
#Local_eth0=get_ip_address("eth0")
print Local_wlan0
print Local_lo
#print Local_eth0
利用socket包,然後執行python ip.py 得到wlan0信息。
#!/usr/bin/env python
import os
def get_ip():
out = os.popen("echo wlan0=`ifconfig wlan0 | head -n2 | grep inet | awk '{print$2}'`").read()
print out
if __name__ == '__main__':
get_ip()
和php的shell_exec函數類似,os.popen()裡面可以放置任何shell命令。注意有個函數os.system的結果只是命令執行結果的返回值,執行成功為0;os.popen()可以讀出執行的內容,輸出的結果比較特殊,帶換行符\n 。
『陸』 linux命令更改hostnane
查看當前的主機名
首先我們使用hostname命令來查看當前的主機名。
hostname1
也可以使用hostnamctl命令
hostnamectl
方法1:修改配置文件
主機名保存在/etc/hostname文件里,所以我們可以打開這個文件,手動編輯主機名。
sudo nano /etc/hosts12
把舊的主機名刪除,替換為新的主機名,保存文件就行了。要注意大小寫。
方法2:hostnamectl命令
命令語法為:
sudo hostnamectl set-hostname <newhostname>12
這條命令會刪除/etc/hostname文件中的主機名,然後替換為新的主機名。和第一種方法一樣,我們也需要更新/etc/hosts文件。這兩種方法的本質都是一樣的。
方法3:hostname命令進行臨時更改
如果只需要臨時更改主機名,可以使用hostname命令。《Linux就該這么學》
sudo hostname <new-hostname>12
這條命令不會更改/etc/hostname文件中的靜態主機名(static hostname),它更改的只是臨時主機名(transient hostname)。所以重啟計算機後會回到舊的主機名。
靜態主機名保存在/etc/hostname文件中。
『柒』 linux本機的hostname是什麼意思
Linux操作系統的hostname是一個kernel變數,可以通過hostname命令來查看本機的hostname。也可以直接cat /proc/sys/kernel/hostname查看。
#hostname
#cat /proc/sys/kernel/hostname
上面兩種輸出結果相同。
一、修改運行時Linux系統的hostname,即臨時修改,不需要重啟系統
hostname命令可以設置系統的hostname
#hostname newname
newname即要設置的新的hostname,運行後立即生效,但是在系統重啟後會丟失所做的修改,如果要永久更改系統的hostname,就要修改相關的設置文件。
二、永久更改Linux的hostname
man hostname里有這么一句話,」The hostname is usually set once at system startup in /etc/rc.d/rc.inet1 or /etc/init.d/boot (normally by reading the contents of a file which contains thehost name, e.g. /etc/hostname).」 RedHat里沒有這個文件,而是由/etc/rc.d/rc.sysinit這個腳本負責設置系統的hostname,滲物碧它讀取 /etc/sysconfig/network這個文本文件,螞型RedHat的hostname就是在這個文件里設置。
所以,如果要永久修改叢舉RedHat的hostname,就修改/etc/sysconfig/network文件,將裡面的HOSTNAME這一行修改成HOSTNAME=NEWNAME,其中NEWNAME就是你要設置的hostname。
Debian發行版的hostname的配置文件是/etc/hostname。
修該配置文件後,重啟系統就會讀取配置文件設置新的hostname。
『捌』 用什麼命令可直以查看Linux當前定義的主機名
1.hostname 查看
2.hostname xxxx(xxxx為要更改的主機名,關機後不會生效)
2.cat /etc/sysconfig/network查看(一般為第一行)
3.vi /etc/sysconfig/network更改主機名(關機後生效)