linux[就该这么学]学习笔记

DHCP动态管理主机地址
dhcpd服务
DHCP动态主机管理协议 基于UDP协议 仅用于局域网
DHCP中继代理技术 是多个物理网段公用一台DHCP服务器的最佳解决方案

Postfix Dovecot 收发电子邮件

Squid 部署代理缓存服务
正向代理
反向代理
ACL 访问控制

iSCSI 服务部署网络存储

OpenLDAP服务 目录服务

MariaDb mysql分支 mysql目前属于oracle,闭源

无人值守系统
PXE + DHCP + TFTP + VSftpd + Kickstart 搭建无人值守系统安装
TFTP 简单文本传输协议
syslinux 提供引导加载的服务程序

LNMP架构部署动态网站环境

git分布式控制系统

DNS域名解析服务
Bind服务 域名解析服务程序
chroot 监牢安全机制
可通过给予bind 服务 分离解析技术实现 区域访问 如: 国内用户访问北京服务器 海外用户访问海外服务器

Samba 跨系统文件共享
NFS 同系统之间的文件共享

ssh服务管理远程主机
linux系统初始化: 开机 - BIOS - 进入Boot Loader - 加载内核 - 内核的初始化 - 启动初始化进程

ps ps [参数] 查看进程状态
ps -aux
ps -aux|grep 进程名 查看特定进程
top 监视进程的活动和系统负载
pidof pidof [参数] [程序名称] 查询特定程序进程PID值
kill kill [参数] [进程PID号]
kill -9 4674 -9代表强制终止
kill -l 查看全部
killall [参数] [进程PID号] 终止特定名称的所有进程
jobs bg fg

启动服务: 如下是因为linux版本不同,命令可能不同
service start httpd
systemctl start httpd

SELinux策略

http服务:
Apache 对应 httpd yum install httpd
Vsftpd ftp服务端程序 yum install csftpd -y
ftp [参数] [ftp主机] ftp命令用于ftp服务

nmcli 网络配置工具
ss 查看你本机端口连接状态
tracepath url 查看本机到另外一台电脑经过的路由信息

远程控制服务:
sshd 服务
ssh [参数] 主机 ssh命令远程管理Linux主机
scp 在网络中安全的传输文件
scp [参数] 本地文件 远程账户@远程IP地址:远程目录
scp [参数] 远程账户@远程IP地址:远程文件 本地目录
Screen 服务 不间断会话服务 多窗口同时操作 可能需要额外安装程序包
yum install screen

Iptables Firewalld防火墙
Iptables
SNAT 源地址转换 多个内网通过一个外网上网
DNAT 目的地址转换 外网IP访问局域网内不同服务器
端口转发和流量均衡
Firewalld防火墙 运行时配置 永久配置 支持动态更新 zone区域功能概念
firewall-config 图形化工具
firewall-cmd 文本管理工具

linux物理设备以文件形式
硬盘设备由大量扇区组成,其中第一个扇区保存主引导记录
与分区表信息 单个扇区512bytes 主引导记录站 446bytes
分区表占64bytes 记录一个分区需要16bytes 所以只能4个分区
一般3个主分区 一个扩展分区 扩展分区创建逻辑分区(无限多个分区)

文件管理系统
super block 硬盘地图
inode table 记录文件权限和属性

挂载硬件设备 将硬盘等于系统文件建立联系(比如价格硬盘 通过挂载让系统识别硬盘 能访问相关硬盘和存储信息等)
mount
fdisk 操作磁盘分区等
linux可实现各种磁盘操作

用户身份与文件权限
chmod 格式 chmod [参数] 权限 文件或目录名称 用于修改文件或目录的权限
chown 格式 chmod [参数] 所属主:所属组 文件或目录名称 修改文件或目录的所属主与所属组
chattr 格式 chattr [参数] 文件 设置文件隐藏权限
lasttr 格式 lasttr [参数] 文件 显示文件隐藏权限

切换用户
su su -guohui
赋予用户临时权限
sudo sudo -i
文件控制列表
ACL : 设置指定的特定用户和用户组对某个文件的操作权限
setfacl 格式 setfacl 文件 增加或修改文件的ACL规则
getfacl 格式 getfacl 文件 显示文件的ACL规则

