1. Linux网络基础

1. ubuntu 16.04网卡配置要点

1 查看系统有几块网卡 ip link

/etc/network/interfaces 网卡配置路径

4 Linux网络设置与ssh服务 - 图1

2 重启网络命令 systemctl restrat networking

/etc/init.d/下存放快捷方式。首先ls 该目录查看网卡相关快捷方式,然后 /etc/init.d/network(ing) restart

扩展:如果修改网卡的配置文件,但是配置文件的目录层次很深,此时可以在浅目录中创建一个快捷方式(软连接)。方便以后查找

ln -s path1 path2

4 Linux网络设置与ssh服务 - 图2

3 ifconfig查看系统网卡信息

4 Linux网络设置与ssh服务 - 图3

4 查看无线连接状态 iwconfig

5 如何去重启单个网卡

ifdown 网卡名 关闭 ifup 网卡名 开启

4 Linux网络设置与ssh服务 - 图4

2. 网络相关指令

1. ping 检测当前主机与目标之间的连通性。不是100%准确,因为有的服务ban ping (widows通用)
  1. `ping host`<br />

2. netstat 表示查看网络的连接信息

netstat -tnlp -t tcp -n 字母转化为数字 -l 列出状态为监听的 -p 显示进程相关
netstat -an -a all

3. traceroute 查找出主机与目标主机之间所有网关(路由器,会给沿途各个路由器发送icmp数据包,路由器可能会响应。)

#apt install traceroute

4. ARP协议 Address Resolution Protocol 根据ip地址获取mac地址 (widows通用)

arp -a 查看本地缓存mac表
arp -d ip 删除指定缓存记录

5. tcpdump 抓取数据包

tcpdump port 端口号
tcpdump host 主机地址
tcpdump -i interfaces
监视指定主机和端口的数据包
如果想要获取主机210.27.48.1接收或发出的telnet包,使用如下命令

对本机的udp 123 端口进行监视 123 为ntp的服务端口

tcpdump udp port 123
13:54:37.781539 IP 192.168.239.129.ssh > 192.168.239.1.12331: 
       时间             协议     发送端            >     接收端

SSH 服务(重点)

ssh (secure shell 安全外壳协议),该协议有两常用作用:远程连接协议远程文件传输协议

协议默认端口号: 22 可改范围: 0-65535 2^16

配置文件路径: /etc/ssh/ssh_config

ubuntu开启ssh
  1. ps -ef|grep ssh 查看是否安装sshd
  2. sudo apt-get update sudo apt-get install openssh-server
  3. ps -ef|grep出现sshd字样则安装成功
    4 Linux网络设置与ssh服务 - 图5
  4. service sshd start/stop/restart
  5. /etc/init.d/sshd start/stop/restart

    远程终端

    常见终端工具 Xshell secureCRT putty

    以putty为例
  6. 获取服务器ip地址,可以通过ifconfig查看 主机和服务器ping连接

4 Linux网络设置与ssh服务 - 图6
2. 打开putty 输入相关信息 open -> 是

4 Linux网络设置与ssh服务 - 图7

  1. 输入用户名 密码
    4 Linux网络设置与ssh服务 - 图8

    ssh可视化文件传输 filezilla

命令行工具传输文件/文件夹 pscp 必须通过cmd打开

Linux自有服务

1. 设置主机名

hostname 查看主机名
hostname -f FQDN 全限定域名
hostname <name> 设置临时主机名 su生效

4 Linux网络设置与ssh服务 - 图9

2 cron 定时程序

默认安装。若没有则sudo apt-get install cron
service cron status 查看cron状态 ,q or ctrl +c退出
sudo service cron start 启动cron
crontab --help 查看命令帮助
crontab -l 查看当前计划任务list
crontab -e 编辑创建一个计划任务列表 edit
crontab -r remove

计划任务格式:

minute hour day month week
0-59 * 0-23 * 1-31 * 1-12(or names) * 0-7 *
*/10 每十分钟

例如:

  1. 每天0点5分 输出一次“hello world”
    5 0 * * *    echo "hello world" >> /home/hadoop/test.tx
    

2.每分钟把当前时间发送到mycron.log中1次

*/1 * * * * date >> /home/hadoop/mycron.log

定时案例操作

$ crontab -e

输出如下:

no crontab for hadoop - using an empty one
Select an editor.  To change later, run 'select-editor'.

  1. /bin/ed

  2. /bin/nano        <---- easiest

  3. /usr/bin/vim.basic

  4. /usr/bin/vim.tiny
提示选用哪种编辑器,这里填入2

Choose 1-4 [2]: 2

进入如下界面

在文件末尾输入如下定时任务语句,mycron.log文件会被自动创建:

*/1 * * * * date >> /home/hadoop/mycron.log

注意:注意按实际更改路径,例如用户名为abc的用户,路径要改为/home/abc/mycron.log
Ctrl + O保存,回车,Ctrl + X退出
查看当前用户的定时任务
$ crontab -l
查看定时任务输出:也就是查看mycron.log文件输出

hadoop@node1:~$ cat mycron.log    //第一次查看,还没有任何内容

hadoop@node1:~$ cat mycron.log    //第二次查看有1次输出

Fri Feb 22 20:33:01 CST 2019

hadoop@node1:~$ cat mycron.log     //1分钟后查看后有2次输出

Fri Feb 22 20:33:01 CST 2019

Fri Feb 22 20:34:01 CST 2019

Linux权限

1.查看权限 ls -l path or ll path

-rw------- (600)      只有拥有者有读写权限。
-rw-r--r-- (644)      只有拥有者有读写权限;而属组用户和其他用户只有读权限。
-rwx------ (700)     只有拥有者有读、写、执行权限。
-rwxr-xr-x (755)    拥有者有读、写、执行权限;而属组用户和其他用户只有读、执行权限。
-rwx--x--x (711)    拥有者有读、写、执行权限;而属组用户和其他用户只有执行权限。
-rw-rw-rw- (666)   所有用户都有文件读、写权限。
-rwxrwxrwx (777)  所有用户都有读、写、执行权限。

rwx = 111 = 7
rw- = 110 = 6
r-x = 101 = 5
r-- = 100 = 4
-wx = 011 = 3
-w- = 010 = 2
--x = 001 = 1

第一位:表示文档类型 d 文件夹 - 文件 了软连接 是套接字 2-4位:表示文档所有者的权限情况 2 读 r / - . 3 写 w/- . 4 可执行 x/-. 5-7位:表示与所有者而同在一个组的用户权限 5 读, 6 写, 7 可执行 8-10位:表示除了上面的前2部分的用户之外的其他用户的权限情况。 8 读, 9 写, 10 可执行

2. 权限设置 chmod 选项 权限模式 文档

`-R` 递归。

ROOT或者文件所有者才可以设置权限。

3 sudo switch user do

sudo 可以让root事先定义某些特殊命令用户可以执行
配置sudo配置文件 #visudo /etc/sudoers