Linux的常用指令汇总,常用软件包安装;配置文件修改,防火墙修改等
# 一、 常规指令
# 1、权限
chown -R 用户名 文件名(文件夹名) #更改文件所属用户
chmod 777 路径+文件名(文件夹) #文件(文件夹)赋权
chmod +x test.txt #赋予执行权限(当前用户?)
chmod -x test.txt #没收执行权限
chmod username+x test.txt #某用户增加执行权限
chmod o+x test.txt #所有用户增加执行权限
1
2
3
4
5
6
2
3
4
5
6
# 2、编辑
vi 文件名 #编辑文件,已存在则修改,未存在则自动创建
vi /etc/profile #编辑linux环境变量
export KAFKA_HOME=/DATA/software/kafka_2.11-2.0.1 #引入环境变量
source /etc/profile #让修改后的环境变量立即生效
tar xvfz m.tar.gz #linux解压安装包
ls > cmd.txt #重定向 把命令的结果,重新写到文件里,会覆盖已有的内容
ls >> cmd.txt #向文件中追加内容
ps -ef|grep redis #查找redis进程
man bash | col -b > bash.txt #过滤控制字符,解决乱码
grep ok test.txt #查找test.txt文件中的ok字段
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
# 3、查找/查看/开启
ps -ef|grep 应用名称 #得到(进程)进程号
netstat -nap|grep 进程id #得到进程对应的端口号
netstat -tunlp|grep 端口号 #得到端口号对应的进程
ls -l /proc/进程号/cwd #得到 服务/进程 的路径
history |grep 命令(应用) #查找命令中含有“命令”的历史记录
date #显示系统日期
uname -r #显示正在使用的内核版本
more 文件名 #查看文件内容
tail -300f 文件名 #动态查看最近300行日志
chkconfig --list #显示所有自动应用
chkconfig vsftpd on #开启自动启动
ls -l | grep "^d" #只列出目录
rpm -qa #列出系统所有安装包
df /home #查看挂载点
which java #查找命令在哪个目录
env #查看环境变量
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 4、磁盘
df -h / df -lh #查看系统各目录磁盘空间及使用情况
du -h --max-depth=1 #查看当前目录下各文件所占磁盘空间情况
top #top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。退出 top 的命令为 q (在 top 运行中敲 q 键一次)。
du -s -h ./* #查看当前目录下各文件所占磁盘空间情况
du -sh *| sort -hr #当前目录下占用磁盘空间大小排序
1
2
3
4
5
2
3
4
5
# 5、内存
top -d 1 #监控内存,然后shift+m内存排列
free -g #查看内存使用,单位为g
free -m #查看内存使用,单位M
grep MemTotal /proc/meminfo | cut -f2 -d: #查看服务器总内存,单位kb
grep MemTotal /proc/meminfo #查看服务器总内存,单位kb
1
2
3
4
5
2
3
4
5
# 6、系统命令
reboot #重启系统
shutdown -r now #重启系统
logout #注销登陆
shutdown -h now #关闭系统
date 041217002007.00 #设置日期和时间 - 月日时分年.秒
1
2
3
4
5
2
3
4
5
# 7、防火墙
service iptables stop #关闭防火墙
systemctl stop #关闭防火墙
firewalld.services #关闭防火墙
service iptables starts #打开防火墙
systemctl start #打开防火墙
iptables.services #打开防火墙
service iptables restart #重启防火墙
systemctl start #重启防火墙
ip6tables.service #重启防火墙
systemctl status firewalld #查看防火墙状态
systemctl disable firewalld #开机禁用
systemctl enable firewalld #开机自启
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
# 8、TCP
netstat -an | grep ESTABLISHED | wc -l #查看apache当前并发访问数
netstat -anp|more #显示整个系统目前的网络情况。例如目前的连接、数据包传
1
2
2
# 9、CPU
# 总核数 = 物理CPU个数 X 每颗物理CPU的核数
# 总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l #查看物理CPU个数
cat /proc/cpuinfo| grep "cpu cores"| uniq #查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep "processor"| wc -l #查看逻辑CPU的个数
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c #查看CPU信息(型号)
vmstat 1 #监控CPU.
top #监控进程
more /proc/cpuinfo | grep "model name" #查看cpu
grep "model name" /proc/cpuinfo #查看cpu
grep "model name" /proc/cpuinfo | cut -f2 -d: #查看cpu
getconf LONG_BIT #查看CPU位数(32
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
# 10、用户相关
useradd username #创建用户(新创建的用户会在/home下创建一个用户目录incredible-test)
passwd username #给已创建的用户设置密码
usermod --help #修改用户这个命令的相关参数
userdel username #删除用户
groupadd groupname #添加组
groupdel groupname #删除组
su username #切换登陆用户,exit退出到root账户?
rm -rf /home/usernmae #删除用户后,删除该用户目录
passwd #登陆root账户情况下,修改root密码
passwd username #修改用户密码
useradd username -g groupname #指定用户到某个组
usermod -g groupname username #修改用户所在组
whoami #查看当前登陆的用户
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
# 二、其他指令
# 1. 文本指令
# 1.1 命令模式
vi/vim
进入命令模式,后面跟 文件名 可以进入查看文本内容
# 1.2 输入模式
在命令模式下输入 i
(insert) 可编辑文件
# 1.3 底线命令模式
: -进入底线命令模式
w -保存文档
q -退出文本编辑
q! -强制退出编辑
wq -保存并退出文档编辑
/ -根据关键字查询
rm -rf -删除文件、文件夹
1
2
3
4
5
6
7
2
3
4
5
6
7
# 2. 其他指令
# 查看端口使用情况
netstart -ntlp
# 修改文件、文件夹权限
chmod 777 文件或目录
# 修改文件所有者
chown -R 用户名 文件名
# 查看tomcat是否启动
ps -ef|grep tomcat名
# 查找文件中PNR的日志的内容
grep -n 'HER96N' 20191015.log
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
# 3. yum相关指令
centos
中的Shell
前端软件包管理器,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包
# 下载
yum -y install XXX
# 卸载
yum remove XXX
# 卸载相关软件包的相关依赖
sudo yum history list XXX
sudo yum history undo 编号
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
# 4. 安装常用安装包
# 安装wget用于从外网上下载插件
yum -y install wget
# 安装vim编辑器
yum install vim -y
# 安装linux上传下载软件包
yum -y install lrzsz
· 上传 rz
· 下载 sz
# 安装编译源码所需要的依赖
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-devel gcc perl-ExtUtils-MakeMaker
# ubuntu 下载安装
apt-get install 软件名
# ubuntu 查看是否安装某个软件,查看已安装的所有软件列表
dpkg -l | grep jdk(安装的软件名)
dpkg --get-selections
dpkg -l 显示详细列表
# 卸载安装的软件
sudo apt-get remove XXXX #卸载软件(删除软件包)
sudo apt-get autoremove XXXX #自动卸载软件但保留其配置文件
sudo apt-get autoremove --purge XXXX #自动卸载软件其删除其配置文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# 5. 安装telnet
# 安装telnet-server
yum -y install telnet-server
# 安装telnet
yum -y install telnet
# 安装 xinetd 守护进程
yum -y install xinetd
# 重启 xinetd 守护进程
service xinetd restart
# 测试是否安装成功
netstat -tnl | grep 23
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
- 修改 /etc/xinetd.d/telnet,没有则新建,disable 值改为 no
default: on
# description: The telnet server serves telnet sessions; it uses \
# unencrypted username/password pairs for authentication.
service telnet
{
disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
server = /usr/sbin/in.telnetd
log_on_failure += USERID
}
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
# 6. 注意
# 修改 /etc/profile 环境配置文件错误,导致linux所有命令失效
export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
1
2
2
# 7. curl请求
# 手动输入密码(服务的开启了www-authenticate认证功能的)
curl -i -X POST -H 'header信息,多个用多个-H' --u 用户名 --data '请求信息' \接口地址,
# (明文密码,有暴露风险)
curl -i -X POST -H '请求头信息' --user 'user:password' --data '请求信息' \接口地址
1
2
3
4
5
2
3
4
5
# 8. 其他指令
# linux 中文件夹的文件按照时间倒序或者升序排列 ls -lt降序, ls -lrt升序
-l use a long listing format 以长列表方式显示(详细信息方式)
-t sort by modification time 按修改时间排序(最新的在最前面)
-r reverse order while sorting (反序)
# 获取文件夹下匹配规则的最新目录
echo `ls -lt /文件夹目录/ |grep 参数 | head -n 1 |awk '{print $9}'`
1
2
3
4
5
6
7
2
3
4
5
6
7
# 9. 设置 Swap交换内存
# 设置交换文件路径,文件大小
# 其中bs是每块的大小,count是块的数量;bs*count,就是swap文件的大小:这里1M*1024=1G。可以根据需要自行调整。
dd if=/dev/zero of=/mydata/swapfile bs=2M count=1024
# 格式化交换分区文件
mkswap swapfile
# 启用swap分区文件
swapon swapfile
# 添加开机启动,添加或者修改这一行:
vi /etc/fstab
swapfile swap swap defaults 0 0
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10