Linux系统知识讲解之二

Linux系统知识讲解之二

(1)因为是root用户,就不能使用sudo了。如果不是root用户,才可以使用sudo。
(2)通常使用shell去运行脚本,两种方法 bash xxx.sh,另外一种就是bash -c “cmd string”
对于bash xxx.sh, 首先bash 会在当前目录去寻找xxx.sh,如果找到,就直接运行,找不到则按照环境变量 PATH的指定路径,按顺序去找,如果找到,则执行,找不到则报错。  bash -c的命令常用语#!/bin/sh开头的脚本  (3)sudo 命令为什么需要密码?通过远程ssh调用sudo提示权限不够(Permission denied)  比如ssh [email protected] ‘sudo “echo “123” >> /etc/rc.local”’  bash返回 /etc/rc.local: Permission denied  这是因为重定向符号 “>” 也是 bash 的命令。sudo 只是让 echo 命令具有了 root 权限,但是没有让 “>” 命令也具有root 权限,所以 bash会认为这个命令没有写入信息的权限。  解决:使用bash -c参数  ssh [email protected] ‘sudo bash -c “echo “123” >> /etc/rc.local”’  (4)打印文本第二行第一列 :sed -n “2, 1p” filename | awk ‘{print 1}’
(5)查看日志的主要操作及命令。
(6)目录间的切换
示例:
当前目录是:hadoop-2.6.4/bin,想切换到hadoop-2.6.4/sbin。可以使用如下命令:

[root@littlelawson hadoop-2.6.4]# cd bin
[root@littlelawson bin]# ../sbin/start-all.sh

(7)centos 7更换了服务的启动方式

systemctl enable sssd
systemctl start sssd
systemctl status sssd

比如说centos 7中关闭防火墙:systemctl stop firewalld
cetnos 7永久关闭防火墙:chkconfig iptables off
(8)vi基本命令
命令模式下,字母u:撤销上一步的操作
(9)shell脚本
使用如下命令检查是否有语法错误:sh -n test.sh
调试脚本程序:sh -x test.sh
(10)报错信息:“已加载插件:fastestmirror”多是网络出现了问题。
(11)centos 7中修改主机名

hostnamectl set-hostname [NewHostName]

如果主机众多,可以使用如下脚本

#!/bin/bash
for HOST in `cat hosts`;do
ssh -t root@$HOST "sudo echo $NEWNAME > /etc/hostname"
done

猜你喜欢

转载自blog.csdn.net/liu16659/article/details/81485064