什么是进程
1.在Linux中,每一个程序都是有自己的一个进程,每一个进程都有一个id号
2.每一个进程都会有一个父进程!
3.进程可以有两种存在方式:前台和后台
4.一般服务都是后台,基本程序都是前台
命令
ps命令:查看当前系统正在执行的各种进程信息
ps -xx:
- -a 显示当前终端运行的所有进程的信息
- -u 以用户的信息显示进程
- -x 显示后台运行进程的参数
# ps -aux 查看所有的进程
ps -aux|grep mysql 查看mysql进程
ps -aux|grep java 查看Java的进程
#| 在Linux中这个叫做管道符 A|B
# grep 查找
对于我们来说,这里只需记住 ps -xx | grep xxxx 即可,过滤进程信息! |
ps -ef 可以查看到父进程的信息
还有一个很清楚的展示命令:
pstree -pu
-p: 显示父id
-u: 显示用户组
进程树!
结束进程:杀掉进程,等价于Windows结束任务
格式: kill -9 进程id
注意:-9是固定参数
一般来说不会手动结束进程,但我们平常写的代码如果执行过程死循环了,可以kill
Linux账号管理
Linux系统是一个多用户多任务分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统
每一个用户账号都有唯一的用户名和口令
用户登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。
实现账号管理,要完成:
- 用户账号的添加,删除与修改
- 用户口令管理
- 用户组管理
用户账号的管理
useradd命令添加用户– useradd -选项 用户名
选项:
- -m 自动创建这个用户的主目录 /home/username
- -G 分配用户组!
root@iZf8zf1q4bpufr3xrbbo9wZ:~# useradd -m bo
root@iZf8zf1q4bpufr3xrbbo9wZ:/home# ls
bo home下自动创建了bo的用户目录
删除用户:userdel -r 用户
这样可以将用户和文件一并删掉。
root@iZf8zf1q4bpufr3xrbbo9wZ:/home# userdel -r bo
userdel: bo mail spool (/var/mail/bo) not found
root@iZf8zf1q4bpufr3xrbbo9wZ:/home# ls
这时ls就没了
修改用户:usermod
格式:usermod 修改内容 修改哪个用户
usermod -d /home/233 bo
将用户目录改至233
修改完成要查看配置文件:
root@iZf8zf1q4bpufr3xrbbo9wZ:/home# cat /etc/passwd
bo:x:1000:1000::/home/233:/bin/sh
可以看到用户的所有文件已经往233执行了。
切换用户
root用户
1.切换命令:su 用户名
root@iZf8zf1q4bpufr3xrbbo9wZ:/home# su bo
bo@iZf8zf1q4bpufr3xrbbo9wZ:/home$
hostname +新主机名 这个命令可以修改主机名:
root@bo:/home#
遇到问题
如果切换用户后只有一个dollar符号,要修改配置文件
vim /etc/passwd
找到bo(用户),将/sh改成/bash
用户的密码设置问题
我们一般通过root创建用户的时候,要配置密码
root@bo:/home# passwd bo
New password:
Retype new password:
passwd: password updated successfully
即:passwd 用户名
在大项目中,普通成员一般拿不到服务器root权限,都是分配的一些账号,即开始连接远程服务器的时候用自己的用户名和密码登入而不是root。
我们刚刚是作为超级用户修改了用户bo的密码
如果是普通用户:
直接passwd回车
锁定账户
比如张三辞职了,冻结他的用户,使在这个账号不能再登入服务器
passwd -l bo
这样锁定之后bo就不能登陆了呜呜呜。
用户组管理
属主,属组
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理(开发,测试,运维)
用户组管理涉及组的添加,删除,修改。本质是对/etc/group文件的更新
创建一个用户组
root@bo:/home# groupadd bo
groupadd: group 'bo' already exists
cat /etc/group 查看group文件
bo:x:1000:
创建完用户组后可以得到一个组的id,这个id是可以指定的:
root@bo:/home# groupadd -g 520 bo1
如果不指定就是自增1
删除用户组
root@bo:/home# groupdel bo
修改用户组
root@bo:/home# groupmod -g 521 -n bo1 bo
groupmod -g 新id -n 新name 原来的name
切换用户组
# 登录当前用户 bo
$ newgrp 组名
其实创建用户的时候就应该-G分配组
拓展:文件的查看
/etc/passwd,可以查看到:
用户名:口令(密码,我们不看见,一般是x):用户标识号:组标识号:注释性描述:主目录:登录shell
bo:x:1000:1000::/home/bo:/bin/bash