前言
介绍一些 Linux
杂项,包括:Linux
命令、Linux
系统问题。
操作系统:Ubuntu 20.04.4 LTS
参考文档
Linux wget 命令详解
pip3安装pillow失败
GET STARTED
普通用户添加 sudo 权限
ubuntu 修改用户权限,不小心修改了sudoers文件
ubuntu 16.04 忘记root密码的处理方法
Ubuntu 重置密码
Ubuntu卸载Pyhon3无法进入图形界面
ubuntu下获取apt-get离线安装包的通用方法
Linux之ubuntu离线安装软件包
Ubuntu Packages Search
Ubuntu 如何离线安装软件包
dpkg -i 安装软件出现各种依赖等问题解决办法
Index of /ubuntu/pool/main
当你的Ubuntu UI界面消失时该怎么做
Linux 或 Mac OS 系统通过 SCP 上传文件到 Linux 轻量应用服务器
Ubuntu22 超nice的QQ(Icalingua++)安装步骤,拒绝走弯路!!
详解Github的.gitignore忽略文件
重定向符号> >>
ubuntu下常用apt命令介绍
ssh免密登录服务器
Ubuntu改host提速Github
ubuntu 系统解决GitHub无法访问问题
Error while loading shared libraries: xxx — 解决方案
ubuntu如何查看磁盘空间
linux 清空文件内容的方式
linux系统设置root初始化密码
wget 命令
wget
命令是 Linux
系统用于从 Web
上下载文件的命令行工具,支持 HTTP
,HTTPS
和 FTP
协议。
安装
wget --help
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 $ wget --help GNU Wget 1.20.3,非交互式的网络文件下载工具。 用法: wget [选项]... [URL]... 长选项所必须的参数在使用短选项时也是必须的。 启动: -V, --version 显示 Wget 的版本信息并退出 -h, --help 打印此帮助 -b, --background 启动后转入后台 -e, --execute=命令 运行一个“.wgetrc”风格的命令 日志和输入文件: -o, --output-file=文件 将日志信息写入 FILE -a, --append-output=文件 将信息添加至 FILE -d, --debug 打印大量调试信息 -q, --quiet 安静模式 (无信息输出) -v, --verbose 详尽的输出 (此为默认值) -nv, --no-verbose 关闭详尽输出,但不进入安静模式 --report-speed=类型 以 <类型> 报告带宽。类型可以是 bits -i, --input-file=文件 下载本地或外部 <文件> 中的 URL -F, --force-html 把输入文件当成 HTML 文件 -B, --base=URL 解析相对于 URL 的 HTML 输入文件链接 (-i -F) --config=文件 指定要使用的配置文件 --no-cookies 不读取任何配置文件 --rejected-log=文件 将拒绝 URL 的原因写入 <文件>。 下载: -t, --tries=数字 设置重试次数为 <数字> (0 代表无限制) --retry-connrefused 即使拒绝连接也是重试 --retry-on-http-error=ERRORS 提供以逗号分隔的列表,列出遇到时进行重试的 HTTP 错误 -O, --output-document=文件 将文档写入 FILE -nc, --no-clobber 不要下载已存在将被覆盖的文件 --no-netrc 不要尝试从 .netrc 获取凭据 -c, --continue 断点续传下载文件 --start-pos=偏移量 从由零计数的 <偏移量> 开始下载 --progress=类型 选择进度条类型 --show-progress 在任意啰嗦状态下都显示进度条 -N, --timestamping 只获取比本地文件新的文件 --no-if-modified-since 不要在时间戳 (timestamping) 模式下使用 if-modified-since get 条件请求 --no-use-server-timestamps 不用服务器上的时间戳来设置本地文件 -S, --server-response 打印服务器响应 --spider 不下载任何文件 -T, --timeout =SECONDS 将所有超时设为 SECONDS 秒 --dns-timeout=SECS 设置 DNS 查寻超时为 SECS 秒 --connect-timeout=SECS 设置连接超时为 SECS 秒 --read-timeout=SECS 设置读取超时为 SECS 秒 -w, --wait =SECONDS 等待间隔为 SECONDS 秒 --waitretry=SECONDS 在获取文件的重试期间等待 1..SECONDS 秒 --random-wait 获取多个文件时,每次随机等待间隔 (0.5~1.5)*WAIT 秒 --no-proxy 禁止使用代理 -Q, --quota=数字 设置获取配额为 <数字> 字节 --bind-address=ADDRESS 绑定至本地主机上的 ADDRESS (主机名或是 IP) --limit-rate=RATE 限制下载速率为 RATE --no-dns-cache 关闭 DNS 查询缓存 --restrict-file-names=系统 限定文件名中的字符为 <系统> 允许的字符 --ignore-case 匹配文件/目录时忽略大小写 -4, --inet4-only 仅连接至 IPv4 地址 -6, --inet6-only 仅连接至 IPv6 地址 --prefer-family=地址族 首先连接至指定家族(IPv6,IPv4 或 none)的地址 --user=用户 将 ftp 和 http 的用户名均设置为 <用户> --password=密码 将 ftp 和 http 的密码均设置为 <密码> --ask-password 提示输入密码 --use-askpass=命令 指定用于请求用户名和密码的凭据管理器。 如果没有提供指定命令,程序将使用 WGET_ASKPASS 或 SSH_ASKPASS 环境变量。 --no-iri 关闭 IRI 支持 --local-encoding=ENC 使用 ENC 作为 IRI (国际化资源标识符) 的本地编码 --remote-encoding=ENC 使用 ENC 作为默认远程编码 --unlink 覆盖前移除文件 --xattr 在文件的拓展属性中储存元数据 目录: -nd, --no-directories 不创建目录 -x, --force-directories 强制创建目录 -nH, --no-host-directories 不要创建主 (host) 目录 --protocol-directories 在目录中使用协议名称 -P, --directory-prefix=前缀 保存文件到 <前缀>/.. --cut-dirs=数字 忽略远程目录中 <数字> 个目录层。 HTTP 选项: --http-user=用户 设置 http 用户名为 <用户> --http-password=密码 设置 http 密码为 <密码> --no-cache 不使用服务器缓存的数据。 --default-page=NAME 改变默认页 (通常是“index.html”)。 -E, --adjust-extension 以合适的扩展名保存 HTML/CSS 文档 --ignore-length 忽略头部的‘Content-Length’区域 --header=字符串 在头部插入 <字符串> --compression=类型 选择压缩类型,值可以为 auto、gzip 和 none。(默认:none) --max-redirect 每页所允许的最大重定向 --proxy-user=用户 使用 <用户> 作为代理用户名 --proxy-password=密码 使用 <密码> 作为代理密码 --referer=URL 在 HTTP 请求头包含‘Referer: URL’ --save-headers 将 HTTP 头保存至文件。 -U, --user-agent=代理 标识自己为 <代理> 而不是 Wget/VERSION。 --no-http-keep-alive 禁用 HTTP keep-alive (持久连接)。 --no-cookies 不使用 cookies。 --load-cookies=文件 会话开始前从 <文件> 中载入 cookies。 --save-cookies=文件 会话结束后保存 cookies 至 FILE。 --keep-session-cookies 载入并保存会话 (非永久) cookies。 --post-data=字符串 使用 POST 方式;把 <字串>作为数据发送。 --post-file=文件 使用 POST 方式;发送 <文件> 内容。 --method=HTTP方法 在请求中使用指定的 <HTTP 方法>。 --post-data=字符串 把 <字串> 作为数据发送,必须设置 --method --post-file=文件 发送 <文件> 内容,必须设置 --method --content-disposition 当选择本地文件名时允许 Content-Disposition 头部 (实验中)。 --content-on-error 在服务器错误时输出接收到的内容 --auth-no-challenge 不先等待服务器询问就发送基本 HTTP 验证信息。 HTTPS (SSL/TLS) 选项: --secure-protocol=PR 选择安全协议,值可以是 auto、SSLv2、 SSLv3、TLSv1、TLSv1_1、TLSv1_2 或 PFS --https-only 只跟随安全的 HTTPS 链接 --no-check-certificate 不要验证服务器的证书。 --certificate=文件 客户端证书文件。 --certificate-type=类型 客户端证书类型,PEM 或 DER。 --private-key=文件 私钥文件。 --private-key-type=类型 私钥文件类型,PEM 或 DER。 --ca-certificate=文件 带有一组 CA 证书的文件。 --ca-directory=DIR 保存 CA 证书的哈希列表的目录。 --ca-certificate=文件 带有一组 CA 证书的文件。 --pinnedpubkey=文件/散列值 用于验证节点的公钥(PEM/DER)文件或 任何数量的 sha256 散列值,以 base64 编码、 “sha256//” 开头、用“;”间隔 --random-file=文件 用于初始化 SSL 伪随机数生成器(PRNG)的文件, 应含有随机数据 --ciphers=STR 直接设置 priority string (GnuTLS) 或 cipher list string (OpenSSL)。 请小心使用。该选项会覆盖 --secure-protocol。 其具体格式和字符串语法取决于对应的 SSL/TLS 引擎。 HSTS 选项: --no-hsts 禁用 HSTS --hsts-file HSTS 数据库路径(将覆盖默认值) FTP 选项: --ftp-user=用户 设置 ftp 用户名为 <用户>。 --ftp-password=密码 设置 ftp 密码为 <密码> --no-remove-listing 不要删除‘.listing’文件 --no-glob 不在 FTP 文件名中使用通配符展开 --no-passive-ftp 禁用“passive”传输模式 --preserve-permissions 保留远程文件的权限 --retr-symlinks 递归目录时,获取链接的文件 (而非目录) FTPS 选项: --ftps-implicit 使用隐式 FTPS(默认端口 990) --ftps-resume-ssl 打开数据连接时继续控制连接中的 SSL/TLS 会话 --ftps-clear-data-connection 只加密控制信道;数据传输使用明文 --ftps-fallback-to-ftp 回落到 FTP,如果目标服务器不支持 FTPS WARC 选项: --warc-file=文件名 在一个 .warc.gz 文件里保持请求/响应数据 --warc-header=字符串 在头部插入 <字符串> --warc-max-size=数字 将 WARC 的最大尺寸设置为 <数字> --warc-cdx 写入 CDX 索引文件 --warc-dedup=文件名 不要记录列在此 CDX 文件内的记录 --no-warc-compression 不要 GZIP 压缩 WARC 文件 --no-warc-digests 不要计算 SHA1 摘要 --no-warc-keep-log 不要在 WARC 记录中存储日志文件 --warc-tempdir=目录 WARC 写入器的临时文件目录 递归下载: -r, --recursive 指定递归下载 -l, --level=数字 最大递归深度 (inf 或 0 代表无限制,即全部下载)。 --delete-after 下载完成后删除本地文件 -k, --convert-links 让下载得到的 HTML 或 CSS 中的链接指向本地文件 --convert-file-only 只转换 URL 的文件部分(一般叫做“基础名”/basename) --backups=N 写入文件 X 前,轮换移动最多 N 个备份文件 -K, --backup-converted 在转换文件 X 前先将它备份为 X.orig。 -m, --mirror -N -r -l inf --no-remove-listing 的缩写形式。 -p, --page-requisites 下载所有用于显示 HTML 页面的图片之类的元素。 --strict-comments 用严格方式 (SGML) 处理 HTML 注释。 递归接受/拒绝: -A, --accept=列表 逗号分隔的可接受的扩展名列表 -R, --reject=列表 逗号分隔的要拒绝的扩展名列表 --accept-regex=REGEX 匹配接受的 URL 的正则表达式 --reject-regex=REGEX 匹配拒绝的 URL 的正则表达式 --regex-type=类型 正则类型 (posix|pcre) -D, --domains=列表 逗号分隔的可接受的域名列表 --exclude-domains=列表 逗号分隔的要拒绝的域名列表 --follow-ftp 跟踪 HTML 文档中的 FTP 链接 --follow-tags=列表 逗号分隔的跟踪的 HTML 标识列表 --ignore-tags=列表 逗号分隔的忽略的 HTML 标识列表 -H, --span-hosts 递归时转向外部主机 -L, --relative 仅跟踪相对链接 -I, --include-directories=列表 允许目录的列表 --trust-server-names 使用重定向 URL 的最后一段作为本地文件名 -X, --exclude-directories=列表 排除目录的列表 -np, --no-parent 不追溯至父目录 请将错误报告、问题和讨论寄信至 <bug-wget@gnu.org> 和/或在 https://savannah.gnu.org/bugs/?func=additem&group=wget 开 issue 进行讨论。
默认用法
使用 wget
下载 redis
的 tar.gz
文件 (https://download.redis.io/releases/ ):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 $ wget https://download.redis.io/releases/redis-6.0.8.tar.gz --2022-09-28 12:59:32-- https://download.redis.io/releases/redis-6.0.8.tar.gz 正在解析主机 download.redis.io (download.redis.io)... 45.60.125.1 正在连接 download.redis.io (download.redis.io)|45.60.125.1|:443... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度: 2247528 (2.1M) [application/octet-stream] 正在保存至: “redis-6.0.8.tar.gz” redis-6.0.8.tar.gz 100%[===================================================================================>] 2.14M 5.61MB/s 用时 0.4s 2022-09-28 12:59:33 (5.61 MB/s) - 已保存 “redis-6.0.8.tar.gz” [2247528/2247528]) $ ls redis-6.0.8.tar.gz
注: 默认情况下会将文件下载到当前工作目录
中。
-O 更改下载文件的名字
1 2 3 4 5 6 7 8 9 10 11 12 13 14 $ wget -O redis.tar.gz https://download.redis.io/releases/redis-6.0.8.tar.gz --2022-09-28 13:05:13-- https://download.redis.io/releases/redis-6.0.8.tar.gz 正在解析主机 download.redis.io (download.redis.io)... 45.60.125.1 正在连接 download.redis.io (download.redis.io)|45.60.125.1|:443... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度: 2247528 (2.1M) [application/octet-stream] 正在保存至: “redis.tar.gz” redis.tar.gz 100%[===================================================================================>] 2.14M 7.12MB/s 用时 0.3s 2022-09-28 13:05:13 (7.12 MB/s) - 已保存 “redis.tar.gz” [2247528/2247528]) $ ls redis-6.0.8.tar.gz redis.tar.gz
-P 将文件下载到指定目录
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 $ ls redis-6.0.8.tar.gz redis.tar.gz $ mkdir tmp $ ls redis-6.0.8.tar.gz redis.tar.gz tmp $ wget -P ./tmp/ https://download.redis.io/releases/redis-6.0.8.tar.gz --2022-09-28 13:16:50-- https://download.redis.io/releases/redis-6.0.8.tar.gz 正在解析主机 download.redis.io (download.redis.io)... 45.60.125.1 正在连接 download.redis.io (download.redis.io)|45.60.125.1|:443... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度: 2247528 (2.1M) [application/octet-stream] 正在保存至: “./tmp/redis-6.0.8.tar.gz” redis-6.0.8.tar.gz 100%[===================================================================================>] 2.14M 7.05MB/s 用时 0.3s 2022-09-28 13:16:51 (7.05 MB/s) - 已保存 “./tmp/redis-6.0.8.tar.gz” [2247528/2247528]) $ tree . ├── redis-6.0.8.tar.gz ├── redis.tar.gz └── tmp └── redis-6.0.8.tar.gz 1 directory, 3 files
-c 断点续传下载文件
注:中途断网导致文件下载未完成,-c
能够恢复下载,无需从头下载。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 $ tree . 0 directories, 0 files $ wget -c https://download.redis.io/releases/redis-6.0.8.tar.gz --2022-09-28 13:24:44-- https://download.redis.io/releases/redis-6.0.8.tar.gz 正在解析主机 download.redis.io (download.redis.io)... 45.60.125.1 正在连接 download.redis.io (download.redis.io)|45.60.125.1|:443... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度: 2247528 (2.1M) [application/octet-stream] 正在保存至: “redis-6.0.8.tar.gz” redis-6.0.8.tar.gz 100%[==================>] 2.14M 7.28MB/s 用时 0.3s 2022-09-28 13:24:45 (7.28 MB/s) - 已保存 “redis-6.0.8.tar.gz” [2247528/2247528]) $ tree . └── redis-6.0.8.tar.gz 0 directories, 1 file
-b 后台下载
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 $ tree . 0 directories, 0 files $ wget -b https://download.redis.io/releases/redis-6.0.8.tar.gz 继续在后台运行,pid 为 11224。 将把输出写入至 “wget-log”。 $ ls redis-6.0.8.tar.gz wget-log $ cat wget-log --2022-09-28 13:27:37-- https://download.redis.io/releases/redis-6.0.8.tar.gz 正在解析主机 download.redis.io (download.redis.io)... 45.60.125.1 正在连接 download.redis.io (download.redis.io)|45.60.125.1|:443... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度: 2247528 (2.1M) [application/octet-stream] 正在保存至: “redis-6.0.8.tar.gz” 0K .......... .......... .......... .......... .......... 2% 324K 7s 50K .......... .......... .......... .......... .......... 4% 647K 5s 100K .......... .......... .......... .......... .......... 6% 52.9M 3s 150K .......... .......... .......... .......... .......... 9% 649K 3s 200K .......... .......... .......... .......... .......... 11% 54.4M 2s 250K .......... .......... .......... .......... .......... 13% 49.8M 2s 300K .......... .......... .......... .......... .......... 15% 655K 2s 350K .......... .......... .......... .......... .......... 18% 49.9M 2s 400K .......... .......... .......... .......... .......... 20% 50.7M 2s 450K .......... .......... .......... .......... .......... 22% 114M 1s 500K .......... .......... .......... .......... .......... 25% 156M 1s 550K .......... .......... .......... .......... .......... 27% 411M 1s 600K .......... .......... .......... .......... .......... 29% 415M 1s 650K .......... .......... .......... .......... .......... 31% 691K 1s 700K .......... .......... .......... .......... .......... 34% 16.1M 1s 750K .......... .......... .......... .......... .......... 36% 51.9M 1s 800K .......... .......... .......... .......... .......... 38% 71.6M 1s 850K .......... .......... .......... .......... .......... 41% 180M 1s 900K .......... .......... .......... .......... .......... 43% 185M 1s 950K .......... .......... .......... .......... .......... 45% 152M 1s 1000K .......... .......... .......... .......... .......... 47% 180M 1s 1050K .......... .......... .......... .......... .......... 50% 206M 0s 1100K .......... .......... .......... .......... .......... 52% 181M 0s 1150K .......... .......... .......... .......... .......... 54% 165M 0s 1200K .......... .......... .......... .......... .......... 56% 185M 0s 1250K .......... .......... .......... .......... .......... 59% 200M 0s 1300K .......... .......... .......... .......... .......... 61% 186M 0s 1350K .......... .......... .......... .......... .......... 63% 730K 0s 1400K .......... .......... .......... .......... .......... 66% 28.6M 0s 1450K .......... .......... .......... .......... .......... 68% 36.7M 0s 1500K .......... .......... .......... .......... .......... 70% 139M 0s 1550K .......... .......... .......... .......... .......... 72% 146M 0s 1600K .......... .......... .......... .......... .......... 75% 203M 0s 1650K .......... .......... .......... .......... .......... 77% 202M 0s 1700K .......... .......... .......... .......... .......... 79% 199M 0s 1750K .......... .......... .......... .......... .......... 82% 153M 0s 1800K .......... .......... .......... .......... .......... 84% 208M 0s 1850K .......... .......... .......... .......... .......... 86% 206M 0s 1900K .......... .......... .......... .......... .......... 88% 192M 0s 1950K .......... .......... .......... .......... .......... 91% 197M 0s 2000K .......... .......... .......... .......... .......... 93% 205M 0s 2050K .......... .......... .......... .......... .......... 95% 210M 0s 2100K .......... .......... .......... .......... .......... 97% 204M 0s 2150K .......... .......... .......... .......... .... 100% 220M=0.5s 2022-09-28 13:27:38 (3.93 MB/s) - 已保存 “redis-6.0.8.tar.gz” [2247528/2247528]) $ tail -f wget-log 1850K .......... .......... .......... .......... .......... 86% 206M 0s 1900K .......... .......... .......... .......... .......... 88% 192M 0s 1950K .......... .......... .......... .......... .......... 91% 197M 0s 2000K .......... .......... .......... .......... .......... 93% 205M 0s 2050K .......... .......... .......... .......... .......... 95% 210M 0s 2100K .......... .......... .......... .......... .......... 97% 204M 0s 2150K .......... .......... .......... .......... .... 100% 220M=0.5s 2022-09-28 13:27:38 (3.93 MB/s) - 已保存 “redis-6.0.8.tar.gz” [2247528/2247528]) ^C $
注:下载日志会写入到 wget-log
文件中,可以使用 tail -f wget-log
查看。
-i 下载多个文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 $ ls download_list.txt $ cat download_list.txt https://download.redis.io/releases/redis-6.0.8.tar.gz https://download.redis.io/releases/redis-6.2.1.tar.gz https://download.redis.io/releases/redis-7.0.0.tar.gz https://download.redis.io/releases/redis-7.0.5.tar.gz $ wget -i download_list.txt --2022-09-28 13:38:41-- https://download.redis.io/releases/redis-6.0.8.tar.gz 正在解析主机 download.redis.io (download.redis.io)... 45.60.125.1 正在连接 download.redis.io (download.redis.io)|45.60.125.1|:443... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度: 2247528 (2.1M) [application/octet-stream] 正在保存至: “redis-6.0.8.tar.gz” redis-6.0.8.tar.gz 100%[==================>] 2.14M 5.32MB/s 用时 0.4s 2022-09-28 13:38:42 (5.32 MB/s) - 已保存 “redis-6.0.8.tar.gz” [2247528/2247528]) --2022-09-28 13:38:42-- https://download.redis.io/releases/redis-6.2.1.tar.gz 再次使用存在的到 download.redis.io:443 的连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度: 2438367 (2.3M) [application/octet-stream] 正在保存至: “redis-6.2.1.tar.gz” redis-6.2.1.tar.gz 100%[==================>] 2.33M --.-KB/s 用时 0.06s 2022-09-28 13:38:42 (37.3 MB/s) - 已保存 “redis-6.2.1.tar.gz” [2438367/2438367]) --2022-09-28 13:38:42-- https://download.redis.io/releases/redis-7.0.0.tar.gz 再次使用存在的到 download.redis.io:443 的连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度: 2943054 (2.8M) [application/octet-stream] 正在保存至: “redis-7.0.0.tar.gz” redis-7.0.0.tar.gz 100%[==================>] 2.81M 3.50MB/s 用时 0.8s 2022-09-28 13:38:43 (3.50 MB/s) - 已保存 “redis-7.0.0.tar.gz” [2943054/2943054]) --2022-09-28 13:38:43-- https://download.redis.io/releases/redis-7.0.5.tar.gz 再次使用存在的到 download.redis.io:443 的连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度: 2968205 (2.8M) [application/octet-stream] 正在保存至: “redis-7.0.5.tar.gz” redis-7.0.5.tar.gz 100%[==================>] 2.83M 2.14MB/s 用时 1.3s 2022-09-28 13:38:45 (2.14 MB/s) - 已保存 “redis-7.0.5.tar.gz” [2968205/2968205]) 下载完毕 --2022-09-28 13:38:45-- 总用时:3.6s 下载了:4 个文件,2.6s (3.90 MB/s) 中的 10M $ ls download_list.txt redis-6.2.1.tar.gz redis-7.0.5.tar.gz redis-6.0.8.tar.gz redis-7.0.0.tar.gz
注:文本文件中,每一行一个 url
。
–limit-rate 限制下载速度
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 $ tree . 0 directories, 0 files $ wget --limit-rate=1m https://download.redis.io/releases/redis-6.0.8.tar.gz --2022-09-28 13:45:46-- https://download.redis.io/releases/redis-6.0.8.tar.gz 正在解析主机 download.redis.io (download.redis.io)... 45.60.125.1 正在连接 download.redis.io (download.redis.io)|45.60.125.1|:443... 已连接。 已发出 HTTP 请求,正在等待回应... 200 OK 长度: 2247528 (2.1M) [application/octet-stream] 正在保存至: “redis-6.0.8.tar.gz” redis-6.0.8.tar.gz 100%[=================>] 2.14M 1.08MB/s 用时 2.0s 2022-09-28 13:45:49 (1.08 MB/s) - 已保存 “redis-6.0.8.tar.gz” [2247528/2247528]) $ tree . └── redis-6.0.8.tar.gz 0 directories, 1 file
注:wget
命令默认以全速下载,占用大量宽带。--limit-rate=1m
将下载速度限制为 1m/s
。
pip3 安装 pillow 失败
1 2 sudo apt-get install libtiff5-dev libjpeg8-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.6-dev tk8.6-dev python-tk sudo apt-get install python3-dev
hostnamectl – 查看/修改当前主机的信息
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 luyanfeng@amax:~$ hostnamectl --help hostnamectl [OPTIONS...] COMMAND ... Query or change system hostname. -h --help Show this help --version Show package version --no-ask-password Do not prompt for password -H --host=[USER@]HOST Operate on remote host -M --machine=CONTAINER Operate on local container --transient Only set transient hostname --static Only set static hostname --pretty Only set pretty hostname Commands: status Show current hostname settings set-hostname NAME Set system hostname set-icon-name NAME Set icon name for host set-chassis NAME Set chassis type for host set-deployment NAME Set deployment environment for host set-location NAME Set location for host luyanfeng@amax:~$ hostnamectl Static hostname: amax Icon name: computer-server Chassis: server Machine ID: 9e3f9b2c17f34ec498bbe99396f0597d Boot ID: 045903c8f58741f1b1862515b085885b Operating System: Ubuntu 18.04.6 LTS Kernel: Linux 5.4.0-126-generic Architecture: x86-64 luyanfeng@amax:~$
pip
While Python 3.x
is installed by default on Linux
, pip
is not installed by default.
1 sudo apt install python3-pip
为普通用户添加 sudo
权限
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 $ cd /etc/ $ ll sudoers -r-------- 1 root root 4382 Jan 21 23:16 sudoers $ su root Password: $ chmod 777 sudoers $ vim sudoers root ALL=(ALL) ALL root ALL=(ALL) ALL susu ALL=(ALL) ALL $ chmod 400 sudoers
Ubuntu 18.04.6 LTS
没有 root
用户但修改了 sudoers
参考文档
ubuntu 修改用户权限,不小心修改了sudoers文件
ubuntu 16.04 忘记root密码的处理方法
Ubuntu 重置密码
问题介绍
在 Ubuntu 18.04.6 LTS
上,为新建的用户
添加 sudo
权限,需要修改 sudoers
文件,因此 sudoers
文件的权限被更改为 777
,修改完成后,由于该系统上还没有设置 root
用户,无法将 sudoers
文件的权限更改回 400
。
解决办法
第一步:进入 recovery
模式,创建 root
用户,设置密码
重启计算机,出现如下界面,选中如下选项,按 Enter
键。
然后选中最后有(recovery mode
)的选项,推荐选择版本较高的一个。按 e
,请不要使用 Enter
键。
找到图中红色框的 recovery nomodeset
并将其删掉,再在这一行的后面输入 quiet splash rw init=/bin/bash
。完成后按 F10
键。
在命令行输入 passwd
,修改 root
用户密码。然后,按电源
键,关机,然后按电源
键,重启计算机。
第二步:用 root
用户,修改 sudoers
文件权限
1 2 3 4 5 6 7 8 $ cd /etc/ $ su root Password: $ chmod 400 sudoers
Ubuntu 18.04.6 LTS
卸载 Python3
无法进入图形界面
问题描述
Ubuntu
的桌面依赖自带的 Python3
,因此请不要卸载自带的 Python3
。如果卸载了自带的 Python3
,将不能使用图形界面
,只能使用命令行
。
如果能够连网
,可以使用下面的步骤解决。
重启电脑,在终端登录。
执行 sudo dhclient
获取 ip
地址进行网络连接,通过 ping baidu.com
验证是否能够连网。
执行 sudo apt-get install ubuntu-minimal ubuntu-standard ubuntu-desktop
安装桌面。
执行 sudo reboot
重启电脑。
由于学校的服务器需要通过图形界面
,登录账号密码
进行连网,因此,服务器不能连网,进而不能使用上面的解决办法。
解决
首先通过 sudo dhclient
获取 ip
地址,然后通过 ip addr
或者 ifconfig
查看到服务器的内网地址
,如 10.4.3.155
。
通过 hostnamectl
查看服务器的操作系统和架构。显示服务器的操作系统为 Ubuntu 18.04.6 LTS
,架构为 x86-64
。
1 2 3 4 5 6 7 8 9 $ hostnamectl Static hostname: amax Icon name: computer-server Chassis: server Machine ID: 9e3f9b2c17f34ec498bbe99396f0597d Boot ID: 045903c8f58741f1b1862515b085885b Operating System: Ubuntu 18.04.6 LTS Kernel: Linux 5.4.0-126-generic Architecture: x86-64
在本地的电脑访问 Ubuntu Packages Search ,由于服务器的操作系统为 Ubuntu 18.04.6 LTS
,因此 Distribution
选择 bionic
,我们以 ubuntu-minimal
包为例,如下图。
点击搜索,结果如下图。
点击搜索结果的链接 (bionic (18.04LTS)
),如下图。
由于服务器的架构为 x86-64
,因此,我们选择 amd64
版本,如下图。
点击 amd64
,结果如下图。可以发现我们需要的包名为 ubuntu-minimal_1.417_amd64.deb
,可以在镜像服务器
的 pool/main/u/ubuntu-meta/
子目录中下载这个包:
其中一个镜像服务器地址为:http://cz.archive.ubuntu.com/ubuntu/pool/main/
。依次找到 ubuntu-minimal_1.417_amd64.deb
包,如下图。
点击 ubuntu-minimal_1.417_amd64.deb
并下载到本地电脑。进入到下载目录,执行 scp
命令将下载的包传输到服务器中。
1 2 $ scp * luyanfeng@10.4.3.155:/home/luyanfeng/programs/
通过内网 IP
用 ssh
连接服务器,执行下面命令安装 ubuntu-minimal
包。
1 $ sudo dpkg -i ubuntu-minimal_1.417_amd64.deb
一般情况下是不能安装成功的,因为 ubuntu-minimal
需要一些依赖包,需要先安装依赖包,再安装 ubuntu-minimal
包。可以根据 sudo dpkg -i ubuntu-minimal_1.417_amd64.deb
命令给出的提示,像上面那样在 Ubuntu Packages Search 中找到需要的依赖包,并下载,传输到服务器,安装。
类似的,我们需要按照上面步骤安装 ubuntu-minimal
、ubuntu-standard
、ubuntu-desktop
这些包,但是当安装 ubuntu-desktop
的依赖包时会显示 xxx 包未被配置
的错误。不要管它,安装其他的包。
下面是我总共安装的包。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 $ tree programs/ programs/ ├── aptdaemon_1.1.1+bzr982-0ubuntu19.5_all.deb ├── foomatic-db-compressed-ppds_20180306-1_all.deb ├── gdm3_3.28.3-0ubuntu18.04.6_amd64.deb ├── gir1.2-ibus-1.0_1.5.17-3ubuntu5.3_amd64.deb ├── gnome-control-center_3.28.1-0ubuntu1_amd64.deb ├── gnome-menus_3.13.3-11ubuntu1_amd64.deb ├── gnome-session-common_3.28.1-0ubuntu2_all.deb ├── gnome-shell_3.28.3+git20190124-0ubuntu18.04.2_amd64.deb ├── gnome-shell-common_3.28.3+git20190124-0ubuntu18.04.2_all.deb ├── language-selector-common_0.188_all.deb ├── language-selector-gnome_0.188_all.deb ├── lsb-release_9.20170808ubuntu1_all.deb ├── microsoft-edge-stable_105.0.1343.42-1_amd64.deb ├── netplan.io_0.40.1_18.04.4_amd64.deb ├── nplan_0.40.1_18.04.4_all.deb ├── openprinting-ppds_20180306-1_all.deb ├── python3-apport_2.20.9-0ubuntu7.28_all.deb ├── python3-apt_1.6.5ubuntu0.5_amd64.deb ├── python3-aptdaemon_1.1.1+bzr982-0ubuntu19.5_all.deb ├── python3-aptdaemon.gtk3widgets_1.1.1+bzr982-0ubuntu19.5_all.deb ├── python3-defer_1.0.6-2build1_all.deb ├── python3-distupgrade_18.04.17_all.deb ├── python3-netifaces_0.10.4-0.1build4_amd64.deb ├── python3-software-properties_0.96.24.32.14_all.deb ├── python3-xkit_0.5.0ubuntu2_all.deb ├── python3-yaml_3.12-1build2_amd64.deb ├── software-properties-gtk_0.96.24.32.14_all.deb ├── system-config-printer-common_1.5.11-1ubuntu2_all.deb ├── ubuntu-advantage-tools_17_all.deb ├── ubuntu-desktop_1.417_amd64.deb ├── ubuntu-drivers-common_0.5.2_amd64.deb ├── ubuntu-minimal_1.417_amd64.deb ├── ubuntu-release-upgrader-core_18.04.17_all.deb ├── ubuntu-release-upgrader-gtk_18.04.17_all.deb ├── ubuntu-session_3.28.1-0ubuntu2_amd64.deb ├── ubuntu-standard_1.417_amd64.deb ├── update-manager_18.04.11_all.deb ├── update-notifier_3.192_amd64.deb ├── xorg_7.7+19ubuntu7_amd64.deb └── xserver-xorg_7.7+19ubuntu7_amd64.deb 0 directories, 40 files $
microsoft-edge-stable_105.0.1343.42-1_amd64.deb
这个包是 edge
浏览器的安装包 (可以从 https://www.microsoft.com/zh-cn/edge 处下载),因为我需要浏览器,才能通过学校的账号连网。
这时服务器的图形界面
应该可以使用了,但还是卡卡的感觉
,通过 edge
连网,输入下面命令再次安装桌面。
1 2 3 4 $ sudo apt-get install -f -y $ sudo apt-get update $ sudo apt-get install ubuntu-minimal ubuntu-standard ubuntu-desktop $ sudo reboot
电脑重启后,应该就会直接进入到图形界面了。
Linux 系统通过 SCP 上传文件到 Linux 服务器 (包括下载文件)
上传文件
在本地机器执行以下命令,向 Linux
服务器上传文件。
1 2 3 4 5 $ scp 本地文件地址 服务器帐号@服务器 IP:服务器文件地址 $ scp foo luyanfeng@10.4.6.15:/home/luyanfeng/my_code/temp/ luyanfeng@10.4.6.15's password: foo 100% 0 0.0KB/s 00:00 $
下载文件
在本地机器执行以下命令,将 Linux
服务器上的文件下载至本地。
1 2 3 4 5 $ scp 服务器帐号@服务器 IP:服务器文件地址 本地文件地址 $ scp luyanfeng@10.4.6.15:/home/luyanfeng/my_code/temp/lyf . luyanfeng@10.4.6.15's password: lyf 100% 0 0.0KB/s 00:00 $
Ubuntu 安装 QQ
操作系统: Ubuntu 20.04.5 LTS
方法一
腾讯已于 2022 年 12 月 30 日推出了 QQ 的 v3.0.0, 界面已经美化. 因此不建议使用方法一安装 QQ 了.
进入 Icalingua-plus-plus
项目: https://github.com/Icalingua-plus-plus/Icalingua-plus-plus .
进入其 Releases .
下载相应 (操作系统) 的发行版本, 如 icalingua_2.7.7_amd64.deb
进入下载目录, 运行下面命令安装程序:
1 sudo dpkg -i icalingua_2.7.7_amd64.deb
安装完成后,应用程序的图标如下:
输入账号密码登录 (其他选项都默认).
卸载:
1 2 3 4 5 6 7 8 $ sudo dpkg -r icalingua (正在读取数据库 ... 系统当前共安装有 275055 个文件和目录。) 正在卸载 icalingua (2.7.7) ... 正在处理用于 hicolor-icon-theme (0.17-2) 的触发器 ... 正在处理用于 gnome-menus (3.36.0-1ubuntu1) 的触发器 ... 正在处理用于 desktop-file-utils (0.24-1ubuntu3) 的触发器 ... 正在处理用于 mime-support (3.64ubuntu1) 的触发器 ... $
方法二
腾讯官方版本, QQ 官网: https://im.qq.com/index/ . Linux 版本安装包下载界面: https://im.qq.com/linuxqq/index.shtml , Linux 版本安装帮助界面: https://im.qq.com/linuxqq/support.html .
下载 deb
版本.
进入下载目录, 运行下面命令安装程序:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 $ sudo dpkg -i linuxqq_3.0.0-571_amd64.deb (正在读取数据库 ... 系统当前共安装有 274974 个文件和目录。) 准备解压 linuxqq_3.0.0-571_amd64.deb ... 正在解压 linuxqq (3.0.0-571) 并覆盖 (2.0.0-b2) ... dpkg: 警告: 无法删除原有的目录 /usr/local/share :目录非空 dpkg: 警告: 无法删除原有的目录 /usr/local/lib :目录非空 dpkg: 警告: 无法删除原有的目录 /usr/local/bin :目录非空 dpkg: 警告: 无法删除原有的目录 /usr/local :目录非空 正在设置 linuxqq (3.0.0-571) ... 正在处理用于 hicolor-icon-theme (0.17-2) 的触发器 ... 正在处理用于 gnome-menus (3.36.0-1ubuntu1) 的触发器 ... 正在处理用于 desktop-file-utils (0.24-1ubuntu3) 的触发器 ... 正在处理用于 mime-support (3.64ubuntu1) 的触发器 ... $
登录效果 (very good!):
.gitignore
文件
在 Git
中, 如果想忽略掉某个文件, 不让这个文件提交到版本库中, 可以使用 .gitignore
文件.
.gitignore
文件的创建:
1 2 # 在相应仓库的根目录中 vim .gitignore
该文件的每一行保存了一个匹配的规则, e.g.
:
1 2 3 4 5 6 # 此为注释 – 将被 Git 忽略 *.a # 忽略所有 .a 结尾的文件 !lib.a # 但 lib.a 除外 /TODO # 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO build/ # 忽略 build/ 目录下的所有文件 doc/*.txt # 会忽略 doc/notes.txt 但不包括 doc/server/arch.txt
.gitignore
文件的格式规范:
#
为注释.
可以使用 shell
的正则表达式
来进行模式匹配.
匹配模式
最后为 /
表示忽略的是目录
.
使用 !
表示取反, (例如, 目录中包含 test.a
, 并且 gitignore
文件包含 *.[oa]
, 如果加入 !test.a
表明忽略除 test.a 文件以外的所有后缀名为 .a 或者 .o 的文件
).
.gitignore
文件只能忽略没有被 track
的文件, 如果某些文件已经被纳入了版本管理中,则 .gitignore
文件是无效的.
解决方法: 使用下面命令先把本地缓存删除 (改变成未被 track 的状态).
1 git rm -r --cached 文件/文件夹名字
重定向符号
在 linux
系统中, shell
命令有重定向符号 >
和 >>
.
shell 命令 > test.txt
,表示向 test.txt
文件重新添加内容
, test.txt
文件的内容会首先被清空.
shell 命令 >> test.txt
,表示向 test.txt
文件追加内容, test.txt
文件原来的内容不会被清理掉.
apt 命令
apt-get
全称 Advanced Package Tool
, 是一款适用于 Unix
和 Linux
系统的高级包管理器. 主要用于自动从互联网的软件仓库
中搜索
、安装
、升级
、卸载软件
或操作系统
.
使用 apt
的主流 Linux
系统包括 Debian
和 Ubuntu
变异版本.
apt-get 和 apt-cache
apt-get
和 apt-cache
命令一般需要 root
权限.
apt 命令
命令的功能
sudo apt-get update
更新源
sudo apt-get install package
安装包
sudo apt-get install package --reinstall
重新安装包
sudo apt-get remove package
删除包
sudo apt-get -f install
修复安装
sudo apt-get remove package --purge
删除包,包括配置文件等
sudo apt-get build-dep package
安装相关的编译环境
sudo apt-get upgrade
更新已安装的包
sudo apt-get dist-upgrade
升级系统
sudo apt-get source package
下载该包的源代码
sudo apt-get clean && sudo apt-get autoclean
清理无用的包
sudo apt-get check
检查是否有损坏的依赖
sudo apt-cache search package
搜索软件包
sudo apt-cache show package
获取包的相关信息,如说明、大小、版本等
sudo apt-cache depends package
了解使用该包依赖那些包
sudo apt-cache rdepends package
查看该包被哪些包依赖
apt
apt = apt-get、apt-cache 和 apt-config 中最常用命令选项的集合
. apt
可以看作 apt-get
和 apt-cache
命令的子集.
apt 和 apt-get 命令之间的区别
虽然 apt
与 apt-get
有一些类似的命令选项, 但它并不能完全向下兼容 apt-get
命令. 也就是说, 可以用 apt
替换部分 apt-get
系列命令, 但不是全部.
apt 命令
取代的命令
命令的功能
apt install
apt-get install
安装软件包
apt remove
apt-get remove
移除软件包
apt purge
apt-get purge
移除软件包及配置文件
apt update
apt-get update
刷新存储库索引
apt upgrade
apt-get upgrade
升级所有可升级的软件包
apt autoremove
apt-get autoremove
自动删除不需要的包
apt full-upgrade
apt-get dist-upgrade
在升级软件包时自动处理依赖关系
apt search
apt-cache search
搜索应用程序
apt show
apt-cache show
显示安装细节
当然,apt
还有一些自己的命令:
新的 apt 命令
命令的功能
apt list
根据名称列出软件包
apt edit-sources
编辑软件源信息文件
ssh 免密登录服务器
在本地的计算机上生成密钥:
1 2 3 4 5 # 创建 SSH,一路回车 $ ssh-keygen -t rsa -C "youremail" # 例子 $ ssh-keygen -t rsa -C "3555028709@qq.com"
在当前用户的 home 目录下生成了 .ssh
目录,里面包含 id_rsa
,id_rsa.pub
,known_hosts
三个文件:
SSH,是一个密钥,id_rsa 是这台电脑的私人密钥,不能给别人看,id_rsa.pub
是公共密钥,可以随便给别人看。
查看 id_rsa.pub
:
1 2 3 $ cat ~/.ssh/id_rsa.pub ssh-rsa xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx= 3555028709@qq.com $
登录服务器, 将本地 ssh
公钥文件的内容追加
到服务器中 .ssh
目录下的 authorized_keys
文件 (注意是追加到 , 有可能有其他人也配置了免密登录):
1 2 3 4 5 $ mkdir -p ~/.ssh# 将上面查到的公钥粘贴到 authorized_keys $ vim ~/.ssh/authorized_keys $ chmod 600 ~/.ssh/authorized_keys$ chmod 700 ~/.ssh
Ubuntu 安装 OpenCV
1 $ sudo apt install libopencv-dev
Ubuntu 安装 Eigen
1 $ sudo apt install libeigen3-dev
VSCode background-cover 插件问题
操作系统: Ubuntu 20.04.4 LTS .
background-cover 插件 link: https://marketplace.visualstudio.com/items?itemName=manasxx.background-cover .
Fix VSCode Checksums 插件 link: https://marketplace.visualstudio.com/items?itemName=lehni.vscode-fix-checksums .
background-cover
安装完背景图片不显示 (使用下面命令提升 VSCode 的权限)
1 sudo chown -R $(whoami) /usr/share/code
VSCode 顶部显示 (不受支持) 问题, 安装 Fix VSCode Checksums 插件, 安装完成后, 在 VSCode 中按 Ctrl+Shift+P
使用下面命令启动插件:
之后重启 VSCode.
无法 ping
通 github.com
通过 ipaddress 查询 github.com
和 github.global.ssl.fastly.net
的 IP 地址.
修改 hosts
文件, 加入上面查询的 IP 地址, hosts
文件内容如下.
1 2 3 4 5 6 7 8 9 10 11 12 127.0.0.1 localhost 127.0.1.1 amax # The following lines are desirable for IPv6 capable hosts ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters + 140.82.114.3 github.com + 199.232.69.194 github.global.ssl.fastly.net
重启网络:
1 $ sudo /etc/init.d/networking restart
apt-get: Error while loading shared libraries:libstdc++.so.6
原教程链接: https://zhuanlan.zhihu.com/p/428011742 .
当运行了下图的命令后出现了 apt-get: Error while loading shared libraries:libstdc++.so.6: cannot open shared object file: No such file or directory 问题,这时千万别重启电脑
。
解决方案
运行下面命令。
1 2 3 4 5 6 # 登录 root 用户 $ su root # 在"include /etc/ld.so.conf.d/*.conf" 下方增加"/usr/local/lib" $ vim /etc/ld.so.conf $ cat /etc/ld.so.conf
输出:
1 2 include /etc/ld.so.conf.d/*.conf /usr/local/lib
运行下面命令。
1 2 3 4 5 6 $ /sbin/ldconfig -v $ apt-get install lib32stdc++6 $ apt --fix-broken install # 退出 root 用户 $ exit
ubuntu 如何查看磁盘空间
源教程地址: https://jingyan.baidu.com/article/39810a23bafcdab637fda64a.html .
方法 1
方法 2
linux 清空文件内容的方式
源教程地址: https://blog.csdn.net/pingzhuyan/article/details/128534882 .
清空文件内容源教程介绍了很多种,我在这里只介绍两种:
第一种:
第二种:
linux系统设置root初始化密码
源教程地址: https://blog.csdn.net/weixin_44259233/article/details/125659866 .
一个新的linux系统是没有root密码的,需要设置root默认密码。
安装好Linux之后,打开终端,输入su命令,会出现如下情况。
1 2 3 user@domain:~$ su 密码: su:认证失败
其原因是由于第一次使用,这时候还未设置root的密码,我们可以以user用户对其进行设置。
使用下面命令为 root 用户设置密码:
Ubuntu 安装 g++
源教程地址: https://blog.csdn.net/dxk539687357/article/details/128748062 .
1 $ sudo apt-get install build-essential
安装 ubuntu
亲身实践过的:
官方安装教程: https://ubuntu.com/tutorials/install-ubuntu-desktop#1-overview .
安装英伟达NVIDIA显卡驱动: https://blog.csdn.net/m0_73860872/article/details/127276979 .
安装nvidia驱动: https://blog.csdn.net/weixin_55749979/article/details/122694538 .
未实践过的:
教你彻底卸载Ubuntu双系统,去污不残留: https://blog.csdn.net/qq_42257666/article/details/120721561 .
ubuntu20.04安装NVIDIA驱动: https://blog.csdn.net/weixin_64184244/article/details/130567108 .
磁盘挂载
教程如下:
https://blog.csdn.net/weixin_38090079/article/details/131723705
https://blog.csdn.net/m0_50932526/article/details/131430538
https://blog.csdn.net/weixin_45497582/article/details/128447419
https://www.cnblogs.com/Lx-learner/p/17038322.html
目录大小
源教程地址:https://blog.csdn.net/weixin_43025343/article/details/131460575
1 2 3 4 $ du -h <文件名># 例子 $ sudo du -h /home --max-depth=1
结语
第二十八篇博文写完,开心!!!!
今天,也是充满希望的一天。