当前位置: 首页 > news >正文

Ubuntu Server CLI专业提示

在这里插入图片描述

基础

网络

获取所有接口的IP地址
networkctl status
显示主机的所有IP地址
hostname -I
启用/禁用接口
ip link set <interface> up
ip link set <interface> down
显示路线
ip route
将使用哪条路线到达主机
ip route get <IP>

安全

显示已登录的用户
w
获取用户密码到期日期
chage -l <user>
设置用户密码到期日期
sudo chage <user>
锁定用户帐户
sudo passwd -l <user>
解锁用户密码
sudo passwd -u <user>
自动检测并禁止滥用IP地址
sudo apt install fail2ban
显示被禁止的IP地址
sudo fail2ban-client status
sudo fail2ban-client status <jail>
将使用哪条路线到达主机
ip route get <IP>
列出打开的端口和关联的进程
sudo ss -tulpn
管理防火墙规则
开启防火墙 sudo ufw enable
列出规则 sudo ufw status
允许端口 sudo ufw allow <port>
拒绝端口 sudo ufw deny <port>
通过SSH远程连接
ssh <user>@<host IP>

Ubuntu服务

启用Ubuntu服务。
访问 ubuntu.com/advantage,获得最多3台机器的免费代币(如果你是ubuntu社区的官方成员,则为50台)。
sudo ua attach <token>
查看Ubuntu Advantage服务的可用性和权利
sudo ua status
启用或禁用服务
sudo ua enable <service>
sudo ua disable <service>
修复CVE/USN
sudo ua fix <cve/usn>
查看软件包更新系统的可用性状态
sudo ubuntu-security-status
查看Livepatch已修补的CVE
canonical-livepatch status --verbose

软件包

搜索程序包
apt search <string>
snap find <string>
列出可用的软件包版本
apt-cache policy <package>
列出可用更新
apt list --upgradable
应用所有可用的更新
sudo apt update && sudo apt upgrade
从Ubuntu归档安装
sudo apt install <package>
从Snap Store安装
sudo snap install <package>
卸载软件
sudo apt remove <package>
删除程序包及其所有配置文件
sudo apt purge <package>
重新安装损坏的包装
sudo apt install -f --reinstall <package>

此软件包提供哪些文件?
dpkg-query -L <package>
哪个包提供了此文件?
dpkg-query -S <path>

文件

列出具有权限和日期的文件
ll
常见文件操作
创建空文件 touch <filename>
创建制定大小文件 fallocate -l <size> <filename>
使用内容创建 echo "<content>" > <filename>
快速文件搜索
locate <filename>
在文件中搜索字符串
grep <string> <filename>
在目录中递归搜索字符串
grep -Iris <string> <directory>

高级

文件

查找最近分钟内修改的文件
find <directory> -mmin -<n> -type f
eg. find . -mmin -5 -type f
仅显示第n列
col<n> “<separator>” <filename>
eg. col2 “,” foo.csv
显示分页的文件
less <filename>
显示前行
head -n <n> <filename>
显示最后行
tail -n <n> <filename>
随着文件内容的增加而显示
tail -f <filename>
将目录打包到存档中
tar.gz tar cvzf <target>.tar.gz <source dir>
zip zip -r <target> <source dir>
打开归档文件的包装
tar.gz tar xf <tar.gz file>
zip unzip <zip file>
将文件复制到远程服务器
rsync <filename> <user@server>:<destination>
eg. rsync config.yaml
admin@192.0.0.0:/config

从远程服务器递归复制目录
rsync -avruz <user@server>:<source> <destination>
eg. rsync -avruz admin@192.0.0.0:/
config /tmp

系统

显示内核版本 uname -r
获取根磁盘使用情况 df -h
获取内存使用情况 cat /proc/meminfo
获取系统时间 timedatectl status
设置系统时区
timedatectl list-timezones
sudo timedatectl set-timezone <zone>
获取所有正在运行/失败的服务
systemctl --state running
systemctl --state failed
启动、停止或重新启动服务
systemctl start/stop/restart <service>
获取系统服务的全部内容
systemctl cat <service>
编辑系统服务避免与程序包更新发生冲突
systemctl edit <service>
监视服务的新日志
journalctl -u <service> --since now -f
自启动以来监视所有日志 journalctl --boot 0
获取最近登录的列表 last
显示正在运行的进程 htop
按id终止进程 kill <process id>
按名称终止进程 pkill <process name>
在后台运行命令 <command> &

挂断并登录到文件后仍然活着

nohup <command> >> /var/log/yourcommand.log 2>&1 &
显示后台命令 jobs
将命令 置于前台 fg <n>

