Linux-ssh

文章目录

  • 远程登录服务器
  • 配置远程服务器相关信息
    • 创建`config`文件
    • 配置`config`文件
  • 配置密钥登陆
    • 先创建密钥
    • 配置密钥文件
  • 执行命令
  • scp传文件
    • copy文件
    • copy文件夹
    • 配置我们的vim和tmux

远程登录服务器

ssh user@hostname
  • user:用户名
  • hostname:IP地址或域名

第一次登陆会显示信息:

The authenticity of host ‘123.57.47.211 (123.57.47.211)’ can’t be established.
ECDSA key fingerprint is SHA256:iy237yysfCe013/l+kpDGfEG9xxHxm0dnxnAbJTPpG8.
Are you sure you want to continue connecting (yes/no/[fingerprint])?

我们直接输入yes,远程服务器的信息就会被记录在~/.ssh/known_hosts
image
文件中的内容为:
image

配置远程服务器相关信息

这一步主要是为了简化登录,因为我们的用户名可能会很长,而且ip地址也不太好记

创建config文件

第一步进入.ssh文件夹,然后在.ssh文件夹下创建config文件
image

配置config文件

Host serverHostName IP地址或域名 	·User 用户名

image
经过上面的配置之后我们可以在直接用server来代替之前输入的user@hostname
也就是说我们直接输入ssh server,然后再输入密码就可以登陆到我们远程服务器上。

配置密钥登陆

先创建密钥

ssh-keygen

执行完上面命令后我们会发现.ssh目录下多了两个文件id_rsaid_rsa.pub
id_rsa:私钥,一般是不能给别人看的
id_rsa.pub:公钥,可以给别人看,我们登录要用的
image

配置密钥文件

将公钥(id_rsa.pub)中的内容复制到server中的~/.ssh/authorized_keys文件中即可

一键添加公钥

ssh-copy-id-server

执行命令

格式

ssh user@hostname command

举个栗子:

ssh server ls -a

image

scp传文件

copy文件

格式:

scp source destination

source:源文件路径
destination:目标文件路径
含义:将source中的内容copy到destination

copy文件夹

格式:

scp -r ~/tmpyserver:homework/

-r:在scp中==-r==一定要放在scp后和源路径之前,这个-r应该表示的是文件夹的含义我们在删除文件夹时也用到rm filename -r
含义:将本地家目录下的tmp文件copy到myserver中的/home/arc目录下

scp -r server:homework .

含义:将本地家目录下的tmp文件copy到myserver中的/home/arc目录下

配置我们的vim和tmux

scp ~/.vimrc ~/.tmux.conf server:

.vimrc 文件

