Linux笔记
阿里云:http://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/
网易:http://mirrors.163.com/centos/7.9.2009/isos/x86_64/
清华大学:http://mirrors.tuna.tsinghua.edu.cn/centos/7.9.2009/isos/x86_64/
Linux 系统中一切皆文件。
VI 是 Unix 操作系统和类 Unix 操作系统中最通用的文本编辑器。
VIM 编辑器是从 VI 发展出来的一个性能更强大的文本编辑器。可以主动的以字体颜
色辨别语法的正确性,方便程序设计。VIM 与 VI 编辑器完全兼容。
1)拷贝/etc/profile数据到/root 目录下
以 vi 打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中, 你可
以使用『上下左右』按键来移动光标,你可以使用『删除字符』或『删除整行』来处理档
案内容, 也可以使用『复制、粘贴』来处理你的文件数据。
语法 | 功能描述 |
---|---|
yy | 复制光标当前一行 |
y 数字 y或 (n) yy | 复制一段(从第几行到第几行) |
y + shift+4($) | 复制当前光标位置到行末位置的内容 |
p | 箭头移动到目的行粘贴 |
(n)p | 箭头移动到目的行粘贴n行 |
u | 撤销上一步 |
dd | 删除光标当前行 |
d 数字 d | 删除光标(含)后多少行 |
x | 剪切一个字母,相当于 del |
X | 剪切一个字母,相当于 Backspace |
r | 修改当前光标位置处的字母 |
R | 修改当前光标所在行的内容 |
w | 切换词后移(光标在词头) |
e | 切换词后移(光标在词尾) |
b | 切换词前移 |
yw | 复制一个词 |
dw | 删除一个词 |
shift+6(^) | 移动到行头 |
shift+4 ($) | 移动到行尾 |
gg 或 shift+h | 跳转到行头 |
1+shift+g(G) | 移动到页头,数字 |
shift+g(G) | 移动到页尾 |
数字+shift+g(G) | 移动到目标行 |
在一般模式中可以进行删除、复制、粘贴等的动作,但是却无法编辑文件内容的!
要等到你按下 加粗样式i, I, o, O, a, A 等任何一个字母之后才会进入编辑模式。
注意了!通常在Linux中,按下这些按键时,在画面的左下方会出现 INSERT或 REPLACE 的字样,此时才可以进行编辑。而如果要回到一般模式时, 则必须要按下 Esc这个按键即可退出编辑模式
按键 | 功能 |
---|---|
i | 当前光标前 |
a | 当前光标后 |
o | 当前光标行的下一行 |
I | 光标所在行最前 |
A | 光标所在行最后 |
O | 当前光标行的上一行 |
按 Esc 键 退出编辑模式,之后所在的模式为一般模式
在一般模式当中,输入『 : / ?』3个中的任何一个按钮,就可以将光标移动到最底下那
一行。
在这个模式当中, 可以提供你『搜寻资料』的动作,而读取、存盘、大量取代字符、
离开 vi 、显示行号等动作是在此模式中达成的!
命令 | 功能 |
---|---|
:w | 保存 |
:q | 退出 |
:! | 强制执行 |
/要查找的词 | n 查找下一个,N 往上查找 |
:noh | 取消高亮显示 |
:set nu | 显示行号 |
:set nonu | 关闭行号 |
: s/old/new | 替换当前行匹配到的第一个old为new |
: s/old/new/g | 替换当前行匹配到的所有old为new |
:%s/old/new | 替换文档中行匹配到的第一个old为new |
:%s/old/new/g | 替换文档中匹配到的所有old为new |
:wq! | 强制保存退出 |
---|
[root@hadoop100 ~]# ifconfig
[root@hadoop100 ~]# ping cn.bing.com
[root@hadoop100 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
[root@hadoop100 ~]# service network restart
hostname (功能描述:查看当前服务器的主机名称)
(1)查看当前服务器主机名称
[root@hadoop100 ~]# hostname
(2)如果感觉此主机名不合适,我们可以进行修改。通过编辑/etc/hostname 文件
[root@hadoop100 ~]# vi /etc/hostname
修改完成后重启生效。
修改 linux 的主机映射文件(hosts 文件)
后续在 hadoop 阶段,虚拟机会比较多,配置时通常会采用主机名的方式配置,
比较简单方便。 不用刻意记 ip 地址。
[root@hadoop100 ~]# vim /etc/hosts
计算机中,一个正在执行的程序或命令,被叫做“进程”(process)。
启动之后一只存在、常驻内存的进程,一般被称作“服务”(service)。
1) 基本语法
service 服务名 start | stop |· restart | status
2) 经验技巧
查看服务的方法:/etc/init.d/服务名 ,发现只有两个服务保留在 service
3) 案例实操
(1)查看网络服务的状态
[root@hadoop100 桌面]#service network status
(2)停止网络服务
[root@hadoop100 桌面]#service network stop
(3)启动网络服务
[root@hadoop100 桌面]#service network start
(4)重启网络服务
[root@hadoop100 桌面]#service network restart
chkconfig 服务名 off (功能描述:关掉指定服务的自动启动)
chkconfig 服务名 on (功能描述:开启指定服务的自动启动)
chkconfig 服务名 --list (功能描述:查看服务开机启动状态)
[root@hadoop100 桌面]#chkconfig network on
[root@hadoop100 桌面]#chkconfig network off
[root@hadoop100 桌面]#chkconfig --level 指定级别 network on
[root@hadoop100 桌面]#chkconfig --level 指定级别 network off
systemctl start | stop | restart | status 服务名
查看服务的方法:/usr/lib/systemd/system
[root@hadoop100 ~]# pwd
/root
[root@hadoop100 ~]# /user/lib/systemd/system
-bash: /user/lib/systemd/system: 没有那个文件或目录
[root@hadoop100 ~]# ls -al
总用量 64
dr-xr-x---. 15 root root 4096 6月 22 08:50 .
dr-xr-xr-x. 17 root root 224 6月 20 15:43 ..
-rw-------. 1 root root 1889 6月 20 15:43 anaconda-ks.cfg
-rw-------. 1 root root 677 6月 22 08:50 .bash_history
-rw-r--r--. 1 root root 18 12月 29 2013 .bash_logout
-rw-r--r--. 1 root root 176 12月 29 2013 .bash_profile
-rw-r--r--. 1 root root 176 12月 29 2013 .bashrc
drwx------. 18 root root 4096 6月 20 21:34 .cache
drwxr-xr-x. 16 root root 4096 6月 20 16:59 .config
-rw-r--r--. 1 root root 100 12月 29 2013 .cshrc
drwx------. 3 root root 25 6月 20 15:51 .dbus
-rw-------. 1 root root 16 6月 20 16:51 .esd_auth
-rw-------. 1 root root 314 6月 20 16:51 .ICEauthority
-rw-r--r--. 1 root root 1920 6月 20 15:52 initial-setup-ks.cfg
drwx------. 3 root root 19 6月 20 16:51 .local
drwx------. 5 root root 66 6月 20 16:59 .mozilla
-rw-r--r--. 1 root root 129 12月 29 2013 .tcshrc
-rw-------. 1 root root 5999 6月 21 21:08 .viminfo
-rw-------. 1 root root 275 6月 22 08:50 .Xauthority
drwxr-xr-x. 2 root root 6 6月 20 16:51 公共
drwxr-xr-x. 2 root root 6 6月 20 16:51 模板
drwxr-xr-x. 2 root root 6 6月 20 16:51 视频
drwxr-xr-x. 2 root root 6 6月 20 16:51 图片
drwxr-xr-x. 2 root root 6 6月 20 16:51 文档
drwxr-xr-x. 2 root root 6 6月 20 16:51 下载
drwxr-xr-x. 2 root root 6 6月 20 16:51 音乐
drwxr-xr-x. 2 root root 100 6月 20 22:43 桌面
[root@hadoop100 桌面]# systemctl status firewalld
[root@hadoop100 桌面]# systemctl stop firewalld
[root@hadoop100 桌面]# systemctl start firewalld
[root@hadoop100 桌面]# systemctl restart firewalld
systemctl list-unit-files (功能描述:查看服务开机启动状态)
systemctl disable service_name (功能描述:关掉指定服务的自动启动)
systemctl enable service_name (功能描述:开启指定服务的自动启动)
[root@hadoop100 桌面]# systemctl enable firewalld.service
[root@hadoop100 桌面]# systemctl disable firewalld.service
[root@hadoop100 桌面]# systemctl status firewalld
[root@hadoop100 桌面]# systemctl stop firewalld
[root@hadoop100 桌面]# systemctl enable firewalld.service
[root@hadoop100 桌面]# systemctl disable firewalld.service
在 linux 领域内大多用在服务器上,很少遇到关机的操作。毕竟服务器上跑一个服务是永无止境的,除非特殊情况下,不得已才会关机。
选项 | 功能 |
---|---|
-H | 相当于–halt,停机 |
-h 或 -P | 关机 |
-r | -r=reboot 重启 |
参数 | 功能 |
---|---|
now | 立刻关机 |
时间 | 等待多久后关机(时间单位是分钟) |
Linux 系统中为了提高磁盘的读写效率,对磁盘采取了 “预读迟写”操作方式。当用户保存文件时,Linux 核心并不一定立即将保存数据写入物理磁盘中,而是将数据保存在缓冲区中,等缓冲区满时再写入磁盘,这种方式可以极大的提高磁盘写入数据的效率。但是, 也带来了安全隐患,如果数据还未写入磁盘时,系统掉电或者其他严重问题出现,则将导致数据丢失。使用 sync 指令可以立即将缓冲区的数据写入磁盘。
(1)将数据由内存同步到硬盘中
[root@hadoop100 桌面]#sync
(2)重启
[root@hadoop100 桌面]# reboot
(3)停机(不断电)
[root@hadoop100 桌面]#halt
(4)计算机将在 1 分钟后关机,并且会显示在登录用户的当前屏幕中
[root@hadoop100 桌面]#shutdown -h 1 ‘This server will shutdown after 1 mins’
(5)立刻关机(等同于 poweroff)
[root@hadoop100 桌面]# shutdown -h now
(6)系统立刻重启(等同于 reboot)
[root@hadoop100 桌面]# shutdown -r now
Shell 可以看作是一个命令解释器,为我们提供了交互式的文本控制台界面。我们可以通过终端控制台来输入命令,由 shell 进行解释并最终交给内核执行。
常用的基本 shell 命令。
信息 | 功能 |
---|---|
NAME | 命令的名称和单行描述 |
SYNOPSIS | 怎样使用命令 |
DESCRIPTION | 命令功能的深入讨论 |
EXAMPLES | 怎样使用命令的例子 |
SEE ALSO | 相关主题(通常是手册页) |
[root@hadoop101 ~]# man ls
一部分基础功能的系统命令是直接内嵌在 shell 中的,系统加载启动之后会随着 shell 一起加载,常驻系统内存中。这部分命令被称为“内置(built-in)命令”;相应的其它命令 被称为“外部命令”。
使用方法: type 命令
[root@hadoop100 ~]# type ls
ls 是 `ls --color=auto' 的别名
[root@hadoop100 ~]# type history
history 是 shell 内嵌
help 命令(功能描述:获得 shell 内置命令的帮助信息)
[root@hadoop101 ~]# help cd
常用快捷键 | 功能 |
---|---|
ctrl + c | 停止进程 |
ctrl+l | 清屏,等同于 clear;彻底清屏是:reset |
善于用 tab 键 | 提示(更重要的是可以防止敲错) |
上下键 | 查找执行过的命令 |
xshell中清屏的快捷键:
清屏:Ctrl+Shift+I (相当于翻页,历史日志保留)
滚动缓冲区清除:Ctrl+Shift+b (只保留当前显示的日志,在滚动条上方的历史被清除)
屏幕和滚动区清除:Ctrl+Shift+a (日志全部清空,且当前页面显示空白)
pwd : print working directory 打印工作目录
pwd (功能描述:显示当前工作目录的绝对路径)
(1)显示当前工作目录的绝对路径
[root@hadoop100 ~]# pwd
/root
ls : list 列出目录内容
ls [选项] [目录或是文件]
选项 | 功能 |
---|---|
-a | 全部的文件,连同隐藏档( 开头为 . 的文件) 一起列出来(常用) |
-l | 长数据串列出,包含文件的属性与权限等等数据;(常用)等价于“ll” |
每行列出的信息依次是: 文件类型与权限 链接数 文件属主 文件属组 文件大小用byte
来表示 建立或最近修改的时间 名字
[atguigu@hadoop101 ~]$ ls -al
cd : Change Directory 切换路径
cd [参数]
参数 | 功能 |
---|---|
cd 绝对路径 | 切换路径 |
cd 相对路径 | 切换路径 |
cd ~或者 cd | 回到自己的家目录 |
cd - | 回到上一次所在目录 |
cd … | 回到当前目录的上一级目录 |
cd -P | 跳转到实际物理路径,而非快捷方式路径 |
3)案例实操
(1)使用绝对路径切换到 root 目录
[root@hadoop101 ~]# cd /root/
(2)使用相对路径切换到“公共的”目录
[root@hadoop101 ~]# cd 公共的/
(3)表示回到自己的家目录,亦即是 /root 这个目录
[root@hadoop101 公共的]# cd ~
(4)cd- 回到上一次所在目录
[root@hadoop101 ~]# cd -
(5)表示回到当前目录的上一级目录,亦即是 “/root/公共的”的上一级目录的意思;
[root@hadoop101 公共的]# cd ..
mkdir: Make directory 建立目录
mkdir [选项] 要创建的目录
选项 | 功能 |
---|---|
-p | 创建多层目录 |
[root@hadoop101 ~]# mkdir xiyou
[root@hadoop101 ~]# mkdir xiyou/mingjie
(2)创建一个多级目录
[root@hadoop101 ~]# mkdir -p xiyou/dssz/meihouwang
rmdir: Remove directory 移除目录
rmdir 要删除的空目录
(1)删除一个空的文件夹
[root@hadoop101 ~]# rmdir xiyou/dssz/meihouwang
touch 文件名称
[root@hadoop101 ~]# touch xiyou/dssz/sunwukong.txt
cp [选项] source dest (功能描述:复制source文件到dest)
选项 | 功能 |
---|---|
-r | 递归复制整个文件夹 |
参数 | 功能 |
---|---|
source | 源文件 |
dest | 目标文件 |
强制覆盖不提示的方法:\cp
[root@hadoop100 ~]# \cp initial-setup-ks.cfg user/document/my.txt
[root@hadoop100 ~]# cp initial-setup-ks.cfg user/document/my.txt
cp:是否覆盖"user/document/my.txt"? y
[root@hadoop101 ~]# cp -r xiyou/dssz/ ./
rm [选项] deleteFile (功能描述:递归删除目录中所有内容)
选项 | 功能 |
---|---|
-r | 递归删除目录中所有内容 |
-f | 强制执行删除操作,而不提示用于进行确认。 |
-v | 显示指令的详细执行过程 |
(1)删除目录中的内容
[root@hadoop101 ~]# rm xiyou/mingjie/sunwukong.txt
[root@hadoop100 ~]# rm user/document/initial-setup-ks.cfg
rm:是否删除普通文件 "user/document/initial-setup-ks.cfg"?y
(2)递归删除目录中所有内容
[root@hadoop101 ~]# rm -rf dssz/
[root@hadoop100 ~]# \rm -r a
(1) mv oldNameFile newNameFile
(功能描述:重命名)
(2) mv /temp/movefile /targetFolder
(功能描述:移动文件,移动后就没有了)
[root@hadoop100 ~]# mv yang.py user/document/
[root@hadoop101 ~]# mv xiyou/dssz/suwukong.txt xiyou/dssz/houge.txt
[root@hadoop101 ~]# mv xiyou/dssz/houge.txt ./
查看文件内容,从第一行开始显示。
cat [选项] 要查看的文件
选项 | 功能描述 |
---|---|
-n | 显示所有行的行号,包括空行。 |
一般查看比较小的文件,一屏幕能显示全的。
(1)查看文件内容并显示行号
[atguigu@hadoop101 ~]$ cat -n houge.txt
more 指令是一个基于 VI 编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件
的内容。more 指令中内置了若干快捷键,详见操作说明。
more 要查看的文件
操作 | 功能说明 |
---|---|
空白键 (space) | 代表向下翻一页 |
Enter | 代表向下翻『一行』 |
q | 代表立刻离开 more ,不再显示该文件内容 |
Ctrl+F | 向下滚动一屏 |
Ctrl+B | 返回上一屏 |
= | 输出当前行的行号 |
:f | 输出文件名和当前行的行号 |
(1)采用more查看文件
[root@hadoop101 ~]# more smartd.conf
less 指令用来分屏查看文件内容,它的功能与 more 指令类似,但是比 more 指令更加
强大,支持各种显示终端。less 指令在显示文件内容时,并不是一次将整个文件加载之后 才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
less 要查看的文件
操作 | 功能说明 |
---|---|
空白键 | 向下翻动一页 |
[pagedown] | 向下翻动一页 |
[pageup] | 向上翻动一页 |
/字串 | 向下搜寻『字串』的功能;n:向下查找;N:向上查找 |
?字串 | 向上搜寻『字串』的功能;n:向上查找;N:向下查找 |
q | 离开 less 这个程序 |
用SecureCRT时[pagedown]和[pageup]可能会出现无法识别的问题。
[root@hadoop101 ~]# less smartd.conf
echo 输出内容到控制台
echo [选项] [输出内容]
选项: -e: 支持反斜线控制的字符转换
控制字符 | 作用 |
---|---|
\ | 输出\本身 |
\n | 换行符 |
\t | 制表符,也就是 Tab 键 |
[root@hadoop100 ~]$ echo “hello\tworld”
hello\tworld
[root@hadoop100 ~]$ echo -e “hello\tworld”
hello world
head 用于显示文件的开头部分内容,默认情况下 head 指令显示文件的前 10 行内容。
head 文件 (功能描述:查看文件头10行内容)
head -n 5 文件 (功能描述:查看文件头5行内容,5可以是任意行数)
选项 | 功能 |
---|---|
-n<行数> | -n<行数> |
(1)查看文件的头2行
[root@hadoop101 ~]# head -n 2 smartd.conf
tail 用于输出文件中尾部的内容,默认情况下 tail 指令显示文件的后 10 行内容。
(功能描述:查看文件尾部10行内容)
(功能描述:查看文件尾部5行内容,5可以是任意行数)
(功能描述:实时追踪该文档的所有更新) Ctrl+S(暂停监控)Ctrl+Q(开启监控)Ctrl+C(退出监控)
选项 | 功能 |
---|---|
-n<行数> | 输出文件尾部 n 行内容 |
-f | 显示文件最新追加的内容,监视文件变化 |
[root@hadoop101 ~]# tail -n 1 smartd.conf
[root@hadoop101 ~]# tail -f houge.txt
(功能描述:列表的内容写入文件 a.txt 中(覆盖写))
(功能描述:列表的内容追加到文件 aa.txt 的末尾)
(功能描述:将文件 1 的内容覆盖到文件 2)
(1)将 ls 查看信息写入到文件中
[root@hadoop100 ~]# ls -l>houge.txt
(2)将 ls 查看信息追加到文件中
[root@hadoop100 ~]# ls -l>>houge.txt
(3)采用 echo 将 hello 单词追加到文件中
[root@hadoop100 ~]# echo hello>>houge.txt
[root@hadoop100 ~] #echo $ (显示所有的目录)
软链接也称为符号链接,类似于 windows 里的快捷方式,有自己的数据块,主要存放了链接其他文件的路径。
删除软链接: rm -rf 软链接名,而不是 rm -rf 软链接名/
如果使用 rm -rf 软链接名/ 删除,会把软链接对应的真实目录下内容删掉
查询:通过 ll 就可以查看,列表属性第 1 位是 l,尾部会有位置指向。
[root@hadoop100 ~]# ls
anaconda-ks.cfg Info initial-setup-ks.cfg miss user y.py 公共 模板 视频 图片 文档 下载 音乐 桌面
[root@hadoop100 ~]# vim Info
[root@hadoop100 ~]# cd user/document/
[root@hadoop100 document]# ln -s /root/Info myInfo
[root@hadoop100 document]# ls
hello.txt myInfo my.txt myu.txt
[root@hadoop101 ~]# mv houge.txt xiyou/dssz/
[root@hadoop101 ~]# ln -s xiyou/dssz/houge.txt ./houzi
[root@hadoop101 ~]# ll
[root@hadoop101 ~]# rm -rf houzi
[root@hadoop100 ~]# \rm Info
[root@hadoop100 ~]# ls
anaconda-ks.cfg initial-setup-ks.cfg miss user y.py 公共 模板 视频 图片 文档 下载 音乐 桌面
[root@hadoop101 ~]# ln -s xiyou/dssz/ ./dssz
[root@hadoop101 ~]# cd -P dssz/
序 号 | 命令 | 作用 |
---|---|---|
01 | ln -s 被链接的源文件 链接文件 | 建立文件的软链接,用通俗的方式讲类似于 Windows 下的快捷方式 |
注意:
在使用 ln 创建链接时,如果没有 -s 选项,会创建一个 硬链接,而不是软链接
在 Linux 中,文件名 和 文件的数据 是分开存储的
在 Linux 中,只有文件的 硬链接数 == 0 才会被删除
使用 ls -l 可以查看一个文件的硬链接的数量
在日常工作中,几乎不会建立文件的硬链接,知道即可
history (功能描述:查看已经执行过历史命令)
(1)查看已经执行过的历史命令
[root@hadoop100 ~]# history
date [OPTION]… [+FORMAT]
选项 | 功能 |
---|---|
-d<时间字符串> | 显示指定的“时间字符串”表示的时间,而非当前时间 |
-s<日期时间> | 设置系统日期时间 |
参数 | 功能 |
---|---|
<+日期时间格式> | 指定显示时使用的日期时间格式 |
(功能描述:显示当前时间)
[root@hadoop100 ~]# date
2022年 06月 23日 星期四 19:43:48 CST
(功能描述:显示当前年份)
[root@hadoop100 ~]# date +%Y
2022
(功能描述:显示当前月份)
(功能描述:显示当前是哪一天)
(功能描述:显示年月日时分秒)
[root@hadoop101 ~]# date
2022 年 06 月 19 日 星期日 20:53:30 CST
[root@hadoop101 ~]# date +%Y%m%d
20220619
[root@hadoop101 ~]# date "+%Y-%m-%d %H:%M:%S"
2022-06-19 20:54:58
[root@hadoop100 ~]# date +%s
1655984979
(功能描述:显示前一天时间)
(功能描述:显示明天时间)
(1)显示前一天
[root@hadoop101 ~]# date -d '1 days ago'
2022 年 06 月 18 日 星期六 21:07:22 CST
(2)显示明天时间
[root@hadoop101 ~]#date -d '-1 days ago'
2022 年 06 月 20 日 星期六 21:07:22 CST
date -s 字符串时间
[root@hadoop101 ~]# date -s "2022-06-19 20:52:18"
cal [选项] (功能描述:不加选项,显示本月日历)
选项 | 功能 |
---|---|
具体某一年 | 显示这一年的日历 |
(1)查看当前月的日历
[root@hadoop100 ~]# cal
(2)查看 2022 年的日历
[root@hadoop100 ~]# cal 2022
(3)查看当前年份的全部日历
[root@hadoop100 ~]# cal -y
useradd 用户名 (功能描述:添加新用户)
useradd -g 组名 用户名 (功能描述:添加新用户到某个组)
(1)添加一个用户
[root@hadoop100 ~]# useradd yfa
[root@hadoop100 ~]#ll /home/
passwd 用户名 (功能描述:设置用户密码)
[root@hadoop100 ~]# passwd yfa
id 用户名
(1)查看用户是否存在
[root@hadoop101 ~]#id yfa
1)案例实操
[root@hadoop101 ~]# cat /etc/passwd
su: swith user 切换用户
su 用户名称 (功能描述:切换用户,只能获得用户的执行权限,不能获得环境变量)
su - 用户名称 (功能描述:切换到用户并获得该用户的环境变量及执行权限)
(1)切换用户
[root@hadoop101 ~]#su yfa
[root@hadoop101 ~]#echo $PATH
/usr/lib64/qt3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[root@hadoop101 ~]#exit
[root@hadoop101 ~]#su - yfa
[root@hadoop101 ~]#echo $PATH
/usr/lib64/qt3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/yfa/bin
(1)userdel 用户名 (功能描述:删除用户但保存用户主目录)
(2)userdel -r 用户名 (功能描述:用户和用户主目录,都删除)
选项 | 功能 |
---|---|
-r | 删除用户的同时,删除与用户相关的所有文件。 |
(1)删除用户但保存用户主目录
[root@hadoop101 ~]#userdel yfa
[root@hadoop101 ~]#ll /home/
(2)删除用户和用户主目录,都删除
[root@hadoop101 ~]#useradd zhubajie
[root@hadoop101 ~]#ll /home/
[root@hadoop101 ~]#userdel -r zhubajie
[root@hadoop101 ~]#ll /home/
(1)whoami (功能描述:显示自身用户名称)
(2)who am i (功能描述:显示登录用户的用户名以及登陆时间)
(1)显示自身用户名称
[yfa@hadoop100 ~]# whoami
yfa
(2)显示登录用户的用户名
[yfa@hadoop100 ~]# who am i
root pts/1 2022-06-22 22:38 (192.168.130.1)
1)添加 atguigu 用户,并对其设置密码。
[root@hadoop101 ~]#useradd atguigu
[root@hadoop101 ~]#passwd atguigu
2)修改配置文件
[root@hadoop101 ~]#vi /etc/sudoers
修改 /etc/sudoers 文件,找到下面一行(91 行),在 root 下面添加一行,如下所示:
## Allow root to run any commands anywhere
root
ALL=(ALL)
ALL
atguigu
ALL=(ALL)
ALL
或者配置成采用 sudo 命令时,不需要输入密码
## Allow root to run any commands anywhere
root
ALL=(ALL)
ALL
atguigu
ALL=(ALL)
NOPASSWD:ALL
修改完毕,现在可以用 atguigu 帐号登录,然后用命令 sudo ,即可获得 root 权限进行
操作。
3)案例实操
(1)用普通用户在/opt 目录下创建一个文件夹
[atguigu@hadoop101 opt]$ sudo mkdir module
[root@hadoop101 opt]# chown atguigu:atguigu module/
usermod -g 用户组 用户名
选项 | 功能 |
---|---|
-g | 修改用户的初始登录组,给定的组必须存在。默认组 id 是 1。 |
(1)将用户加入到用户组
[root@hadoop101 opt]# usermod -g root zhubajie
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同 Linux 系统对用户组的规定有所不同, 如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。 用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对 /etc/group文件的更新。
groupadd 组名
(1)添加一个xitianqujing组
[root@hadoop101 opt]#groupadd xitianqujing
groupdel 组名
(1)删除xitianqujing组
[root@hadoop101 opt]# groupdel xitianqujing
groupmod -n 新组名 老组名
选项 | 功能描述 |
---|---|
-n<新组名> | 指定工作组的新组名 |
3)案例实操
(1)修改atguigu组名称为atguigu1
[root@hadoop101 ~]#groupadd xitianqujing
1)基本操作
[root@hadoop101 atguigu]# cat /etc/group
提示:创建组 / 删除组 的终端命令都需要通过 sudo 执行
序号 | 命令 | 作用 |
---|---|---|
01 | groupadd 组名 | 添加组 |
02 | groupdel 组名 | 删除组 |
03 | cat /etc/group | 确认组信息 |
04 | chgrp -R 组名 文件/目录名 | 递归修改文件/目录的所属组 |
提示:
组信息保存在 /etc/group 文件中
/etc 目录是专门用来保存 系统配置信息 的目录
提示:创建用户 / 删除用户 / 修改其他用户密码 的终端命令都需要通过 sudo 执行
提示:
序号 | 命令 | 作用 |
---|---|---|
01 | id [用户名] | 查看用户 UID 和 GID 信息 |
02 | who | 查看当前所有登录的用户列表 |
03 | whoami | 查看当前登录用户的账户名 |
提示
which ls
# 输出
# /bin/ls
which useradd
# 输出
# /usr/sbin/useradd
提示:
cd 这个终端命令是内置在系统内核中的,没有独立的文件,因此用 which 无法找到 cd命令的位置
序 号 | 命令 | 作用 | 说明 |
---|---|---|---|
01 | su - 用户名 | 切换用户,并且切换目录 | - 可以切换到用户家目录,否则保持位置不变 |
02 | exit | 退出当前登录账户 |
su 不接用户名,可以切换到 root ,但是不推荐使用,因为不安全
exit 示意图如下:
Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。 为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做 了不同的规定。在Linux中我们可以使用ll或者ls -l命令来显示一个文件的属性以及文件所属 的用户和组。
如果没有权限,就会出现减号[ - ]而已。从左至右用0-9这些数字来表示:
在Linux中第一个字符代表这个文件是目录、文件或链接文件等等
(2)第1-3位确定属主(该文件的所有者)拥有该文件的权限。—User
(3)第4-6位确定属组(所有者的同组用户)拥有该文件的权限,—Group
(4)第7-9位确定其他用户拥有该文件的权限 —Other
[ r ]代表可读(read): 可以读取,查看
[ w ]代表可写(write): 可以修改,但是不代表可以删除该文件,删除一个文件的前 提条件是对该文件所在的目录有写权限,才能删除该文件
[ x ]代表可执行(execute):可以被系统执行
[ r ]代表可读(read): 可以读取,ls查看目录内容
[ w ]代表可写(write): 可以修改,目录内创建+删除+重命名目录
[ x ]代表可执行(execute):可以进入该目录
find命令用来精细查找文件或目录。基本语法格式如下:
find [查找范围] [查找条件表达式]
find常用的查找条件如下:
同时使用多个查找条件时,各表达式之间可以使用逻辑运算符“-a”、“-o”,分别表示而且(and)、或者(or)。
序号 | 命令 | 作用 |
---|---|---|
01 | chown | 修改拥有者 |
02 | chgrp | 修改组 |
03 | chmod | 修改权限 |
命令格式如下:
# 修改文件|目录的拥有者
chown 用户名 文件名|目录名
# 递归修改文件|目录的组
chgrp -R 组名 文件名|目录名
# 递归修改文件权限
chmod -R 755 文件名|目录名
第一种方式变更权限
chmod [{ugoa}{±=}{rwx}] 文件或目录
第二种方式变更权限
chmod [mode=421 ] [文件或目录]
u:所有者 g:所有组 o:其他人 a:所有人(u、g、o 的总和)
r=4 w=2 x=1 rwx=4+2+1=7
3)案例实操
(1)修改文件使其所属主用户具有执行权限
[root@hadoop101 ~]# cp xiyou/dssz/houge.txt ./
[root@hadoop101 ~]# chmod u+x houge.txt
(2)修改文件使其所属组用户具有执行权限
[root@hadoop101 ~]# chmod g+x houge.txt
(3)修改文件所属主用户执行权限,并使其他用户具有执行权限
[root@hadoop101 ~]# chmod u-x,o+x houge.txt
(4)采用数字的方式,设置文件所有者、所属组、其他用户都具有可读可写可执行权 限。
[root@hadoop101 ~]# chmod 777 houge.txt
(5)修改整个文件夹里面的所有文件的所有者、所属组、其他用户都具有可读可写可 执行权限。
[root@hadoop101 ~]# chmod -R 777 xiyou
chown [选项] [最终用户] [文件或目录] (功能描述:改变文件或者目录的所有 者)
-R 递归操作
(1)修改文件所有者
[root@hadoop101 ~]# chown root:root houge.txt
[root@hadoop101 ~]# chown yfa houge.txt
[root@hadoop101 ~]# ls -al -rwxrwxrwx. 1 atguigu root 551 5 月 23 13:02 houge.txt
(2)递归改变文件所有者和所有组
[root@hadoop101 xiyou]# ll drwxrwxrwx. 2 root root 4096 9 月 3 21:20 xiyou
[root@hadoop101 xiyou]# chown -R atguigu:atguigu xiyou/
[root@hadoop101 xiyou]# ll drwxrwxrwx. 2 atguigu atguigu 4096 9 月 3 21:20 xiyou
chgrp [最终用户组] [文件或目录] (功能描述:改变文件或者目录的所属组)
(1)修改文件的所属组
[root@hadoop101 ~]# chgrp root houge.txt
[root@hadoop101 ~]# ls -al -rwxrwxrwx. 1 atguigu root 551 5 月 23 13:02 houge.
[root@hadoop100 ~]# groupadd bigdata
[root@hadoop100 ~]# groupadd testing
[root@hadoop100 ~]# useradd -g bigdata tom
[root@hadoop100 ~]# id tom
uid=1001(tom) gid=1001(bigdata) 组=1001(bigdata)
[root@hadoop100 ~]# useradd -g bigdata jack
[root@hadoop100 ~]# id jack
uid=1002(jack) gid=1001(bigdata) 组=1001(bigdata)
[root@hadoop100 ~]# useradd -g testing jersey
[root@hadoop100 ~]# id jersey
uid=1003(jersey) gid=1002(testing) 组=1002(testing)
[root@hadoop100 ~]# useradd -g testing mark
[root@hadoop100 ~]# id mark
uid=1004(mark) gid=1002(testing) 组=1002(testing)
[root@hadoop100 home]# cd /home/
[root@hadoop100 home]# ls
jack jersey mark tom yfa
[root@hadoop100 home]# su tom
[tom@hadoop100 home]$ cd ~
[tom@hadoop100 ~]$ pwd
/home/tom
[tom@hadoop100 ~]$ vim bigdata
[tom@hadoop100 ~]$ ll
总用量 4
-rw-r--r--. 1 tom bigdata 30 6月 24 08:58 bigdata
[jack@hadoop100 home]$ cd tom/
bash: cd: tom/: 权限不够
[root@hadoop100 home]# ll
总用量 0
drwx------. 5 jack bigdata 128 6月 24 09:09 jack
drwx------. 3 jersey testing 78 6月 24 08:53 jersey
drwx------. 3 mark testing 78 6月 24 08:53 mark
drwx------. 5 tom bigdata 159 6月 24 09:05 tom
drwx------. 5 yfa yfa 167 6月 23 23:35 yfa
[root@hadoop100 home]# chmod g+rx tom/
[root@hadoop100 home]# ll
总用量 0
drwx------. 5 jack bigdata 128 6月 24 09:09 jack
drwx------. 3 jersey testing 78 6月 24 08:53 jersey
drwx------. 3 mark testing 78 6月 24 08:53 mark
drwxr-x---. 5 tom bigdata 159 6月 24 09:05 tom
drwx------. 5 yfa yfa 167 6月 23 23:35 yfa
[jack@hadoop100 home]$ cd tom/
[jack@hadoop100 tom]$ cat bigdata
Welcome to our bigdata group!
[jack@hadoop100 tom]$ exit
[root@hadoop100 home]# su tom
[tom@hadoop100 home]$ cd ~
[tom@hadoop100 ~]$ chmod g+w bigdata
[tom@hadoop100 ~]$ ll
总用量 4
-rw-rw-r--. 1 tom bigdata 30 6月 24 08:58 bigdata
[jack@hadoop100 home]$ cd tom/
[jack@hadoop100 tom]$ vim bigdata
Welcome to our bigdata group!
Hello ,I'm jack!
~
-- 插入 --
[jack@hadoop100 tom]$ cat bigdata
Welcome to our bigdata group!
Hello,I'm jack!
[root@hadoop100 ~]# id jersey
uid=1003(jersey) gid=1002(testing) 组=1002(testing)
[root@hadoop100 home]# usermod -g bigdata jersey
[root@hadoop100 home]# id jersey
uid=1003(jersey) gid=1001(bigdata) 组=1001(bigdata)
[root@hadoop100 home]# su jersey
[jersey@hadoop100 home]$ cd tom/
[jersey@hadoop100 tom]$ cat bigdata
Welcome to our bigdata group!
Hello,I'm jack!
[jersey@hadoop100 tom]$ vim bigdata
[jersey@hadoop100 tom]$ cat bigdata
Welcome to our bigdata group!
Hello,I'm jack!
Hello,I'm jersey!I'm new coming here!
lsblk (功能描述:查看设备挂载情况)
[root@hadoop100 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 4G 0 part [SWAP]
└─sda3 8:3 0 45G 0 part /
sr0 11:0 1 1024M 0 rom
选项 | 功能 |
---|---|
-f | 查看详细的设备挂载情况,显示文件系统信息 |
对于Linux用户来讲,不论有几个分区,分别分给哪一个目录使用,它总归就是一个根目录、一个独立且唯一的文件结构。
Linux中每个分区都是用来组成整个文件系统的一部分,它在用一种叫做“挂载”的处理方法,它整个文件系统中包含了一整套的文件和目录,并将一个分区和一个目录联系起来, 要载入的那个分区将使它的存储空间在这个目录下获得。
mount [-t vfstype] [-o options] device dir (功能描述:挂载设备)
umount 设备文件名或挂载点 (功能描述:卸载设备)
挂载前:
[root@hadoop100 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 4G 0 part [SWAP]
└─sda3 8:3 0 45G 0 part /
sr0 11:0 1 1024M 0 rom
挂载:
[root@hadoop100 ~]# mkdir /mnt/cdrom
[root@hadoop100 ~]# mount /dev/cdrom /mnt/cdrom
mount: /dev/sr0 写保护,将以只读方式挂载
挂载后:
[root@hadoop100 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 4G 0 part [SWAP]
└─sda3 8:3 0 45G 0 part /
sr0 11:0 1 4.4G 0 rom /mnt/cdrom
[root@hadoop100 ~]# umount /mnt/cdrom
卸载挂载后:
[root@hadoop100 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 4G 0 part [SWAP]
└─sda3 8:3 0 45G 0 part /
sr0 11:0 1 4.4G 0 rom
[root@hadoop100 ~]# vi /etc/fstab
进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地 址空间,并占用一定的系统资源。
ps aux | grep xxx (功能描述:查看系统中所有进程)
ps -ef | grep xxx (功能描述:可以查看子父进程之间的关系)
选项 | 功能 |
---|---|
a | 列出带有终端的所有用户的进程 |
x | 列出当前用户的所有进程,包括没有终端的进程 |
u | 面向用户友好的显示风格 |
-e | 列出所有进程 |
-u | 列出某个用户关联的所有进程 |
-f | 显示完整格式的进程列表 |
USER:该进程是由哪个用户产生的
PID:进程的 ID 号
%CPU:该进程占用 CPU 资源的百分比,占用越高,进程越耗费资源;
%MEM:该进程占用物理内存的百分比,占用越高,进程越耗费资源;
VSZ:该进程占用虚拟内存的大小,单位 KB;
RSS:该进程占用实际物理内存的大小,单位 KB;
TTY:该进程是在哪个终端中运行的。对于 CentOS 来说,tty1 是图形化终端;
tty2-tty6 是本地的字符界面终端。pts/0-255 代表虚拟终端。
STAT:进程状态。
常见的状态有:
R:运行状态、S:睡眠状态、T:暂停状态、 Z:僵尸状态、
s:包含子进程、l:多线程、+:前台显示 、 START:该进程的启动时间
TIME:该进程占用 CPU 的运算时间,注意不是系统时间
COMMAND:产生此进程的命令名
UID:用户 ID
PID:进程 ID
PPID:父进程 ID
C:CPU 用于计算执行优先级的因子。
数值越大,表明进程是 CPU 密集型运算, 执行优先级会降低;数值越小,表明进 程是 I/O 密集型运算,执行优先级会提高
STIME:进程启动的时间
TTY:完整的终端名称
TIME:CPU 时间
CMD:启动进程所用的命令和参数
如果想查看进程的 CPU 占用率和内存占用率,可以使用 aux;
如果想查看进程的父进程 ID 可以使用 ef;
[root@hadoop100 ~]# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.1 194080 7148 ? Ss 6月22 0:15 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root 2 0.0 0.0 0 0 ? S 6月22 0:00 [kthreadd]
root 4 0.0 0.0 0 0 ? S< 6月22 0:00 [kworker/0:0H]
root 6 0.0 0.0 0 0 ? S 6月22 0:02 [ksoftirqd/0]
root 7 0.0 0.0 0 0 ? S 6月22 0:00 [migration/0]
root 8 0.0 0.0 0 0 ? S 6月22 0:00 [rcu_bh]
root 9 0.0 0.0 0 0 ? S 6月22 1:01 [rcu_sched]
root 10 0.0 0.0 0 0 ? S< 6月22 0:00 [lru-add-drain]
root 11 0.0 0.0 0 0 ? S 6月22 0:20 [watchdog/0]
………………
kill [选项] 进程号 (功能描述:通过进程号杀死进程)
killall 进程名称 (功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用)
选项 | 功能 |
---|---|
-9 | 表示强迫进程立即停止 |
[root@hadoop101 桌面]# kill -9 5102
[root@hadoop101 桌面]# killall firefox
pstree [选项]
选项 | 功能 |
---|---|
-p | 显示进程的 PID |
-u | 显示进程的所属用户 |
(1)显示进程 pid
[root@hadoop101 datas]# pstree -p
(2)显示进程所属用户
[root@hadoop101 datas]# pstree -u
top [选项]
选项 | 功能 |
---|---|
-d | 秒数 指定 top 命令每隔几秒更新。默认是 3 秒在 top 命令的交互模式当 中可以执行的命令 |
-i | 使 top 不显示任何闲置或者僵 |
-p | 通过指定监控进程 ID 来仅仅监控某个进程的状态。 |
[root@hadoop100 ~]# ifconfig
ens33: flags=4163 mtu 1500
inet 192.168.130.100 netmask 255.255.255.0 broadcast 192.168.130.255
inet6 fe80::1fa7:9ff0:2147:60a0 prefixlen 64 scopeid 0x20
ether 00:0c:29:b9:5f:4f txqueuelen 1000 (Ethernet)
RX packets 101 bytes 18099 (17.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 98 bytes 11197 (10.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 32 bytes 2592 (2.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 32 bytes 2592 (2.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0: flags=4099 mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:7f:77:8b txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@hadoop100 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
[root@hadoop100 ~]# systemctl status network
● network.service - LSB: Bring up/down networking
Loaded: loaded (/etc/rc.d/init.d/network; bad; vendor preset: disabled)
Active: active (exited) since 五 2022-06-24 16:42:12 CST; 6min ago
Docs: man:systemd-sysv-generator(8)
Process: 930 ExecStart=/etc/rc.d/init.d/network start (code=exited, status=0/SUCCESS)
Tasks: 0
6月 24 16:42:11 hadoop100 systemd[1]: Starting LSB: Bring up/down networking...
6月 24 16:42:12 hadoop100 network[930]: 正在打开环回接口: [ 确定 ]
6月 24 16:42:12 hadoop100 network[930]: 正在打开接口 ens33: [ 确定 ]
6月 24 16:42:12 hadoop100 systemd[1]: Started LSB: Bring up/down networking.
[root@hadoop100 ~]# systemctl status NetworkManager
● NetworkManager.service - Network Manager
Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)
Active: active (running) since 五 2022-06-24 16:42:10 CST; 7min ago
Docs: man:NetworkManager(8)
Main PID: 799 (NetworkManager)
Tasks: 3
CGroup: /system.slice/NetworkManager.service
└─799 /usr/sbin/NetworkManager --no-daemon
6月 24 16:42:13 hadoop100 NetworkManager[799]: [1656060133.2695] device (virbr0-nic): state change: ip-config -...nal')
6月 24 16:42:13 hadoop100 NetworkManager[799]: [1656060133.2702] device (virbr0): state change: secondaries -> ...nal')
6月 24 16:42:13 hadoop100 NetworkManager[799]: [1656060133.2718] device (virbr0): Activation: successful, devic...ated.
6月 24 16:42:13 hadoop100 NetworkManager[799]: [1656060133.2728] device (virbr0-nic): state change: ip-check ->...nal')
6月 24 16:42:13 hadoop100 NetworkManager[799]: [1656060133.2731] device (virbr0-nic): state change: secondaries...nal')
6月 24 16:42:13 hadoop100 NetworkManager[799]: [1656060133.2747] device (virbr0-nic): Activation: successful, d...ated.
6月 24 16:42:13 hadoop100 NetworkManager[799]: [1656060133.3301] device (virbr0-nic): state change: activated -...nal')
6月 24 16:42:13 hadoop100 NetworkManager[799]: [1656060133.3322] device (virbr0): bridge port virbr0-nic was detached
6月 24 16:42:13 hadoop100 NetworkManager[799]: [1656060133.3323] device (virbr0-nic): released from master devi...irbr0
6月 24 16:42:37 hadoop100 NetworkManager[799]: [1656060157.4710] agent-manager: req[0x5585b7e7f190, :1.66/org.g...tered
Hint: Some lines were ellipsized, use -l to show in full.
[root@hadoop100 ~]# systemctl stop network
[root@hadoop100 ~]# systemctl stop NetworkManager
[root@hadoop100 ~]# ifconfig
ens33: flags=4163 mtu 1500
ether 00:0c:29:b9:5f:4f txqueuelen 1000 (Ethernet)
RX packets 203 bytes 24912 (24.3 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 127 bytes 13660 (13.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0: flags=4099 mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:7f:77:8b txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@hadoop100 ~]# systemctl restart NetworkManager
[root@hadoop100 ~]# ifconfig
ens33: flags=4163 mtu 1500
inet 192.168.130.101 netmask 255.255.255.0 broadcast 192.168.130.255
inet6 fe80::1fa7:9ff0:2147:60a0 prefixlen 64 scopeid 0x20
ether 00:0c:29:b9:5f:4f txqueuelen 1000 (Ethernet)
RX packets 245 bytes 27552 (26.9 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 154 bytes 17759 (17.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73 mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 32 bytes 2592 (2.5 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 32 bytes 2592 (2.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
virbr0: flags=4099 mtu 1500
inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255
ether 52:54:00:7f:77:8b txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@hadoop100 ~]# ping 192.168.1.102
PING 192.168.1.102 (192.168.1.102) 56(84) bytes of data.
64 bytes from 192.168.1.102: icmp_seq=1 ttl=128 time=0.757 ms
64 bytes from 192.168.1.102: icmp_seq=2 ttl=128 time=0.791 ms
64 bytes from 192.168.1.102: icmp_seq=3 ttl=128 time=0.709 ms
64 bytes from 192.168.1.102: icmp_seq=4 ttl=128 time=0.805 ms
64 bytes from 192.168.1.102: icmp_seq=5 ttl=128 time=0.580 ms
^C
--- 192.168.1.102 ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4005ms
rtt min/avg/max/mdev = 0.580/0.728/0.805/0.084 ms
[root@hadoop100 ~]# ping cn.bing.com
PING china.bing123.com (202.89.233.101) 56(84) bytes of data.
64 bytes from 202.89.233.101 (202.89.233.101): icmp_seq=1 ttl=128 time=38.0 ms
64 bytes from 202.89.233.101 (202.89.233.101): icmp_seq=2 ttl=128 time=35.6 ms
64 bytes from 202.89.233.101 (202.89.233.101): icmp_seq=3 ttl=128 time=35.4 ms
64 bytes from 202.89.233.101 (202.89.233.101): icmp_seq=4 ttl=128 time=36.1 ms
^C
--- china.bing123.com ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3006ms
rtt min/avg/max/mdev = 35.431/36.312/38.021/1.019 ms
[root@hadoop100 ~]# cat /etc/hostname
hadoop100
[root@hadoop100 ~]# hostnamectl set-hostname hadoop101
[root@hadoop100 ~]# cat /etc/hostname
hadoop101
[root@hadoop100 ~]#