Linux系统第二章文件和用户管理

一文件管理

1.linux目录结构:
/目录结构: FSH (Filesystem Hierarchy Standard)
[root@qianfeng ~]# ls /
bin dev lib media net root srv usr
boot etc lib64 misc opt sbin sys var
cgroup home lost+found mnt proc selinux tmp
2.图示:
在这里插入图片描述
3.目录功能:
bin 普通用户使用的命令 /bin/ls, /bin/date
sbin 管理员使用的命令 /sbin/service
dev 设备文件 /dev/sda,/dev/sda1
root root用户的HOME
home 存储普通用户家目录

tmp 临时文件(全局可写:进程产生的临时文件)
var 存放的是一些变化文件,比如数据库,日志,邮件…

设备(主要指存储设备)挂载目录
media 移动设备默认的挂载点
mnt 手工挂载设备的挂载点

etc 配置文件(系统相关如网络/etc/sysconfig/network
proc 虚拟的文件系统,反映出来的是内核,进程信息或实时状态 ,硬件的状态

usr 系统文件,相当于C:\Windows
/usr/local 软件安装的目录,相当于C:\Program

boot 存放的系统启动相关的文件,例如kernel,grub(引导装载程序)

lib 库文件Glibc
lib64 库文件Glibc

lost+found fsck修复时,存储没有链接的文件或目录

二文件管理命令

1.创建文件:命令 空格 文件名,后缀 touch 文件名字
示例1:创建一个文件:[root@localhost ~]# touch file1.txt
查看文件:[root@localhost ~]# ls
2.创建目录:mkdir 空格 路径和目录名
选项: mkdir -p 父系,当创建目录没有上一级时,自动创建
示例:[root@localhost ~]# mkdir dir1
查看目录:[root@localhost ~]# ls
目录的类型是d 文件的类型是-
3.复制
语法
命令 参数1 参数2
cp 源文件路径 目标文件夹
选项
cp -r 源目录 目标目录
示例1
[root@localhost ~]#cp file1.txt dir1/
[root@localhost ~]#ls dir1/
看到复制的文件即可
4.移动
语法
命令 参数1 参数2
mv 源文件路径 目标文件路径
示例1
[root@localhost ~]#mv file3.txt dir1/
[root@localhost ~]#ls
5.删除
语法
rm -rf 文件或目录的路径
示例1
[root@localhost ~]#rm -rf file5.txt file7.txt
[root@localhost ~]#ls
6.查看文件内容
使用图形界面,创建一个记事本。并写入大量内容。/root/file1.txt
cat全部
cat /root/file1.txt
more翻页
more /root/file1.txt
head头部
[root@qianfeng ~]# head /root/file1.txt
tail尾部
[root@qianfeng ~]# tail /root/file1.txt
grep过滤关键字
针对文件内容进行过滤
语法:grep 关键字 文件名
grep ‘abc’ /root/file1.txt
前提是文件中要有abc哦
7.修改文件内容
1.文件编辑器2
vi, vim
VI 的三个模式

			可视模式,按V进入,小v光标自己选取,大V直接选取一行,YYp复制粘贴即可。

ctrl+V,上下选择,然后可以ctrl+> 进行整体缩进。
命令模式
光标定位(了解)
光标定位
hjkL //上下左右
0 $ //行首行尾
gg G //页首页尾
3G 进入第三行
/string (n N 可以循环的) //查找字符,按n键选下一个(重要)
文本编辑
文本编辑
yy 复制
dd 删除
p 粘贴
u undo撤销
进入其它模式
进入其它模式
a 进入插入模式
i 进入插入模式
o 进入插入模式
A 进入插入模式

: 进入末行模式(扩展命令模式)
v 进入可视模式
ESC 返回命令模式
扩展命令模式
保存退出

:w 保存
:q 退出
:wq 保存并退出
查找替换

:范围 s/原内容/新内容/全局
:1,5 s/root/qianfeng/g 从1-5行的root 替换为qianfeng
另存为

:w file9.txt 另存为 file9.txt
:set nu 设置行号
:set nonu 取消设置行号

:set list 显示控制字符
8.改变目录

cd 绝对路径
ls 列出目录当中的内容
举例说明
ls /
路径分为
绝对
从根开始描述路径。
相对
当前
./
不输入任何路径
上一级
…/

二用户和组管理

1.用户:
==创建用户 未指定选项==
[root@qianfeng ~]# useradd user01

[root@localhost ~]# id user01
uid=1001(user01) gid=1001(user01) 组=1001(user01)
用户编号=具体数字(用户名) 组编号=具体数字(组名) 组=组ID(成员名字)
小结:
如果创建一个用户时,未指定任何选项,系统会创建一个和用户名相同的组作为用户的Primary Group.
==创建用户 指定选项==
[root@qianfeng ~]# useradd user02 -u 1503
创建用户usr02,指定uid
[root@qianfeng ~]# useradd user03 -d /user03
创建用户user03 指定家目录
==删除用户========
[root@qianfeng ~]# userdel -r user02
==用户密码========
方法一:root修改其他用户(alice)密码
[root@qianfeng ~]# passwd alice
方法二:用户(zhuzhu)登录,自己修改密码。
[zhuzhu@qianfeng ~]$ passwd
==其它选项管理=======
[root@qianfeng ~]# usermod -s /sbin/nologin user02
修改登录SHELL
2.组成员管理:
查看用户原先信息
[root@localhost ~]# id user02
uid=1002(user02) gid=1002(user02) 组=1002(user02)
将用户追加到hr组
语法
usermod -aG 组名 用户名
[root@qianfeng ~]# usermod -aG hr user02
再次查看用户信息
[root@localhost ~]# id user02
uid=1002(user02) gid=1002(user02) 组=1002(user02),1005(hr)
将用户移除组(扩展)
语法
gpasswd -d user02 hr
3.用户组:
用户:
==创建用户 未指定选项==
[root@qianfeng ~]# useradd user01

[root@localhost ~]# id user01
uid=1001(user01) gid=1001(user01) 组=1001(user01)
用户编号=具体数字(用户名) 组编号=具体数字(组名) 组=组ID(成员名字)
小结:
如果创建一个用户时,未指定任何选项,系统会创建一个和用户名相同的组作为用户的Primary Group.
==创建用户 指定选项==
[root@qianfeng ~]# useradd user02 -u 1503
创建用户usr02,指定uid
[root@qianfeng ~]# useradd user03 -d /user03
创建用户user03 指定家目录
==删除用户========
[root@qianfeng ~]# userdel -r user02
==用户密码========
方法一:root修改其他用户(alice)密码
[root@qianfeng ~]# passwd alice
方法二:用户(zhuzhu)登录,自己修改密码。
[zhuzhu@qianfeng ~]$ passwd
==其它选项管理=======
[root@qianfeng ~]# usermod -s /sbin/nologin user02
修改登录SHELL
==组成员管理========
查看用户原先信息
[root@localhost ~]# id user02
uid=1002(user02) gid=1002(user02) 组=1002(user02)
将用户追加到hr组
语法
usermod -aG 组名 用户名
[root@qianfeng ~]# usermod -aG hr user02
再次查看用户信息
[root@localhost ~]# id user02
uid=1002(user02) gid=1002(user02) 组=1002(user02),1005(hr)
将用户移除组(扩展)
语法
gpasswd -d user02 hr
用户组:
操作
创建一个hr组
[root@qianfeng ~]# groupadd hr
查看
[root@localhost ~]# tail -3 /etc/group
user03❌1003:
user04❌1004:
hr❌1005:
说明该组已经 创建,但和任何用户都没有关系。
创建组net01,并指定gid 1007
[root@qianfeng ~]# groupadd net01 -g 1007
查看
[root@qianfeng ~]# grep ‘net01’ /etc/group
//查看/etc/group中组net01信息
删除组
[root@qianfeng ~]# groupdel net01
查看
[root@localhost ~]# tail -3 /etc/group
user03❌1003:
user04❌1004:
hr❌1005:
分类
基本组
随用户创建,自动创建的同名组
附加组
用户加入的其他组。
4.提权:
永久提权Switching users with su
[user01@localhost ~]$ id user01
uid=1003(user01) gid=1003(user01) 组=1003(user01)
[user01@localhost ~]$ whoami
user01
[alice@qianfeng ~]$ useradd u1
-bash: /usr/sbin/useradd: 权限不够
[alice@qianfeng ~]$ su - root
password:
[root@qianfeng ~]# useradd u1
成功
临时提权Running commands as root with sudo
sudo简介
将当前用户切换到超级用户下
然后以超级用户身份执行命令,执行完成后,直接退回到当前用户。
具体工作过程如下:
当用户执行sudo时,系统会主动寻找/etc/sudoers文件,判断该用户是否有执行sudo的权限
–>确认用户具有可执行sudo的权限后,让用户输入用户自己的密码确认
–>若密码输入成功,则开始执行sudo后续的命令
sudo配置文件语法
##语法
## user MACHINE=COMMANDS
## 用户 登录的主机=(可以变换的身份) 可以执行的命令
目标
创建普通用户xulei,使其具有sudo特权
示例1
观察授权信息
以root身份,授权普通用户xulei
[root@qianfeng ~]# vim /etc/sudoers
系统的授权文件
%wheel ALL=(ALL) ALL
允许wheel用户组 不输入密码 使用所有命令
将用户加入到组
创建xulei账号并加入组
[root@qianfeng ~]# useradd xulei -G wheel
查看xulei信息
[root@qianfeng ~]# id xulei
uid=1001(xulei) gid=1001(xulei) 组=1001(xulei),10(wheel)
切换用户登录
用户需要密码
# passwd xulei
切换用户xulei登陆
该用户一定要注销
使用sudo提权
[xulei@qianfeng ~]$ useradd gougou10
-bash: /usr/sbin/useradd: 权限不够
[xulei@qianfeng ~]$ sudo useradd gougou10
[xulei@qianfeng ~]$ id gougou10
uid=1002(gougou10) gid=1002(gougou10) 组=1002(gougou10)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值