工作站上的Ubuntu虚拟机

安装Multipass并启动Ubuntu虚拟机
sudo snap install multipass
multipass launch <image> --name <VM name>
省略 将使用最新的Ubuntu LTS启动虚拟机
查找可用镜像
multipass find
列出现有虚拟机
multipass list
在虚拟机中获取外壳
multipass shell <VM name>
更多帮助在 discourse.ubuntu.com

Micro clouds

启动LXD容器
lxd init
lxc launch ubuntu:18.04 <container name>
或者另一个发行版
lxc launch images:centos/8/amd64 <container name>
将外壳放入LXD容器
lxc exec <name> bash
将文件推送到LXD容器
lxc file push <filename> <container name>/<path>
从LXD容器中提取文件
lxc file pull <destination> <container name>/<file path>
启动LXD虚拟机
lxc launch images:ubuntu/20.04 <vm name> --vm
在LXD虚拟机中获取外壳
lxc exec <name> bash
更多帮助在 linuxcontainers.org/lxd

裸机资源调配

使用MAAS演示启动虚拟机
wget -qO- https://raw.githubusercontent.com/canonical/maas-multipass/main/maas.yml | multipass launch --name maas -c4 -m8GB -d32GB --cloud-init -
查找MAAS演示服务器的IP地址
multipass list | grep maas | awk '{print $3}'
使用多路径列表中的IP访问MAAS仪表板
http://10.x.x.x:5240/
Default username and password is admin:admin
更多帮助在 maas.io

Kubernetes

安装MicroK8并列出可用的附加组件
sudo snap install microk8s --classic
microk8s.status --wait-ready
使用MicroK8s加载项启用辅助Kubernetes服务
microk8s enable <add-ons>
查看MicroK8s节点和正在运行的服务
microk8s.kubectl get nodes
microk8s.kubectl get services
更多帮助在 microk8s.io/docs

架构

安装MicroStack并启动测试实例
sudo snap install microstack --devmode --beta
sudo microstack.init --auto --control
microstack.launch cirros -n test
获取管理员密码
sudo snap get microstack config.credentials.
keystone-password
Access Horizon面板
https://10.20.20.1
更多帮助在 microstack.run/docs

相关文章:

Ubuntu Server CLI专业提示

基础 网络 获取所有接口的IP地址 networkctl status 显示主机的所有IP地址 hostname -I 启用/禁用接口 ip link set <interface> up ip link set <interface> down 显示路线 ip route 将使用哪条路线到达主机 ip route get <IP> 安全 显示已登录的用户 w…...

Centos7升级OpenSSH9.1

最近遇到了服务器漏洞&#xff0c;需要对服务器的OpenSSH版本进行升级&#xff0c;查阅了相关资料&#xff0c;总结出了一套比较简单的方案。中间遇到的个别问题也进行了记录&#xff0c;供大家参考。 下载准备 从https://ftp.jaist.ac.jp/pub/OpenBSD/OpenSSH/portable/opens…...

linux——信号

目录 一.信号的保存 二.信号集操作 1.信号集 2.信号集操作函数 3.sigprocmask 4.sigpending 三. 信号的捕捉 1.内核态和用户态 2. sigaction 四.可重入函数 五.SIGCHLD信号 一.信号的保存 实际执行信号的处理动作称为信号递达(Delivery)。信号从产生到递达之间的状…...

存档&改造【03】Apex-Fancy-Tree-Select花式树的导入及学习

Apex-Fancy-Tree-Select git学习网页 GitHub - RonnyWeiss/Apex-Fancy-Tree-Select: Fancy Tree Plug-in for Oracle APEX 如何从其他应用程序导出已有插件到新应用程序中 1.从其他应用程序导出插件 其他应用程序-【共享组件】-【插件】-【任务 导出插件】-选择想要导出的…...

【单片机】14-I2C通信之EEPROM

1.EEPROM概念 1.EEPROM 1.1 一些概念 &#xff08;1&#xff09;一些概念&#xff1a;ROM【只读存储器---硬盘】&#xff0c;RAM【随机访问存储器--内存】&#xff0c;PROM【可编程的ROM】&#xff0c;EPROM【可擦除ROM】&#xff0c;EEPROM【电可擦除ROM】 1.2 为什么需要EE…...

Mini-dashboard 和meilisearch配合使用

下载的meilisearch一般是development模式&#xff0c;内置客户端&#xff0c;修改客户端后需要重要全部编译&#xff0c;花时间太长了。前后端分离才是正道&#xff0c;客户端修改不用重新编译后端。 方法如下&#xff1a; 1、修改配置文件/etc/meilisearch.toml&#xff0c;…...

