Linux学习笔记

目录

Centos与Unbuntu

Shell脚本中的if注意事项

Shell中关于命令执行返回值


Centos与Unbuntu

1.在使用中碰见大大小小的问题,记录一下,首先Centos和Unbuntu不一样!!!

Centos用的是yum安装更新软件,而Unbuntu用的是apt-get,在这个上面我花费的大量的时间去安装yum,而且一直版本不兼容。

Shell脚本中的if注意事项

首先,if功能还是一样的,但是要注意格式,if和中括号要一个空格,中括号跟表达式之间前后各一个空格!

if [ 表达式 ]

同时在进行数据对比的时候要养成好习惯字符串变量要加双引号,或者执行某些模糊查询的时候也是,同时进行字符串对比中间一定不能跟二元运算符堆一起。

正确格式:

if [ "$userScanner" == "Y" ]

错误示范:

if [$userScanner=="n"]

Shell中关于命令执行返回值

在判断命令是否执行成功这里。成功了返回0,没成功返回非0数,但是我看有的代码会接&&或者||来进行输出,也是可以的。

例子:

find / -name "yum-*" | grep yum-corn && echo "我找到了" || echo "我没找到"

或者我们接返回值判断一下

find / -name "yum*"

if [ "$?" -eq 0 ]
then
    echo "找到了"
else
    echo "没找到"
fi

看个人喜好吧。

主机间的相互免密钥

如果两台服务器想免密钥登录的话,则需要将公钥存到被登录主机上,而到时登录用私钥加密就可以登录了.

1.生成公钥和私钥
2.将公钥发送到登录服务器的root路径下的.ssh/下 的authorized_keys文件中.     
   方法:
    如果是第一次建立连接,首先生成密钥
    在服务器上生成公私钥: ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
    将生成的公钥发送给目标服务器,密钥要放在~/.ssh.authorized_keys中
    使用: ssh-copy-id -i ~/.ssh/id_rsa.pub root@主机名
    然后输入对方服务器密码就行了.

3.发送完毕! 免密钥登录只要:  ssh 目标主机IP
就可以直接登录了

当然我们也可以使用在本地配置的DNS信息去登录,但是可能有点小问题.
ssh nodeIp :如果本地DNS缓存了该配置的IP也可以登录,但是会要输入yes确定登录.

解决需要输入yes问题,直接登录:
    本次不要输入yes: ssh -v -o GSSAPIAuthentication=no 主机名

    永久不用输入:
    修改/etc/ssh/ssh_config文件的配置
    最后面添加: 
    StrictHostKeyChecking no
    UserKnownHostsFile /dev/null

改完后,再次确认的问题就解决了.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值