Linux命令汇总(二)

1.登录用户设置

新创建了一个用户,用useradd指令,但是发现通过终端无法登陆;
 echo password | passwd --stdin username 
或者
 passwd --stdin username <<< password 

2.yum的本地安装

rpm -i 只能是安装,无法进行更新(update);
rpm -Uvh只能是更新,似乎是无法安装,因为我尝试安装了mesos依赖的包,这种方式并没有完整安装;
最后在rpm所在包目录下,运行了yum localinstall *,这次完整安装了。

3.tee 写入文件

打开输入指令,当想要向某个文件中写入文字的时候使用:
 echo XXX | tee filepah 
 
4. 重定向写入异常处理
  sudo echo XX > /etc/YYY返回Permission denied
  尽管echo已经被sodu,但是你的 >也是bash,并没有具有root权限。肿么办?
方案一:
   sudo sh -c "echo XX > /etc/YYY" 
方案二:
   echo XXX | sudo tee /etc/YYY 

5.远程登录并执行语句
   ssh user@IP 'command1;command2' 
6. journalctl
  可以通过journalctl查看那systemd的日志;
   journalctl -xe --no-pager 
  -x:代表添加说明性信息;
  -e:代表跳转到日志尾部
  --no-pager:默认不会自动换行,添加上次选项将会自动换行,显示完整的日志内容
  指定查询当天的日志
   sudo journalctl -u XXX.service --since today  
 7. 设置时区和时间
  操作系统通用:
   cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 
  
  针对cetnos
  1. 罗列出所有的亚洲时区
   timedatectl list-timezones | grep Asia  
  2. 设置时区为上海时间
   timedatectl set-timezone Asia/Shanghai 
  
  针对Java程序读取时区
  在Docker里面部署应用,发现时间是UTC,需要转换为东八区,通用方法只是在Linux命令行中生效;需要在/etc/中设置timezone文件:
   echo "Asia/Shanghai" > /etc/timezone 
 
 8. Linux权限
  Linux的权限是分两个层级;
  第一个大的层级是划分为User,Group以及Other,User指定了指定的用户的访问权限;Group是指指定的组中用户具备的访问权限;Other是指User以及Group之外的用户具有的权限。在每个分类(User,Group,Other)下面又有读(r)权限,写(w)权限以及执行(x)权限。
  chown指令是用来指定第一个级别中的user以及group信息;
  chmod则是指定第二个级别各个分类下的权限

  引申,如果是想要让某个文件可以被所有的用户访问,只要把三类用户的写权限放开即可。
  chmod +777 XXX,777代表读写执行全部设置成可以,或者可以直接通过chmod u+x filename,代表用户赋予执行权限,同理chmod g+x filename则代表文件权限所在组(的用户)赋予执行权限,至于chmod o+x filename其实就是类似于windows下面的everyone。
9. 系统日志
  Linux系统日志:/var/log/messages,几乎Linux所有的应用的标准输出都是写入到此文件
  rsyslog的配置路径:/etc/rsyslog.conf
10. 尽量使用命令以及shell script单引号
1 echo '#!/bin/bash' >> /opt/mesosphere/bin/detect_ip 没毛病
2 echo “#!/bin/bash” >> /opt/mesosphere/bin/detect_ip :(
3 bash: !/bin/bash": event not found
11. route在centos7
  CentOS7下面的route已经全面被ip route给代替了。

posted on 2017-08-31 21:56  下士闻道  阅读(920)  评论(0编辑  收藏  举报

导航