系统权限
用户组
1. 创建组
`groupadd 组名`
2. 删除组
`groupdel 组名`
3. 查找系统中的组
`cat /etc/group | grep -n “组名”`
说明:系统每个组信息都会被存放在/etc/group的文件中
1. 创建用户
`useradd -g 组名 用户名`
2. 设置密码
`passwd 用户名`
3. 查找系统账户
说明:系统每个用户信息保存在`/etc/passwd`文件中
4. 切换用户
`su 用户名`
5. 删除用户
`userdel -r 用户名`
权限
问题
linux系统未来可能有程序员、用户、数据库管理员、项目经理等各种角色各种级别人使用,甚至还有身份不明的人链接到linux,控制不好权限容易导致系统崩溃、数据丢失等问题。
权限含义
权限访问控制列表(ACL access controll list)
# 查看权限
ls -la 文件
ll 文件
# 设置文件所有者
语法:chown [-R] user名:group名 文件名
参数:-R 如果是文件夹,需要使用这个参数,可以将文件夹及其内部所有文件的所有者和组全部修改
注意:命令权限需要root
## 修改文件所有者
chown 用户名 文件名
## 修改文件所属组
chown :组名 文件名
## 修改文件所有者和所属组
chown 用户名:组名 文件名
## 修改文件夹的所有者和所属组
chown [-R] 用户名:组名 文件夹
# 权限设置1
语法:chmod u±rwx,g±rwx,o±rwx 文件名
运算符:
- 删除权限
+ 添加权限
= 赋值权限
## 给文件的所有者添加执行权限
chmod u+x 文件名
## 给文件的其他人删除所有权限
chmod o-rwx 文件名
## 给文件的所属组设置读写权限
chmod g=wx 文件名
# 权限设置2
# 文件的每个归属方的权限的值使用rwx之和计算出来的。
# 语法
`chmod [-R] nnn 文件`
-R 递归设置文件夹内所有文件
# 设置文件的权限为(所有者可读可写可执行,所属组可读可写,其他人可读)
chmod 764 文件名
系统软件管理
压缩解压缩
rpm软件
简介:类似于windows中的.exe程序
1. 安装rpm软件
语法:`rpm -ivh xxx.rpm`
2. 查看系统中是否已安装的过该rpm软件
语法:`rpm -qa 软件名`
3. 卸载rpm软件
语法:`rpm -e 软件名`
4. 例子:安装tree工具
作用:查看某个目录下的文件信息
# 以树状结构查看2层文件信息
tree -L 2 要查看的路径
yum
yum基于rpm实现的,提供了除了rpm的安装软件、卸载软件等功能以外还有,自动查找、下载软件并自动处理软件的彼此之间的依赖关系,下载并安装依赖包。
## 列出所有可以安装的软件包
yum list
## 安装软件
yum install -y 软件名
## 卸载软件
yum remove 软件名
## 查找软件包
yum search all 软件名
Linux服务
# 例如:sshd network firewalld 等
# 服务器管理命令
systemctl status 服务名
# 启动服务
systemctl start 服务名
# 重启服务
systemctl restart 服务名
# 停止服务
systemctl stop 服务名
# 禁止服务随linux启动。
systemctl disable 服务名
# 设置服务随linux启动。
systemctl enable 服务名
ip设置
服务名:network
[root@centos7 dirnew]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
----------------网卡对应的文件内容---------------------
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="0bd5d8a5-fe1b-42de-82bd-bfa7d2984b95"
DEVICE="ens33"
ONBOOT="yes"
IPADDR="192.168.199.8" # 修改这里的ip地址即可
PREFIX="24"
GATEWAY="192.168.199.2"
DNS1="192.168.199.2"
DNS2="8.8.8.8"
IPV6_PRIVACY="no"
[root@centos7 dirnew]# systemctl restart network #重启网卡服务
防火墙
服务名:firewalld
# 开启防火墙
systemctl start 服务名
# 关闭防火墙(服务器重启后还会自动开启防火墙)
systemctl stop firewalld
# 禁止防火墙开机启动
systemctl disable firewalld
主机名
# 查看主机名
hostname
# 设置主机名
hostnamectl set-hostname 主机名
ip映射
域名解析
本地hosts编辑
[root@centos7 ~]# vim /etc/hosts
--------------下面是文件------------------
192.168.199.8 centos7
SSH
# 远程登录linux
ssh 远程linux的ip或者映射域名
免密登录
# 简介
ssh登录远程linux,免去输入密码的麻烦
# 生成公钥和私钥
[root@centos7 ~]# ssh-keygen
------------执行结果-----------
[root@centos7 ~]# tree .ssh
.ssh
├── id_rsa # 私钥
├── id_rsa.pub # 公钥
└── known_hosts
# 发送公钥
`保存公钥的文件为/root/.ssh/authorized_keys`
[root@centos7 .ssh]# cat id_rsa.pub > authorized_keys
# 发送公钥
[root@centos7 .ssh]# ssh-copy-id 目标主机的ip
远程拷贝
vim(vi编辑器增强版)
vim 文件
wget(下载器)
wget url
tree(目录树状显示)
# 以tree结构,递归显示当前文件下所有文件
tree
# 显示目标文件夹下的文件
tree 目标目录
psmisc(高级进程管理工具)
# 以tree形式显示系统目前进程
pstree
# 杀死进程
killall 进程名
# 显示该文件被哪个进程使用
fuser /目标文件