标签: 远程服务器

通过终端控制远程服务器,如何在关闭终端的时候,仍然保留服务器上的程序运行?

不知道表达清楚了没。

栗子:

通过终端访问远程服务器,运行python web.py,这个程序是网站主程序,需要一直开着,以保证访问。

但是本地终端需要关掉,可一关掉终端,服务器上的python也关了,不能访问网站了。
终端 服务器 Python7 条回复 • 1970-01-01 08:00:00 +08:00
yangg 1
yangg 2013-03-08 19:12:45 +08:00 ❤️ 1
nohup python web.py &
talentsnail 2
talentsnail 2013-03-08 19:14:20 +08:00
@yangg 谢谢,已经解决!
jybox 3
jybox 2013-03-08 22:15:39 +08:00
screen
thinkxen 4
thinkxen 2013-03-08 22:19:44 +08:00 ❤️ 1
先yum -y install screen
然后输入 screen -S 任意名称 例如mytask
screen -S mytask

然后执行命令后

按ctrl+a+d

下次想要恢复的话就按screen -r mytask或者screen -x即可
pityonline 5
pityonline 2013-03-08 22:33:21 +08:00 via Android
screen 或 tmux 比较好,*近受益不少……
talentsnail 6
talentsnail 2013-03-08 22:46:55 +08:00
@jybox
@thinkxen
@pityonline
谢谢你们!
goxofy 7
goxofy 2013-03-09 00:40:53 +08:00 via iPhone
screen nohup?

远程服务器上传下载文件及执行脚本(bat putty )

1.bat
1.1以管理员权限运行
%1 mshta vbscript:CreateObject(“Shell.Application”).ShellExecute(“cmd.exe”,”/c %~s0 ::”,””,”runas”,1)(window.close)&&exit cd /d “%~dp0″
1.2设置变量
title json转换脚本
set File_Path=%~dp0
set ip=”192.168.1.101″
set pw=”123456”
1.3检查网络
echo —检查远程服务器网络,请等待—
ping %ip% -n 2 > ping.txt
findstr “TTL” ping.txt
if %errorlevel% == 0 (
echo —network is ok—
goto ok
)
if %errorlevel% == 1 (
echo —网络连接失败,请检查与服务器网络—
pause
ping.txt
del /f /s /q ping.txt
exit
)
1.4解压压缩包
解压出json格式文件

“C:\Program Files\WinRAR\WinRAR.exe” x -ad *.zip *.json
2.putty
2.1通过putty上传文件
pscp.exe -P 22 -pw %pw% -l root %File_Path%poi.json root@%ip%:/opt/
pscp.exe -P <端口> -pw <密码> 文件 root@<ip>:<存放路径>

2.2远程执行脚本
plink.exe -l root -P 22 -pw %pw% -ssh -no-antispoof root@%ip% cd /opt/;sh switch.sh
2.3回传文件
pscp.exe -P 22 -l root -pw %pw% root@%ip%:/opt/cms.json %File_Path%
3.脚本
%1 mshta vbscript:CreateObject(“Shell.Application”).ShellExecute(“cmd.exe”,”/c %~s0 ::”,””,”runas”,1)(window.close)&&exit cd /d “%~dp0″
@echo off
title json转换脚本
set File_Path=%~dp0
set ip=”192.168.1.101″
set pw=”123456”
cd %~dp0
echo —检查远程服务器网络,请等待—
ping %ip% -n 2 > ping.txt
findstr “TTL” ping.txt
if %errorlevel% == 0 (
echo —network is ok—
goto ok
)
if %errorlevel% == 1 (
echo —网络连接失败,请检查与服务器网络—
pause
ping.txt
del /f /s /q ping.txt
exit
)
:ok
echo —开始解压—
echo —获取压缩包名称—
for /f “delims=” %%j in (‘dir /b/a-d/oN *.zip*’) do set name=%%~nj
echo 解压地图名为 %name%
echo ——-开始检查是否已存在地图文件—–
if exist %name% (
echo —存在—
echo —删除—
rd /s /q %name%
)

echo ——-开始检查是否已存在cms.json—–
if exist cms.json (
echo —存在—
echo —删除—
del /f /s /q cms.json
)

“C:\Program Files\WinRAR\WinRAR.exe” x -ad *.zip *.json
move %name%\semantics_poi_layer\poi.json

echo —删除地图文件夹—
rd /s /q %name%

echo —上传Json文件至服务器—
pscp.exe -P 22 -pw %pw% -l root %File_Path%poi.json root@%ip%:/opt/
echo —远程执行脚本—
plink.exe -l root -P 22 -pw %pw% -ssh -no-antispoof root@%ip% cd /opt/;sh switch.sh
echo —回传json文件—
pscp.exe -P 22 -l root -pw %pw% root@%ip%:/opt/cms.json %File_Path%
del /f /s /q poi.json
del /f /s /q ping.txt
echo 完成转换,按任意键退出
pause
cms.json

如何将jenkins部署到远程服务器

部署步骤

安装java环境对外开放端口安装tomcat服务器部署jenkins.war
说明:本次部署服务器为 centos 6,本小节是介绍jenkins的部署

