SSH远程连接
SSH(安全外壳协议)
SSH为Secure Shell的缩写,是一种网络安全协议,专为远程登录会话和其他网络服务提供安全性的协议。通过使用SSH,可以把传输的数据进行加密,有效防止远程管理过程中的信息泄露问题。 从客户端来看,有两种验证方式:基于密码、基于密钥
基于用户名密码验证
基于密钥验证
OpenSSH的使用
OpenSSH是SSH协议的免费开源实现。 OpenSSH由客户端和服务端的软件组成。服务端是一个守护进程(daemon),他在后台运行并响应来自客户端的连接请求。服务端一般是sshd进程,提供了对远程连接的处理。 客户端包含ssh程序以及像scp(远程拷贝)、slogin(远程登陆)、sftp(安全文件传输)等其他的应用程序。 默认情况下,CentOS系统会自带安装OpenSSH 服务。 使用示例:配置node-1至node-2机器的免密登录。
Linux文件上传下载- sftp & lrzsz
在涉及Linux 相关的开发中,经常需要进行linux 和 Windows之间的文件、安装包等上传和下载操作。sftp和 lrzsz是使用比较广泛的两种方式。
SFTP
sftp是Secure File Transfer Protocol 的缩写,安全文件传送协议。可以为传输文件提供一种安全的网络的加密方法。sftp为SSH的其中一部分,本身没有单独的守护进程,使用sshd守护进程(端口号默认是22)来完成相应的连接和答复操作。 SecureCRT远程连接至CentOS后,按alt+p即可打开sftp会话窗口。常用的sftp命令有: pwd和lpwd
pwd是看sftp服务所在机器(即CentOS)默认的当前目录
lpwd是看Windows本地默认目录
ls和 lls ls查看sftp服务器默认当前目录下内容
lls是看Windows 默认当前目录下内容
put c:/sparksql_textdata.csv
把Windows 上文件上传到sftp服务器的默认当前目录下
lrzsz
lrzsz是一款在linux 里可代替sftp上传和下载的程序。Centos系统中,可直接yum -y install lrzsz,也可以下载安装包离线进行安装。 上传文件:命令行输入rz,打开上传文件会话窗口。
下载文件:sz下载文件路径
mount挂载操作
挂载(mount)命令
在linux操作系统中,挂载是指将一个设备(通常是存储设备)挂接到一个已存在的目录上。要访问存储设备中的文件,通过访问这个挂载目录来访问。
命令格式: mount [-t vfstype] [-o options] device dir -t vfstype指定文件系统的类型。mount会自动选择正确的类型。
常用类型:光盘镜像iso9660、linux文件网络共享nfs等等。 -o options主要用来描述设备或档案的挂接方式。常用的参数有: loop:用来把一个文件当成硬盘分区挂接上系统 ro:采用只读方式挂接设备 rw:采用读写方式挂接设备 device要挂接(mount)的设备 dir设备在系统上的挂接点(mount point)
挂载光驱
mkdir/mnt/cdrom mount -t iso9660 -o ro /dev/cdrom /mnt/cdrom/ 将设备/dev/cdrom挂载到挂载点/mnt/cdrom中
挂载光盘镜像文件(.iso)
mkdir/mnt/centos mount -o loop/root/***.iso /mnt/centos
卸载umount
umount /mnt/cdrom
系统服务管理
service --status-all #查看系统所有的后台服务进程 service sshd status #查看指定的后台服务进程的状态 service sshd stop service sshd start service sshd restart
配置后台服务进程的开机自启
chkconfig httpd on #让 httpd服务开机自启 chkconfig httpd off #让 httpd服务开机不要自启
网络管理
主机名配置
查看主机名hostname
修改主机名(重启后无效)hostname hadoop
修改主机名(重启后永久生效)vi /ect/sysconfig/network
IP地址配置
方式一: setup
用root输入setup命令,进入交互式修改界面 Minimal安装的系统没有安装 setuptool 软件,可yum安装后使用。 yum install setuptool ntsysv system-config-securitylevel-tui
yum install system-config-network-tui system-config-keyboard
方式二:修改配置文件(重启后永久生效)
vi /etc/sysconfig/network-scripts/ifcfg-eth0
使修改文件的网络配置生效: service network restartn
重启网络服务 reboot
重启计算机
方式三: ifconfig命令(重启后无效)
ifconfig eth0192.168.12.22
域名映射
/etc/hosts文件用于在通过主机名进行访问时做ip地址解析之用。想访问一个什么样的主机名,就把这个主机名和它对应的 ip地址配置在/etc/hosts文件中。
网络端口监听
netstat
是一款命令行工具,用于列出系统上所有的网络socket连接情况,包括 tcp,udp以及unix socket,另外它还能列出处于监听状态(即等待接入请求〉的socket。如想确认Web服务有没有起来,可查看80端口有没有打开。 常见参数: -a (all) 显示所有选项,默认不显示LISTEN相关 -t (tcp) 仅显示tcp相关选项 -u (udp) 仅显示udp相关选项 -n 禁用域名反向解析功能,只显示 ip-聆仅列出有在 Listen(监听)的服务状态 -p 显示建立相关链接的进程信息 -ep 可以同时查看进程名和用户名 netstat - nlpt
获取进程名、进程号以及用户ID 只列出监听中的连接 netstat - tnl
可以看到处于监听状态的TCP端口和连接
定时任务crontab
crontab配置
crontab是 Unix和 Linux用于设置周期性被执行的指令。通过crontab命令,可以在固定间隔时间执行指定的系统指令或shell脚本。时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合。 crontab 安装: yum install crontabs
服务操作说明: service crond start
#启动服务 service crond stop
#关闭服务 service crond restart
#重启服务 service crond reload
#重新载入配置 service crond status
#查看crontab 服务状态: chkconfig crond --list
#查看crontab服务是否已设置为开机启动 chkconfig crond on
#加入开机自动启动
命令格式
crontab [-u user] file crontab [-u user] [ -e|-l | -r ]
参数说明:
-u user:用来设定某个用户的crontab 服务 file: file是命令文件的名字,表示将file做为crontab 的任务列表文件并载入crontab。 -e:编辑某个用户的crontab文件内容。如果不指定用户,则表示编辑当前用户的crontab文件。 -l:显示某个用户的crontab文件内容。如果不指定用户,则表示显示当前用户的crontab文件内容。 -r:删除定时任务配置,从/var/spool/cron目录中删除某个用户的crontab文件,如果不指定用户,则默认删除当前用户的crontab文件。 -i:在删除用户的crontab文件时给确认提示。
命令示例: crontab file [-u user]
##用指定的文件替代目前的crontab crontab -l [-u user]
##列出用户目前的crontab crontab -e [-u user]
##编辑用户目前的crontab
配置说明
* * * * * command 分 时 日 月 周 命令 第1列表示分钟 1~59 每分钟用*或者*/1表示 第2列表示小时 0~23 (0表示0点) 第3列表示日期 1~31 第4列表示月份 1~12 第5列标识号星期 0~6 (0表示星期天) 第6列要运行的命令
配置实例:
*/1 * * * * date >> /root/date.txt
每分钟执行一次date命令 30 21 * * * /usr/local/etc/rc.d/httpd restart
每晚的21:30重启apache 45 4 1,10,22 * * /usr/local/etc/rc. d/httpd restart
每月1、10、22日的4 :45重启apache 10 1 * * 6,0 /usr/local/etc/rc.d/httpd restart
每周六、周日的1 :10重启 apache 0,30 18-23 * * * /usr/local/etc/rc.d/httpd restart
每天18 : 00 至23 : 00之间每隔30 分钟重启 apache * 23-7/1 * * * /usr/local/etc/rc.d/httpd restart
晚上11点到早上7点之间,每隔一小时重启 apache