RH124-RHEL7学习笔记

linux 基础概念理解不准确,重新学习RH三教程

1 Accessing the Command Line/进入命令行

shell是什么:一个执行字符串命令的解释器。bash是一种shell,shell是一个位于操作系统内核和用户界面的接口,负责用户安全方面的于内核通信。
terminal是什么:为shell提供提供输出显示,键盘输入的接口
command是一个可执行程序,option调节程序行为,argument指定运行对象。

1
2
3
4
5
6
7
date
passwd
file
head
tail
wc
history # !+数字,执行曾经执行的某条命令,!+string,匹配最近执行的某条命令并执行

命令行编辑

1
2
3
4
5
6
ctrl + a
ctrl + e
ctrl + u
ctrl + k
ctrl + r
esc+.#拷贝上一命令的argument

2 Managing Files from the Command Line

目录树 文件分类可分为静态文件、动态文件、持久文件、运行时文件

1
2
3
4
5
6
7
8
9
/usr #安装的程序
/etc #系统配置文件目录
/var #动态文件
/run #运行时文件,关机清空
/home #用户数据目录
/root /tmp /boot #root目录、临时文件、开机启动文件
/dev #设备文件
/usr/bin #常规用户命令
/usr/sbin #root用户命令

命令

1
2
3
ls -R #列出有权限的文件
cd - #导航到上一个前一个位置
cd #到达用户home目录

file management commands

Activity Single source Multiple source
Copy file cp file1 file2 cp file1 file2 file3 dir
Move file mv file1 file2 mv file1 file2 file3 dir
Remove file rm file1 rm -f file1 file2 file3
Create directory mkdir mkdir -p par1/par2/dir
Copy directory cp -r dir1 dir2 cp -r dir1 dir2 dir3 dir4
Move directory mv dir1 dir2 mv dir1 dir2 dir3 dir4
Remove directory rm -r dir1 rm -rf dir1 dir2 dir3

Barce expansion

1
2
3
4
5
echo {Sunday,Monday,Tuesday,Wednesday}.log
echo file{1..3}.txt
echo file{a,b}{1,2}.txt
echo file{a{1,2},b,c}.txt
#echo 换为 touch 就能创建一系列文件

单引号中不能写变量,双引号中可以

1
2
3
4
echo "will variable $host evaluate to $(hostname)?"
will variable desktopX evaluate to desktopX?
echo 'will variable $host evaluate to $(hostname)?'
will variable $host evaluate to $(hostname)?

3 null

4 Create Viewing Editing text file

Usage Explanation Chineses
&>file combine stdout and stderr to one file 把标准输出和标准错误输出结合到一起重定向到文件
>>file 2>&1 combine stdout and stderr,append to current file content 把正常和错误输出结合在一起并附加到当前的文件中。

tee 拷贝输出结果,重定向到文件或屏幕

VIM
vimtutor,阅读vim手册

vim有4种模式 1-command mode、2-edit mode、3-visual edit mode、4-extended command mode。
1->2 i 2->1 Esc,1->3 v 3->1 v,1->4 : 4->1 Enter.

1 模式下命令: x 删除选定字符 ,u当前行修改 ,A 在行末新增内容,

5 Managing Local Linux users and groups

chage 查看或修改用户密码策略

6 文件系统权限

chwon user:group file
umask 权限掩码,设置用户新建文件默认权限

7 监控和管理linxu进程

sleep 10000 & running a job in the background
killall pkill
pgrep
监控系统

1
grep "model name" /proc/cpuinfo |wc -l #cpu核数

8 控制服务和守护进程

以前1进程为initd 现在大多数系统1进程为systemd
systemctl status name.service
systemctl list-unit-files –type=service #查看

9 配置和加固ssh服务

10 分析和存储日志

日志系统配置文件
/etc/rsyslog.d/
日志分析工具 journalctl
日期和时间设定

11 管理网络

网卡命令规则
enp2s0 ,en=ethernet interfaces,wl=Wlan interfaces,ww=wwan interfaces,o=onboard,s=hotplug solt,p=pci,后面的数字表斯
常用命令

1
2
3
4
5
6
7
[app@localhost ~]$ ip addr show ens160
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:50:56:bf:71:0c brd ff:ff:ff:ff:ff:ff
inet 192.168.12.188/24 brd 192.168.12.255 scope global ens160
valid_lft forever preferred_lft forever
inet6 fe80::250:56ff:febf:710c/64 scope link
valid_lft forever preferred_lft forever

1
2
3
4
5
6
7
[app@localhost ~]$ ip -s link show ens160
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
link/ether 00:50:56:bf:71:0c brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
2595014507 32474768 0 9497755 0 77
TX: bytes packets errors dropped carrier collsns
1004021853 1743158 0 0 0 0
1
2
3
4
[app@localhost ~]$ ip route
default via 192.168.12.254 dev ens160
169.254.0.0/16 dev ens160 scope link metric 1002
192.168.12.0/24 dev ens160 proto kernel scope link src 192.168.12.188

网络路径排查

1
2
3
4
5
6
[app@localhost ~]$ tracepath 192.168.13.1
1?: [LOCALHOST] pmtu 1500
1: 192.168.12.252 0.571ms
1: 192.168.12.252 0.658ms
2: 192.168.13.1 0.832ms reached
Resume: pmtu 1500 hops 2 back 2

端口和服务排查

1
2
3
4
5
6
7
8
9
10
11
12
[app@localhost ~]$ ss -ta
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:ssh *:*
LISTEN 0 100 127.0.0.1:smtp *:*
ESTAB 0 0 192.168.12.188:ssh 192.168.12.117:55057
ESTAB 0 0 192.168.12.188:ssh 192.168.1.172:49398
ESTAB 0 0 192.168.12.188:ssh 192.168.12.75:62967
ESTAB 0 0 192.168.12.188:ssh 192.168.12.123:58675
ESTAB 0 0 192.168.12.188:ssh 192.168.12.56:25780
LISTEN 0 128 :::http :::*
LISTEN 0 128 :::ssh :::*
LISTEN 0 100 ::1:smtp :::*

12 在系统间归档和拷贝文件

tar参数

1
2
3
4
5
6
7
8
9
-c
-t
-x
-f
-v
#压缩参数
-z
-j
-J

系统间传输文件scp

系统间同步文件rsync

13 安装和升级软件包

1
2
3
4
5
6
7
8
9
10
yum repolist
yum list yum *
yum list installed
yum grouplist
yum search all 'web server'
yum info httpd
yum provides /var/www/html
yum install ,update,remove
yum group list
yum group install "name"
1
2
3
4
5
rpm -q yum
rpm -q -p
rpm -q -f /etc/yum/repos.d
rpm -q -c zabbix-agent #查找zabbix-agent的配置文件
rpm -q -p pakage -i #安装包信息

14 linux文件系统

1
2
3
4
5
blkid #查看各分区文件系统
ln file1 file2 #创建hardlink
ln -s file1 file2 #创建softlink ,快捷方式
locate #返回符合内容的文件或路径,-i -n updatedb,忽略大小写、限制返回条目数、更新数据库
find # -name -iname -user -group -uid -gid -perm -size