" An example for a vimrc file.
"
" To use it, copy it to
"     for Unix and OS/2:  ~/.vimrc
"             for Amiga:  s:.vimrc
"  for MS-DOS and Win32:  $VIM\_vimrc
"           for OpenVMS:  sys$login:.vimrc" When started as "evim", evim.vim will already have done these settings.
if v:progname =~? "evim"finish
endif" Use Vim settings, rather then Vi settings (much better!).
" This must be first, because it changes other options as a side effect.
set nocompatible" allow backspacing over everything in insert mode
set backspace=indent,eol,startif has("vms")set nobackup          " do not keep a backup file, use versions instead
elseset backup            " keep a backup file
endif
set history=50          " keep 50 lines of command line history
set ruler               " show the cursor position all the time
set showcmd             " display incomplete commands
set incsearch           " do incremental searching
"==========================================================================
"My Setting-sunshanlu
"==========================================================================
vmap <leader>y :w! /tmp/vitmp<CR>
nmap <leader>p :r! cat /tmp/vitmp<CR>"语法高亮
syntax enable
syntax on
"显示行号
set nu"修改默认注释颜色
"hi Comment ctermfg=DarkCyan
"允许退格键删除
"set backspace=2
"启用鼠标
set mouse=a
set selection=exclusive
set selectmode=mouse,key
"按C语言格式缩进
set cindent
set autoindent
set smartindent
set shiftwidth=4" 允许在有未保存的修改时切换缓冲区
"set hidden" 设置无备份文件
set writebackup
set nobackup"显示括号匹配
set showmatch
"括号匹配显示时间为1(单位是十分之一秒)
set matchtime=5
"显示当前的行号列号:
set ruler
"在状态栏显示正在输入的命令
set showcmdset foldmethod=syntax
"默认情况下不折叠
set foldlevel=100
" 开启状态栏信息
set laststatus=2
" 命令行的高度,默认为1,这里设为2
set cmdheight=2" 显示Tab符,使用一高亮竖线代替
set list
"set listchars=tab:\|\ ,
set listchars=tab:>-,trail:-"侦测文件类型
filetype on
"载入文件类型插件
filetype plugin on
"为特定文件类型载入相关缩进文件
filetype indent on
" 启用自动补全
filetype plugin indent on "设置编码自动识别, 中文引号显示
filetype on "打开文件类型检测
"set fileencodings=euc-cn,ucs-bom,utf-8,cp936,gb2312,gb18030,gbk,big5,euc-jp,euc-kr,latin1
set fileencodings=utf-8,gb2312,gbk,gb18030
"这个用能很给劲,不管encoding是什么编码,都能将文本显示汉字
"set termencoding=gb2312
set termencoding=utf-8
"新建文件使用的编码
set fileencoding=utf-8
"set fileencoding=gb2312
"用于显示的编码,仅仅是显示
set encoding=utf-8
"set encoding=utf-8
"set encoding=euc-cn
"set encoding=gbk
"set encoding=gb2312
"set ambiwidth=double
set fileformat=unix"设置高亮搜索
set hlsearch
"在搜索时,输入的词句的逐字符高亮
set incsearch" 着色模式
set t_Co=256
"colorscheme wombat256mod
"colorscheme gardener
"colorscheme elflord
colorscheme desert
"colorscheme evening
"colorscheme darkblue
"colorscheme torte
"colorscheme default" 字体 && 字号
set guifont=Monaco:h10
"set guifont=Consolas:h10" :LoadTemplate       根据文件后缀自动加载模板
"let g:template_path='/home/ruchee/.vim/template/'" :AuthorInfoDetect   自动添加作者、时间等信息,本质是NERD_commenter && authorinfo的结合
""let g:vimrc_author='sunshanlu'
""let g:vimrc_email='sunshanlu@baidu.com'
""let g:vimrc_homepage='http://www.sunshanlu.com'
"
"
" Ctrl + E            一步加载语法模板和作者、时间信息
""map <c-e> <ESC>:AuthorInfoDetect<CR><ESC>Gi
""imap <c-e> <ESC>:AuthorInfoDetect<CR><ESC>Gi
""vmap <c-e> <ESC>:AuthorInfoDetect<CR><ESC>Gi" ======= 引号 && 括号自动匹配 ======= "
"
":inoremap ( ()<ESC>i":inoremap ) <c-r>=ClosePair(')')<CR>
"
":inoremap { {}<ESC>i
"
":inoremap } <c-r>=ClosePair('}')<CR>
"
":inoremap [ []<ESC>i
"
":inoremap ] <c-r>=ClosePair(']')<CR>
"
":inoremap < <><ESC>i
"
":inoremap > <c-r>=ClosePair('>')<CR>
"
"":inoremap " ""<ESC>i
"
":inoremap ' ''<ESC>i
"
":inoremap ` ``<ESC>i
"
":inoremap * **<ESC>i" 每行超过80个的字符用下划线标示
""au BufRead,BufNewFile *.s,*.asm,*.h,*.c,*.cpp,*.java,*.cs,*.lisp,*.el,*.erl,*.tex,*.sh,*.lua,*.pl,*.php,*.tpl,*.py,*.rb,*.erb,*.vim,*.js,*.jade,*.coffee,*.css,*.xml,*.html,*.shtml,*.xhtml Underlined /.\%81v/
"
"
" For Win32 GUI: remove 't' flag from 'guioptions': no tearoff menu entries
" let &guioptions = substitute(&guioptions, "t", "", "g")" Don't use Ex mode, use Q for formatting
map Q gq" This is an alternative that also works in block mode, but the deleted
" text is lost and it only works for putting the current register.
"vnoremap p "_dp" Switch syntax highlighting on, when the terminal has colors
" Also switch on highlighting the last used search pattern.
if &t_Co > 2 || has("gui_running")syntax onset hlsearch
endif" Only do this part when compiled with support for autocommands.
if has("autocmd")" Enable file type detection." Use the default filetype settings, so that mail gets 'tw' set to 72," 'cindent' is on in C files, etc." Also load indent files, to automatically do language-dependent indenting.filetype plugin indent on" Put these in an autocmd group, so that we can delete them easily.augroup vimrcExau!" For all text files set 'textwidth' to 80 characters.autocmd FileType text setlocal textwidth=80" When editing a file, always jump to the last known cursor position." Don't do it when the position is invalid or when inside an event handler" (happens when dropping a file on gvim).autocmd BufReadPost *\ if line("'\"") > 0 && line("'\"") <= line("$") |\   exe "normal g`\"" |\ endifaugroup ENDelseset autoindent                " always set autoindenting onendif " has("autocmd")" 增加鼠标行高亮
set cursorline
hi CursorLine  cterm=NONE   ctermbg=darkred ctermfg=white" 设置tab是四个空格
set ts=4
set expandtab" 主要给Tlist使用
let Tlist_Exit_OnlyWindow = 1
let Tlist_Auto_Open = 1

.tmux.conf 文件

