一、linux操作系统用户、权限管理
Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也可以帮助用户组织文件,并为用户提供安全性保护。
每个用户账号都拥有一个惟一的用户名和各自的口令。
用户在登录时键入正确的用户名和口令后,就能够进入系统和自己的主目录。
Linux 用户登陆输入密码时,字符是不显示的,这样可以防止别人看见你密码的位数,安全性稍高,若输入错误,可以按Backspace 重新输入。
1)创建用户相关的文件
查看新建的用户 id shizhengwen
useradd shizhengwen 创建一个 史正文的用户,linux系统中一切皆文件。less /etc/passwd (less一页一页的显示文件内容):存放的都是用户详细信息
第一段用户名;第二段是密码(x)如果没有x就表示没有密码;第三段uid(root用户是0,500之前的用户都是系统用户;自己建的用户id 是从501开始的,可以限定root用户);第四段groupid;第五段用户描述信息;第六段 根目录;第七段是否允许登陆操作系统;
这7段用冒号隔开1、用户名;2、密码占位符;3、uid;4、groupid;5、用户描述信息;6、家目录;7、是否可登陆操作系统的二进制执行文件
用户密码文件存放的地址less /etc/shadow
用户组文件存放的地址less /etc/group;组密码文件less /etc/gshadow
还会有一个用户的邮箱文件ls /var/spool/mail文件下;一下就是新建用户的6个文件:
2)用户增删改查及组相关操作
useradd alex 增加用户
userdel -r alex 删除用户
usermod 修改用户
id alex 查看用户
3)对目录的权限管理
和对文件的权限管理相同,因为在linux中一切皆文件
chgrp 更改属组
chown 更改属主
chmod 更读写等属性
5)属主属组及基于数字的权限管理(同样使用这三个命令)
chgrp 更改属组
chown 更改属主
chmod 更读写等属性
chown 属主.属组 a.txt
二、为什么要学习python和shell
1)日常工作,很多工作都是很琐碎 很细节的,你想不到你会遇到什么具体的小任务。
这时,你总不能打开vim 写个python脚本。
很可能还没写完#! ,shell 可能已经搞定了任务了。
2)注定要扩展,代码量不小,要维护的任务交给python.
3)shell中常用的字符串输出命令:echo和printf
4)新建一个test.sh文件之后 /bin/sh test.sh 这样就运行了shell的脚本, /bin/sh test.sh 1 2 3,,123为传入脚本的传递参数
5)数组 定义my_array=(A B "C" D),数组读取:${my_array[0]
6)shell中的test命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试
7)函数:linux shell 可以用户定义函数,然后在shell脚本中可以随便调用。
8)文件包含:和其他语言一样,Shell 也可以包含外部脚本。这样可以很方便的封装一些公用的代码作为一个独立的文件。
9)输入输出重定向:command1 > file1
usermod 修改用户