1.重启或者关机
shutdown -h now #立刻进行关机
shutdown -r now或者reboor #现在重新启动计算机
2.尽量避免用root用户登陆,用普通用户登陆后换成root
用户注销:logout,在ubuntu下用exit
3.使用vi编辑器
<i>vi Hello.java
<ii>输入 i [进入插入模式]
<iii>输入 esc [进入命令模式]
<iv>输入 : [wq 表示退出保存 q! 表示退出不保存]
<v>编译 javac cpp程序 gcc -o my 生成my文件,否则默认生成a.out文件
<vi>运行 java ./a.out
<4>命令:pwd
显示当前路径
<5>命令:init
<6>shell命令 shell是连接linux内核和linux命令的模块
命令名称 /bin/sh /bin/csh /bin/ksh
chsh -s 输入新的shell,即修改shell
<7>env命令 显示当前的环境变量,可以查看当前使用的是什么shell命令
SHELL=/bin/bash
<8>history命令 显示最近使用的命令
history history 5
!编号 执行编号480的命令
<9>linux tcp/ip
数据包:帧头 ip头 tcp头 app头 数据 帧尾
ping命令 ping www.baidu.com 退出shift+ctrl+c
ping命令一般用于检测网络通与不通,也叫时延,其值越大,速度越慢PING(PacketInternetGrope),因特网包探索器,用于测试网络连接量的程序。
ping发送一个ICMP回声请求消息给目的地并报告是否收到所希望的ICMP回声应答。它是用来检查网络是否通畅或者网络连接速度的命令。
原理:网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送一个数据包,对方就要返回一个同样大小的数据包,根据返回的数据包我们可以确定目标主机的存在,可以初步判断目标主机的操作系统等。
traceroute命令 追踪路由命令 traceroute www.baidu.com/ip
<10>crontab 任务调度命令
4.
<11>查看当前进程命令 ps -aux或者top
杀死当前进程 kill 进程号/ killall kill -9 进程号 强力杀死
<12>用w查看有哪些用户登陆
USER TTY FROM
hmy tty7 :0
hmy pts/0 :0.0
hmy pts/1 :0.0
tty7是你的图形界面。
pts/0, pts/1表示你开了两个terminal
<13>cal 2016 查看日历
<14>显示网络统计信息的命令 netstat -an | more
显示进程号 netstat -anp | more 查看的时候ip地址的foreign address,进程号是最前面的那个
<15>route 查看本机路由表
traceroute 查看与连接的ip地址之间经历了多少个路由
<16>linux下进程和线程
<17> 进入mysql的bin目录下,使用./mysqldump
<18>more命令
<19>find命令
<20>修改环境变量命令
<21>alias用法
alias llh='ls -l /home' #ls -l /home取别名
<22>在文件夹下面获得root权限
sudo nautilus
<23>ubuntu下安装ISO的Latex
在linux下默认的ISO挂载点位于"/media"目录,下面是挂载一个ISO文件的方法:
sudo mkdir /media/cdimage #建立一个文件夹作为ISO挂载点
sudo mount -o loop myfile.iso /media/cdimage #挂载ISO文件,使用参数 -o loop
使用你想挂载的iso文件代替myfile.iso。
挂载一个镜像文件使之能被写入,使用下面的命令:
sudo mkdir /media/cdimage
sudo mount -o rw,loop myfile.iso /media/cdimage
然后
perl install-tl -gui
卸载镜像文件:
sudo umount /media/cdimage
rmdir /media/cdimage
安装的路径在usr/local/下
<24>软链接
sudo ln -s /XXX/bin /usr/bin
<25>端口转发
ssh -L8090:remote_ip:remote_port remote_host
<26>查看端口的连接
sudo netstat -antup
<27>查看用户占用的连接
sudo lsof -u xxxx | wc -l
<28>linux命令并发执行
先将要执行的命令打印到commend.txt文件中,然后用每50行切一个文件,用10个并发来执行这些文件
rm ./commend.txt*
echo_commend > ./commend.txt
split -l 50 commend.txt commend.txt-
parallel --gnu -j 10 "bash" ::: commend.txt-*
echo "execute commend success"
<29>linux防止恶意ssh登录
参考: https://blog.51cto.com/732233048/1694987
#!/bin/bash #过滤Failed password for root,写入failIP.txt文件
grep -E 'Failed password for root from|Failed password for invalid user' /var/log/secure | awk '{print $(NF-3)}' | sort | uniq -c | sort -rn > /root/script/failIP.txt #失败次数大于100的,将其ip写入/etc/hosts.deny文件
while read failStatus
do
failTimes=`echo $failStatus | awk '{print $1}'`
failIP=`echo $failStatus | awk '{print $2}'`
if [ $failTimes -gt 10 ];then
denyIP=`grep $failIP /etc/hosts.deny`
if [ -z "$denyIP" ];then
echo "sshd:$failIP" >> /etc/hosts.deny
fi
fi
done < /root/script/failIP.txt
crontab -e
30 5 * * * bash /root/script/denyRootSsh.sh > /dev/null 2>&1 &