Linux学习笔记<四>

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

Linux学习笔记<四>

<4>命令:pwd

  显示当前路径

<5>命令:init

Linux学习笔记<四>

<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

Linux学习笔记<四>

数据包:帧头 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  任务调度命令

Linux学习笔记<四>

4. Linux学习笔记<四>

<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下进程和线程

Linux学习笔记<四>

<17>  进入mysql的bin目录下,使用./mysqldump

Linux学习笔记<四>

<18>more命令

Linux学习笔记<四>

<19>find命令

Linux学习笔记<四>

<20>修改环境变量命令

Linux学习笔记<四>

<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 &
上一篇:JAVA中代理模式


下一篇:干净地发布QT程序