全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

CeraNetworks网络延迟测速工具IP归属甄别会员请立即修改密码
查看: 910|回复: 4
打印 上一主题 下一主题

有关 Linux 一键重装脚本自定密码出错的说明

[复制链接]
跳转到指定楼层
1#
发表于 2023-4-29 20:17:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 天权璇玑 于 2023-4-29 20:19 编辑

原帖地址:https://www.91ai.net/thread-1159839-1-1.html

项目地址,欢迎 star,github 主页或私信反馈:

https://github.com/leitbogioro/Tools

主贴里有若干坛友反馈,脚本安装时,通过 -pwd '自定密码内容' 输入后,系统装好后再 ssh 机器,显示密码不对。这个问题我进行了一番调查,现在已得到结果,现将问题原因和解决方法告诉大家。

原因:Linux shell 语言对变量中的字符要求非常严格,诸如表示变量的美元符号——"$"、表示强引用,不把其中被括起来的文本内容当命令或变量处理的的单引号——" ' ",本次密码设置问题就出在单引号上,我们通过简单的例子就能知道问题出在哪。

只输出被单引号括起来的字符,结果没什么好说的,单引号不会出现:

  1. root@debian:~# echo 'xiaoming'
  2. xiaoming
复制代码


这时我想输出带单引号的结果,如 'xiaoming' ,给前后单引号各再加一个单引号,显然不行:

  1. root@debian:~# echo ''xiaoming''
  2. xiaoming
复制代码


解决办法是什么呢?很简单,用 '\' 当做转义符,附在需要输出的单引号 ' 前,这样结果里单引号 ' 就能正常出现:

  1. root@debian:~# echo ''\''xiaoming'\'''
  2. 'xiaoming'
复制代码


也就是说,如果是以字符串的形式,向 shell 的变量里存储值,'\'' 的作用就是可以让变量里正确存入单引号 ' 的值,前提是该变量中的值前后已经被单引号括起来,我们可以在任何地方插入我们需要的单引号,只要以 '\'' 输入即可,比如我们需要输出 xi'aom'ing:

  1. root@debian:~# echo 'xi'\''aom'\''ing'
  2. xi'aom'ing
复制代码


又比如我们需要输出 x'iao'ming

  1. root@debian:~# echo 'x'\''iao'\''ming'
  2. x'iao'ming
复制代码


所以一定要记住,使用脚本自定义密码,除了要把密码整个用单引号括起来: -pwd '密码内容' ,如果密码中带有英文单引号('),每个单引号前都必须加上被一对新的单引号括起来的斜杠转义,才能被 shell 正确识别为一个纯文本的单引号,否则 shell 会自动忽略掉你设置密码中间带的所有单个单引号,所以才造成密码设置错误,敬请注意!以下这个才对应正式密码中带的一个单引号字符!

  1. '\''
复制代码



2#
发表于 2023-4-29 20:18:44 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
3#
发表于 2023-4-29 20:20:01 | 只看该作者
哥,256内存的能DD啥系统。。。好像都提示低于512
4#
 楼主| 发表于 2023-4-29 20:23:19 | 只看该作者
她说是晒黑的 发表于 2023-4-29 20:20
哥,256内存的能DD啥系统。。。好像都提示低于512


Debian 安装时默认开启的 low memory mode(低内存模式),但其他人的 256M 机器我测过,内存还是不够,安装程序把内存写满了,因为网络安装没有任何外部存储设备,所以要把你机器内存临时当优盘用,内存太小,相当于优盘容量太小,连系统最精简安装包都载入不进去,所以才出现安装失败。

你可以试试用 netbootxyz 安装?我看也够呛

  1. bash InstallNET.sh -netbootxyz
复制代码
5#
发表于 2023-4-29 20:25:53 | 只看该作者
天权璇玑 发表于 2023-4-29 20:23
Debian 安装时默认开启的 low memory mode(低内存模式),但其他人的 256M 机器我测过,内存还是不够, ...

我试试
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2024-6-4 19:55 , Processed in 0.060451 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表