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

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

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

相关文章

PLL锁相环倍频原理

晶振8MHz&#xff0c;但是处理器输入可以达到72MHz&#xff0c;是因为PLL锁相环提供了72MHz。 锁相环由PD&#xff08;鉴相器&#xff09;、LP&#xff08;滤波器&#xff09;、VCO&#xff08;压控振荡器&#xff09;组成。 处理器获得的72MHz并非晶振提供&#xff0c;而是锁…

好工具分享:阿里云价格计算器_一键计算精准报价

阿里云服务器价格计算器&#xff0c;鼠标选择云服务器ECS实例规格、地域、系统盘、带宽及购买时长即可一键计算出精准报价&#xff0c;阿里云服务器网分享阿里云服务器价格计算器链接地址&#xff1a; 阿里云服务器价格计算器 先打开阿里云服务器ECS页面 aliyunfuwuqi.com/go…

比较5组差值结构的顺序

( A, B )---3-30-2---( 1, 0 )( 0, 1 ) 让网络的输入只有3个节点&#xff0c;AB训练集各由5张二值化的图片组成&#xff0c;让A中有4个点&#xff0c;B全是0。统计迭代次数并排序。 其中有5组数据 差值结构 迭代次数 11 12 13 22 23 1 - - - 5579.44 11 23 1 1…

生成Release版本的.pdb文件

软件分为Debug版本、Release版本这2种版本&#xff0c;其中Debug版本是带有.pdb调试信息文件&#xff0c;而Release版本不带.pdb调试信息文件。软件发布时&#xff0c;一般采用Release版本&#xff0c;若因内存泄漏、数组访问越界、除零错误、磁盘读写错误等异常&#xff0c;造…

计算机毕设 大数据房价预测分析与可视

文章目录 0 前言1 课题背景2 导入相关的数据 3 观察各项主要特征与房屋售价的关系4 最后 0 前言 &#x1f525; 这两年开始毕业设计和毕业答辩的要求和难度不断提升&#xff0c;传统的毕设题目缺少创新和亮点&#xff0c;往往达不到毕业答辩的要求&#xff0c;这两年不断有学弟…

CleanMyMac X4.14.1最新版本下载

CleanMyMac X是一个功能强大的Mac清理软件&#xff0c;它的设计理念是提供多个模块&#xff0c;包括垃圾清理、安全保护、速度优化、应用程序管理和文档管理粉碎等&#xff0c;以满足用户的不同需求。软件的界面简洁直观&#xff0c;让用户能够轻松进行日常的清理操作。 使用C…

QT的QCommand的do和undo介绍

QT的QCommand的介绍 在Qt中&#xff0c;QCommand类是一个抽象类&#xff0c;它提供了redo()和undo()方法的纯虚函数&#xff0c;用于执行重做和撤销操作。QCommand类的目的是提供一种通用的方式来表示和执行命令式操作&#xff0c;这些操作可以是用户交互、程序逻辑或其他类型的…

微信小程序去除默认滚动条展示

一、微信小程序改版框架升级后&#xff0c;滚动条默认展示了。 在实际应用中效果不好&#xff0c;如果想默认隐藏掉&#xff0c;代码段如下&#xff1a; /* 去除默认滚动条效果 */ ::-webkit-scrollbar {display:none;width:0;height:0;color:transparent; } 设置成全局样式…

Scala第十一章节

Scala第十一章节 1.模式匹配 2. Option 类型 3.偏函数 4.正则表达式 5.异常处理 6.提取器 7.案例&#xff1a;随机职业 scala总目录 文档资料下载

如何使用 LeiaPix 让照片动起来

在过去&#xff0c;想要让照片动起来&#xff0c;需要使用专业的软件和技巧。但是&#xff0c;随着科技的发展&#xff0c;现在只需使用一个简单的工具&#xff0c;就可以轻松地让照片动起来。 LeiaPix 是一个免费的在线工具&#xff0c;可以将静态照片转换为动画。该工具使用…

C语言qsort函数

排序qsort int int cmp(const void *a, const void *b) {return *(int *)a - *(int *)b;//先强转成int型&#xff0c;后解引用取值比较大小 }字符串数组 char a[] “hello world” //字符串数组&#xff0c;存放的是字符 int cmp(const void *a, const void *b) {return *(…

嵌入式软件架构基础设施设计方法

大家好&#xff0c;今天分享一篇嵌入式软件架构设计相关的文章。 软件架构这东西&#xff0c;众说纷纭&#xff0c;各有观点。在我看来&#xff0c;软件架构是软件系统的基本结构&#xff0c;包含其组件、组件之间的关系、组件设计与演进的规则&#xff0c;以及体现这些规则的基…

C++的纯虚函数使用与接口实现

一、为何引入纯虚函数 对于普通虚函数&#xff0c;如果子类没有重写相应的虚函数&#xff0c;那么父类指针就只能调用父类函数实现&#xff0c;然而父类有时候并不能给出具体的实现&#xff0c;仅仅只是一种抽象的概念&#xff0c;比如我们抽象了一个父类叫运算calculate&…

如何进行内存映射和文件映射操作?

内存映射和文件映射是在操作系统和程序之间共享数据的强大技术。它们可以用于提高文件的读写效率、内存管理和进程间通信。对于C语言初学者来说&#xff0c;了解如何进行内存映射和文件映射操作是一项有价值的技能。在本文中&#xff0c;我们将详细讨论内存映射和文件映射的概念…

1.7. 找出数组的第 K 大和原理及C++实现

题目 给你一个整数数组 nums 和一个 正 整数 k 。你可以选择数组的任一 子序列 并且对其全部元素求和。 数组的 第 k 大和 定义为&#xff1a;可以获得的第 k 个 最大 子序列和&#xff08;子序列和允许出现重复&#xff09; 返回数组的 第 k 大和 。 子序列是一个可以由其他数…

Linux中getopt函数、optind等变量使用详解

getopt函数、optind等变量使用详解 最近在学习《Unix网络编程》vol2时&#xff0c;发现书中例子经常使用一个命令行解析getopt函数&#xff0c;因为函数声明比较特别&#xff0c;根据自己摸索&#xff0c;遂总结出使用方法。 1. getopt函数的声明 该函数是由Unix标准库提供的…

[应用推荐]Web Scraper——轻量数据爬取利器

对于日常的简单网页内容爬取&#xff0c;学习Python等投入太高&#xff0c;可以考虑使用这个Chrome工具。 以下为收集的具体信息&#xff0c;按需取用。 以下内容来自web ScraperWeb Scraper - The #1 web scraping extensionThe most popular web scraping extension. Start …

博弈论——伯特兰德寡头模型(Bertrand Model)

伯特兰德寡头模型(Bertrand Model) 0 引言 在前面几篇文章中&#xff0c;我们介绍了古诺模型(Cournot duopoly model)和斯塔克尔伯格模型(Stackelberg model) 博弈论——连续产量古诺模型(Cournot duopoly model) 博弈论——斯塔克尔伯格模型(Stackelberg model) 这两个模型…

PyTorch应用实战三:构建神经网络

文章目录 神经网络1.继承Module构建神经网络2.结构化构建神经网络3.函数式操作附&#xff1a;系列文章 神经网络 构建神经网络的一般步骤如下&#xff1a; 确定网络的结构&#xff1a;这包括输入层、输出层和隐藏层的数量以及每层中的节点数等。 收集和准备数据&#xff1a;这…

ARMday2

1~100累加 代码 .text .globl _start _start:mov r0, #1 fun:cmp r0,#100addls r1,r1,r0addls r0,r0,#1b fun .end运行结果