目录
命令解释
-rf : r代表递归 f代表强制
1.1 查看目录(ll)
查看目录
ls
查看目录包括隐藏
ls -a
查看目录和详细信息
ll
显示当前工作目录
pwd
时间排序
ll -rt
创建文件夹或文件(mkdir)
mkdir 文件夹名
创建多级文件夹
mkdir a/b
空文件创建
touch xxx.txt
剪切/改名(mv)
文件剪切/test.jar剪切到 root目录下
mv test.jar /root/
文件夹剪切/ test文件夹剪切到 root目录下
mv -rf test /root/
不给目录就是改名 /test.jar 改名为 root.jar
mv test.jar root.jar
文件夹改名
mv oldTest newTest
复制(cp)
将test文件夹 拷贝到root目录下
cp -rf test /root/
将test文件夹 拷贝到同级的test1目录下
cp -rf test test1/
复制当前文件夹下所有东西 复制到 最终目录
cp * -rf /usr/local/data/test1/
删除(rm)
文件夹必须加 -rf 删除 r递归 f强制不提示
rm -rf test
查看文件(cat,tail,view)
文件查看
cat /root/文件名 只能显示头 一屏内容
less
1 用法 less 文件名
2 场景打印文本过长大于一页。和view用法基本一样
3 空格-->下一页pageDn 上一页pageUp
more
1 用法 more 文件名
2 场景打印文本过长大于一页。和view用法基本一样
2 enter下一行,空格-->下一页, b 上一页 , shift+pagedown 下一页, shift+pageup 上一页 ,
tail -n 10 -f 文件名 显示后10行 -表示从结尾往上,计数;+表示从开始往下计数
tail -n 文件名 n为可变,20就是显示后20行
tail -f 文件名 监控日志,报错信息,默认显示 大约20行
view 文件名
ctrl+f 下一页, ctrl+b上一页 ,
shift+pagedown 下一页, shift+pageup 上一页 ,
"?/" 查字符串, n 下一个字符串, N表示查找上一个
shift :q退出 ,"Ctrl+zz"退出
重点:view 方式,一段打印日志太大,可能显示这样:打印开始~~~~~
不是没有日志,在下一页呢。曾经我一度认为服务商报错呢。
清空文件内容(cat)
cat /dev/null > filename
查看文件大小(du)
du -sh access.log
搜索文件(find)
root目录下 搜索test开头的文件或者文件夹
find /root -name 'test*'
搜索文件xx.rb ll *.rb
搜索文件 (查找 /根下的 -name 以名字为条件)
find / -name nginx.conf
上传下载文件(rz,sz)
文件上传 rz
文件下载 sz
文件下载 (联网)
wget http://aaa.as.a.html
文件编辑(vi,vim)
vim 是vi的升级 基本相同
安装vim
yum -y install vim*
编辑文件xxx.txt
vim xxx.txt
此时是命令模式
gg 会跳到文件开头
G 会跳到文件末尾
"?/" 会帮助我们搜索文件中的关键字
步骤:按"?/" --->回车---> 按 n 下一个关键字
命令模式 进入编辑模式(i,o,O,a 都可以进入可编辑模式) 编辑的时候不要用小键盘的数字
按小写的i, 光标不动 (我只记这个)
按大写的I,光标会出现在本行的头部
按小写的o,光标会出现在下一行的头部
按大写的O,光标会出现在上一行的头部
Esc退出编辑模式
Ctrl +z z 不保存退出(按住Ctrl +z + z)
:q! 不保存退出
:w 保存不退出
:wq 或者shift +z z 保存并退出 (按住shift +z + z)
test文件夹权限(chmod)
777: 所有用户都可读可写可执行。,任何人如所有者、管理者、访客、注册用户、非注册用户等,均可操作任何权限。
755:当前者拥有读、写、执行的权限;用户组是读和执行的权限;公共访客组也是读和执行的权限
chmod -R 755 test
脚本权限(chmod)
chmod u+x xxx.sh
将当前文件夹下所有东西打成war
jar cvf solr.war ./*
打包解压(tar)
只打包
将hello和hello1打包成xxx.tar (c打包 v显示打包过程 f打包的文件名)
tar -cvf xxx.tar hello.text hello1.text
将所有hello开头的文件打包成xxx.tar
tar -cvf xxx.tar hello*
aaa文件夹下文件 都打包
tar -cvf xxx.tar /usr/local/aaa/*
打包并压缩文件
把hello文件打包压缩为xxx (z 代表==>gzip是无损压缩算法)
tar -zcvf xxx.tar.gz hello.text
解压
把xxx.tar解压到boot目录下 (x ==>解压) (-C 不写就是解压到当前文件夹)
tar -xvf xxx.tar -C /root
把xxx解压到boot目录下
tar -zxvf xxx.tar.gz -C /root
zip命令
压缩
当前目录下的所有文件和文件夹全部压缩成myfile.zip文件 (-r表示递归压缩子目录下所有文件.)
zip -r myfile.zip ./*
解压
把myfile.zip文件解压到 /home/sunny/
(-o:不提示的情况下覆盖文件; -d 指明将文件解压缩到/home/sunny目录下;)
unzip -o -d /home/sunny myfile.zip
rpm
rpm redhot package manager 包管理工具
我的理解:jdk安装,我可以用 rpm来完成,也可以自己安装.。RPM方式的出现,让Linux易于安装,升级
查看安装过的所有软件 (q 查询 a是all 所有)
rpm -qa query
查看安装的
jdk rpm -qa | grep jdk
卸载jdk (erase 橡皮擦)
rpm -e jdk全名
卸载jdk (nodeps (忽略依赖) node节点)
rpm -e --nodeps jdk全名
安装 (install安装 verbose(进度条) hash值(帮你验证是否缺损或者怎么样))
rpm -ivh
安装到别的目录下 (指定安装目录)
rpm -ivh --relocate /=/usr/local/ xxx.rpm
1.2 查询想要的进程(ps)
标准格式 e显示所有进程 full 全格式
ps -ef : grep jdk
查询想要的进程 ,查找jdk进程 progress进程
ps -cf : grep jdk
杀死进程(kill)
kill -9 2830
1.3系统的网卡信息
ifconfig
1.4 查看网络及端口
查看当前系统的端口使用:
netstat -an
某个网络端口是否可访问 telnet
1:云上服务器配置安全组, 2:目标服务器 必须在 连接的端口下 有服务占用
下面的例子:192.168.12.12 的服务器 下必须有服务占用 8080 才能 通
安装 telnet
yum install telnet
是否能通网络
ping 192.168.12.12
端口是否能通,不通查看该端口是否放开
telnet 192.168.12.12 8080
可以域名+端口,不可以只有域名
telnet www.aaa.love 3306
必须域名+端口 即使是默认端口也要加(重点)
telnet www.aaa.love 80
显示的ip就是这个域名绑定的ip之一。多次telnet www.baidu.com 还是那一个ip,就说明 这个域名就配置了一个ip.
退出
quit
下图 是在linux下 通的结果。
网络相关信息 Netstat
场景: 端口被占用 ,kill -9 pid
sudo lsof -i:8082
看的端口是否被监听 (该端口被谁占用)
既可搜端口,又可搜名
查看在指定端口运行的程序
netstat -anp|grep 端口号
查看程序运行的端口
netstat -anp | grep mysql
列表展示信息 (详细)
netstat -nltp
netstat -nltp|grep 82
解析:127.0.0.1:8082 只能本机访问 8082, sidekig进程占用这个端口, kill -9 1722 能插死这个进程
0.0.0.0:82 外界都能访问
第一个叫本地地址 :
第二个叫外部地址 :与本地服务器通信的另外的地址
curl访问接口域名
场景:服务器上调用第三方接口通不通,不方便修改,测试不同参数等。apipost 即可实现
跳板机-->目标服务器
ssh 目标ip 回车 密码
切换到root用户
sudo su
临时使用root权限(生产环境这个适用)
sudo -i
磁盘空间不足
查看哪个不足
df -Th
暴力方式 根目录下 执行 查看具体哪大。 在哪个文件夹下执行显示哪个问价夹下大小
du -sh *
找大于100M文件 没用的可以删除
find / -xdev -size +100M -exec ls -l {} \;
查看磁盘信息 匀空间给不足的
fdisk -l
开机自启 (添加启动服务命令)
vim /etc/rc.local
查看系统内存情况 free -g
重启 reboot
防火墙 查看状态 service iptables status
防火墙停止 service iptables stop
防火墙命令
CentOS7 默认的防火墙 不是iptables, 而是firewalle.
1. 查看firewall服务状态
systemctl status firewalld
2、查看firewall的状态
firewall-cmd --state
3、开启、重启、关闭、firewalld.service服务
# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop
4、查看防火墙规则
firewall-cmd --list-all
5、指定端口开放,关闭
# 查询端口是否开放
firewall-cmd --query-port=8080/tcp
# 开放80端口
firewall-cmd --permanent --add-port=80/tcp
# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
# 参数解释
1、firwall-cmd:是Linux提供的操作firewall的一个工具;
2、--permanent:表示设置为持久;
3、--add-port:标识添加的端口;
iptables方式
默认情况下,CentOS7 在/etc/sysconfig/目录下是没有iptables文档。是iptables 文件不是iptables-config文件 等
因此我们需要安装 iptable 与 iptable-service才能使用iptables。
1、先检查是否安装
service iptables status
2、安装 iptables
yum install -y iptables*
如果你下载的版本低的话,建议做一下更新
yum update iptables
3、安装iptables-services
yum install iptables-services #通常情况下没有安装
4、禁用/停止自带的firewalld服务
systemctl stop firewalld #停止firewalld服务
systemctl mask firewalld #禁用firewalld服务
5、查看iptables现有规则并调整
iptables -L -n #查看iptables现有规则
iptables -P INPUT ACCEPT #先设置所有的端口都可以访问
iptables -F #清空所有默认规则
iptables -X #清空所有自定义规则
iptables -A INPUT -i lo -j ACCEPT #允许本地(本机)访问
iptables -A INPUT -p tcp --dport 22 -j ACCEPT #开放22端口
iptables -A INPUT -p tcp --dport 21 -j ACCEPT #开放21端口(FTP)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT #开放80端口(HTTP)
iptables -A INPUT -p tcp --dport 443 -j ACCEPT #开放443端口(HTTPS)
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT #允许ping
iptables -A INPUT -p tcp -s 45.96.174.68 -j ACCEPT #如果要添加内网ip信任(接受其所有TCP请求)
iptables -P INPUT DROP #过滤所有非以上规则的请求
iptables -I INPUT -s ***.***.***.*** -j DROP #要封停一个IP
iptables -D INPUT -s ***.***.***.*** -j DROP #要解封一个IP
6保存上述规则
service iptables save #保存防火墙规则
7.注册iptables服务
systemctl enable iptables.service
8.开启防火墙服务
systemctl start iptables #开启服务
systemctl start iptables.service #开启服务
systemctl restart iptables #重启服务
systemctl stop iptables #停止服务
systemctl status iptables.service #检查防火墙服务状态
systemctl enable iptables.service #设置防火墙开机启动
手动修改iptables文件指定开放端口号
vim /etc/sysconfig/iptables #修改iptables文件
#将如下端口号放到如下图所示位置
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 7963 -j ACCEPT
#然后保存。
#最后在执行命令
service iptables save #保存防火墙配置
CentOS7 防火墙设置_初级不是我的梦的博客-CSDN博客_centos7添加防火墙
用户操作
#创建用户es
useradd es
# 给已创建的用户es设置密码 我设置的密码 (12345678)
passwd es
#给用户es授权
#将安装es目录授权给es用户
chown -R es:es /usr/local/elasticsearch-8.6.0
#操作权限(可以不给)
# chmod 770 /usr/local/elasticsearch-8.6.0/
#切换用户为es
su es
#删除用户es
userdel -r es