Linux 知识点2020

命令相关

tar包命令


tar -czvf
tar -xzvf

linux命令中f指文件,后面需要跟对应的文件. 这也是为什么命令中, f参数都是放在最后的原因

v 参数是 压缩形式. gz格式. 包可以用 tar.gztgz 两种后缀名来表示.

xargs命令

xargs命令一般和管道一起使用.
把上条命令的结果作为参数输出.

wget -O

下载并以指定名称保存.

awk $NF

mysql -uroot -p`grep 'temporary password' /var/log/mysqld.log | awk '{print $NF}'`

$NF代表是该行最后一列的数据.

vim

搜索关键字

正常模式下输入/追加关键字即可

找出来的关键字跳转: n下一个/N上一个

搜索后消除高亮键入命令:noh

批量替换

批量替换在/命令行模式下.键入: %s/<目标关键字>/<要替换上去的内容> 即可.
如果要将全文的12345替换成54321
%s/12345/54321
如果中间有/做为内容出现, 则使用\转义. \//
例如:
%s/\/tmp\/mysql.sock/\/jettodevops\/mysql\/tmp\/mysql.sock

grep 参数

grep -A -B -C 三个参数, 后加[数字]..都是对搜索出来的信息,对其上下文进行匹配.
grep - A 20:匹配出来关键字, 以及后面20行.
grep - B 20:匹配出来关键字, 以及前面20行.
grep - C 20:匹配出来关键字, 以及前后面各20行.

查看端口是否被占用:lsof/netstat

  1. lsof -i:80
  2. netstat -anp|grep 80

这两种方法, 相对来说, lsof -i:用的比较多. netstat -an用的比较少, 因为更长
其中, netstat -lntup 和 netstat -anp


配置相关

CentOS7.0

小知识:
为什么自带的数据库变成了mariaDB而不是之前的MySQL.
是因为Oracle收购了Sun公司之后, 除了JAVA,还有MySQL的软件归属权都发生了变化.
照理说, 开源软件即使是所属公司发生改变, 该用还是可以用.
重点在于Oracel公司起家是做数据库的, 和MySQL存在一定的利益冲突.
为了避免MySQL可能出现的问题. 开源界发生了一些变化:

  • MySQL原作者重新开发并开源新数据库软件,MariaDB.可完全兼容MySQL.
  • CentOS7开始不再以MySQL作为默认数据库

创建用户

useradd -m [username]
passwd [username]

为普通用户分配root权限

为普通的用户赋予root权限的方式有三种.

  1. 改用户权限(决定是否可以直接更换角色为root)
    没有该项设置的时候, 该用户是压根无法请求root权限的. 设置了之后, 可以通过命令的方式切换成root用户

/etc/sudoers

root ALL=(ALL) ALL
增加

<用户名>    ALL=(ALL)       ALL
# <用户名>    ALL=(ALL)       NOPASSWD:ALL

这个时候, 对应的用户已经拥有的root权限. sudo -i命令来开启权限.
其中第二行的NOPASSWD, 就是在原本的基础上免密, 在sudo -i的时候要不要输入密码.

  1. 改用户组
    /etc/sudoers
# %wheel  ALL=(ALL)       ALL

如果注释状况下, 就把注释取消掉.
如果没有注释, 刚修改为

%wheel  ALL=(ALL)  ALL
usermod -g root <用户名>
  1. 改用户ID
    /etc/passwd
    找到对应自己帐号的信息, 把第3个字段(x后)改为0
root:x:0:0:root:/root:/bin/bash
<用户名>:x:1000:1000::/home/<用户名>:/bin/bash

网卡设置

网卡文件所在目录为

/etc/sysconfig/network-scripts

之前的网卡文件为:

ifcfg-eth0 CentOS 7之前
ifcfg-ens33 CentOS 7及之后

配置文件参数:

  • IPADDR(IP 地址)=192.168.10.10
  • NETMASK(子网掩码)=255.255.255.0
  • GATEWAY(网关地址)=192.168.10.1
DEVICE=ens33
TYPE=Ethernet
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.3.25
NETMASK=255.255.255.0
GATEWAY=192.168.3.254
DNS1=192.168.99.42

更改完配置文件之后, 重启网卡

service network restart

测试网卡工作是否正常

ping 192.168.0.1
ping www.baidu.com
# 修改配置文件后重载
nmcli connection reload
# 激活连接 由其配置文件 ifcfg-ens33, 则填ens33
nmcli connection up ens33

时间相关

设置时区

CentOS7加入命令timedatectl

timedatectl set-timezone Asia/Shanghai

Linux和Windows时差问题

硬件时间是一样的.
Linux 把硬件时间看作是 UTC时间. 会把时间 进行 +8 处理
Windows 把硬件时候看作是 localtime. 和Bios上一样.

处理方式二选其一

linux处理方式(改时间为本地时间)

timedatectl set-local-rtc 1 --adjust-system-clock

Windows处理方式(改时间为UTC时间)

Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1

posted @ 2021-01-30 21:47  Jrri  阅读(73)  评论(0编辑  收藏  举报