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

Ubuntu 24 常用命令方法

文章目录

  • 环境说明
  • 1、账号管理
    • 1.1、启用 root
  • 2、包管理工具 apt & dpkg
    • 2.1、apt 简介 & 阿里源配置
    • 2.2、dpkg 简介
    • 2.3、apt 和 dpkg 两者之间的关系
    • 2.4、常用命令
  • 3、启用 ssh 服务
  • 4、防火墙
  • 5、开启远程登录
  • 6、关闭交换分区
  • 7、build-essential(编译和开发软件的工具和库)
    • 7.1、异常处理
  • 8、网络
    • 8.1、静态 IP
  • 9、Python
  • 10、vi
    • 10.1、异常处理:方向键出现奇怪的字符
  • 11、软件包管理工具 snap
  • 12、下载工具
    • 12.1、第三方命令行下载工具
      • 12.1.1、aria2
    • 12.2、第三方图形界面下载工具
      • 12.2.1、uGet
  • 其他常用操作


环境说明

操作系统:Ubuntu 24.04.1 LTS
安装包:ubuntu-24.04.1-desktop-amd64.iso


1、账号管理

1.1、启用 root

注意事项:启用root用户登录会带来一定的安全风险,因为root用户拥有系统中所有的权限,任何错误的操作都可能导致系统崩溃或数据丢失。因此,除非确实必要,否则不建议启用root用户登录。

启用root用户登录如果你确实需要启用root用户的登录功能,可以按照以下步骤操作:

  1. 打开终端:可以通过按 Ctrl + Alt + T 快捷键打开终端。
  2. 设置root用户密码:
sudo passwd root

系统会提示你输入新的Unix密码,输入你想要设置的root用户密码,然后再次输入以确认。密码输入时不会显示任何字符,这是正常的安全措施。
3. 切换到root用户(可选):
输入命令

su -  或  su - root

然后输入刚刚设置的root用户密码,即可切换到root用户。


2、包管理工具 apt & dpkg

2.1、apt 简介 & 阿里源配置

在 Ubuntu 中,apt 是一个高级的包管理工具,用于安装、更新、配置和删除软件包。它是 apt-get 的一个更现代、更用户友好的替代品,提供了更简洁的输出和更友好的用户界面。 apt 旨在简化包管理任务,使其更适合普通用户。

更改为阿里源 - 参考文档
新手推荐使用图形界面配置: 系统设置 -> 软件和更新 选择下载服务器 -> “mirrors.aliyun.com”

2.2、dpkg 简介

dpkg 是 Debian 及其衍生发行版(如 Ubuntu)中用于管理 .deb 包的底层工具。提供了安装、移除、查询和管理软件包的功能。

2.3、apt 和 dpkg 两者之间的关系

dpkg:底层的包管理工具,直接操作 .deb 文件,适合手动安装和管理软件包。
apt:高级的包管理工具,基于 dpkg ,提供了自动处理依赖关系、更新软件包列表、升级系统等高级功能,适合日常使用。

在实际使用中,apt 是更常用的工具,因为它提供了更高级的功能和更简单的操作。如果你需要直接操作 .deb 文件,可以使用 dpkg。

2.4、常用命令

# 查看可用的软件包及其来源
apt-cache policy
# 查看特定软件包的来源
apt-cache policy 软件包名称
# 文件 /etc/apt/sources.list 包含了系统默认的软件源配置
# 目录 /etc/apt/sources.list.d/ 下的文件,包含了第三方或额外的软件源配置文件

# 更新包列表 - 更新本地包索引,确保系统知道可用的最新软件包版本
apt update
# 安装软件包
apt install <package-name>
# 检查是否安装 package-name
dpkg -l | grep package-name
# 查询软件包详细信息
dpkg -s 包名
# 查询文件所属的软件包
dpkg -S 文件路径
# 清理未使用的依赖包
sudo apt-get autoremove

# 卸载软件包
# 卸载指定的软件包,但保留配置文件
apt remove <package-name>
# 卸载指定的软件包及其配置文件
apt purge <package-name>

# 搜索软件包名称和描述中包含指定关键词的软件包
apt search <keyword>

# 显示指定软件包的详细信息,包括版本、依赖关系、描述等
apt show <package-name>
# 清理已下载的软件包文件,只保留当前安装的软件包的文件

apt autoclean
# 自动移除不再需要的依赖包
apt autoremove

# 升级所有已安装的软件包到最新版本
apt upgrade
# 升级所有已安装的软件包,并且可以自动处理依赖关系,可能会删除或安装新的包
apt full-upgrade

3、启用 ssh 服务

# 查看是否安装
dpkg -l | grep openssh-server
# 通过检查服务状态,查看是否安装
systemctl status ssh

# 更新包列表 - 更新本地包索引,确保系统知道可用的最新软件包版本
apt update
# 安装 ssh 服务
# 注意:2025-01-30 需要 apt install openssh-client=1:9.6p1-3ubuntu13.4 降级到此版本,否则会导致 oepnssh-server 安装失败
apt install openssh-server
# 更改配置文件
/etc/ssh/sshd_config
# 允许 root 用户登录
# PermitRootLogin yes
# 允许使用密码登录
# PasswordAuthentication yes
# 重启 ssh 服务
systemctl restart ssh.service

