linux 大数据王者 不得不会的命令

一.linux命令

window装xshell或者crt  百度下载

------------------------------------------------

1.root

[root@ruozedata001 ~]# 

root 默认管理员  最大权限
ruozedata001 机器名称
~ 当前该用户的 家目录  /root

2.pwd 查看当前光标所在的目录 路径

[root@ruozedata001 ~]# pwd
/root
[root@ruozedata001 ~]# 

3.ls 查看

[root@ruozedata001 ~]# ls
ls 显示文件夹 文件名称
ls -l 显示额外信息  权限 用户用户组 时间 大小
ls -l -a  也显示隐藏文件夹 文件
[root@ruozedata001 ~]# ls -l -a
total 40
dr-xr-x---.  6 root root 4096 Apr 15 21:51 .
dr-xr-xr-x. 17 root root 4096 Aug  8  2018 ..
-rw-------.  1 root root 3814 Apr 15 21:49 .bash_history
-rw-r--r--.  1 root root   18 Dec 29  2013 .bash_logout
隐藏文件夹 文件是以.开头 

ls -l -h  仅仅查看文件的大小
ls -l -r -t  按时间排序如何快速找到哪些文件 更新了

ls -l ==》ll 等价
ll -a
ll -rt
ll -h

4.mkdir 创建文件夹

[root@ruozedata001 ~]# mkdir ruozedata
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# ls
ruozedata
[root@ruozedata001 ~]# 

mkdir dir1 dir2 dir3 并
mkdir -p dir4/dir5/dir6  串 级联创建

5.cd 切换目录 路径

[root@ruozedata001 ~]# cd /
Linux系统 从根目录 标识 /

cd dir1  进入dir1文件夹
cd ../ 退上一层目录
cd ../../  2层


root用户     家目录  /root
普通xx用户   家目录  /home/xx
家目录 是 ~ 表示 
如何进家目录:
	cd /root
	cd 直接回车   J哥习惯
	cd ~


cd - 回退到上一次的目录
[root@ruozedata001 ~]# cd dir4
[root@ruozedata001 dir4]# cd dir5/dir6
[root@ruozedata001 dir6]# 
[root@ruozedata001 dir6]# cd -
/root/dir4
[root@ruozedata001 dir4]# 

6.命令帮助 help

[root@ruozedata001 /]# ls --help
Usage: ls [OPTION]... [FILE]...

[]标识的  可选
...  多个参数

Usage: ls [OPTIONS]
Usage: ls XXX [OPTIONS]

List information about the FILEs (the current directory by default).
Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.

Mandatory arguments to long options are mandatory for short options too.
  -a, --all                  do not ignore entries starting with .
  -A, --almost-all           do not list implied . and ..

7.清楚屏幕 clear

8.mv移动 cp复制

mv是始终一份  快
cp是两份      慢

不标准写法:
mv dir1  ruozedata
cp -r dir2 ruozedata

标准写法:
mv dir1  ruozedata/dir1
cp -r dir2 ruozedata/dir2

小作业:
mv dir1  ruozedata/dir111
cp -r dir2 ruozedata/dir222

也支持修改名称
mv  dir2 dir22
cp -r dir3 dir33

9.创建文件

touch 1.log  空文件
vi    2.log
	默认命令行
	i键 编辑模式,进行编辑
	esc键 从编辑模式--》命令行模式
	shift+:键 从命令行模式--》尾行模式,输入wq 保存退出


主要场景是为了  覆盖内容 或者 追加内容 
echo "ruozedata" > 3.log
打印一句话       

> 创建或覆盖    【高危命令1】
>> 追加

10.查看文件内容 log config data

cat  文件内容一下子全部显示  ctrl+z 中断
more 文件内容一页页往下翻,按空格往下  回退不了 q退出
less 文件内容 按上下键   q退出


cat 文件内容 少
more 文件内容 稍微多点

tail 实时查看文件最新内容
	tail -f xxx.log
	tail -F yyy.log   =-f+ retry

场景: 采集业务log日志内容 log4j
     规则: 每份100m 保留10份
     系统--》 erp.log 90m ...100m
            mv erp.log  erp.log1
	    touch erp.log

	    ll命令查看
	    erp.log 
	    erp.log1
	    erp.log2
	    ....
	    erp.log10
              