set-option -g status-keys vi
setw -g mode-keys visetw -g monitor-activity on# setw -g c0-change-trigger 10
# setw -g c0-change-interval 100# setw -g c0-change-interval 50
# setw -g c0-change-trigger  75set-window-option -g automatic-rename on
set-option -g set-titles on
set -g history-limit 100000#set-window-option -g utf8 on# set command prefix
set-option -g prefix C-a
unbind-key C-b
bind-key C-a send-prefixbind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -Rbind -n M-Left select-pane -L
bind -n M-Right select-pane -R
bind -n M-Up select-pane -U
bind -n M-Down select-pane -Dbind < resize-pane -L 7
bind > resize-pane -R 7
bind - resize-pane -D 7
bind + resize-pane -U 7bind-key -n M-l next-window
bind-key -n M-h previous-windowset -g status-interval 1
# status bar
set -g status-bg black
set -g status-fg blue#set -g status-utf8 on
set -g status-justify centre
set -g status-bg default
set -g status-left " #[fg=green]#S@#H #[default]"
set -g status-left-length 20# mouse support
# for tmux 2.1
# set -g mouse-utf8 on
set -g mouse on
#
# for previous version
#set -g mode-mouse on
#set -g mouse-resize-pane on
#set -g mouse-select-pane on
#set -g mouse-select-window on#set -g status-right-length 25
set -g status-right "#[fg=green]%H:%M:%S #[fg=magenta]%a %m-%d #[default]"# fix for tmux 1.9
bind '"' split-window -vc "#{pane_current_path}"
bind '%' split-window -hc "#{pane_current_path}"
bind 'c' new-window -c "#{pane_current_path}"# run-shell "powerline-daemon -q"# vim: ft=conf

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/163237.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SI基础知识:说一说玻纤布规格(如1078)的具体含义,以及等效Dk计算

玻纤布的编织包含经向和纬向两个不同的方向&#xff0c;这些玻璃布并没有被紧密放置在一起&#xff0c;在玻纤布上会有开窗&#xff0c;而且经向开窗和纬向开窗大小不同。 IPC定义了每种玻纤布的编织密度以及所用玻璃丝的规格&#xff0c;如下图所示。 看上面的表格&#xff0c…

会议OA项目-其它页面->自定义组件应用,其它界面的布局

1.自定义组件应用 文档参考:https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/ //oamin\project.config.json {"description": "项目配置文件","packOptions": {"ignore": [],"include": []},…

ESP32集成开发环境Espressif-IDE安装 – Windows

陈拓 2023/10/15-2023/10/16 1. 概述 Espressif IDE是一个基于Eclipse CDT的集成开发环境&#xff08;IDE&#xff09;&#xff0c;用于使用ESP-IDF框架开发物联网应用程序。这是一个专门为ESP-IDF构建的独立定制IDE。Espressif IDE附带了IDF Eclipse插件、重要的Eclipse CDT插…

基于 KubeSphere 部署 KubeBlocks 实现数据库自由

作者&#xff1a;尹珉&#xff0c; KubeSphere Contributor & Ambassador&#xff0c;KubeSphere 社区用户委员会杭州站站长。 KubeSphere 是什么&#xff1f; KubeSphere 是在 Kubernetes 之上构建的面向云原生应用的分布式操作系统&#xff0c;完全开源&#xff0c;支持…

最新最全网络安全专业毕业设计选题精华汇总-持续更新中

文章目录 0 前言1 网络安全(信息安全)毕设选题推荐2 开题指导3 最后 0 前言 Hi&#xff0c;大家好&#xff0c;随着毕业季的临近&#xff0c;许多同学开始向学长咨询关于选题和开题的问题。在这里&#xff0c;学长分享一些关于网络安全(信息安全)毕业设计选题的内容。 以下为…

插入排序改进 将交换变成赋值语句 优点适用于近乎有序的序列

效果非常的明显 下面给出代码截图 再给出原代码 #include<iostream> #include<string> #include "Student.h" #include "sorttesthelper.h" using namespace std;template<typename T >void selectionSort( T arr[], int n){for(int i…

编程烦恼:为什么我们有时在解决问题时感到“愚蠢”

编程烦恼&#xff1a;为什么我们有时在解决问题时感到“愚蠢” 在编程的旅程中&#xff0c;每个程序员都曾经遇到过一些令人沮丧的时刻。有时&#xff0c;我们在代码中遇到了神秘的bug&#xff0c;我们花了很多时间来排查问题&#xff0c;但却不断失败。然而&#xff0c;令人惊…

Linux磁盘扩容(超详细)

一、第一步VM虚拟机扩容磁盘 首先我们要先关闭虚拟机&#xff0c;然后这个虚拟机不能存在镜像&#xff0c;否则无法进行扩容 提示&#xff1a; 如果想要某个镜像扩容的解决办法&#xff1a; 可以先保存当前镜像&#xff0c;然后在跳转到你想保存的镜像当中&#xff0c;然后对那…