1.安装java

在服务器安装java

yum -y install java # 安装java

yum -y remove java # 卸载java

有的服务器自带java,但是版本可能是1.7,需要先卸载
先卸载自带的Java,然后再重新安装Java (不卸载的话,提示Java1.7.0就是*新版)
验证
java –version

iptables -A INPUT -p tcp -m state –state NEW -m tcp –dport 8080 -j ACCEPT

ssh -i /root/.ssh/ido_sch_pro root@78.141.208.80 -p 8080

安装成功提示和验证

如何将jenkins部署到远程服务器
2.对外开放端口

服务器开放端口(自己的)

写入
/sbin/iptables -I INPUT -p tcp –dport 8080 -j ACCEPT

保存
/etc/init.d/iptables save

重启防火墙
service iptables restart
也可以通过控制台开通

也可以找网管开通(牵扯到*,可能你没有权限)

3.安装tomcat服务器(8080)

下载tomcat

如何将jenkins部署到远程服务器
移动文件(根据个人喜好)

可以使用scp命令移动

scp 本地资源 root@ip:/home/root/xxx

也可以借助工具

如何将jenkins部署到远程服务器
安装

1. 解压到你想安装的位置(解压完,压缩包可以删除了)
tar -zxvf apache-tomcat-8.5.35.tar.gz -C /usr/local

2. 进入bin目录
cd /usr/local/apache-tomcat-8.5.35/bin

3. 启动(此处不配置端口,默认是8080)
./startup.sh

4. 关闭
./shutdown.sh

验证

在 浏览器地址栏输入 你的服务器ip:8080 能看到如下图,就说明已安装好 tomcat了

如何将jenkins部署到远程服务器
4.将jenkins.war部署

将jenlkins.war部署到tomcat中的webapps

如何将jenkins部署到远程服务器
验证

在 浏览器地址栏输入 服务器ip:8080/jenkins *次是这个页面(和本地部署时一致的)

如何将jenkins部署到远程服务器
在上个和图中,找到密码文件,查找密码

如何将jenkins部署到远程服务器
安装插件之后,登录成功

如何将jenkins部署到远程服务器

将公钥放到服务器上,用ssh远程服务器

以root用户为例:
1.先复制ssh-rsa.pub内的公钥内容,有的人可能是由远程连接软件生成的公钥,同样的复制以.pub结尾的公钥的内容

2.登录进入服务器,先备份authorized_keys的内容
cp authorized_keys authorized_keys.bak
然后用vim修改authorized_keys文件,添加自己的公钥
vim /root/.ssh/authorized_keys

3.在远程连接软件选择验证方式为公钥
以SecureCRT为例:
a. 选择公钥,密码不要勾选
%title插图%num

b. 查看公钥属性,将正确的公钥路径放在里面

%title插图%num

4.做完上面的操作就可以创建远程连接,远程服务器了

idea自动部署至远程服务器

一、搭建服务器的tomcat环境
二、本地IDEA关联远程服务器
打开IDEA,按如下图配置:

%title插图%num

输入web server的名称

%title插图%num

这里是linux服务器,所以使用的是SFTP(SSH File Transfer Protocol)模式

%title插图%num

%title插图%num

上传本地工程包:这样,我们在本地修改某个java文件,直接提交该class即可,无需打war上传等繁琐的过程。

%title插图%num

VScode连接远程服务器上的jupyter notebook

工欲善其事,必先利其器,开发工具这个东西觉得折腾下还是有好处的。但常常感觉专门抽出时间搞这个浪费时间,更常见的现象是已经明显感觉到当前的开发工具用的很别扭,而且告诉自己等这个忙完了要搭一个更方便的工具,到*后却没下文了直到下次再次遇到这种感觉。我这会就是再次遇到了,想用VSCode连接服务器上的jupyter notebook运行tensorflow代码,这样在本地的VScode中直接写代码就方便了很多。整个过程很简单,我自诩记性也不错,但还是不如这白纸黑字来的保险,查资料也是很花时间的。

首先是本机与服务器之间配置ssh就不仔细描述了,要是忘了google一下“ssh远程登录服务器”大把都是资料而且大多数说的都是对的。但*好在~/.ssh/config中按照下面的样子再配置下,ssh用起来会更方便的。

%title插图%num

接下来是vscode这边要能远程连接到服务器上,记住不是在本地写代码然后再发送到服务器上,而是直接连接到了服务器的某个路径下,VScode对文件的增删改查就相当于是操作了服务器上这个路径下的对应文件(也许说的比较啰嗦,但是觉得概念还是要清楚的)。实现这个目的只需要3步:

1、在扩展(EXTENSIONS)中搜插件Remote – SSH安装后再重新启动VScode。
2、鼠标点击VScode左下角的齿轮选择命令模式(command paletten),mac对应的快捷键是shift+cmd+p。
3、在VScode顶部中间弹出的下拉菜单中输入Remote – SSH点击图片中选中的选项,接下来再点击你要连接的服务器的名字就行了,*后会弹出一个新的VSCode。
vscode现在就可以远程连接服务器了,如果想写python代码,直接创建文件就可以了。