leetcode 886. 可能的二分法

给定一组 n 人&#xff08;编号为 1, 2, …, n&#xff09;&#xff0c; 我们想把每个人分进任意大小的两组。每个人都可能不喜欢其他人&#xff0c;那么他们不应该属于同一组。 给定整数 n 和数组 dislikes &#xff0c;其中 dislikes[i] [ai, bi] &#xff0c;表示不允许将…...

Elasticsearch:使用 ELSER 文本扩展进行语义搜索

在今天的文章里&#xff0c;我来详细地介绍如何使用 ELSER 进行文本扩展驱动的语义搜索。 安装 Elasticsearch 及 Kibana 如果你还没有安装好自己的 Elasticsearch 及 Kibana&#xff0c;请参考如下的链接来进行安装&#xff1a; 如何在 Linux&#xff0c;MacOS 及 Windows 上…...

OpenRadar DOA函数 Bartlett/CBF和Capon使用

Bartlett / CBF原理看这里 Capon原理看这里 这里只讲怎么调用openradar提供的aoa_bartlett和aoa_capon函数&#xff1a; 一些吐槽&#xff1a;虽然看起来openradar的作者代码水平很高&#xff0c;但里面有很多匪夷所思的写法&#xff0c;比如他demo里的解析文件格式就很迷啊等…...

二叉树--翻转二叉树

文章前言&#xff1a;如果有小白同学还是对于二叉树不太清楚&#xff0c;作者推荐&#xff1a;二叉树的初步认识_加瓦不加班的博客-CSDN博客 给你一棵二叉树的根节点 root &#xff0c;翻转这棵二叉树&#xff0c;并返回其根节点。 如果思路不清楚&#xff0c;请看动态页面&am…...

强化学习环境 - robogym - 学习 - 3

强化学习环境 - robogym - 学习 - 3 文章目录 强化学习环境 - robogym - 学习 - 3项目地址为什么选择 robogymObservation - 观测信息Action - 动作信息Initialization - 初始状态设置 项目地址 https://github.com/openai/robogym 为什么选择 robogym 自己的项目需要做一些机…...

CUDA+cuDNN+TensorRT 配置避坑指南

深度学习模型加速部署的环境配置&#xff0c;需要在本地安装NVIDIA的一些工具链和软件包&#xff0c;这是一个些许繁琐的过程&#xff0c;而且一步错&#xff0c;步步错。笔者将会根据自己的经验来提供建议&#xff0c;减少踩坑几率。当然可以完全按照官方教程操作&#xff0c;…...

关于PointHeadBox类的理解