Service Mesh和Kubernetes:加强微服务的通信与安全性

文章目录 什么是Service Mesh&#xff1f;Service Mesh的优势1. 流量控制2. 安全性3. 可观测性 Istio&#xff1a;Service Mesh的领军者流量管理安全性可观测性 Linkerd&#xff1a;轻量级Service Mesh流量管理安全性可观测性 Istio vs. Linkerd实际应用结论 &#x1f388;个人…

基于SpringCloud实现房产销售平台的设计与实现项目【项目源码+论文说明】

摘要 信息技术的发展推动了管理系统的进步&#xff0c;目前各种行业都积极参与管理系统的建设工作。特别是疫情带来的影响&#xff0c;让传统行业逐渐认识到只有通过在线管理才能继续的发展。房产销售平台是为求租者提供房源必备的平台&#xff0c;如何找到一个好的房源是生活…

企业微信设置可信域名

可信域名的验证文件注意一定放在域名所在的根目录下。 以cloud studio为例&#xff0c;工作区新建终端的路径就是域名在的根目录&#xff0c;而不是服务器的根目录

react+ts手写cron表达式转换组件

前言 最近在写的一个分布式调度系统&#xff0c;后端同学需要让我传入cron表达式&#xff0c;给调度接口传参。我去了学习了解了cron表达式的用法&#xff0c;发现有3个通用的表达式刚好符合我们的需求&#xff1a; 需求 每天 xx 的时间&#xff1a; 0 11 20 * * ? 上面是…

Kotlin中的算数运算符

在Kotlin中&#xff0c;我们可以使用各种算术运算符来进行数值计算和操作。下面对这些运算符进行详细描述&#xff0c;并提供示例代码。 正号&#xff08;正数&#xff09;和负号&#xff08;负数&#xff09;&#xff1a; 正号用于表示一个正数&#xff0c;不对数值进行任何…

东方通部署vue项目

在东方通中部署vue项目需要以war 的形式进行部署具体操作步骤如下 1. 正常打包完vue 项目 在其项目目录下创建WEB-INF 文件夹&#xff0c;同时在里面新建一个 rewrite.config 的文件文件具体内容如下&#xff1a; RewriteRule ^/index\.html$ - [L]RewriteCond …

PyQt 问题记录

1.现成的组件不一定线程安全&#xff0c;&#xff08;包括且不限于数据的修改竞争,和一些组件的崩溃 ) 对于PyQt 的线程使用&#xff0c;可能还需要更谨慎些 保存逻辑 QuestionBox("保存/Save")def Save(self):okFlagFalseerrFlagFalseWriteCmd{}for it in self.Mode…

易点易动上线招标管理模块:提升企业高效招标管理的解决方案

在当今竞争激烈的商业环境下&#xff0c;招标管理对于企业的成功至关重要。为了帮助企业实现高效的招标管理&#xff0c;易点易动固定资产管理系统上线了全新的招标管理模块。该模块涵盖了供应商资质审核、采购询价单、重新报价单、招标结果单、招标作废单等功能&#xff0c;为…

vue源码笔记之——响应系统

vue是一种声明式范式编程&#xff0c;使用vue者只需要告诉其想要什么结果&#xff0c;无需关心具体实现&#xff08;vue内部做了&#xff0c;底层是利用命令式范式&#xff09; 1. reactive为什么只能操作对象&#xff0c;对于基本数据类型&#xff0c;需要用ref&#xff1f; …

ATE测试工程师的前景待遇如何?薪资天花板有多高?

在芯片行业&#xff0c;ATE测试工程师扮演着至关重要的角色。 他们不仅需要理解电路和芯片内部的工作原理&#xff0c;还需要利用各种测试工具和方法对芯片进行精确的测试和分析。那么ATE测试工程师前景如何&#xff1f;需要具备哪些技能要求呢&#xff1f; 首先来了解什么是…

计算机基础知识33

进程基础(操作系统中的概念) 进程它是操作系统总最重要的概念&#xff0c;线程也是 进程和线程都是有操作系统来调度使用的&#xff0c;我们程序员是不能控制的 # 进程和程序是两码事、完全不一样 程序&#xff1a;其实一个死的东西、一堆代码就是程序&#xff0c;它也没有生命…

通信管理机在变电站监控系统中的应用-安科瑞黄安南

随着通信管理机在我国历经多年的发展&#xff0c;随着技术的不断创新和完善&#xff0c;越来越多的变电站认可和接受并且正在使用着通信管理机。 1通信管理机的功能特点 通讯管理机一般运用于变电所、调度站&#xff0c;通讯管理机通过控制平台控制下行的RRtu设备&#xff0c…