账号管理
Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
每个用户账号都拥有一个唯一的用户名和各自的口令。
用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。
实现用户账号的管理,要完成的工作主要有如下几个方面:
- 用户账号的添加、删除与修改。
- 用户口令的管理。
- 用户组的管理。
用户账号管理
- 用户账号的添加
- 修改
- 删除
useradd
命令:添加用户
参数:
-m
:自动创建这个用户的主目录 /home/damin
-G
:给用户分配组
[root@localhost home]# useradd -m damin
本质:Linux中一切皆文件,这里的添加用户说白了就是往/etc/passwd
文件中写入用户的信息。
damin:x:1001:1001::/home/damin:/bin/bash
userdel
:删除用户
userdel -r damin
删除用户的时候将他的目录页一并删掉
usermod
:修改用户
切换用户
su 用户名
从普通用户切换到 root用户,还可以使用 sudo su
#
表示root用户
$
表示普通用户
设置用户密码
超级用户(root)
[root@localhost home]# passwd damin
Changing password for user damin.
New password:
Retype new password:
普通用户
passwd (current) UNIX password:
new password:
re password:
锁定用户
root用户下
passwd -l damin
锁定之后这个用户就不能登录了
passwd -d damin
damin用户没有密码,表示也不能登录
用户组管理
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理(开发、测试、运维、root)。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。
用户组的管理涉及用户组的添加、删除和修改。
组的增加、删除和修改实际上就是对/etc/group
文件的更新。
创建一个用户组
groupadd
创建完用户组后可以得到一个组的id,这个id是可以指定的:-g id
,默认是自增加一。
删除用户组
groupdel
了解知识
/etc/passwd
这个文件中的每一行都代表这一个用户,我们可以从这里看出这个用户的主目录在那里,可以看到属于哪一个组。
cat /etc/passwd
/etc/group
用户组的所有信息都存放在该文件中。
/etc/shadow
把真正的加密后的用户口令存放到该文件中,保证我们密码的安全性,在此文件中密码是被加密过的。
磁盘管理
df
: 显示目前在Linux系统上的文件系统的磁盘使用情况
df -h
:使用我们习惯的 KB、MB 或 GB 等单位自行显示容量
du
:检查磁盘空间使用量(显示目录或文件的大小)
du -a
:包括隐藏文件
du -sm /*
:显示根目录下每个目录所占用的资源
[root@localhost home]# du -sm /*
0 /bin
129 /boot
1 /dev
29 /etc
32 /home
0 /lib
0 /lib64
0 /media
0 /mnt
0 /opt
du: cannot access ‘/proc/11653/task/11653/fd/4’: No such file or directory
du: cannot access ‘/proc/11653/task/11653/fdinfo/4’: No such file or directory
du: cannot access ‘/proc/11653/fd/4’: No such file or directory
du: cannot access ‘/proc/11653/fdinfo/4’: No such file or directory
0 /proc
4 /root
du: cannot access ‘/run/user/1001/gvfs’: Permission denied
8 /run
0 /sbin
0 /srv
0 /sys
1 /tmp
3063 /usr
641 /var
挂载我们的一些本地磁盘或者文件
mount
:挂载
mount /dev/外部设备 /mnt/
mount /dev/damin /mnt/damin
umount -f
:强制卸载(挂载位置)
进程管理
我们都知道 Linux中一切皆文件
- 文件:读写执行(查看,创建,删除,移动,复制,编辑)
- 权限:用户、用户组
- 系统:磁盘,进程
对于开发人员来讲,Linux更多偏向于使用。
进程了解
- 在Linux中,每一个程序都是有自己的一个进程,每一个进程都有一个id号
- 每一个进程都有一个父进程
- 进程的两种存在方式:前台 和 后台运行
- 一般服务都在后台运行,基本的程序在前台运行
基本命令
ps
:查看当前系统中正在执行的进程信息
ps -au
:显示详细的进程信息
[root@localhost home]# ps -au
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 2677 0.1 2.1 223344 22028 tty1 Ss+ Apr17 0:58 /usr/bin/Xorg :0 -background none -noreset -audit
root 8983 0.2 1.1 223340 11424 tty2 Ss+ 05:12 0:04 /usr/bin/Xorg :1 -background none -noreset -audit
root 10271 0.1 0.3 194596 3368 tty3 Ss+ 05:14 0:01 /usr/bin/Xorg :2 -background none -noreset -audit
root 11078 0.0 0.2 116148 2100 pts/0 Ss 05:15 0:00 /bin/bash
root 12177 0.0 0.1 139492 1636 pts/0 R+ 05:43 0:00 ps -au
ps -x
:显示后台运行进程的参数
一般都是ps -aux
:显示所有包含其它使用者的进程
ps -aux|grep 进程名称
:过滤进程信息
|
管道符
grep
查找文件中符合条件的字符串
ps -ef
:查看父进程的信息
进程树
pstree -pu
-p
显示父id-u
显示用户组
环境安装
安装软件的方式:
- rpm
- 解压缩
- yum在线安装
JDK安装
java -version
:查看当前系统是否存在java环境
rpm -ivk rpm包
:安装jdk
配置环境变量
打开文件 /etc/profile
在文件的最后面增加java的配置,和 window安装环境变量一样:
JAVA_HOME=/usr/java/jdk1.8.0_221-amd64
CLASSPATH=%JAVA_HOME%/lib;%JAVA_HOME%/jre/lib
PATH=$JAVA_HOME/bin;$JAVA_HOME/jre/bin
export PATH CLASSPATH JAVA_HOME
source /etc/profile
:让这个配置文件生效
卸载jdk
rpm -qa|grep jdk
:查看JDK版本信息
rpm -e --nodeps jdk_
:卸载
Tomcat安装
- 下载tomcat (.tar.gz)
- 解压文件
- 启动测试
./startup.sh
:执行./shotdown.sh
:停止
防火墙
# 查看firewall服务状态
systemctl status firewalld
# 开启、重启、关闭、firewalld.service服务
# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop
# 查看防火墙规则
firewall-cmd --list-all # 查看全部信息
firewall-cmd --list-ports # 只看端口信息
# 开启端口
开端口命令:firewall-cmd --zone=public --add-port=8080/tcp --permanent
重启防火墙:systemctl restart firewalld.service
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效