项目喂出来 踩坑 

大数据Flume组件 exec source:  tail -F erp.log

想要查看文件内容倒数100行,同时实时监控
tail -100f   xxx.log
tail -100F   xxx.log  错误的 

文件内容超多  定位ERROR 信息
cat xxx.log | grep ERROR   当前行
cat xxx.log | grep -A 5 ERROR   后5行
cat xxx.log | grep -B 5 ERROR   前5行
cat xxx.log | grep -C 5 ERROR   前后各5行

| 管道符 

grep 过滤


比如 xxx.log ERROR 很多  上万个 
cat xxx.log | grep -C 5 ERROR > 20200418error.log
more 20200418error.log  


文件内容100m   :
	vi xxx.log
		shift+:  
		/ 
		ERROR
		n寻找
        下载到window  
	editplus(window)  
	notepad++ 
	sublime(widnow  mac)工具 搜索  统计 校验  

11. 上传下载

安装工具包 yum install -y lrzsz
sz xxx.log是下载 Linux--》window
rz 是上传   window--》Linux

12.别名 alias

[root@ruozedata001 log]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
[root@ruozedata001 log]# 

只在当前会话生效  
[root@ruozedata001 log]#  alias jj='cd /tmp'
其他会话不生效
[root@ruozedata001 ~]# jj
-bash: jj: command not found
[root@ruozedata001 ~]# 

是因为没有在环境变量文件配置 

13.环境变量

全局 : /etc/profile    所有用户都可以使用  

个人: ~/.bash_profile   只能是当前用户使用  其他不能使用
      ~/.bashrc 【J哥推荐】
      场景: ssh 远程执行B机器 命令  找不到   java command not found 
            直接登录B机器 命令是找到的   which java有的   

	    命令的环境变量配置在.bash_profile  是不正确的。
	    应该配置在.bashrc文件



生效文件:
	source /etc/profile
	source ~/.bash_profile
	source ~/.bashrc
        cd 进家目录
	. .bashrc  

14.创建用户

root 默认管理员用户 已存在的 
jepson
[root@ruozedata001 tmp]# useradd jepson
[root@ruozedata001 tmp]# su - jepson
[jepson@ruozedata001 ~]$ pwd
/home/jepson
[jepson@ruozedata001 ~]$ 

[jepson@ruozedata001 ~]$ jj  是因为jj配置在全局变量文件 
[jepson@ruozedata001 tmp]$ pwd
/tmp
[jepson@ruozedata001 tmp]$ 
[jepson@ruozedata001 tmp]$ 

15.自动补全 释放你的手指 节省力量

tab键一次,只有1个 命令自动补全
           多个  没响应
   按二次,会把当前匹配到的 所有 打印出来,再挑选

16.history 历史命令

!2  执行第二行命令 

history -c 清空历史 

直连 服务器           ok
跳板机(vpn)  服务器   ok
堡垒机  敲一个命令 都记录  堡垒机系统里   web界面 可视化

17.【高危命令】 rm

千万不要做 rm -rf / 一了百了

[root@ruozedata001 ~]# rm 11.log
rm: remove regular file ‘11.log’? y

[root@ruozedata001 ~]# rm -f 1.log

[root@ruozedata001 ~]# rm -r dir22
rm: remove directory ‘dir22’? y

[root@ruozedata001 ~]# rm -rf dir33
[root@ruozedata001 ~]# 


场景:
	脚本里

LOG_PATH=/xxx/yyy
业务逻辑判断 去赋值
   漏了一种  没有赋值
