首页
壁纸
友情
关于
统计
推荐
Search
1
通过华为交换机的辅助,增加“ikuai爱快软路由”wan的线路
1,677 阅读
2
华为S5700交换机升级记录
1,372 阅读
3
小米AC2100(红米ac2100)刷写Breed不死固件
1,058 阅读
4
酷我音乐豪华VIP版 | 电脑版
1,040 阅读
5
nginx“高逼格” 帮你快速隐藏php后缀名
973 阅读
食用技巧
食用软件
通信技术
交换机
软路由
网络技术
编程技术
Python学习
C学习
WEB学习
C++学习
Python基础
Python爬虫知识
蓝桥杯省赛训练题
前端学习
后端学习
PHP学习
Linux
华为Datacom
IPv4技术
登录
Search
标签搜索
linux
Python
酷我音乐
Docker
第一篇文章
交换机技术
Joe
华为交换机
PHP
开机自启
爬虫
正则
Ubuntu
搭建教程
csv
数据分析
IP
加密
WAF的拦截
html
Jayson
累计撰写
33
篇文章
累计收到
2
条评论
首页
栏目
食用技巧
食用软件
通信技术
交换机
软路由
网络技术
编程技术
Python学习
C学习
WEB学习
C++学习
Python基础
Python爬虫知识
蓝桥杯省赛训练题
前端学习
后端学习
PHP学习
Linux
华为Datacom
IPv4技术
页面
壁纸
友情
关于
统计
推荐
搜索到
7
篇与
的结果
2025-12-09
告别密码!SSH 密钥登录配置,一步解锁高效安全连接
SSH 密钥登录指南一、为什么使用 SSH 密钥登录?传统密码登录存在两大痛点:密码容易泄露、被暴力破解(尤其是弱密码)每次登录需重复输入密码,效率低下(比如频繁连接服务器、推送代码)而 SSH 密钥登录基于非对称加密算法(公钥 + 私钥),优势明显:✅ 安全性更高:私钥仅保存在本地,公钥可公开传输,破解难度极大✅ 免密登录:配置后无需输入密码,直接连接✅ 多场景适用:服务器(Linux/Windows Server)、代码仓库(Gitea/GitHub/GitLab)、云服务等均支持二、核心概念:公钥与私钥私钥(Private Key):相当于「个人身份证」,需妥善保管在本地(如电脑),绝对不能泄露公钥(Public Key):相当于「身份证复印件」,可上传到服务器、代码平台等目标设备登录原理:本地用私钥加密验证信息,目标设备用公钥解密,匹配成功则允许登录。三、分步配置:从生成密钥到登录前提条件本地设备:安装 Git(自带 SSH 工具)或单独安装 OpenSSH(Windows 10/11 可通过「设置→应用→可选功能」安装)目标设备:开启 SSH 服务(服务器默认开启,代码平台无需手动配置)第一步:生成 SSH 密钥对(本地操作)打开终端 / 命令行(Windows 用 Git Bash、PowerShell 均可)执行生成命令(推荐 ed25519 算法,安全性更高;若系统不支持,改用 rsa 算法):# 推荐:ed25519 算法(密钥文件更小、更安全) ssh-keygen -t ed25519 -C "你的备注信息(如邮箱、设备名)" # 兼容旧系统:rsa 算法(4096 位加密) ssh-keygen -t rsa -b 4096 -C "你的备注信息"执行后按 3 次回车(无需设置密码,若需更高安全可设置密钥密码):第一次回车:确认密钥保存路径(默认 ~/.ssh/,Windows 为 C:\Users\你的用户名.ssh\)第二次 / 第三次回车:跳过设置密钥密码(输入则每次使用密钥需验证密码)生成成功后,~/.ssh/ 目录下会出现两个文件:私钥:id_ed25519(或 id_rsa)→ 本地保管,切勿泄露公钥:id_ed25519.pub(或 id_rsa.pub)→ 需上传到目标设备第二步:上传公钥到目标设备(以 2 种常见场景为例)场景 1:登录 Linux 服务器(如阿里云、腾讯云 EC2)查看并复制本地公钥内容:# Windows/Mac/Linux 通用命令(复制输出的全部内容) cat ~/.ssh/id_ed25519.pub输出示例(以 ed25519 为例):ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKZ4k1y8zHxq6jV6Xr+Q9q6G9fW5a7v8e9x3y7z1o2p3q4r5s6t7u8v9w0x your-email@example.com上传公钥到服务器(两种方式,选其一):方式 A:手动上传(适合新手)① 用密码登录服务器:ssh 用户名@服务器IP(如 ssh root@123.45.67.89)② 在服务器上创建 .ssh 目录(若已存在则跳过):mkdir -p ~/.ssh && chmod 700 ~/.ssh③ 编辑 authorized_keys 文件(存储公钥的核心文件):vi ~/.ssh/authorized_keys④ 按 i 进入编辑模式,粘贴本地复制的公钥,按 Esc 后输入 :wq 保存退出⑤ 设置文件权限(关键!否则 SSH 会拒绝读取):chmod 600 ~/.ssh/authorized_keys方式 B:一行命令上传(高效)本地终端执行(无需先登录服务器):ssh-copy-id -i ~/.ssh/id_ed25519.pub 用户名@服务器IP按提示输入服务器密码,即可自动完成公钥上传和权限配置。场景 2:连接 Gitea/GitHub(代码仓库免密推送)复制本地公钥内容(同场景 1 第一步)登录 Gitea/GitHub,进入密钥配置页:Gitea:右上角头像 → Settings → 左侧 SSH / GPG Keys → Add KeyGitHub:右上角头像 → Settings → SSH and GPG keys → New SSH key粘贴公钥内容,填写密钥名称(如「我的笔记本」),点击「添加」即可第三步:测试 SSH 密钥登录终端执行登录命令(根据场景选择):服务器:ssh 用户名@服务器IP(如 ssh root@123.45.67.89)Gitea:ssh -T git@你的Gitea地址(如 ssh -T git@gitea.example.com)GitHub:ssh -T git@github.com成功标志:服务器:直接登录到命令行,无需输入密码Gitea/GitHub:提示 Hi 你的用户名! You've successfully authenticated...四、进阶优化:提升安全性与便捷性1. 禁用服务器密码登录(推荐)配置密钥登录后,禁用密码登录可彻底防止暴力破解:登录服务器,编辑 SSH 配置文件:vi /etc/ssh/sshd_config修改以下参数(去掉注释并设置为对应值):PasswordAuthentication no # 禁用密码登录 PubkeyAuthentication yes # 启用公钥登录 PermitRootLogin prohibit-password # 禁止 root 密码登录(仅允许密钥)重启 SSH 服务生效:# Ubuntu/Debian sudo systemctl restart sshd # CentOS/RHEL sudo systemctl restart sshd # 旧系统(如 CentOS 6) sudo service sshd restart2. 配置别名登录(避免记忆 IP / 用户名)每次输入 ssh root@123.45.67.89 麻烦?可配置别名:本地编辑 SSH 配置文件:vi ~/.ssh/config添加以下内容(按需修改):# 服务器别名配置(示例) Host my-server # 别名(可自定义,如 server1、aliyun) HostName 123.45.67.89 # 服务器 IP 或域名 User root # 登录用户名 IdentityFile ~/.ssh/id_ed25519 # 私钥路径(默认可省略) # Gitea 别名(可选) Host my-gitea HostName gitea.example.com User git IdentityFile ~/.ssh/id_ed25519保存后,直接用别名登录:ssh my-server # 等价于 ssh root@123.45.67.89五、常见问题排查1. 登录提示「Permission denied (publickey)」可能原因及解决方案:原因 1:公钥未正确上传到目标设备的 authorized_keys 文件解决:重新上传公钥,确保内容完整(无多余空格、换行)原因 2:服务器 ~/.ssh 或 authorized_keys 权限过高解决:重新设置权限(参考场景 1 步骤 2 方式 A 第 5 步)原因 3:私钥路径错误或权限过高(本地)解决:私钥权限需设为 600:chmod 600 ~/.ssh/id_ed255192. Windows 提示「ssh: command not found」解决:安装 Git(自带 SSH 工具),或在「设置→应用→可选功能」中安装「OpenSSH 客户端」3. 密钥丢失 / 泄露怎么办?私钥泄露:立即删除目标设备(服务器、Gitea 等)上对应的公钥,重新生成新的密钥对并上传私钥丢失:无法恢复,重新生成密钥对并上传公钥到目标设备
2025年12月09日
54 阅读
0 评论
0 点赞
2025-10-08
vim 常用命令合集
Vim编辑器核心命令速查表(完整版)Vim 是一款高效的终端文本编辑器,其核心优势在于无需鼠标的纯键盘操作和可自定义的工作流。本文整理了 Vim 从基础到高级的核心命令,按功能模块分类,方便日常查阅和效率提升。一、基础全局命令需在普通模式(非插入模式)下输入 : 后执行,用于文件管理、帮助查询等核心操作。命令 / 快捷键功能描述实用场景举例:h[elp] 关键字显示指定关键字的官方帮助(最权威学习工具)忘记 dd 用法时,输入 :h dd:sav[eas] 文件名另存为指定文件(原文件保留)编辑临时文件后保存为正式文件:clo[se]关闭当前窗口(最后一个窗口则退出Vim)多窗口编辑时关闭无用窗口:ter[minal]在Vim中打开新终端窗口(无需切出Vim)编辑代码时临时执行 make 等命令K打开光标所在单词的 man 手册页查看Linux命令/函数详细说明二、光标移动(普通模式)Vim 效率核心之一,无需鼠标即可精准定位,熟记后大幅提升操作速度。分类命令 / 快捷键功能描述补充说明基础方向h/j/k/l左/下/上/右移1个字符替代方向键,手无需离开主键盘区页面定位H/M/L移动到当前页面顶部/中间/底部快速跳转页面内关键位置单词级移动w/W移动到下个单词开头(W 含标点视为单词)例:hello, world 中,w 跳 ,,W 跳 w e/E移动到下个单词结尾(E 含标点视为单词)修改单词末尾时用(如加s变复数) b/B移动到上个单词开头(B 含标点视为单词)回退修改时定位前一个单词行内定位0移动到行首(含空白符)行首插入内容时用 ^移动到行首第一个非空白符编辑代码时定位行内有效内容开头 $/g_移动到行尾/行内最后一个非空白符行尾补分号用 $a;文件级定位gg/G移动到文件第一行/最后一行查看文件开头注释或结尾 return 语句 5gg/5G移动到第5行(数字可替换)跳转编译报错行(如 100G 到第100行)字符搜索定位fx/Fx跳转到字符 x 下次/上次出现位置找行内 ( 用 f(,找 ) 用 f) tx/Tx跳转到字符 x 附近(前一个/后一个字符)目标字符前插入内容用 tx + a ;/,重复/反向重复上一次 f/t/F/T 操作连续找相同字符无需重复输入 fx段落/代码块定位}/{移动到下一个/上一个段落(代码中为函数块)编辑多函数代码时切换函数屏幕调整zz使光标所在行居中显示光标在页面边缘时聚焦视线 Ctrl + e/y向下/向上滚动1行(光标不动)查看光标下方/上方内容 Ctrl + b/f向上/向下滚动一整屏快速翻页(b=back,f=forward) Ctrl + d/u向下/向上滚动半屏比整屏翻页更精准,查看相邻内容三、插入模式(输入文本)从普通模式进入“编辑状态”,完成输入后按 Esc 返回普通模式。命令 / 快捷键功能描述实用场景举例i从光标前插入光标在 he_llo 处,按 i 输 l 成 hell_loI从行首非空白符前插入代码行前加注释(I//)a从光标后插入光标在 h_ello 处,按 a 输 e 成 he_lloA从行尾插入行尾补分号(A;)或注释o/O在当前行下方/上方新建行并插入插入新代码行(比回车更高效)ea从当前单词末尾后插入word → 按 ea 输 _s 成 word_s插入模式编辑Ctrl + h删除光标前1个字符(同退格键)输入错误无需按 Esc 回退 Ctrl + w删除光标前1个单词(空格/标点分隔)输错单词快速删除(如 helo → Ctrl + w) Ctrl + j另起一行(不触发自动缩进)手动控制换行时用 Ctrl + t/d向右/向左缩进当前行(按 shiftwidth 设定)编辑代码调整缩进,不退出插入模式自动补全Ctrl + n/p下一个/上一个补全候选(基于文件内容)输入变量名/函数名时快速补全 Ctrl + r x插入 x 寄存器内容(x 为寄存器名)插入复制内容,不退出插入模式Esc退出插入模式,返回普通模式所有插入操作结束后必须按四、编辑文本(普通模式)无需进入插入模式,直接修改、删除、调整文本格式。命令 / 快捷键功能描述补充说明r替换当前1个字符(无需插入模式)helo → 光标在 o 前,按 rh 成 helloJ/gJ合并下一行到当前行(J 加空格,gJ 不加)line1 + line2 → line1 line2(J)或 line1line2(gJ)gwip重新调整段落格式(自动换行对齐)粘贴文本后格式混乱时快速排版大小写转换g~切换选中文本大小写(需可视化模式)HELLO ↔ hello gu将选中文本转为小写(需可视化模式) gU将选中文本转为大写(需可视化模式) 删除并插入cc/S删除当前行,进入插入模式整行重写(比 ddi 更高效) C/c$删除光标到行尾内容,进入插入模式int a = 1; → 光标在 a 后,按 C 改 a = 2; ciw删除当前单词,进入插入模式apple → 按 ciw 输 banana 成 banana cw删除光标到单词结尾,进入插入模式helo → 光标在 e 后,按 cw 输 llo 成 hello s删除当前字符,进入插入模式替换单个字符(比 ri 少按1次键)字符调整xp交换当前字符和下一个字符(字符后移)teh → 光标在 e 上,按 xp 成 the撤销/重做u撤销上一次操作(可多次撤销)误删 dd 后按 u 恢复 U撤销对当前行的所有修改(仅恢复当前行)行内多次修改后恢复原行 Ctrl + r重做上一次被撤销的操作(反撤销)撤销多了想恢复之前修改时用 .重复上一次修改类命令(Vim核心效率键)连续删除多行:dd 后按 .;连续加 ;:A; 后按 .五、可视化模式(选中文本)先选中目标文本,再执行复制、删除等操作,普通模式下按对应键进入。模式类型进入命令功能描述适用场景字符可视化v按字符选中(拖动光标选任意范围)选中零散字符(如单词中的几个字母)行可视化V按行选中(光标上下移动,整行选中)选中多行代码(删除/复制连续行)列可视化(矩阵)Ctrl + v按列选中(垂直选择,支持矩形区域)批量编辑列内容(如给多行加 // 注释)可视化模式常用操作选中内容后,按以下键执行操作:命令 / 快捷键功能描述>/<选中内容向右/向左缩进y复制选中内容到默认寄存器d剪切选中内容(删除并复制)~切换选中内容的大小写u/U选中内容转为小写/大写o/O切换光标在选中区域的开头/结尾/对角调整选中范围时用Esc退出可视化模式,返回普通模式六、寄存器(复制/剪切的“容器”)Vim 复制/剪切内容存入“寄存器”,默认用匿名寄存器(""),可指定自定义寄存器(a-z)避免覆盖。命令 / 快捷键功能描述实用场景举例:reg[isters]查看所有寄存器内容(确认复制结果)忘记复制内容存哪个寄存器时用"xy复制选中内容到寄存器x(x 可替换 a-z)保留多个复制内容:"ay 存第一段,"by 存第二段"xp粘贴寄存器x中的内容粘贴第二段用 "bp"+y/"+p复制到/粘贴自系统剪贴板(跨程序通用)Vim 内容复制到浏览器/文档,或粘贴外部内容到Vim七、标记和位置(快速回跳)对关键位置做“标记”,或通过历史记录回跳,避免重复定位。命令 / 快捷键功能描述实用场景举例:marks查看所有标记列表忘记标记位置时用ma在当前位置设置标记a(a 可替换 a-z)函数开头按 mf 做标记 `a 跳转到标记a的位置(精准到字符)编辑函数内部后,按 `f 回开头 `0 跳转到Vim上一次退出时的位置重新打开文件后回上次编辑处 `" 跳转到文件上次编辑时的位置打开旧文件后定位历史修改点 `. 跳转到文件最后一次修改的位置修改后检查效果,按 `. 回跳 ``跳转到上一次跳转前的位置gg 到文件开头后,按 回原位置跳转历史:ju[mps]查看所有跳转记录(行号/标记跳转)回退到更早定位时用 Ctrl + i/o跳转到跳转历史的较新/较旧位置类似浏览器前进/后退键修改历史:changes查看所有修改记录(何时修改哪行)追踪文本修改轨迹 g,/g;跳转到修改历史的较新/较旧位置检查之前修改内容时用标签跳转Ctrl + ]跳转到光标所在标签的定义处(需支持标签)编辑代码时查看函数/变量定义八、宏(批量执行重复操作)录制一组操作后重复执行,适用于“相同操作需执行多次”的场景(如批量修改格式)。命令 / 快捷键功能描述操作流程示例(批量给行首加 //)qa开始录制宏,存入寄存器a(a 可替换)1. 按 qa 开始录制q停止录制宏2. 执行操作:I//(加注释)+ Esc + j(下一行)3. 按 q 停止@a执行寄存器a中的宏4. 按 @a 执行1次,给下一行加注释@@重复执行上一次执行的宏5. 按 @@ 批量处理剩余行九、复制、剪切、粘贴(普通模式)直接对行/单词/字符进行操作,无需先选中(可视化模式也可配合使用)。操作类型命令 / 快捷键功能描述示例(以 hello world 为例)复制yy复制当前行光标在行上,按 yy 复制整行 2yy复制从当前行开始的2行(数字可替换)按 3yy 复制当前行+下2行 yw复制当前单词(从光标到单词结尾)光标在 h 上,按 yw 复制 hello y$复制从光标到行尾的内容光标在 h 上,按 y$ 复制 hello world
2025年10月08日
35 阅读
0 评论
0 点赞
linux设置开机自启动
2022年09月16日
395 阅读
0 评论
0 点赞
2022-09-16
简介linux设置开机自启动的方法我简单说两种,一种是在rc.local添加,另一种是init.d文件里添加。这样就不用老是重启服务器的时候再重新运行程序,导致网站的某些功能用不了了!!linux设置开机自启动的方法:1. rc.local文件中添加自启动命令1. 执行命令: 编辑"/etc/rc.local",添加你想开机运行的命令 2. 运行程序脚本:然后在文件最后一行添加要执行程序的全路径。 3. 例如,每次开机时要执行一个hello.sh,这个脚本放在/usr下面,那就可以在"/etc/rc.local"中加一行"/usr/./hello.sh",或者" cd /opt && ./hello.sh " '注意,你的命令应该添加在:exit 0 之前'2. 在/etc/init.d目录下添加自启动脚本linux在“/etc/rc.d/init.d”下有很多的文件,每个文件都是可以看到内容的,其实都是一些shell脚本或者可执行二进制文件Linux开机的时候,会加载运行/etc/init.d目录下的程序,因此我们可以把想要自动运行的脚本放到这个目录下即可。系统服务的启动就是通过这种方式实现的。
2022-08-09
快速上手Git
Git 快速上手指南:从入门到日常使用Git 作为目前最流行的分布式版本控制系统,是程序员必备的工具之一。本文将带你快速掌握 Git 的核心操作,帮助你在 1 小时内上手并应用到实际开发中。一、环境准备:安装与初始化1. 安装 GitWindows:下载Git for Windows,默认安装即可(建议勾选 "Add Git Bash Here" 方便右键调用)。Mac:通过 Homebrew 安装 brew install git,或直接下载官方安装包。Linux:Ubuntu/Debian 系统使用 sudo apt-get install git,CentOS/RHEL 系统使用 sudo yum install git。2. 验证安装打开终端(Windows 用 Git Bash),输入以下命令,显示版本号即安装成功:git --version \# 示例输出:git version 2.45.13. 配置用户信息首次使用前需配置用户名和邮箱(与 JZQYUN/GitLab 账号一致),用于标识提交记录的作者:git config --global user.name "你的用户名" git config --global user.email "你的邮箱地址" \# 查看配置结果 git config --list二、核心操作:本地仓库管理1. 创建本地仓库方式 1:新建仓库在项目文件夹中初始化 Git 仓库:\# 1. 进入项目文件夹 cd /path/to/your/project \# 2. 初始化仓库(生成.git隐藏文件夹,存储版本信息) git init方式 2:克隆远程仓库从 JZQYUN/GitLab 等平台克隆已有项目到本地:git clone https://jzqyun.cn/用户名/仓库名.git \# 示例:git clone https://jzqyun.cn/octocat/Hello-World.git2. 版本控制核心流程Git 的核心是 "工作区→暂存区→本地仓库" 的流转,记住以下 3 个高频命令:命令作用场景git add将工作区文件添加到暂存区修改 / 新增文件后git commit -m "备注"将暂存区内容提交到本地仓库完成功能 / 修复 bug 后git status查看仓库状态(文件是否未跟踪 / 未提交)不确定文件状态时示例流程:\# 1. 创建测试文件 echo "Hello Git" > test.txt \# 2. 查看状态(显示test.txt为未跟踪文件) git status \# 3. 添加到暂存区 git add test.txt \# 4. 提交到本地仓库(备注需清晰,方便后续查历史) git commit -m "feat: 添加test.txt测试文件"3. 查看历史与回滚查看提交历史\# 简洁显示历史(一行一条记录) git log --oneline \# 示例输出: \# a1b2c3d (HEAD -> main) feat: 添加test.txt测试文件 \# d4e5f6g init: 初始化仓库回滚到指定版本当需要撤销错误提交时,使用 git reset(谨慎操作,避免丢失重要代码):\# 回滚到指定版本(版本号取git log --oneline显示的前几位即可) git reset --hard a1b2c3d三、团队协作:远程仓库操作日常开发中,通常需要与 JZQYUN/GitLab 等远程仓库交互,核心命令如下:1. 关联远程仓库若为本地新建仓库,需先关联远程仓库:git remote add origin https://jzqyun.cn/用户名/仓库名.git2. 拉取远程代码从远程仓库拉取最新代码到本地(避免冲突):\# 拉取main分支代码(main是默认主分支,部分项目用master) git pull origin main3. 推送本地代码到远程将本地仓库的提交推送到远程仓库:\# 首次推送需加-u参数,绑定本地与远程分支 git push -u origin main \# 后续推送可简化为 git push4. 常见问题:推送失败问题 1:提示 "fatal: could not read Username for 'https://jzqyun.cn'"解决:在 JZQYUN 平台添加本地 SSH 密钥,或用 HTTPS 协议输入账号密码(推荐 SSH 方式,免重复输密码)。问题 2:提示 "error: failed to push some refs"解决:本地代码非最新,先执行 git pull origin main 拉取远程代码,解决冲突后再推送。四、进阶技巧:提升效率1. 分支管理(必备)分支用于隔离不同功能开发,避免代码混乱。常用命令:\# 1. 新建并切换到功能分支(如开发登录功能) git checkout -b feature/login \# 2. 查看所有分支(当前分支前有\*标记) git branch \# 3. 切换回main分支 git checkout main \# 4. 合并分支(将feature/login合并到main) git merge feature/login \# 5. 删除已合并分支(功能上线后清理) git branch -d feature/login2. 忽略文件(.gitignore)创建 .gitignore 文件,指定不需要 Git 跟踪的文件(如日志、依赖包、IDE 配置):\# 编辑.gitignore文件 vim .gitignore \# 添加以下内容(根据项目类型调整) node\_modules/ # Node.js依赖包 logs/ # 日志文件 .idea/ # IntelliJ IDEA配置 \*.log # 所有.log后缀文件3. 快捷别名为常用命令设置别名,提升输入效率(如用 git st 代替 git status):git config --global alias.st status git config --global alias.co checkout git config --global alias.br branch git config --global alias.ci commit五、常用命令速查表类别命令说明初始化git init本地新建仓库 git clone 地址克隆远程仓库(地址格式:https://jzqyun.cn/用户名 / 仓库名.git)暂存与提交git add 文件名添加单个文件到暂存区 git add .添加所有修改到暂存区 git commit -m "备注"提交暂存区到本地仓库远程操作git remote add origin 地址关联远程仓库(地址格式:https://jzqyun.cn/用户名 / 仓库名.git) git pull origin 分支拉取远程代码 git push origin 分支推送本地代码到远程分支管理git checkout -b 分支名新建并切换分支 git merge 分支名合并指定分支到当前分支历史与回滚git log --oneline查看简洁提交历史 git reset --hard 版本号回滚到指定版本
2022年08月09日
45 阅读
1 评论
0 点赞
2022-07-24
Linux_screen使用
screen 是一个非常有用的命令,提供从单个 SSH 会话中使用多个 shell 窗口(会话)的能力。当会话被分离或网络中断时,screen 会话中启动的进程仍将运行,你可以随时重新连接到 screen 会话。如果你想运行一个持久的进程或者从多个位置连接到 shell 会话,这也很方便。在本文中,我们将展示在 Linux 上安装和使用 screen 的基本知识。{mtitle title="如何安装screen?"/}screen 在一些流行的发行版上已经预安装了。你可以使用下面的命令检查是否已经在你的服务器上安装了。screen -v Screen version 4.00.03 (FAU)如果在 Linux 中还没有 screen,你可以使用系统提供的包管理器很简单地安装它。CentOS/RedHat/Fedorayum -y install screenUbuntu/Debianapt-get -y install screen{mtitle title="screen 基本使用"/}语法# screen [-AmRvx -ls -wipe][-d <作业名称>][-h <行数>][-r <作业名称>][-s ][-S <作业名称>]常用参数screen -S yourname //新建一个名字为yourname的一个session(会话) screen -ls //列出所有的session(会话) screen -r yourname //回到yourname这个session(会话) screen -d yourname //将指定的session(会话)离线 screen -d -r yourname 结束当前的session(会话)回到yourname这个session(会话) 参数说明-A 将所有的视窗都调整为目前终端机的大小。 -d<作业名称> 将指定的screen作业离线。 -h<行数> 指定视窗的缓冲区行数。 -m 即使目前已在作业中的screen作业,仍强制建立新的screen作业。 -r<作业名称> 恢复离线的screen作业。 -R 先试图恢复离线的作业。若找不到离线的作业,即建立新的screen作业。 -s<shell> 指定建立新视窗时,所要执行的shell。 -S<作业名称> 指定screen作业的名称。 -v 显示版本信息。 -x 恢复之前离线的screen作业。 -ls或--list 显示目前所有的screen作业。 -wipe 检查目前所有的screen作业,并删除已经无法使用的screen作业。如何kill一个screen?两种方法:使用screen名字,杀掉。screen -S yourname -X quit激活screen,然后再杀掉screen -r yourname quitscreen的快捷键Ctrl + a+d #暂离当前会话 Ctrl + a+c #在当前screen会话中创建一个子会话 Ctrl + a+w #子会话列表 Ctrl + a+p #上一个子会话 Ctrl + a+n #下一个子会话 Ctrl + a+0-9 #在第0窗口至第9子会话间切换
2022年07月24日
287 阅读
0 评论
0 点赞
Ubuntu Server 搭建教程
前言Ubuntu是一个Linux发行版其中的操作系统,处理出名的桌面版之外,另也有服务器版本。本教程演示Ubuntu服务器版本搭建!Ubuntu Server下载地址:https://ubuntu.com/download/server教程开始1. 这里设置Ubuntu Server的搭建的语言,这里我选择(English){dotted startColor="#ff6c6c" endColor="#1989fa"/}2. 这里意思是设置安装程序更新,我们不用管它。这里选择(Continue without updating){dotted startColor="#ff6c6c" endColor="#1989fa"/}3. 这里是配置键盘布局,这里直接默认即可(Done){dotted startColor="#ff6c6c" endColor="#1989fa"/}4. 这里设置网卡,这里老样子(Done){dotted startColor="#ff6c6c" endColor="#1989fa"/}5. 这里设置代理,这里老样子(Done){dotted startColor="#ff6c6c" endColor="#1989fa"/}6. 这里配置Ubuntu镜像文件,这里老样子(Done){dotted startColor="#ff6c6c" endColor="#1989fa"/}7. 这里设置储存配置文件,这里老样子(Done){dotted startColor="#ff6c6c" endColor="#1989fa"/}8. 这里画面为需再次确认Ubuntu系统安装所使用的IOS镜像文件,主要是说安装程式会将你选择好的分割区格式化,点选(Continue)确定格式化以继续。{dotted startColor="#ff6c6c" endColor="#1989fa"/}9. 这里配置操作系统的用户名和密码{card-describe title="配置描述"}(Your name)栏位可以输入你的名字;(Your server's name)为输入主机的名称;(Pick a username)栏位输入一个使用者帐号名称,此使用者名称为等下你在登入Ubuntu Server主机时的帐号名称,所以你需要自行记住你所输入好的使用者名称;(Choose a password)栏位则输入一组新密码;(Confirm your password)再次输入刚刚所设定好的密码。栏位都输入完成后,点击(Done)继续下一步。{message type="success" content="(Your server's name)和(Pick a username)两者栏位开始必须以小写字母开头,接着就可以使用任意数字或其他的小写字母组合及符号,分别为底线『_』和减号『-』。"/}{/card-describe}{dotted startColor="#ff6c6c" endColor="#1989fa"/}10. 这里是设置是否要安装ssh服务,一般都是需要的,所有我们这里默认安装!{dotted startColor="#ff6c6c" endColor="#1989fa"/}11. 看到这里就是要你选择要安装的套件,按照自己的需求进行选择,选择(Done){dotted startColor="#ff6c6c" endColor="#1989fa"/}12. 可以看到安裝程式正在安裝系統。{dotted startColor="#ff6c6c" endColor="#1989fa"/}13. 安裝程式已安裝好系統,接着会直接进行系统的更新步骤,再等待一下。{dotted startColor="#ff6c6c" endColor="#1989fa"/}14. 这里选择(Cancel update and reboot)更新并且重启{lamp/}{mtitle title="The end"/}
2022年01月21日
379 阅读
0 评论
0 点赞
2021-10-05
Linux常用命令收集
一、基本命令1.1 关机和重启关机 shutdown -h now 立刻关机 shutdown -h 5 5分钟后关机 poweroff 立刻关机重启shutdown -r now 立刻重启 shutdown -r 5 5分钟后重启 reboot 立刻重启1.2 帮助命令--help命令shutdown --help: ifconfig --help:查看网卡信息man命令(命令说明书)man shutdown注意:man shutdown打开命令说明书之后,使用按键q退出二、目录操作命令2.1 目录切换 cd命令:cd 目录cd / 切换到根目录cd /usr 切换到根目录下的usr目录cd ../ 切换到上一级目录 或者 cd ..cd ~ 切换到home目录cd - 切换到上次访问的目录2.2 目录查看 ls [-al]命令:ls [-al]ls 查看当前目录下的所有目录和文件ls -a 查看当前目录下的所有目录和文件(包括隐藏的文件)ls -l 或 ll 列表查看当前目录下的所有目录和文件(列表查看,显示更多信息)ls /dir 查看指定目录下的所有目录和文件 如:ls /usr2.3 目录操作【增,删,改,查】2.3.1 创建目录【增】 mkdir命令:mkdir 目录mkdir aaa 在当前目录下创建一个名为aaa的目录mkdir /usr/aaa 在指定目录下创建一个名为aaa的目录2.3.2 删除目录或文件【删】rm命令:rm [-rf] 目录删除文件:rm 文件 删除当前目录下的文件rm -f 文件 删除当前目录的的文件(不询问)删除目录:rm -r aaa 递归删除当前目录下的aaa目录rm -rf aaa 递归删除当前目录下的aaa目录(不询问)全部删除:rm -rf * 将当前目录下的所有目录和文件全部删除rm -rf /* 【自杀命令!慎用!慎用!慎用!】将根目录下的所有文件全部删除注意:rm不仅可以删除目录,也可以删除其他文件或压缩包,为了方便大家的记忆,无论删除任何目录或文件,都直接使用 rm -rf 目录/文件/压缩包2.3.3 目录修改【改】mv 和 cp一、重命名目录命令:mv 当前目录 新目录例如:mv aaa bbb 将目录aaa改为bbb 注意:mv的语法不仅可以对目录进行重命名而且也可以对各种文件,压缩包等进行重命名的操作二、剪切目录命令:mv 目录名称 目录的新位置示例:将/usr/tmp目录下的aaa目录剪切到 /usr目录下面 mv /usr/tmp/aaa /usr注意:mv语法不仅可以对目录进行剪切操作,对文件和压缩包等都可执行剪切操作三、拷贝目录命令:cp -r 目录名称 目录拷贝的目标位置 -r代表递归示例:将/usr/tmp目录下的aaa目录复制到 /usr目录下面 cp /usr/tmp/aaa /usr注意:cp命令不仅可以拷贝目录还可以拷贝文件,压缩包等,拷贝文件和压缩包时不用写-r递归2.3.4 搜索目录【查】find命令:find 目录 参数 文件名称示例:find /usr/tmp -name 'a*' 查找/usr/tmp目录下的所有以a开头的目录或文件三、文件操作命令3.1 文件操作【增,删,改,查】3.1.1 新建文件【增】touch命令:touch 文件名示例:在当前目录创建一个名为aa.txt的文件 touch aa.txt3.1.2 删除文件 【删】 rm命令:rm -rf 文件名
2021年10月05日
577 阅读
0 评论
0 点赞