Debian常用命令
apt 安装
apt(Advanced Package Tool)是一个在Debian及其派生发行版(如Ubuntu)上使用的包管理系统。它提供了一个命令行工具,用于安装、升级、降级、卸载和管理软件包。以下是一些常用的apt命令:
更新和升级
- 更新包列表:
sudo apt update
这会从配置的软件源下载最新的包列表信息。 - 升级所有已安装的包:
sudo apt upgrade
这会检查可用的更新并升级所有已安装的包。 - 全面升级
sudo apt full-upgrade
这会在升级过程中自动处理依赖关系变更。 - 搜索包:
apt search <package_name>
这会在所有可用的包中搜索指定的包名。
安装和卸载
- 安装包:
sudo apt install <package_name>
这会安装指定的包。 - 卸载包:
sudo apt remove <package_name>
这会卸载指定的包。 - 完全卸载软件包
sudo apt purge package_name
这会卸载软件包并删除其配置文件。 - 卸载并清除依赖
sudo apt autoremove
这会删除不再需要的自动安装的依赖包。
搜索和显示信息
- 搜索软件包
apt search package_name
- 显示软件包信息
apt show package_name
这会显示软件包的详细信息,包括依赖关系、描述和版本。
清理
- 清理下载的包文件
sudo apt clean
这会删除/var/cache/apt/archives目录下的.deb文件。 - 清理未使用的包
sudo apt autoclean
这会删除已下载但不再需要的.deb文件。
其他
- 列出已安装的包:
apt list --installed
这会列出所有已安装的包。 - 列出可升级的包
apt list --upgradeable
- 列出可用的包:
apt list --available
这会列出所有可用的包。 - 重新配置包
sudo dpkg-reconfigure package_name
这会重新配置指定的包。 - 查看apt版本
apt --version
- 依赖解决:
sudo apt -f install
这会尝试解决由于依赖关系问题导致的不稳定系统。 - 清洁未使用的包和缓存:
sudo apt clean
这会删除下载的包文件和缓存。
11.配置软件源:sudo nano /etc/apt/sources.list
这会打开源列表文件,你可以在这里修改或添加软件源。
请注意:
在使用sudo时,你需要具有管理员权限。此外,上述命令可能需要根据你的系统环境和具体需求进行适当的调整。
dpkg 安装命令
dpkg 是 Debian 及其衍生系统(如 Ubuntu)中用于处理 Deb 软件包的命令行工具。它允许用户安装、删除、构建和管理 Debian 系统中的软件包。以下是 dpkg 的一些基本用法:
安装软件包
dpkg -i package.deb
这将安装指定的 .deb 软件包。删除软件包
hpkg -r <package>
这将删除指定的软件包,但保留其配置文件。删除并删除配置文件
dpkg -P package
这将删除指定的软件包及其配置文件。列出已安装的软件包
dpkg -l
这将列出系统中所有已安装的软件包。显示软件包内容
dpkg -c package.deb
这将显示 .deb 软件包内的文件列表。更新软件包列表
sudo apt update
这将更新可用的软件包列表。升级软件包
sudo apt upgrade
这将升级所有已安装的软件包。锁定软件包
sudo apt-mark hold package
这将锁定指定的软件包,防止其自动更新。解锁软件包
sudo apt-mark unhold package
这将解锁指定的软件包,允许其自动更新。搜索软件包
dpkg -S file
这将搜索属于哪个软件包的文件。配置软件包
sudo dpkg --configure -a
这将配置所有未配置的软件包。显示软件包的依赖关系
dpkg -I package.deb
这将显示软件包的依赖关系。显示软件包的描述
dpkg -s package
这将显示软件包的详细信息,包括版本、状态等。
这些只是 dpkg 的一些基本用法,它还有很多其他的功能和选项。如果你需要更多的帮助,可以查阅 dpkg 的官方文档或相关资源。
ssh 命令
ssh(Secure Shell)是一个用于安全地访问远程计算机的命令行工具。以下是 ssh 命令的一些常用选项和用法:
ssh [user@]hostname
连接到指定的远程主机。ssh -l username hostname
指定登录的用户名和远程主机。ssh -p port hostname
指定连接远程主机的端口号。ssh -i identity_file hostname
指定用于身份验证的私钥文件。ssh -X hostname
开启X11转发。ssh -C hostname
启用数据压缩。ssh -N
不执行远程命令,用于仅转发端口。ssh -L [bind_address:]port:host:port
本地端口转发。ssh -R [bind_address:]port:host:port
远程端口转发。ssh -D [bind_address:]port
动态端口转发。ssh -o option value
指定一个配置选项,如StrictHostKeyChecking=no。
以下是一些具体的 ssh 命令示例:
ssh [email protected]
使用默认端口连接到 example.com 的 user 用户。ssh -l user -p 2222 example.com
使用端口 2222 连接到 example.com 的 user 用户。ssh -i /path/to/private/key [email protected]
使用指定私钥文件连接到 example.com 的 user 用户。ssh -X [email protected]
连接到 example.com 的 user 用户并启用X11转发。ssh -L 8080:localhost:80 [email protected]
将本地的8080端口转发到远程主机的80端口。ssh -R 5901:localhost:5900 [email protected]
将远程主机的5901端口转发到本地主机的5900端口。ssh -D 1080 [email protected]
设置SSH动态端口转发,本地的1080端口将被用作SOCKS代理。ssh -o StrictHostKeyChecking=no [email protected]
连接到 example.com 的 user 用户,并禁用严格的主机密钥检查。
ssh 命令有很多选项和配置参数,上述只是其中的一部分。在使用时,请确保了解每个选项的含义和影响,以确保安全且正确地使用SSH。此外,SSH的配置文件(通常为 ~/.ssh/config)也可以用来简化命令行操作,通过预先设置常用的选项和参数。
scp 命令
scp(Secure Copy)是 ssh 的一个伴生工具,用于在本地计算机和远程计算机之间安全地复制文件。以下是 scp 命令的基本用法和一些常用选项:
基本用法
- 从本地复制到远程:
scp /path/to/local/file user@remote_host:/path/to/remote/directory
- 从远程复制到本地:
scp user@remote_host:/path/to/remote/file /path/to/local/directory
- 在两个远程主机之间复制:
scp user1@remote_host1:/path/to/remote/file1 user2@remote_host2:/path/to/remote/directory
常用选项
-i identity_file
:指定用于身份验证的私钥文件。-P port
:指定连接远程主机的端口号。-r
:递归复制整个目录。-p
:保留文件的原始权限。-q
:静默模式,不显示复制进度。-C
:启用数据压缩。-v
:详细模式,显示复制进度和错误信息。
示例
- 将本地文件复制到远程主机:
scp /path/to/local/file.txt user@remote_host:/home/user/
- 从远程主机复制文件到本地:
scp user@remote_host:/home/user/file.txt /path/to/local/directory/
- 使用指定端口复制文件:
scp -P 2222 /path/to/local/file.txt user@remote_host:/home/user/
- 使用私钥文件复制文件:
scp -i /path/to/private/key /path/to/local/file.txt user@remote_host:/home/user/
- 递归复制整个目录:
scp -r /path/to/local/directory user@remote_host:/home/user/
- 在复制时保留文件权限:
scp -p /path/to/local/file.txt user@remote_host:/home/user/
在使用 scp 命令时,请确保你有足够的权限来读取源文件和写入目标目录,同时也要确保目标主机的SSH服务是可用的。如果你遇到任何问题,比如权限不足或者网络连接问题,scp 会给出相应的错误信息。