# 防火墙
# 开通端口
sudo ufw allow 22/tcp
# 重新加载
sudo ufw reload
# 查看状态
sudo ufw status

4、防火墙

# 查看状态
sudo ufw status

# 开通端口
sudo ufw allow 3389/tcp
sudo ufw allow 22/tcp
# 重新加载
sudo ufw reload
# 启用
sudo ufw enable
# 停用
sudo ufw disable

5、开启远程登录

桌面共享 和 远程登录 什么区别?

  • 桌面共享:主要用于协作、演示和技术支持。
  • 远程登录:主要用于远程管理和远程办公。

开启远程登录,使用自带的RDP功能

  1. 打开设置:点击屏幕左上角的“活动”按钮,打开“设置”

在这里插入图片描述

  1. 进入远程桌面设置:在“设置”中滑动鼠标到最下方,点击“系统”选项,再点击“远程桌面”。

在这里插入图片描述

  1. 开启相关选项:勾选“远程登录”
  2. 设置登录详情:在“登录详情”中设置一个用户名和密码,用于远程连接时的身份验证。(注意此处的账户仅用户远程登录)
  3. 修改端口(可选):若需要修改默认端口3389
  4. 配置防火墙(可选,默认防火墙未开启):确保防火墙允许RDP连接,可使用命令
sudo ufw allow 3389/tcp
sudo ufw reload
sudo ufw enable

6、关闭交换分区

# 查看是否开启
free -h

# 临时关闭Swap
swapoff -a
# 永久关闭Swap
nano /etc/fstab
# 注释掉Swap相关的行

7、build-essential(编译和开发软件的工具和库)

在Ubuntu系统中,build-essential是一个非常重要的包(元包 meta-package),它包含了一系列用于编译和开发软件的工具和库。

常见用途:

  • 从源代码安装软件:许多软件提供源代码包,需要编译才能安装。build-essential提供了必要的工具来完成编译过程。
  • 开发C/C++程序:如果你是开发者,build-essential提供了编译和调试C/C++程序所需的工具。
  • 构建和管理项目:make工具可以帮助你自动化项目的构建过程。

安装步骤:

# 打开终端:可以通过按`Ctrl`+`Alt`+`T`快捷键打开终端
# 更新软件包列表:在安装任何软件之前,建议先更新软件包列表,以确保安装的是最新版本的软件
apt update

# 安装 build-essential
apt install build-essential

# 验证安装
# 如果安装成功,这些命令会显示相应的版本信息
gcc --version
g++ --version
make --version

安装的工具和库:

  • C和C++编译器:如gcc(GNU C Compiler)和g++(GNU C++Compiler)
  • Make工具:用于构建和管理项目。
  • 其他开发工具:如dpkg-devlibc6-dev等,这些工具和库是编译和开发软件时常用的

7.1、异常处理

# 安装过程中,会提示安装 bzip2
# 安装 bzip2 会提示 libbz2-1.0 版本过高
# 降级
apt install libbz2-1.0=1.0.8-5.1
# 安装依赖
apt install bzip2
apt install build-essential

8、网络

8.1、静态 IP

使用 netplan 配置静态 IP
说明:netplan 是 Ubuntu 18.04 及更高版本中默认的网络配置工具

# 配置目录
cd /etc/netplan
# 文件名可能类似于 01-netcfg.yaml 或 50-cloud-init.yaml
# 修改配置文件,示例参考下面
nano 50-cloud-init.yaml
# 测试配置
sudo  netplan try
# 应用配置
sudo netplan apply
# 验证配置 - 检查网络接口的IP地址是否已更新
ip addr show eth0  # 替换为你的网络接口名称
# 验证配置 - 检查默认网关是否已更新
ip route show

配置示例

network:
  version: 2
  ethernets:
    eth0:  # 替换为你的网络接口名称,例如 eth0 或 ens33
      dhcp4: no
      addresses:
        - 192.168.1.100/24  # 替换为你的静态IP地址和子网掩码
      gateway4: 192.168.1.1  # 替换为你的默认网关
      nameservers:
        addresses:
          - 8.8.8.8  # 替换为你的DNS服务器地址
          - 8.8.4.4

无线网络

network:
  version: 2
  wifis:
    wlan0:  # 替换为你的无线网络接口名称
      dhcp4: no
      addresses:
        - 192.168.1.100/24
      gateway4: 192.168.1.1
      nameservers:
        addresses:
          - 8.8.8.8
          - 8.8.4.4
      access-points:
        "your-ssid":  # 替换为你的无线网络SSID
          password: "your-password"  # 替换为你的无线网络密码

9、Python

python3 --version
# 系统自带 Python 3.12.3
# 但是没有 pip
# 安装 pip
apt install python3-pip
# 查看版本
pip --version
# pip 24.0 from /usr/lib/python3/dist-packages/pip (python 3.12)

通过 Miniconda 进行环境管理


10、vi

10.1、异常处理:方向键出现奇怪的字符

