Linux第03天

时间:2024-06-23 13:07:38
Linux 第03天

1.Linux帐号和ACL权限管理
1.帐号和用户组
1.1 用户标识符————UID(root为0 系统用户为1~499 普通用户为500~65535)
1.2 用户组标识符————GID()
1.3 用户帐号信息文件————/etc/passwd
hadoop:x:500:500:hadoop:/home/hadoop:/bin/bash
hadoop为用户名 x为密码加密符 500为UID
500为GID hadoop为注释信息 /home/hadoop为用户家目录
/bin/bash为shell信息
1.4 用户密码信息文件————/etc/shadow
hadoop:$1$0HZuNsCv$URJuS1MRpjafAVcmYO0bI1:15957:0:99999:7:::
hadoop为用户名
$1$0HZuNsCv$URJuS1MRpjafAVcmYO0bI1为加密后的密码信息
15957为密码有效日期时间
0为密码最小使用天数
99999为密码最大使用天数
7为最大天数到期后警告天数
2.帐号管理
2.1 useradd命令————添加用户
useradd -p "用户名" 用户名 (创建一个密码跟用户名一样的用户)
2.2 usermod命令————修改用户信息(含密码)
usermod -s /bin/bash 用户名(修改用户的shell信息)
2.3 userdel命令————删除用户
userdel -r 用户名(-r 会删除用户相关缓存和家目录)
2.4 passwd命令————修改用户信息(仅限密码)
passwd 用户名
2.5 chage命令————修改帐号信息(不含密码)
chage -d 2015-10-1 tom (修改tom最近设置密码时间为2015-10-1)
2.6 su命令————用户身份切换
su - 用户名
2.7 sudo命令————特权用户切换
sudo 用户名
3.组管理
3.1 groupadd命令————添加组
如:groupadd 组名
3.2 groupdel命令————删除组
如:groupdel 组名
3.3 groupmod命令————修改组
如:groupmod -n 新组名 旧组名
3.4 groups命令————查看用户所属组(一个用户可存在于一个或多个组)
如: groups root
3.5 gpasswd命令————操作用户组
如: gpasswd -a tom test(即把tom用户添加到test组中)
gpasswd -d tom test(即把tom用户从test组中删除)
3.6 newgrp命令————临时将一个组转换成用户的主组
如: newgrp test(即将当前登陆用户的主组修改为test)
4.ACL————访问控制列表
4.1 setfacl命令————设置权限
setfacl -m u:hadoop:rw- xx文件(为hadoop用户对xx文件设置rw权限,会覆盖原来权限)
setfacl -m g:test:rw- xx文件(为test组对xx文件设置rw权限,会覆盖原来权限)
setfacl -x u:hadoop xx.sh(取消hadoop用户对xx文件的权限)
4.2 getfacl命令————获取权限
getfacl xx文件(获取xx文件的权限明细信息)
5.用户shell命令
5.1 查询用户
who命令————查看当前登陆用户
last命令————查看历史登陆信息
lastlog命令————查看所有用户的登陆信息
5.2 用户对谈
write命令————发送消息给用户化
write 用户2(即表示当前用户发送信息给用户2,输入消息以ctrl+d为结束符)
mesg命令————信息收发状态
mesg y(开启当前用户收信息)
mesg n(关闭当前用户收信息,如果消息是root发送的即使关闭也能收到)
wall命令————广播(所有人都能收到)
wall 广播内容 2.磁盘配额和高级文件系统管理
2.1 磁盘配额
1.quotacheck命令————设置磁盘配额功能(默认不开启,注意:分区需在挂载时设置是否以配额方式挂载才能设置该功能)
quotacheck -cug /dev/sda3(即对sda3这个分区设置关于用户和用户组的磁盘配额功能 其中u表示用户 g表示用户组)
2.quotaon命令————启动磁盘配额服务
3.quotaoff命令————关闭磁盘配额服务
4.edquota命令————配置磁盘配额功能信息
edquota -u 用户1(配置用户1磁盘配额信息)
其中配额信息如下:
1.文件系统
2.文件大小(该用户已有文件)
3.软配额(软限制,满足即通知)(已有文件大小,单位是Kb,0为无限)
4.硬配额(硬限制,满足即不能再创建文件)(已有文件大小,单位是Kb,0为无限)
5.文件个数(总文件个数)
6.软配额(软限制,满足即通知)(文件个数,0为无限)
7.硬配额(硬限制,满足即不能再创建文件)(文件个数,0为无限)
5.quota命令————查看配额设置信息
quota -u 用户1(查看用户1的配额设置信息)
2.2 高级文件系统管理
1.RAID——阵列
RAID0————长度相加(无备份,至少两块)
RAID1————镜像备份(有备份,至少两块)
RAID5————校验和(有备份,至少三块)
2.LVM——逻辑虚拟卷 动态扩展或缩小分区空间 3.计划任务
3.1 仅执行一次任务
atq命令————查看计划任务
at命令————设置计划任务(仅一次)
at 10302015(MMDDYYYY) 回车
任务1
任务2
任务3(ctrl+d为结束符)
atrm命令————删除计划任务
atrm 任务序号
/etc/at.deny 文件出现的用户没权限运行at命令
/etc/at.allow 文件出现的用户有权限运行at命令(优先级allow > deny)
3.2 循环执行任务
crontab命令————设置计划任务(循环周期性执行)
crontab -l (查看当前用户计划任务)
crontab -l -u 用户1(查看用户1计划任务)
crontab -e 回车
编辑任务(跟vim编辑器使用一致,一个任务可多条命令)
任务格式:分 时 天 月 周 命令内容(*为每一)
0 19 * * * date(每天19时执行date命令)
0 19 * * 1-5 date(每周1-5每天19时执行date命令)
crontab -r (删除计划任务)
/etc/crontab.deny 文件出现的用户没权限运行crontab命令
/etc/crontab.allow 文件出现的用户有权限运行crontab命令(优先级allow > deny)
run-parts命令————运行某个目录里面的所有脚本
run-parts 目录名(注意需有可运行权限)
3.3 可唤醒执行任务————本来应该按计划执行的因为关机而没有执行到的任务,开机后重新执行
/etc/anacrontab 可唤醒执行任务配置文件 4.程序管理和SELinux
4.1 工作管理
jobs命令————查看后台运行工作
ps aux命令————查看所有运行进程
bg命令————设置后台运行程序
bg 序号(设置后台已停止运行的进程继续后台运行)
fg命令————设置前台运行程序
fg 序号(设置后台进程前台运行)
&命令————后台运行标识(关闭控制台不运行)
firefox &(将firefox这个进程后台启动运行)
nohup命令————后台运行(关闭控制台也运行)
nohup 命令1
kill命令————杀死进程
kill -9 %1(杀死后台标识为1的进程)
kill -9 1(杀死进程标识为1的进程,注意跟前者区分)
4.2 进程管理
ps命令————当前shell的所有进程
pidof命令————查看某个进程pid(即进程标识号)
pidof ping
killall命令————根据进程名杀死进程
killall -9 进程名
renice命令————更改已经正在运行的进程优先级
renice 优先级数 进程pid
其中优先级数取值范围是:-20~19 越大执行优先级越低 默认值为0
nice命令————更改还未运行的进程优先级
nice -n -19 cat(cat命令以-19优先级来运行)
free命令————查看内存资源使用信息
uptime命令————查看系统资源负荷信息
vmstat命令————查看系统IO信息
vmstat 3 6(即3秒钟执行一次vmstat,总共执行6次)
4.3 SELinux————可以理解为进程设置权限
1.运行模式
强制模式————不满足条件时警告并阻止运行
允许模式————不满足条件时警告但可运行
关闭模式————不启用selinux
getenforce命令————获取当前模式状态
setenforce命令————设置模式
setenforce 1(强制模式)
setenforce 0(允许模式)
/etc/selinux/config 默认设置文件(重启系统后也生效)
2.启动、关闭、查看
3.网络服务运行
4.所需的服务
5.策略和规则 5.系统服务和daemon
1.daemon和service
service 对外提供的服务
daemon 一直在系统中运行的进程
分类:独立服务和非独立服务(super daemon)
服务于端口一一对应 即服务使用端口来表示 /etc/services 可查看相关服务端口对应关系
2.配置和启动daemon
独立服务启动文件: /etc/init.d/下的所有服务
独立服务启动方式(以下两种方式均可):
1.service 服务名 restart
2./etc/init.d/服务名 restart
非独立服务启动文件:/etc/xinet.d/下的所有服务
非独立服务启动步骤:
1.设置配置文件 /etc/xinetd.conf
2.重启xinetd服务 service xinetd restart(由此可见xinetd是独立服务)
3.查看系统服务
netstat命令————查看正在运行服务
netstat -nutlp(查看当前正在监听的服务)
chkconfig命令————查看系统启动服务
chkconfig --list
setup命令
ntsysv命令 6.日志文件
6.1 事件级别
1.emerg 恐慌状态
2.alert 紧急状态
3.crit 临界状态
4.err 其他错误状态
5.warning 警告消息
6.notice 通知事项
7.info 信息消息
8.debug 调试
(由上往下,级别越低)
6.2 日志配置文件
/etc/syslog.conf
6.3 日志格式
时间 地点 人物 事件
6.4 日志保护的两种方式
1.使用chattr命令设置日志文件只能增加不能减少的权限
2.配置*日志服务器(即将该主机的日志文件通过网络传输给*日志服务器)
6.5 日志备份————logrotate
1.配置文件 /etc/logrotate.conf
2.执行logrotate -f /etc/logrotate.conf
6.6 日志分析————logwatch 7.启动引导和内核模块
7.1 Linux启动流程
1.BIOS自检
2.MBR激活,找到分区表,找到boot分区
3.加载文件系统配置文件(即加载文件系统为ext3/ext4)
4.加载系统配置文件
5.加载内核到内存并初始化 (即加载系统驱动和系统模块)
6.运行系统第一个程序/sbin/init
7.init读取运行 /etc/inittab 配置文件
8.启动配置文件中的相关服务
9.加载 /etc/rc.d/rc.local 设置管理员设置的系统启动项
10.加载其他一些配置文件
7.2 内核模块
模块文件 /lib/modules/下
lsmod命令————查看系统加载模块
modinfo命令————查看某个模块的信息
modinfo 模块名
7.3 BootLoad引导器
grub文件 /boot/grub
两个stage1和*stage1_5 其中*stage1_5是文件系统类型信息
stage2存储系统内核配置信息