shell脚本:
脚本声明(#!告知系统用何种shell来解释)
脚本注释(#对可执行语句或程序功能做介绍)
可执行命令(执行的具体命令)
执行脚本的三种方法
脚本文件路径 ./Example.sh 此种方式可能因权限问题执行失败: chmod u+x Example.sh
sh脚本文件路径: sh /Example.sh
source脚本文件路径: source /Example.sh
Example.sh 脚本示例:
#!/bin/bash
#示例
pwd
ls -al
相关操作:
cat /etc/shells 查看系统可用shell解释器
echo SHELL使shell S H E L L 当 前 正 在 使 用 的 s h e l l 解 释 器 接 收 参 数 #=参数个数
0= 0 = 脚 本 名 称 1 $2 …
执行: sh Example one two 1 1 1 1

文件测试 [操作符 文件或目录] -d -e -f -r -w -x
[-d /etc/fstab] 判断是否为目录
逻辑测试 [ 表达式1 ] 操作符 [表达式2] && || ! []中表达式和括号之前必须有空格
[ USER!=root ]&&echo “user” || echo “root”  
整数值比较  [ 整数1 操作符 整数2 ]  -eq -ne -gt -lt le ge  
    [ 10 eq 10 ]  
字符串比较  [ 字符串1 操作符 字符串2 ]    =  ! -z 是否为空  
    [ -z
USER!=root ]&&echo “user” || echo “root”  整数值比较  [ 整数1 操作符 整数2 ]  -eq -ne -gt -lt le ge      [ 10 eq 10 ]  字符串比较  [ 字符串1 操作符 字符串2 ]    =  ! -z 是否为空      [ -z
String]

示例 : 获取当前系统可用内存量,并将此值赋给变量FreeMem
FreeMem=’free-m|grep cache:awk ‘{print 3}”  
解释上述语句 : free-m 查看内存使用情况 grep cache 过滤出剩余内存行  
    awk ‘{print
3}”  解释上述语句 : free-m 查看内存使用情况 grep cache 过滤出剩余内存行      awk ‘{print
3}’ 过滤只保留第三列

条件测试语句:
if for

计划任务管理:
at <时间> 安排一次性任务
atq 或 at -l 查看任务列表
at -c 序号 预览任务与设置环境
atrm 序号 删除任务

crontab 设置循环任务

命令格式:
命令名称 [命令参数] [命令对象]

man man ls 查看ls命令的相关说明-参数 用户 版本等信息
echo echo [字符串|变量]
echo sss 输出sss
echo $HOSTNAME 输出本机的名称
date date[选项][+指定格式] 可查看日期 时区 星期 上下午 一年中的第几天等
date ‘+%Y-%m-%d %H:%M:%S’
reboot 重启系统(仅root用户可用)
wget wget[参数] 下载地址 参数 包括 后台下载模式 下载到指定目录 断点续传等
elinks 纯文本浏览器 elinks [参数] 网址

uname -a 查看系统内核信息
uptime 查看系统负载情况
日常应用:watch -n 1 uptime 每秒刷新查看当前系统负载情况
free 查看当前系统内存的使用情况 格式 free [-m/-g]
who 查看当前登入主机的用户情况 格式 who [参数]
last 查看所有系统的登入记录 格式 last [参数]
history 显示历史执行过的命令 格式 history [-c] 参数-c 清空该用户在本机执行命令的历史记录
sosreport 收集系统 系统配置并诊断信息后输出结论文档

pwd 查看当前工作目录 pwd [选项]
cd 切换工作目录
ls ls [选项][文件]
ls /etc 查看目录
ls -ld /etc 查看目录的权限和树形

文本编辑命令
cat cat [选项][文件] cat 文件名 查看纯文本文件
more 查看纯文本文件(较长的)
head 查看文本的前N行 head -n 20
tail 查看文本的后N行 tail -n 20
od 查看特殊格式的文件
tr 转换文本文件中的字符
wc 统计指定文本的行数 字数 字节数 -l -w -c
cut 通过列来提取文本字符
diff 用于比较多个文本文件的差异 diff a_text b_txt

文件目录管理命令
touch touch [选项][文件] 可加参数修改访问时间 -a m d t
touch test 新建test文件
touch -d “2 days ago” test 修改访问时间是2天前

mkdir mkdir [选项] 目录
mkdir 文件夹名

cp cp [选项] 源文件 目标文件 可加参数控制是否覆盖,保留源文件
cp install.log x.log
mv mv [选项] 文件名 [目标路径|目标文件名] 移动或改名
mv aaa bbb aaa重命名 bbb
rm rm [选项] 文件 删除文件或目录
dd dd [参数] 指定大小的拷贝文件或指定转换文件

用户与组管理命令:
useradd useradd [选项] 用户名 创建新的用户
passed passed [选项] 用户名 修改用户的密码
userdel userdel [选项] 用户名 删除用户
usermod usermod [选项] 用户名 修改用户属性
groupadd groupadd [选项] 群组名 创建群组

打包压缩文件命令
tar tar [选项] [文件] 打包压缩或解压
tar -czvf 压缩名.tar.gz 文件名 打包压缩
tar -xzvf 压缩名.tar.gz 解压
文件搜索命令
grep grep [选项] [文件] 在某个文本搜索关键词
grep ectry /use/log.txt >> /root/log.txt 搜索包含entry的行并输出到log.txt

find find [查找路径] 寻找文件 操作
find /etc -name “host*” -print 查找etc下所有host开头的文件
查找用户linuxprode的文件并复制到/root/findredults 目录
find / -user linuxprode -exec cp -arf{} /root/findredults/\;

管道命令符 |
命令A|命令B|命令C ….. 前一个命令的输出当作后一个命令的输入

输入输出重定向
标准输入 (文件描述符为0) 默认从键盘输入,为0时表示是从其他文件或命令的输出
标准输出 (文件描述符为1) 默认输出到屏幕 为1时表示是文件
错误输出 (文件描述符为2) 默认输出到屏幕 为2时表示是文件
输出:命令 [2] > 标准输出重定向到一个文件中
命令 [2] >> 标准输出重定向追加到一个文件中

      输入: 命令 < 文件   将文件作为命令的标准输入
            命令 << 分届符  从标准输入中读入,直到遇见"分界符"停止

通配符
* ? [0-9] [abc]
\ (转义) ” 单引号 (转义所有的字符)
“” 变量依然生效
‘’ 反引号 执行命令语句 echo ‘uname -a’ uname命令依然执行 查看内核信息

alias 别名=命令 alias cp=”cp -i”
unalis 别名 unalias cp

设置变量 变量=变量值
WORKER=/home/log
备注:此时变量为局部变量,只有该用户可用
export export 变量名[=变量值] 可将局部变量提升为全局变量
export WORKER

PATH变量:
echo $PATH

systemctl restart network 重启网卡

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值