Unix远程操作
一、课程大纲
- [1. 远程终端](#1. 远程终端)
- [2. 远程文件交互 ](#2. 远程文件交互)
- [3. Python开发环境的搭建](#3. Python开发环境的搭建)
- [4. 虚拟开发环境](#4. 虚拟开发环境)
二、课程内容
1. 远程终端
我们先来看一个科技公司的内部布局。
远程终端,指的是公司内部服务器独立存放在一个区域,该区域不允许直接接触,所以在项目操作过程中,如果涉及到更改服务器上的数据,需要在制定的服务器操作室进行服务器的远程连接,通过软件[远程终端]使用命令操作远程服务器的文件数据。
(1)常见的远程终端软件
ScureCRT:收费,大公司的标配——百度有pojie版
Xshell:免费/收费,操作灵活,使用方便——百度官方下载
Termius:近几年流行,支持Win/Unix/Mac/移动端——www.termius.com
(2)服务器环境配置
服务器上,必须安装一个软件,允许客户端通过远程终端连接上来。
①一般情况下,安装ssh服务器。
1 | sudo apt-get install openssh-server |
②修改配置文件,测试环境下,允许root用户远程连接。
1 | vi /etc/ssh/sshd -config |
注意:正式环境中,绝对禁止root用户远程连接的可能性。
③重启ssh服务
1 | service sshd restart |
④服务器上环境配置完成
(3)远程终端连接
①确认远程服务器ip地址
②确认远程服务器的账号+密码:root、root
③打开远程终端软件,连接服务器
(4)紧急情况
没有终端软件,怎么操作远程服务器数据。
远程终端使用ssh协议进行访问
协议:约定,商定的规则
使用系统命令提示符窗口,制定使用ssh进行连接即可。
1 | ssh 账号@IP地址 |
网络连接的方式有两种:NAT共享模式
和网络桥接模式
。示意图如下:
2. 远程文件交互
软件开发–>本地系统–>Win10系统
问题:本地文件—?—>远程服务器
软件在线运行–>远程服务器–>Unix/Linux OS
解决方案:
(1)使用远程文件传输命令直接操作
1 | scp -r 本地文件绝对路劲 账号@远程IP地址:远程文件夹 #-r代表操作文件夹 |
(2)通过传统FTP方式进行文件远程交互
FTP:file transfer protocal文件传输协议,经典的文件交互方式
远程服务器上,安装ftp服务器,允许客户端直接通过ftp方式直接连接到服务器上
1
sudo apt-get install vsftpd
修改配置文件,允许远程连接的客户端,可以修改系统中的数据
1
2
3
4
5
6
7vi /etc/vsftpd.conf
修改配置选项
write_enable:去掉前面的注释,允许修改文件
local_unmask:去注释,配置文件默认权限
anon_upload_enable:去注释,允许上传文件
anno_mkdir_write_enable:去注释,允许创建文件夹重启ftp服务
1
2service vsftpd restart
ps -ef | grep vsftpd #查看ftp进程是否正常客户端连接远程服务器,完成文件交互
①命令行方式:
1
2
3
4
5ftp 远程ip、地址
账号
密码
put 文件 #上传当前目录中‘文件’
bye #退出ftp模式②图形界面FTP交互
FTP客户端,有图形化界面操作方式,非常简单,常见的客户端软件有Xftp,FlashFXP…
使用ftp连接服务器过程中,若出现连接超时、失败的情况
①虚拟机断网–>在虚拟机中,查看当前虚拟机ip地址,测试网络是否存在
②FlashFXP工具,毕竟是软件,需联网访问数据,需要防火墙允许通过
3. Python开发环境的搭建
(1)Python开发环境的配置
Unix/Linux的分支系统,大部分已经内置了python环境
- Ubuntu14~16,内置了python2.X和python3.X
- Ubuntu18中,内置了python3
Ubuntu系统中,有一个存放各种系统中执行命令的文件夹
- /usr/bin/
- /usr/sbin/
Ubuntu系统中,有一个存放各种系统中执行命令的文件夹
- /usr/local/bin/
命令查询
1 | which 命令名称 #查看该可执行命令的位置 |
- 命令索引更改
通常情况下,系统提供了一个指定版本的命令,如python3,但我们在实际操作时经常用到的命令是python。因此我们需要给python3命令创建一个连接文件[python]。
Unix中的链接文件:使用命令
ln
(link 链接)
1 ln [-s] 原命令名称 新命令名称创建软链接用到
-s
[soft 软]选项,若不添加该项,会创建一个硬链接。示例:给python3.6创建软链接python,此时可以通过python命令直接操作python3.6命令。
硬链接:很少使用–>复制一个新命令文件
ln python3.6 py
软链接:类似快捷方式,经常使用
ln -s python3.6 python
(2)Python开发环境的安装
在官方网站下载python源代码[C语言开发的源代码]:
Gzipped source tarball
(tgz压缩包)和Xz compressed source tarball
(tar.xz压缩包).
解压
1 | tar -xzvf ***.tgz |
需要在系统中编译C语言文件,生成可执行文件,通常使用gcc编译器,通过make命令进行构建,通过make install命令进行安装。
make命令需要操作一个配置文件(makefile文件)
makefile文件需要在python源代码中通过configure进行实现
为了让系统能正常编辑C语言,需要下载C语言编译环境
- 安装C语言的编译环境
- 安装设置python3的文件夹
- 编辑生成makefile文件,配置编译环境
- make编辑C语言源代码,同时执行安装到制定文件夹
1 | [......] |
4. 虚拟开发环境
并不是假的开发环境,也是包含了所有开发环境文件的开发环境,一般情况下,该环境只对一个项目起作用,方便一个项目开发过程中的依赖(单独安装的第三方模块,如pygame)管理和统一整理。示意图如下:
虚拟环境的创建主要依赖python中的两个模块:virtualenv
、virtualenvwrapper
1 | Mac/Unix/Linux系统安装命令 |