Linux - 用户与组-四个环境变量配置文件-营救模式

目录

1.四个环境变量配置文件

2.scp命令

3.单引号和双引号的区别:

4.who,w命令

5.last 和 lastlog命令

6.如何将已经登录在系统里的用户踢出系统?并且如何防止他再次登录系统?

7.如何知道黑客有没有在你的电脑里面新建了可疑用户?

8.如何知道某些用户的密码进行了修改?

9.管道和重定向的区别:

10.   . echo.sh 和 bash echo.sh的区别

11. 启动bash的两种情况

12.营救模式:

 13.linux手动新建用户


1.四个环境变量配置文件

/etc/profile :配置全局环境变量,影响所有用户

~/.bash_profile : 配置个人环境,影响一个用户

/etc/bashrc : 配置全局的别名或者shell选项,影响所有用户

~/.bashrc 配置个人别名或者shell选项,影响一个用户

这四个文件作用就是定义用户初始化的环境变量

/etc 下面的这两个文件会影响所有用户

/etc/profile

/etc/bashrc

#################################

例:

1.你编写了一个脚本,sc.sh 或者 sc.py 所有的用户登录的时候都运行

vim /etc/profile

bash /lianxi/sc.sh

python3 /lianxi/sc.py

#################################

2.修改PATH变量的值,让所有用户都生效

安装了一个软件 zabbix,nginx 让所有用户的PATH里面都添加这两个软件的sbin 目录的路径

/usr/local/zabbix/sbin

/usr/local/nginx/sbin

vim /etc/bashrc

PATH=$PATH:/usr/local/zabbix/sbin:/usr/local/nginx/sbin

##################################

~/ 下面两个文件只会影响用户,在谁的家目录下面就影响谁

.bash_history 文件保留用户上次注销前使用的历史命令

.bash_logout 文件,用户每次退出登陆时候会执行这个文件

默认只保留1000条,可以在/etc/profile文件里面修改

#################################

2.scp命令

作用:这个命令可以远程复制文件或者文件夹

2台电脑之间复制,依赖ssh服务,只能在linux之间使用

################################# 

3.单引号和双引号的区别:

单引号里面特殊字符没有特殊作用

双引号部分字符还是有特殊作用

例如 :$ 和 !

 #################################

4.who,w命令

作用:查询已经登录到主机的用户信息

who其实是只取了w的前三个字段

15:33:17 代表当前时间

up 55min 代表已经开机时间

load average: 0.00, 0.01, 0.05 代表linux系统 1分钟 5分钟 15分钟的cpu负载情况

默认在就绪队列里面 不超过5,可以理解为cpu能够处理过来

user 代表 用户

tty代表终端类型(terminal type),最多6个,tty1-tty6

使用 ctrl + Alt +F1-F6 创建 / 切换不同终端

tty类型的才是 “正式员工”,是linux里面真正的终端,是本地登录的

如果 一个终端卡住了,可以再开一个终端

提高了工作效率

使用 xshell 连过来的类型是 pts类型的

pts类型的是仿终端类型,是”临时工“ 远程登录的

from 代表是从哪里登录过来的

如果没有ip地址代表是从本地登录的

有ip地址代表是远程登录过来的

LOGIN@ 表示登录进入系统的时间

IDLE JCPU PCPU 是与cpu有关的

WHAT 表示正在做什么

注意:w命令看不到 使用 su - 登录过来的用户

###########################################

5.last 和 lastlog命令

last命令查看最近有哪些用户登录过

lastlog根据/etc/passwd 里面的文件里面的用户,一个一个查看哪些用户登录过,哪些用户没有登录过 --》/var/log/lastlog 日志文件

########################################

6.如何将已经登录在系统里的用户踢出系统?并且如何防止他再次登录系统?

1.查找出相关的bash进程,杀死相关进程

 

2.踢出可疑的root登录用户,马上修改密码

3.限制ip地址登录

iptables

hosts.deny

hosts.allow

4.启动秘钥认证

########################################

7.如何知道黑客有没有在你的电脑里面新建了可疑用户?

diff 命令

先备份passwd文件 检查是否有可疑用户时, 与 /etc/passwd文件对比,有差异就有可疑用户

 

 #################################

8.如何知道某些用户的密码进行了修改?

比较 /etc/shadow文件

先备份一个 shadow文件,与原文件进行比较,有不同 某些用户密码就进行·了修改

##########################################

9.管道和重定向的区别:

管道是在两个进程之间进行通信

重定向还是在一个进程里面,只是改变了输出方式而已

例:管道实现的是 cat 进程和grep进程之间的通信