rm -rf ${LOG_PATH}/*  ==》rm -rf /*

该怎么避免 :
每次删除之前 都判断${LOG_PATH} 是否存在 

作业:
1.上次和这次课的 命令 对照敲一篇
2.整理博客  


补充:
[root@JD ~]# hostnamectl set-hostname ruozedata001


[root@ruozedata001 ~]# ifconfig 找内网ip 或者 京东云控制台查看  
[root@ruozedata001 ~]# vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.0.3 ruozedata001     

18.用户 用户组

[root@ruozedata001 ~]# ll /usr/sbin/user*
-rwxr-x--- 1 root root 118192 Nov  6  2016 /usr/sbin/useradd
-rwxr-x--- 1 root root  80360 Nov  6  2016 /usr/sbin/userdel
-rwxr-x--- 1 root root 113840 Nov  6  2016 /usr/sbin/usermod
-rwsr-xr-x 1 root root  11296 Apr 13  2017 /usr/sbin/usernetctl
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# ll /usr/sbin/group*
-rwxr-x--- 1 root root 65480 Nov  6  2016 /usr/sbin/groupadd
-rwxr-x--- 1 root root 57016 Nov  6  2016 /usr/sbin/groupdel
-rwxr-x--- 1 root root 57064 Nov  6  2016 /usr/sbin/groupmems
-rwxr-x--- 1 root root 76424 Nov  6  2016 /usr/sbin/groupmod
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# 


[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# useradd ruoze
[root@ruozedata001 ~]# id ruoze
uid=1004(ruoze) gid=1004(ruoze) groups=1004(ruoze)
[root@ruozedata001 ~]# 

创建一个普通用户  用户名称 ruoze 
同时也会创建一个 ruoze用户组
设置ruoze用户的组为ruoze,且把这个ruoze用户组设置为 主组
同时也创建家目录  /home/ruoze 
[root@ruozedata001 ~]# ll /home
drwx------   2 ruoze  ruoze    59 Apr 19 20:10 ruoze

用户存储信息 /etc/passwd
用户组       /etc/group


[root@ruozedata001 ~]# userdel ruoze
[root@ruozedata001 ~]# useradd ruoze
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
Creating mailbox file: File exists
[root@ruozedata001 ~]# 



样式丢失
[root@ruozedata001 ~]# su - ruoze
Last login: Sun Apr 19 20:16:54 CST 2020 on pts/0
[ruoze@ruozedata001 ~]$ ll -a
total 16
drwx------  2 ruoze ruoze  79 Apr 19 20:16 .
drwxr-xr-x. 7 root  root   67 Apr 19 20:10 ..
-rw-------  1 ruoze ruoze  28 Apr 19 20:17 .bash_history
-rw-r--r--  1 ruoze ruoze  18 Apr 11  2018 .bash_logout
-rw-r--r--  1 ruoze ruoze 193 Apr 11  2018 .bash_profile
-rw-r--r--  1 ruoze ruoze 231 Apr 11  2018 .bashrc
[ruoze@ruozedata001 ~]$ rm -rf .bash*
[ruoze@ruozedata001 ~]$ ll -a
total 0
drwx------  2 ruoze ruoze  6 Apr 19 20:17 .
drwxr-xr-x. 7 root  root  67 Apr 19 20:10 ..
[ruoze@ruozedata001 ~]$ 
[ruoze@ruozedata001 ~]$ 
[ruoze@ruozedata001 ~]$ exit
logout
[root@ruozedata001 ~]# su - ruoze
Last login: Sun Apr 19 20:17:08 CST 2020 on pts/0
-bash-4.2$ 
-bash-4.2$ 
-bash-4.2$ 
-bash-4.2$ id
uid=1004(ruoze) gid=1004(ruoze) groups=1004(ruoze)
-bash-4.2$ 


-bash-4.2$ cp /etc/skel/.* ./
cp: omitting directory ‘/etc/skel/.’
cp: omitting directory ‘/etc/skel/..’
-bash-4.2$ ll -a
total 16
drwx------  2 ruoze ruoze  79 Apr 19 20:20 .
drwxr-xr-x. 7 root  root   67 Apr 19 20:10 ..
-rw-------  1 ruoze ruoze  39 Apr 19 20:18 .bash_history
-rw-r--r--  1 ruoze ruoze  18 Apr 19 20:20 .bash_logout
-rw-r--r--  1 ruoze ruoze 193 Apr 19 20:20 .bash_profile
-rw-r--r--  1 ruoze ruoze 231 Apr 19 20:20 .bashrc
-bash-4.2$ 

样式恢复
-bash-4.2$ 
-bash-4.2$ exit
logout
[root@ruozedata001 ~]# su - ruoze
Last login: Sun Apr 19 20:18:56 CST 2020 on pts/0
[ruoze@ruozedata001 ~]$ 
[ruoze@ruozedata001 ~]$ 
[ruoze@ruozedata001 ~]$ 


添加用户到bigdata用户组
[root@ruozedata001 ~]# groupadd bigdata

[root@ruozedata001 ~]# usermod    -a -G bigdata      ruoze
[root@ruozedata001 ~]# id ruoze
uid=1004(ruoze) gid=1004(ruoze) groups=1004(ruoze),1005(bigdata)
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# usermod -g bigdata ruoze
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# id ruoze
uid=1004(ruoze) gid=1005(bigdata) groups=1005(bigdata)
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# usermod    -a -G ruoze      ruoze
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# id ruoze
uid=1004(ruoze) gid=1005(bigdata) groups=1005(bigdata),1004(ruoze)
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# 

19.设置密码passwd

[root@ruozedata001 ~]# passwd
Changing password for user root.
New password: 

[root@ruozedata001 ~]# passwd ruoze
Changing password for user ruoze.
New password: 
BAD PASSWORD: The password is shorter than 8 characters
Retype new password: 
passwd: all authentication tokens updated successfully.
[root@ruozedata001 ~]# 

20.切换用户

su ruoze
su - ruoze 【J哥推荐】
     代表该用户切换到家目录,且执行环境变量文件
[root@ruozedata001 ~]# pwd
/root
[root@ruozedata001 ~]# su ruoze
[ruoze@ruozedata001 root]$ pwd
/root
[ruoze@ruozedata001 root]$ exit
exit

[root@ruozedata001 ~]# su - ruoze
Last login: Sun Apr 19 20:33:23 CST 2020 on pts/2
[ruoze@ruozedata001 ~]$ pwd
/home/ruoze
[ruoze@ruozedata001 ~]$ 

21.sudo

普通用户临时使用root的最大权限
vi /etc/sudoers
ruoze   ALL=(root)      NOPASSWD:ALL

[ruoze@ruozedata001 ~]$ cat /root/rz.log
cat: /root/rz.log: Permission denied
[ruoze@ruozedata001 ~]$ 
[ruoze@ruozedata001 ~]$ 
[ruoze@ruozedata001 ~]$ sudo cat /root/rz.log
www.ruozedata.com
[ruoze@ruozedata001 ~]$ 

22./etc/passwd文件

ruoze:x:1004:1005::/home/ruoze:/sbin/nologin  提示 
ruoze:x:1004:1005::/home/ruoze:/usr/bin/false 没提示 

CDH平台  hdfs yarn hive hbase
su - yarn 不成功的 

/sbin/nologin /usr/bin/false ===》/bin/bash

23.权限

[root@ruozedata001 ~]# ll
-rw-r--r-- 1 root root  9 Apr 18 20:50 22.log
drwxr-xr-x 2 root root  6 Apr 15 22:12 dir3
第一个字母:d文件夹 -文件 l连接
后面9个字母,3个字母为一组:
rw- r-- r--

r: read  读权限 4
w: write 写权限 2
x: 执行         1
-: 没权限       0  占位 

7=4 2 1
5=4 1
6=4 2


rw- 第一组 6  代表文件或文件夹的所属用户,读写权限
r-- 第二组 4  代表文件或文件夹的所属用户组,读权限
r-- 第三组 4  代表其他用户组的用户对这个文件或文件夹,读权限

rw-r--r--    root root     22.log

关于权限:
chmod -R 777          文件或文件夹
chown -R 用户:用户组  文件或文件夹


3=2+1 w x

r-x

案例:
[root@ruozedata001 tmp]# vi ruoze.log
www.ruozedata.com

[ruoze@ruozedata001 tmp]$ cat  ruoze.log 
www.ruozedata.com
[ruoze@ruozedata001 tmp]$ 

收回其他组的r权限 
[root@ruozedata001 tmp]# chmod 640 ruoze.log
[ruoze@ruozedata001 tmp]$ cat  ruoze.log 
cat: ruoze.log: Permission denied

24.大小

文件: ll -h 、du -sh
文件夹:        du -sh

25.搜索 find

接手大数据平台,服务器登录,大数据组件安装目录在哪?

find / -name ‘hadoop
find /home/hadoop/ -name ‘hadoop

补充:
history 命令
ps -ef 查看进程

26.vi命令

26.1 正常编辑一个文件,要正常退出 wq

反之:
-rw-r--r--   1 root  root       16 Apr 19 21:26 2.log
-rw-r--r--   1 root  root    12288 Apr 19 21:31 .2.log.swp


rm -rf .2.log.swp

26.2 粘贴的坑,必须进入编辑模式,否则第一行内容丢失 不完整

26.3 搜索 尾行–》 /error

26.4 行号

尾行–》 set nu 设置行号
set nonu 取消行号

 f 也是可以显示 当前光标的所在的行

26.5 常用快捷方式

dd 删除当前行
dG 删除当前及以下所有行
ndd 删除当前及以下n行


gg 跳转到第一行的第一个字母
G  跳转到最后一行的第一个字母
shift+$ 行尾 


场景:
清空这个文件内容,从另外一个文件内容 拷贝过来
gg--》dG   --》 i  -->鼠标右键单击 粘贴上


清空补充:
cat /dev/null > 1.log
echo  "" > 2.log

[root@ruozedata001 ~]# ll
total 16
-rw-r--r-- 1 root  root     0 Apr 19 21:58 1.log
-rw-r--r-- 1 root  root     1 Apr 19 21:58 2.log

场景:
shell脚本,数据文件清空操作,根据字节大小判断是否清空完成

echo  "" > 2.log
if filezie > 0 then
   业务不操作

else
    2.log 灌业务数据


作业:
1.课堂的命令对照做,梳理笔记为自己的
2.博客  五一前 检查各位博客 

true > 1.log 也是清空文件内容 0字节

27.系统常用检查命令

磁盘 df -h
内存 free -m
负载 top

[ruoze@ruozedata001 ~]$ free -m 
              total        used        free      shared  buff/cache   available
Mem:           7823         222        6229         257        1371        7096
Swap:             0           0           0
大数据 生产服务器 swap是设置0  10也可以


[ruoze@ruozedata001 ~]$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1        40G   16G   25G  39% /

/dev/vdb1        2T   16G   25G  1% /data01
/dev/vdb2        2T   16G   25G  1% /data02
/dev/vdb3        2T   16G   25G  1% /data03
/dev/vdb4        2T   16G   25G  1% /data04

500G ssd

不要
devtmpfs        3.9G     0  3.9G   0% /dev
tmpfs           3.9G   16K  3.9G   1% /dev/shm
tmpfs           3.9G  258M  3.6G   7% /run
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
tmpfs           783M     0  783M   0% /run/user/1004
[ruoze@ruozedata001 ~]$ 


系统负载 
load average: 0.01, 0.03, 0.05
	      1min   5min  15min

经验值: 10  生产不用超过这个 ,否则认为服务器就是卡 
a.是你的程序有问题 在大量跑计算
b.是不是被挖矿 yarn redis 最容易被hacker 攻击
c.硬件问题  内存条 硬盘   重启 

top - 21:20:22 up 7 days, 58 min,  1 user,  load average: 0.01, 0.03, 0.05
Tasks:  89 total,   1 running,  88 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.2 us,  0.5 sy,  0.0 ni, 99.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.3 st
KiB Mem :  8011076 total,  6377388 free,   229060 used,  1404628 buff/cache
KiB Swap:        0 total,        0 free,        0 used.  7265724 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                  
 2374 root      20   0  394348  31376   8608 S   0.3  0.4  41:44.99 jdog-kunlunmirr                          
    1 root      20   0  125356   3796   2508 S   0.0  0.0   1:22.32 systemd                                  
    2 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kthreadd                                 
    3 root      20   0       0      0      0 S   0.0  0.0   0:00.08 ksoftirqd/0                              
    5 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:0H                             
    6 root      20   0       0      0      0 S   0.0  0.0   0:02.50 kworker/u4:0  

28.yum安装

 yum search httpd
 yum install httpd

centos6:
service httpd status|start|stop  1个应用httpd

centos7:
service httpd status|start|stop  兼容
systemctl status|start|stop httpd app2 app3 app4  一次性操作多个应用


搜索 卸载:
[root@ruozedata001 ~]# rpm -qa|grep http
httpd-2.4.6-90.el7.centos.x86_64
httpd-tools-2.4.6-90.el7.centos.x86_64
[root@ruozedata001 ~]# rpm -e 包名称 --nodeps

[root@ruozedata001 ~]# yum remove httpd-2.4.6-90.el7.centos.x86_64

29.进程 端口号

ps -ef | grep http
kill -9 16629
kill -9 16630 16631  16632  16633  16634

根据匹配字段 搜索所有符合的进程 全部杀死 
但是: 生产慎用 除非你先ps查看 这个关键词搜索的进程 是不是都是你想要杀死的进程 
保不齐有个其他服务的进程 会造成误杀 生产事故!!!

[root@ruozedata001 ~]# ps -ef|grep http
root     18363     1  0 21:51 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   18364 18363  0 21:51 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   18365 18363  0 21:51 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   18366 18363  0 21:51 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   18367 18363  0 21:51 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   18368 18363  0 21:51 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
root     18387 15881  0 21:51 pts/2    00:00:00 grep --color=auto http
[root@ruozedata001 ~]# kill -9 $(pgrep -f httpd)
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# ps -ef|grep http
root     18444 15881  0 21:52 pts/2    00:00:00 grep --color=auto http
[root@ruozedata001 ~]# 


[root@ruozedata001 ~]# ps -ef|grep http
root     18670     1  0 21:53 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   18671 18670  0 21:53 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   18672 18670  0 21:53 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   18673 18670  0 21:53 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   18674 18670  0 21:53 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   18675 18670  0 21:53 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
root     18696 15881  0 21:54 pts/2    00:00:00 grep --color=auto http


[root@ruozedata001 ~]# yum install -y net-tools.x86_64
[root@ruozedata001 ~]# netstat -nlp| grep 18670
tcp6       0      0 :::80                   :::*                    LISTEN      18670/httpd         
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# netstat -nlp| grep 18671
[root@ruozedata001 ~]# netstat -nlp| grep 18672
[root@ruozedata001 ~]# netstat -nlp| grep 18673
[root@ruozedata001 ~]# 

进程不一定都会起到端口号 
但是  与其他服务通信 比如需要端口号!!!


老板: 去打开xxx服务器的应用yyy的网页?你会涉及到哪些Linux命令
ip
ps -ef|grep yyy --》pid
netstat -nlp|grep pid --》port

浏览器: http://ip:port


细节:
[root@ruozedata001 ~]# netstat -nlp| grep 18670
tcp6       0      0 :::80                   :::*                    LISTEN      18670/httpd         
tcp6       0      0 0.0.0.0:80                   :::*                    LISTEN      18670/httpd         
tcp6       0      0 192.168.0.3:80                   :::*                    LISTEN      18670/httpd         


tcp6       0      0 127.0.0.1:80                   :::*                    LISTEN      18670/httpd         
tcp6       0      0 localhost:80                   :::*                    LISTEN      18670/httpd         
危险: 该服务只能自己服务器的里面自己访问自己  


ping   ip
telnet ip port

window cmd:
ping 114.67.101.143
telnet 114.67.101.143 80

Linux:
[root@ruozedata001 ~]# telnet ruozedata001 80
Trying 192.168.0.3...
Connected to ruozedata001.
Escape character is '^]'.
^Z
Connection closed by foreign host.
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# telnet ruozedata001 809
Trying 192.168.0.3...
telnet: connect to address 192.168.0.3: Connection refused
[root@ruozedata001 ~]# 


有可能你的服务器 防火墙 开启,云主机 需要开启 安全组策略 
直接找Linux运维 网络工程师 加防火墙(硬件)策略  

总结:
Connection refused
1.ping   ip 因为服务器是ping功能禁止
2.telnet ip  port  ok


配置企业级别yum源 取代互联网的repo文件的URL

物理隔绝

30.下载

wget https://repo1.maven.org/maven2/org/apache/spark/spark-core_2.12/2.4.5/spark-core_2.12-2.4.5.jar
curl https://repo1.maven.org/maven2/org/apache/spark/spark-core_2.12/2.4.5/spark-core_2.12-2.4.5.jar -O  spark-core_2.12-2.4.5.jar

31.压缩 解压

zip -r xxx.zip xxx/*
unzip xxx.zip

tar -czvf xxxx.tar.gz  xxxx/*
tar -xzvf xxxx.tar.gz

Examples:
  tar -cf archive.tar foo bar  # Create archive.tar from files foo and bar.
  tar -tvf archive.tar         # List all files in archive.tar verbosely.
  tar -xf archive.tar          # Extract all files from archive.tar.

32.命令找不到

[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# ls
dir1  dir1.tar.gz
[root@ruozedata001 ~]# which ls
alias ls='ls --color=auto'
        /usr/bin/ls
[root@ruozedata001 ~]# which jjj
/usr/bin/which: no jjj in (/home/dwz/app/python3/bin:/usr/java/jdk1.8.0_181/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin)
[root@ruozedata001 ~]# 

想要命令快速找到  which xxx 来验证,其实就是提前将命令的目录配置在环境变量$PATH
echo $PATH 来查看是否将命令的目录配置上!

[root@ruozedata001 ~]# echo $PATH
/home/dwz/app/python3/bin:/usr/java/jdk1.8.0_181/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
[root@ruozedata001 ~]# jjj
-bash: jjj: command not found
[root@ruozedata001 ~]# 

 command not found
 a.没安装上
 b.路径没配置

33.定时

 脚本:
 [root@ruozedata001 ~]# 
[root@ruozedata001 ~]# vi ruoze.sh
#!/bin/bash
date

[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# ll
total 8
drwxr-xr-x 2 root root  30 Apr 22 22:50 dir1
-rw-r--r-- 1 root root 128 Apr 22 22:49 dir1.tar.gz
-rw-r--r-- 1 root root  19 Apr 22 23:02 ruoze.sh
[root@ruozedata001 ~]# ./ruoze.sh
-bash: ./ruoze.sh: Permission denied
[root@ruozedata001 ~]# sh ./ruoze.sh
Wed Apr 22 23:02:36 CST 2020
[root@ruozedata001 ~]# chmod 744 ruoze.sh
[root@ruozedata001 ~]# ll
total 8
drwxr-xr-x 2 root root  30 Apr 22 22:50 dir1
-rw-r--r-- 1 root root 128 Apr 22 22:49 dir1.tar.gz
-rwxr--r-- 1 root root  19 Apr 22 23:02 ruoze.sh
[root@ruozedata001 ~]# ./ruoze.sh 
Wed Apr 22 23:03:17 CST 2020
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# 
[root@ruozedata001 ~]# date
Wed Apr 22 23:03:21 CST 2020

[root@ruozedata001 ~]# crontab -e
* * * * * /root/ruoze.sh >> /root/ruoze.log

分
小时
日
月
周

* 表示 每


* * * * *  每分钟 
*/1 * * * *  每分钟

面试题: 每隔10s打印一次 怎么做
 
*/6 * * * * 每6分钟


[root@ruozedata001 ~]# vi ruoze2.sh
#!/bin/bash
for((i=1;i<=6;i++));
do
	date
	sleep 10s
done


[root@ruozedata001 ~]# chmod +x ruoze2.sh

34.后台执行脚本

nohup  /root/ruoze.sh >> /root/ruoze.log 2>&1 &  生产标准写法

35.修改机器hostname

临时修改  hostname XXX
用久修改  打开 /etc/hostname 进行修改

36. grep 出文件中的配置

[root@XX zabbix-server-mysql-XX]# grep '^[a-Z]'    /etc/zabbix/zabbix_server.conf 
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
DBHost=XX
DBName=zabbix
DBUser=XX
DBPassword=XX
DBPort=3306
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000

37.linux防火墙命令

1:查看防火状态

systemctl status firewalld

service  iptables status

2:暂时关闭防火墙

systemctl stop firewalld

service  iptables stop

3:永久关闭防火墙

systemctl disable firewalld

chkconfig iptables off

4:重启防火墙

systemctl enable firewalld

service iptables restart  

5:永久关闭后重启

//暂时还没有试过

chkconfig iptables on
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值