linux用户管理
linux有几种用户身份,好比qq群
1.QQ群主,想干嘛就干嘛,想踢人就踢人------等于linux的root用户,权利最大
2.QQ群管理员,群主给与他的比较大的权限--------等于linux命令加上sudo,默认以root去执行命令
3.渣渣用户,QQ群里的小白,权利特别低--------等于linux的普通用户,用于保证服务器安全,防止删除等危险操作
UID,GID
UID 用户的id号,root是0,普通用户从1000开始
GID,是用户组的ID号
linux下存放用户账户信息的文件是/etc/passwd
useradd
只有root有权限才能创建普通用户,默认uid从1000开始递进
useradd zhoushen
su命令
su命令用于用户切换,root切换普通用户不要密码,普通切root要密码
普通用户之间切换需要密码~~~~
su - zhoushen #切换到zhoushen用户,中间的减号代表完全的环境变量切换,一定要加上
id命令
id命令用于查看用户的uid等信息
id root
id zhoushen
sudo命令
当普通用户执行命令权限不够的时候,使用sudo,强大自己的权限
root ---------皇帝------/root 这里是皇宫,其他用户无法查看
sudo --------黄马褂,圣旨----默认是拥有root的超级权限的
普通用户-----老百姓---- /home/caixukun /home/haohao
sudo命令需要配置一下,步骤如下
1.打开sudo的配置文件
执行visudo,会编辑sudoers这个配置文件,在/etc/sudoers,这个命令提供语法检测,更专业
visudo /etc/sudoers
2.找到如下配置行,添加你允许使用sudo的用户名字
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
caixukun ALL=(ALL) ALL
haohao ALL=(ALL) ALL
laowang ALL=(ALL) ALL
3.使用sudo命令,在你敲的命令前,加上sudo即可
sudo ls /root
linux的文件和目录权限
这一串信息,如何解读
#解读
happy.txt是一个普通文件
他的user属主是root,user属主的权限是 rw- (可以读,可写,不可执行)
他的属组group,是root,group属组的权限,是只读的,代表在root组里的用户都可以读这个happy.txt
此时caixukun这个普通用户登录了机器,对于happy.txt来说,caixukun就是一个other其他用户,只读权限
- rw-(uesr) r--(group) r--(other). 1 root root 0 2月 5 16:14 happy.txt
drwxr-xr-x. 3 root root 37 2月 5 15:32 kuaile
文件的权限解读,第一列
- rw- r-- r--
代表文件的属性
- 是普通文本
d 是一个文件夹
r read 有可读的权限
w write 可以写
x 可执行
- 没有权限
###################
对于文件来说,
r cat more 读取
w vim vi echo 写入
x 可以用解释器执行的意思
#对于文件夹来说
r ls 读取
w 可以进入文件夹,在里面创建文件 touch mkdir
x cd 可以进入文件夹
linux的用户身份分3类
-当前这个文件属于谁-------user---属主
-当前在这个文件属于哪个组----group---属组
-其他人---这个文件和当前登录的系统用户没有任何关系-----other
这3类角色都有不同的读、写、执行权限
chmod
change mode,更改文件权限的命令
chmod u+x file #给user用户添加一个x可执行权限
用zhoushen普通用户给文件的other添加一个w写的权限
[[email protected] s26linux]$ sudo chmod o+w happy.txt
-rw-r--rw-. 1 root root 78 2月 5 16:31 happy.txt
修改这个文件,只有属主可写,其他人都没有权限,用数字权限转化
chmod 200 happy.txt #这个代表 user是 2 只写的,group和other都没有权限
#给文件,user可读可写,group可读可写,其他人只能写
chmod 662 happy.txt
#解读如下权限
chmod 235 happy.txt
user只有2的权限,只写
group 是3的权限 2+1 ,可写,可执行的
other是5的权限 4+1 ,可读,可执行的
ln命令
创建软连接的命令,创建快捷方式
ln -s 源文件绝对路径 快捷方式绝对路径
ln -s /s26linux/happy.txt /tmp/hp.txt
tar命令
打包、压缩、解压缩的命令(用户后缀为.tgz)
常用参数如下
-z 调用gzip压缩资源,节省磁盘空间
-x 解压缩
-v 显示过程
-f 这个参数必须写在结尾,指定压缩文件名字
-c 打包参数
案例
把/tmp下所有的内容,进行压缩打包,节省磁盘空间
tar -zcvf /opt/alltmp.tgz ./* #打包且压缩/tmp下所有内容,生成一个压缩文件,放到opt下
#演示解压缩,吧/opt下alltmp.tgz解压缩
tar -zxvf /opt/alltmp.tgz ./
unzip命令
当你是后缀.zip的压缩文件时就用unzip
下载unzip
yum install unzip -y
zip 压缩
(1)将当前文件夹下的所有文件打包成一个 new1.zip 文件
zip new1.zip *
(2)把当前文件夹下所有 my1*.doc 的文件打包成一个 new1.zip 文件
zip new1.zip my1*.doc
(3)把一个文件 abc.txt 和一个目录 dir1 压缩成为 yasuo.zip
zip -r yasuo.zip abc.txt dir1
unzip 解压缩
(1)把文件解压到当前目录下
unzip test.zip
(2)如果要把文件解压到指定的目录下,需要用到-d参数。
unzip -d /temp test.zip
(3)解压的时候,有时候不想覆盖已经存在的文件,那么可以加上 -n 参数
unzip -n test.zip
unzip -n -d /temp test.zip
crontab定时任务
语法如下
分 时 日 月 周 你要执行的命令绝对路径
* * * * * 绝对路径的命令
例子:
#每分钟执行一次命令
* * * * * 命令 #每分钟执行命令
#每小时的整点,执行命令
0 * * * * #每小时的整点执行
#每小时的3,15分组执行命令
3,15 * * * * 命令绝对路径
#在上午8-11点的第3和第15分钟执行
3,15 8-11 * * * 命令绝对路径
#每晚6点半执行命令
30 18 * * * command
#没周六、日的凌晨1:30执行命令
30 1 * * 6,7 command
#每周一到周五的凌晨1点,清空/tmp目录的所有文件
0 1 * * 1-5 /usr/bin/rm -rf /tmp/*
#每晚的21:30重启nginx
30 21 * * * /usr/bin/systemctl restart nginx
#每月的 1,10,22日的下午4:45重启nginx
45 16 1,10,22 * * /usr/bin/systemctl restart nginx
#每个星期一的上午8点和11点的第3到15分钟执行命令
3-15 8,11 * * 1 command
如何用crontab
1.输入命令,打开定时任务配置文件
crontab -e
2.写入定时任务语句即可
3.crontab -l 查看定时任务语句
linux的软件包管理工具
linux安装软件有几种方式
- 源代码编译安装(最好的安装形式,可以自由定义安装路径,第三方功能扩展,以及获取官网最新的代码进行编译安装,缺点是对新手不友好)
- yum工具(新手最好的工具,自动化解决程序安装所需的依赖关系,自动下载且安装依赖,要求得配置yum仓库源,软件版本可能较低)
- rpm软件包手动安装(弃用,需要手动解决依赖关系,贼难受,不用)
不同系统的软件包安装格式
windows exe
macos dmg
linux rpm 格式
软件的依赖关系
如何安装django的?
下载django源码进行python3 setup.py build
#相比我们都是用的pip安装,为什么呢?
能够自动的解决django模块的依赖关系
#pip3是安装python模块的工具,自动搜索依赖,解决依赖关系
#yum工具是linux系统安装软件的工具,例如安装redis数据库,安装mysql数据库等等
yum工具
对于redhat,centos系列的操作系统,90%的软件都可以yum自动安装,前提是要配置好软件仓库(yum源)
安装,卸载nginx
yum install nginx -y
yum remove nginx -y #自动解决所有依赖关系,很nice,好用
配置阿里的yum源
1.找到阿里的开源镜像站
https://developer.aliyun.com/mirror/
2.备份linux本地现有的yum仓库文件,
/etc/yum.repos.d/ 这个文件夹,默认yum仓库地址,注意!只有在这个目录第一层的以*.repo结尾的文件
才会被识别为是一个yum仓库文件
3.备份以前的yum仓库文件
[[email protected] yum.repos.d]# pwd
/etc/yum.repos.d
[[email protected] yum.repos.d]# mv ./* allrepoBak/ #备份repo仓库文件
4.下载新的仓库文件,下载阿里的
# 参数解释 -O 将下载的文件,指定一个路径存放,且改名
# 这是第一个仓库
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# 下载第二个epel仓库
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
5.清空之前的yum缓存
yum clean all
6.可以测试用yum安装nginx软件,或是redis数据库软件
yum install nginx -y
yum install redis -y
7.只要是通过yum安装的软件,都可以用systemctl 系统服务管理命令,进行启停管理
systemctl start/stop/restart/status nginx #分别是 启动,停止,重启,查看状态
systemctl start nginx
systemctl stop nginx
systemctl start/stop/restart redis
8.验证redis和nginx软件是否正常
[[email protected] yum.repos.d]# redis-cli
127.0.0.1:6379> ping
PONG
退出redis,可以直接ctrl + c
验证nginx,直接浏览器访问网站的80端口即可
192.168.xxx.xxx:80
9.此时可以修改一下nginx的首页内容,一分钟做一个dnf官网 ~~~~~逗乐
nginx首页页面默认在
vim /usr/share/nginx/html/index.html #自行去复制dnf官网的源码,修改即可
10.如果没法连接nginx 别忘了关闭防火墙
iptables -F
原文地址:https://www.cnblogs.com/zzsy/p/12299955.html
时间: 2024-10-05 04:58:05