重定向其实做的其实还是grep的工作,将原本输出到屏幕的信息重定向输出到abc.txt文件中去了,还是在grep进程里面做的事情

##########################################

10.   . echo.sh 和 bash echo.sh的区别

以. echo.sh 执行脚本是在当前进程执行脚本

以 bash echo.sh 是产生一个子进程来执行脚本

在当前bash里面可以使用当前bash里面的变量

 

##########################################

11. 启动bash的两种情况

启动bash的时候,有两种情况

bash

登录bash,这几个文件都会执行

登录bash

输入用户名和登录密码登录linux系统的时候产生的bash

初始化脚本先执行 /etc/bash_profile

再执行 ~/.bash_profile

然后 ~/.bashrc

最后 /etc/bashrc

非登录式bash

直接输入bash命令,产生的bash

初始化脚本会执行~/.bashrc --> /etc/bashrc

##########################################

12.营救模式:

linux系统启动不了了,需要其他方式来营救

删除了 passwd 和 shadow 文件是否还能登陆?

[root@localhost test]# rm -rf /etc/passwd /etc/shadow

删除了这两个文件。我们是无法正常启动linux系统的

其实我们linux系统对两个文件都有备份

/etc/passwd-

/etc/shadow-

###########

自己的虚拟机无法启动,我们需要使用其他方式来启动系统

1.先关机,开机设置从光盘启动

 

虚拟机里面有开机进入固件 --》 BIOS

进入boot选项

removable device 可移动设备

hard device 硬盘

cdrom 光驱

network 从网络启动

上下左右方向键 --》移动

回车就是选中

 

将cd-ROM Drive 调到最前面去 --》使用 + 号调整到第一个位置

F10保存并且重启

选择troublesbooting 故障处理 --》rescue 营救模式

 

 

 按回车进入营救模式,然后输入1,继续回车

 

 输入 chroot /mnt/sysimage 让光盘里面的系统按照原来硬盘里面的文件系统去挂载分区,加载原来系统里面的内容

 

然后将备份文件复制到/etc目录下面

cp /etc/passwd- /etc/passwd

cp /etc/shadow- /etc/shadow

这样我们就将原来的文件复原了

 

然后再 exit 退出 退出切换到原来系统的bash

reboot 重启

 

 按照开头的方法,用+号再次将 Hard Drive调到最前面

 然后我们就能正常登陆了

 

 ##########################################

 13.linux手动新建用户

useradd命令在后台做了哪些工作?

 

手工新建一个用户:

########################

用户名叫wangchen uid 5566 gid 5566

组的名字叫 shanxi

注释 sanchuang student

shell : /bin/bash

家目录: /home/wangchen

#######################

步骤:

1.修改/etc/passwd文件

直接 vim /etc/passwd文件,在末尾添加

wangchen:x:5566:5566:sanchuang student:/home/wangchen:/bin/bash

2.修改/etc/shadow文件,在末尾追加

wangchen:!!:19061:0:99999:7:::

3.修改 /etc/group

wangchen:x:9920:

4.新建家目录

mkdir /home/wangchen

5.复制 /etc/skel 环境配置文件到家目录下面

cp /etc/skel/.bash* /home/wangchen/

6.创建邮箱文件

touch /var/spool/mail/wangchen

7.验证wangchen用户是否可以su登录

为什么不能新建文件夹?

因为 /home/wangchen 是root用户新建的,所以/home/wangchen 属于root用户

别的用户是不能新建文件的

拥有者:user

属组:group

过户:将文件的属组或者属主修改为别的用户或者组 --》 chown

chown : 修改拥有者

3类人

自己 user

小组成员 group

其他人 pthers

3种权限

r 读 read 4

w 写 write 2

x 执行 execute 1

8.使用root用户,去修改/home/wangchen文件夹所有者为 wangchen 组为shanxi

修改属组和属主

[root@localhost lianxi]# chown -R wangchen:shanxi /home/wangchen

现在就可以在/home/wangchen目录下面新建文件了

然后还要修改权限,让其他用户无法访问wangchen的家目录

修改文件权限,知识允许属主可以读写执行,其他人和组都没权限

使用chmod 700 /home/wanggchen命令

9.修改邮箱的所有者

注意:除了/home/wangchen是root用户创建的还有邮箱也是root用户创建的,所以我们也要修改属主

[root@localhost lianxi]# chown wangchen:mail wangchen

 这样我们就完成了手动新建一个用户的全部流程,

这体现了linux系统里面一切皆文件的思想

posted @   JackLovey3  阅读(7)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示