异常情况说明:
使用 vi 时,方向键出现奇怪字符(如 [A 、 [B 、 [C 、 [D )的问题。

原因分析:
通常是由于 vi 编辑器默认处于兼容模式( compatible ),这种模式下 vi 会模拟原始的 vi 行为,导致方向键和退格键等功能键无法正常使用。

解决方法1:

# 通过 nano 修改 /etc/vim/vimrc.tiny 文件
nano /etc/vim/vimrc.tiny
# 找到文件中的 set compatible 行
# 将其改为 set nocompatible ,以启用非兼容模式
# 在文件末尾添加 set backspace=2 ,解决退格键问题

解决方法2:

# 安装完整版的 vim
sudo apt install vim

11、软件包管理工具 snap

Snap 是由一种现代化的软件包格式,旨在解决传统 Linux 包管理中的依赖问题。
Snap 包是一个独立的、自包含的软件包,包含了应用程序的所有依赖项和运行时环境。这意味着 Snap 应用程序可以在多个 Linux 发行版上无缝运行,而无需担心兼容性问题。

Snap 的主要特点包括:

  1. 跨平台兼容性:Snap 包可以在多种 Linux 发行版上运行,而无需修改。
  2. 安全性:Snap 应用程序默认在沙箱环境中运行,限制了对系统资源的访问。
  3. 自动更新:Snap 包会自动更新到最新版本,确保软件始终处于最新状态。
  4. 独立性:每个 Snap 包包含所有必要的依赖项,不会与其他软件冲突。

个人见解 - 有的时候自动更新是坏事儿 ~

常用命令:

# 检查是否安装
snap --version
# 安装
sudo apt update
sudo apt install snapd

# 永久禁用所有 Snap 应用的自动更新
sudo snap refresh --hold
# 禁用自动更新 - 禁用特定 Snap 包
sudo snap refresh --hold <snap-name>
# 解除更新限制
sudo snap refresh --unhold <snap-name>

# 查找 Snap 包
snap find <keyword>

# 安装 Snap 包
sudo snap install <snap-name>
# 更新 Snap 包 - 所有
sudo snap refresh
# 更新 Snap 包 - 更新特定的 Snap 包
sudo snap refresh <snap-name>
# 更新到稳定版
sudo snap refresh <snap-name> --stable
# 如果你想查看当前哪些应用的更新被保留
sudo snap refresh --list

# 列出已安装的 Snap 包
snap list

# 卸载 Snap 包
sudo snap remove <snap-name>

# 查看 Snap 包的详细信息
snap info <snap-name>

# 运行 Snap 应用程序
snap run <snap-name>

# 检查安装路径 - Snap 应用程序通常安装在 /snap/<snap-name> 目录下
ls -l /snap/buzz

12、下载工具

12.1、第三方命令行下载工具

12.1.1、aria2

aria2 是一个轻量级的多协议、多线程下载工具,支持 HTTP、HTTPS、FTP、BitTorrent 等多种协议。

优点:

  • 多线程下载,速度更快
  • 支持多种协议
  • 支持断点续传和批量下载

缺点:

  • 无图形界面
  • 需要手动配置
# 安装
sudo apt install aria2
# 下载文件
aria2c 文件URL

12.2、第三方图形界面下载工具

12.2.1、uGet

uGet 是一个功能强大的图形界面下载工具,支持 HTTP、HTTPS、FTP 等多种协议。

优点:

  • 图形界面,使用方便
  • 支持多线程下载和断点续传
  • 支持多种协议

缺点:

  • 需要图形界面支持
  • 功能相对复杂
# 安装
sudo apt install uget
# 下载文件
uget-gtk
# 帮助文档
uget-gtk --help

其他常用操作

参考文档:CentOS 7 常用命令&方法

说明:都是 Linux ,很多操作方法其实差不太多的啦 ~


PS : 记笔记!偶尔忘了来查查! >_<|||


http://www.kler.cn/a/586922.html

相关文章:

  • 【Git】配置Git
  • 按钮权限的设计及实现
  • uniapp-x vue 特性
  • 在线 SQL 转 SQLAlchemy:一键生成 Python 数据模型
  • AcWing--870.约数个数
  • Windows环境下安装部署dzzoffice+onlyoffice的私有网盘和在线协同系统
  • Java中的I/O
  • 通过qemu仿真树莓派系统调试IoT固件和程序
  • 深度解析国产推理大模型DeepSeek:从入门到本地化部署!
  • C++Primer学习(7.1 定义抽象数据类型)
  • FPGA为何要尽量减少组合逻辑的使用
  • 人工智能与人的智能,改变一生的思维模型【8】逆向思维
  • 国家网络安全事件应急预案
  • DC-6靶机详解
  • Vue3 Pinia $subscribe localStorage的用法 Store的组合式写法
  • 基于变分推理与 Best‑of‑N 策略的元 Prompt 自动生成与优化框架
  • 《Python实战进阶》No24: PyAutoGUI 实现桌面自动化
  • Spring Cloud LoadBalancer 原理与实践
  • unity基础——线段与拖尾
  • 二叉树_4_面试题汇总