forward函数 def forward(self, batch_dict):"""Args:batch_dict:batch_size:point_features: (N1 N2 N3 ..., C) or (B, N, C)point_features_before_fusion: (N1 N2 N3 ..., C)point_coords: (N1 N2 N3 ..., 4) [bs_idx, x, y, z]point_labels (opti…...

javascript二维数组(10)ajax的使用

在JQuery中&#xff0c;使用AJAX的方法主要有以下几种&#xff1a; $.ajax()&#xff1a;这是JQuery中最通用的AJAX请求方法。它需要一个包含各种参数的对象&#xff0c;其中包括请求的URL、请求方式、数据类型、请求参数等。请求成功后执行的回调函数也是通过参数来定义的。 …...

CMMI5认证哪些企业可以申请

CMMI5认证哪些企业可以申请 什么是CMMI5认证 CMMI&#xff08;Capability Maturity Model Integration&#xff09;是一种用于评估组织的软件工程能力的国际标准。CMMI模型包括5个等级&#xff0c;其中CMMI5是最高等级&#xff0c;代表组织具有达到持续优化和创新的能力。获得…...

【iptables 实战】9 docker网络原理分析

在开始本章阅读之前&#xff0c;需要提前了解以下的知识 阅读本节需要一些docker的基础知识&#xff0c;最好是在linux上安装好docker环境。提前掌握iptables的基础知识&#xff0c;前文参考【iptables 实战】 一、docker网络模型 docker网络模型如下图所示 说明&#xff1…...

【多级缓存】

文章目录 1. JVM进程缓存2. Lua语法3. 实现多级缓存3.1 反向代理流程3.2 OpenResty快速入门 4. 查询Tomcat4.1 发送http请求的API4.2 封装http工具4.3 基于ID负载均衡4.4 流程小结 5. Redis缓存查询5.1 实现Redis查询 6. Nginx本地缓存6.1 本地缓存API6.2 实现本地缓存查询 7. …...

第五课 树与图

文章目录 第五课 树与图lc94.二叉树的中序遍历--简单题目描述代码展示 lc589.N叉树的层序遍历--中等题目描述代码展示 lc297.二叉树的序列化和反序列化--困难题目描述代码展示 lc105.从前序与中序遍历序列构造二叉树--中等题目描述代码展示 lc106.从中序与后序遍历序列构造二叉…...

2023-10-07 事业-代号z-副业-CQ私服-调研与分析

摘要: CQ作为一款运营了20年的游戏, 流传出的私服可以说是层出不穷, 到了现在我其实对这款游戏的长线运营的前景很悲观. 但是作为商业的一部分, 对其做谨慎的分析还是很有必要的. 传奇调研的来源: 一. 各种售卖私服的网站 传奇服务端版本库-传奇手游源码「免费下载」传奇GM论…...

合并不同门店数据-上下合并

项目背景&#xff1a;线下超市分店&#xff0c;统计产品的销售数量和销售额&#xff0c;并用透视表计算求和 merge()函数可以根据链接键横向连接两张不同表&#xff0c;concat()函数可以上下合并和左右合并2种不同的合并方式。merge()函数只能横向连接两张表&#xff0c;而con…...

C++实现分布式网络通信框架RPC(3)--rpc调用端

目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中&#xff0c;我们已经大致实现了rpc服务端的各项功能代…...

K8S认证|CKS题库+答案| 11. AppArmor

目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作&#xff1a; 1&#xff09;、切换集群 2&#xff09;、切换节点 3&#xff09;、切换到 apparmor 的目录 4&#xff09;、执行 apparmor 策略模块 5&#xff09;、修改 pod 文件 6&#xff09;、…...

在rocky linux 9.5上在线安装 docker

前面是指南&#xff0c;后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...

LeetCode - 394. 字符串解码

题目 394. 字符串解码 - 力扣&#xff08;LeetCode&#xff09; 思路 使用两个栈&#xff1a;一个存储重复次数&#xff0c;一个存储字符串 遍历输入字符串&#xff1a; 数字处理&#xff1a;遇到数字时&#xff0c;累积计算重复次数左括号处理&#xff1a;保存当前状态&a…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)

Aspose.PDF 限制绕过方案&#xff1a;Java 字节码技术实战分享&#xff08;仅供学习&#xff09; 一、Aspose.PDF 简介二、说明&#xff08;⚠️仅供学习与研究使用&#xff09;三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...

Selenium常用函数介绍

目录 一&#xff0c;元素定位 1.1 cssSeector 1.2 xpath 二&#xff0c;操作测试对象 三&#xff0c;窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四&#xff0c;弹窗 五&#xff0c;等待 六&#xff0c;导航 七&#xff0c;文件上传 …...

莫兰迪高级灰总结计划简约商务通用PPT模版

莫兰迪高级灰总结计划简约商务通用PPT模版&#xff0c;莫兰迪调色板清新简约工作汇报PPT模版&#xff0c;莫兰迪时尚风极简设计PPT模版&#xff0c;大学生毕业论文答辩PPT模版&#xff0c;莫兰迪配色总结计划简约商务通用PPT模版&#xff0c;莫兰迪商务汇报PPT模版&#xff0c;…...

日常一水C

多态 言简意赅&#xff1a;就是一个对象面对同一事件时做出的不同反应 而之前的继承中说过&#xff0c;当子类和父类的函数名相同时&#xff0c;会隐藏父类的同名函数转而调用子类的同名函数&#xff0c;如果要调用父类的同名函数&#xff0c;那么就需要对父类进行引用&#…...

系统掌握PyTorch:图解张量、Autograd、DataLoader、nn.Module与实战模型

本文较长&#xff0c;建议点赞收藏&#xff0c;以免遗失。更多AI大模型应用开发学习视频及资料&#xff0c;尽在聚客AI学院。 本文通过代码驱动的方式&#xff0c;系统讲解PyTorch核心概念和实战技巧&#xff0c;涵盖张量操作、自动微分、数据加载、模型构建和训练全流程&#…...

SQL Server 触发器调用存储过程实现发送 HTTP 请求

文章目录 需求分析解决第 1 步:前置条件,启用 OLE 自动化方式 1:使用 SQL 实现启用 OLE 自动化方式 2:Sql Server 2005启动OLE自动化方式 3:Sql Server 2008启动OLE自动化第 2 步:创建存储过程第 3 步:创建触发器扩展 - 如何调试?第 1 步:登录 SQL Server 2008第 2 步…...