%title插图%num

%title插图%num

而服务器这边要能够创建jupyter noteboot,也就是些安装了,不难就是找起来有点麻烦。我喜欢用conda安装一个虚拟环境就是因为隔离了干净省心,真要是搞坏了直接删了重新建一个。服务器上的操作也只需要3步:

1、安装虚拟环境:

conda create –name notebook python=3.6
2、激活虚拟环境并安装jupyter notebook:

source activate notebook
conda install -c conda-forge jupyter notebook
3、创建一个notebook服务:

sudo jupyter notebook –port=8889 –allow-root
结果如下:*下面的两个URL就是刚才启动的服务的地址,我复制http://localhost:8889/?token=aef9a514fa484b83aa4554371024ebc5b50bbed25c2521ab,当然复制另一个也没问题。

%title插图%num

*后在已经连接到服务器的VScode中进入命令模式,点击下图下拉菜单中被选中的选项(好绕口,理解就好)。意思也很明显:指定一个本地或者远程的jupyter服务连接。

%title插图%num

把刚才复制的URL粘贴进去,按回车。

%title插图%num

创建一个jupyter文件测试下:

%title插图%num

整个过程就这么简单而且内容也不多,但就是写了快两个小时吧,正好有今晚有时间就整理一下,以后就不需要google再去各种找了。后面几张大图看起来好丑,感觉以后要学一些有关排版设计的内容了,忽然想起自己曾今自学了一段时间PS,好久没用这会好像也忘差不多了。回头自己读刚才写的blog隐隐约约有种很着急的感觉,不知道是思维还是文笔的锅,总之有时间就多写写,“感觉”也是可以慢慢积累的呢~。

VScode连接远程服务器–亲测有效

这段时间想用vscode直接连接修改服务器上的文件,看了好些博客,感觉写的太乱,自己就把过程整理了下。

首先,要登录到的服务器上去(默认已经把ssh都配置好了),执行如下命令:
1、sudo wget -O /usr/local/bin/rmate https://raw.github.com/aurora/rmate/master/rmate
2、sudo chmod a+x /usr/local/bin/rmate
接着,在本地安装vscode,再在vscode中安装Rmate插件,在“扩展”中输入”rmate”就能找到,如下图所示,点击安装,完成后点击重新加载。

%title插图%num

*后,配置vscode,进到vscode的“首选项>设置>用户设置”启动远程连接。

%title插图%num

测试连接是否成功,可以在vscode的“查看>终端”中调出终端,也可以直接使用系统的终端。输入如下命令:
ssh -R 52698:localhost:52698 VIRTUAL_MACHINE_IP_ADDRESS
VIRTUAL_MACHINE_IP_ADDRESS是远程服务器的IP,52698是vscode默认的与服务器的连接端口,这个默认可以再setting里面查到。

想要打开服务器上的文件,执行命令rmate demo.py 就可以了,其中demo.py就是你想打开的文件。
当用rmate打开多个文件时,会遇到有时候后一个打开的文件会覆盖当前已经打开的文件,有时又不会,这个问题折腾了好久。解决办法其实很简单:只要把当前文件Ctrl+S保存一下,后打开的文件就会新建一个标签,不会覆盖当前文件。

友情链接: SITEMAP | 旋风加速器官网 | 旋风软件中心 | textarea | 黑洞加速器 | jiaohess | 老王加速器 | 烧饼哥加速器 | 小蓝鸟 | tiktok加速器 | 旋风加速度器 | 旋风加速 | quickq加速器 | 飞驰加速器 | 飞鸟加速器 | 狗急加速器 | hammer加速器 | trafficace | 原子加速器 | 葫芦加速器 | 麦旋风 | 油管加速器 | anycastly | INS加速器 | INS加速器免费版 | 免费vqn加速外网 | 旋风加速器 | 快橙加速器 | 啊哈加速器 | 迷雾通 | 优途加速器 | 海外播 | 坚果加速器 | 海外vqn加速 | 蘑菇加速器 | 毛豆加速器 | 接码平台 | 接码S | 西柚加速器 | 快柠檬加速器 | 黑洞加速 | falemon | 快橙加速器 | anycast加速器 | ibaidu | moneytreeblog | 坚果加速器 | 派币加速器 | 飞鸟加速器 | 毛豆APP | PIKPAK | 安卓vqn免费 | 一元机场加速器 | 一元机场 | 老王加速器 | 黑洞加速器 | 白石山 | 小牛加速器 | 黑洞加速 | 迷雾通官网 | 迷雾通 | 迷雾通加速器 | 十大免费加速神器 | 猎豹加速器 | 蚂蚁加速器 | 坚果加速器 | 黑洞加速 | 银河加速器 | 猎豹加速器 | 海鸥加速器 | 芒果加速器 | 小牛加速器 | 极光加速器 | 黑洞加速 | movabletype中文网 | 猎豹加速器官网 | 烧饼哥加速器官网 | 旋风加速器度器 | 哔咔漫画 | PicACG | 雷霆加速