今天给各位分享linux系统管理命令的知识,其中也会对linux系统管理及服务器配置进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
如何在linux上用命令实现用户和组的管理
Linux上用命令实现本地用户和组的管理
本地用户和组:管理文件和进程等等
本地用户和组:
1)root:超级管理员系统创建的第一个账户
特点:
id为:0
家目录:/root
具有系统的完全控制权:小心使用。
[root@servera~]#id
uid=0(root)gid=0(root)groups=0(root)context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[root@servera~]#
2)普通用户:不具有管理员权限
特点:
id范围:
1000<=id<=60000
家目录:/home/用户名
[root@servera~]#idstudent
uid=1000(student)gid=1000(student)groups=1000(student),10(wheel)
[root@servera~]#
3)服务用户:为服务提供权限
特点:
id范围:
0<id<1000
家目录:应用程序服务目录
[root@servera~]#idapache
uid=48(apache)gid=48(apache)groups=48(apache)
[root@servera~]#
如果是yum,rpm安装的软件:由rpm包中的脚本创建服务账户
Includeconf.modules.d/*.conf
#
#Ifyouwishhttpdtorunasadifferentuserorgroup,youmustrun
#httpdasrootinitiallyanditwillswitch.
#
#User/Group:Thename(or#number)oftheuser/grouptorunhttpdas.
#Itisusuallygoodpracticetocreateadedicateduserandgroupfor
#runninghttpd,aswithmostsystemservices.
#
Userapache
Groupapache
#'Main'serverconfiguration
#
本地组:
1)主组:一个用户一定要属于某个主组中。当些用户在创建文件时,给文件的归属组
2)从属组:用户容器,组织和管理用户权限管控
作用:
文件:
进程:
[student@servera~]$ps-ux
USERPID%CPU%MEMVSZRSSTTYSTATSTARTTIMECOMMAND
student321780.00.4930529360?Ss15:000:00/usr/lib/system
student321820.00.32537767072?S15:000:00(sd-pam)
student321880.00.21594124980?S15:000:00sshd:student@p
student321890.00.22339124864pts/0Ss15:000:00-bash
student322930.30.21594085192?D15:430:00sshd:student@p
student322940.30.22339124924pts/1Ss15:430:00-bash
student323190.50.22339404804pts/1S15:430:00/bin/bash
student323410.00.22693123876pts/1R+15:430:00ps-ux
[student@servera~]$
账户文件:
1)/etc/passwd:保存用户信息
[root@serveratmp]#cat/etc/passwd|grepstudent
student:x:1000:1000:StudentUser:/home/student:/bin/bash
用户名密码uid主组ID描述家目录登录shell
[root@serveratmp]#
[root@serveratmp]#cat/etc/passwd|grep-wroot:x
root:x:0:0:root:/root:/bin/bash
[root@serveratmp]#
[root@serveratmp]#cat/etc/passwd|grepapache
apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin
服务账号无法登录系统
[root@serveratmp]#
2./etc/shadow:保存用户密码的HASH,密码的有效性信息,密码修改时间,账户有效期。
[root@serveratmp]#
[root@serveratmp]#ls-l/etc/shadow
----------.1rootroot1014Mar2911:39/etc/shadow
[root@serveratmp]#
[root@serveratmp]#
[root@serveratmp]#cat/etc/shadow|grepstudent
student:$6$8oIjLCsc$/n1iQXYh1E6.uOEuJKgioqAtmqm2TQmkJGF2RwyteIr1tIfrPdiRYgWe6Sjen5/eMij2uHM/a1tue/QRlo3X80:18038:0:99999:7:::
[root@serveratmp]#
密码的HASH:sha512
8oIjLCsc$/n1iQXYh1E6.uOEuJKgioqAtmqm2TQmkJGF2RwyteIr1tIfrPdiRYgWe6Sjen5/eMij2uHM/a1tue/QRlo3X80
18038:天数密码最后一次修改的时间从1970-01-01+18038天之后那一天
0:密码最少使用天数0没有限制用户随时可以改密码
99999:天数,密码最大修改时间永久200多年
7:warning警告时间,当密码快到最后修改时间前7天,通知用户修改。
::天数失效时间inactive用户密码过了最后修改时间,未改变密码,再过多少天,账户将被锁定
::账户有效期
创建用户和组:
创建时,没有密码:
[root@servera~]#useraddzhangsan
[root@servera~]#useraddlisi
[root@servera~]#idzhangsan
uid=1001(zhangsan)gid=1001(zhangsan)groups=1001(zhangsan)
[root@servera~]#idlisi
uid=1002(lisi)gid=1002(lisi)groups=1002(lisi)
[root@servera~]#
无法登录:与PAM有关
[student@servera~]$
[student@servera~]$su-zhangsan
Password:
Password:
su:Authenticationfailure
[student@servera~]$
设置密码:
[root@servera~]#
[root@servera~]#cat/etc/passwd|grepzhangsan
zhangsan:x:1001:1001::/home/zhangsan:/bin/bash
[root@servera~]#cat/etc/shadow|grepzhangsan
zhangsan:!!:18350:0:99999:7:::#!!未设置密码
[root@servera~]#
[root@servera~]#passwdzhangsan
Changingpasswordforuserzhangsan.
Newpassword:
BADPASSWORD:Thepasswordisshorterthan8characters
Retypenewpassword:
passwd:allauthenticationtokensupdatedsuccessfully.
[root@servera~]#
[root@servera~]#
[root@servera~]#cat/etc/shadow|grepzhangsan
zhangsan:$6$3wxuXomVbQ58wQcK$oQW6injgldxa2N/Pt4tCPDVRqWRVGw.UNZdxE4R0nhEt8K/3UDKzxap6ReIReEvDpG.GdwjpMiiDh7.f6DJNQ0:18350:0:99999:7:::
[root@servera~]#
chage可以查看用户密码属性
[root@servera~]#chage-lzhangsan
Lastpasswordchange:Mar29,2020
Passwordexpires:never
Passwordinactive:never
Accountexpires:never
Minimumnumberofdaysbetweenpasswordchange:0
Maximumnumberofdaysbetweenpasswordchange:99999
Numberofdaysofwarningbeforepasswordexpires:7
[root@servera~]#
创建组:从属组
[root@servera~]#
[root@servera~]#groupaddit
[root@servera~]#
[root@servera~]#
[root@servera~]#groupaddsales
[root@servera~]#
[root@servera~]#
[root@servera~]#
[root@servera~]#cat/etc/group
root:x:0:
bin:x:1:
daemon:x:2:
sys:x:3:
adm:x:4:
tty:x:5:
disk:x:6:
lp:x:7:
mem:x:8:
kmem:x:9:
wheel:x:10:student
cdrom:x:11:
mail:x:12:postfix
man:x:15:
dialout:x:18:
floppy:x:19:
games:x:20:
tape:x:33:
video:x:39:
ftp:x:50:
lock:x:54:
audio:x:63:
users:x:100:
nobody:x:65534:
dbus:x:81:
utmp:x:22:
utempter:x:35:
input:x:999:
kvm:x:36:
render:x:998:
systemd-journal:x:190:
systemd-coredump:x:997:
systemd-resolve:x:193:
tss:x:59:
polkitd:x:996:
rpc:x:32:
unbound:x:995:
ssh_keys:x:994:
sssd:x:993:
setroubleshoot:x:992:
rpcuser:x:29:
insights:x:991:
cockpit-ws:x:990:
sshd:x:74:
chrony:x:989:
tcpdump:x:72:
student:x:1000:
printadmin:x:988:
libstoragemgmt:x:987:
slocate:x:21:
postdrop:x:90:
postfix:x:89:
apache:x:48:
zhangsan:x:1001:
lisi:x:1002:
it:x:1003:组成员列表
sales:x:1004:
[root@servera~]#
[root@servera~]#idstudent
uid=1000(student)gid=1000(student)groups=1000(student),10(wheel)
[root@servera~]#
将用户添加进组:zhangsan,加入it组,lisi,sales组
[root@servera~]#idstudent
uid=1000(student)gid=1000(student)groups=1000(student),10(wheel)
[root@servera~]#usermod-aGitzhangsan
[root@servera~]#
[root@servera~]#
[root@servera~]#usermod-aGsaleslisi
[root@servera~]#
[root@servera~]#
[root@servera~]#idzhangsan
uid=1001(zhangsan)gid=1001(zhangsan)groups=1001(zhangsan),1003(it)
[root@servera~]#idlisi
uid=1002(lisi)gid=1002(lisi)groups=1002(lisi),1004(sales)
[root@servera~]#
删除用户:
[root@servera~]#useraddandy
默认删除,保留用户的文件:
[root@servera~]#
[root@servera~]#userdelandy
[root@servera~]#
[root@servera~]#
[root@servera~]#useraddandy#重建andy会不一样,uid会不同
useradd:warning:thehomedirectoryalreadyexists.
Notcopyinganyfilefromskeldirectoryintoit.
Creatingmailboxfile:Fileexists
[root@servera~]#
[root@servera~]#useradduser1
[root@servera~]#useradduser2
[root@servera~]#idandy
uid=1003(andy)gid=1005(andy)groups=1005(andy)
[root@servera~]#userdel-rany
userdel:user'any'doesnotexist
[root@servera~]#
[root@servera~]#userdel-randy#不保留用户的文件。家目,邮箱文件,skel文件都会
[root@servera~]#
[root@servera~]#
[root@servera~]#idandy
id:‘andy’:nosuchuser
[root@servera~]#useraddandy
[root@servera~]#idandy
uid=1006(andy)gid=1008(andy)groups=1008(andy)
[root@servera~]#
从组中移除用户:
[root@servera~]#
[root@servera~]#idzhangsan
uid=1001(zhangsan)gid=1001(zhangsan)groups=1001(zhangsan),1003(it)#zhangsan主组,it从属组
[root@servera~]#
命令:
[root@servera~]#gpasswd-dzhangsanit
Removinguserzhangsanfromgroupit
[root@servera~]#
[root@servera~]#
[root@servera~]#idzhangsan
uid=1001(zhangsan)gid=1001(zhangsan)groups=1001(zhangsan)
[root@servera~]#
[root@servera~]#
[root@servera~]#usermod-aGitzhangsan
[root@servera~]#
[root@servera~]#
[root@servera~]#idzhangsan
uid=1001(zhangsan)gid=1001(zhangsan)groups=1001(zhangsan),1003(it)
[root@servera~]#
[root@servera~]#
[root@servera~]#
[root@servera~]#groupszhangsan
zhangsan:zhangsanit
[root@servera~]#
直接修改文件:
[root@servera~]#vim/etc/group
[root@servera~]#cat/etc/group|grepit:
it:x:1003:
[root@servera~]#
删除组:
[root@servera~]#groupaddtest
[root@servera~]#
[root@servera~]#
[root@servera~]#groupdeltest
创建自定义用户和组:
实验:用户名mary,指定用户id2000,家目录/maryhome,不用登录系统描述thisismaryuser
[root@servera~]#
[root@servera~]#useradd-u2000-d/maryhome-s/sbin/nologin-c"thisismary"mary
[root@servera~]#
[root@servera~]#idmary
uid=2000(mary)gid=2000(mary)groups=2000(mary)
[root@servera~]#cat/etc/passwd|grepmary
mary:x:2000:2000:thisismary:/maryhome:/sbin/nologin
[root@servera~]#
[root@servera~]#su-mary
Lastlogin:SunMar2916:48:49CST2020onpts/0
Thisaccountiscurrentlynotavailable.
[root@servera~]#
创建自定义组:指定组id
[root@servera~]#groupadd-g3000group1
[root@servera~]#cat/etc/group|grepgroup1
group1:x:3000:
[root@servera~]#
笔记本电脑如果只安装Linux系统,会有什么不方便的吗
谢邀。不建议这么做,办公用Windows确实是正途。个人建议双系统。
Linux不适合当常用系统记得大学的时候有个非常痴迷Linux的朋友,他从大一开始就爱上了Linux,有一次看他电脑也是把Linux操作系统给装上了,以至于一件尴尬的事情发生了,他经常重装系统。
对的这是尴尬的地方,我记得《Linux鸟叔的私房菜》里有这么一句话,如果你学习Linux不把系统安装个几十次,那你一定没学到什么。大致是这么说的,意味着搞Linux就很容易把自己系统搞崩。
建议安装双系统如果有必要在自己电脑上安装Linux,有两个方法:
安装Linux虚拟机安装第二系统其实很多时候,你在Windows上安装一个虚拟机软件然后在虚拟机里跑Linux,已经可以满足大部分Linux学习要求。
如果实在有必要,请安装Linux系统作为第二个系统,这个方法请自行搜索,而且一定要慎重安装,两个系统的安装顺序是有讲究。
关注极客宇文氏,更多计算机那些事儿需要多久才能看完linux内核源码
linux0.11的内核源码,结合下面这本书,我花了大概一个寒假(1个半月),看了一遍。
然而,现在的内核已经膨胀的不成样子了,以还不算最新的linux-4.9.229为例:
整个内核源码一共约801M:
驱动代码占了大概一半,大约407M:
体系相关的代码大约164M:
网路子系统相关的代码29M:
文件系统相关的代码38M:
linux内核核心代码大约7.7M:
但是就这7.7M,其实你要完全看完看懂也不容易。linux内核代码涉及c语言、硬件组成原理、操作系统、数据结构和算法等,这些基础知道你都具备了吗?如果没有具备,即使看完linux内核源码,你也看不懂liux内核的精髓。
linux内核源码大而全,一个人,即使再聪明、再有精力,也不可能完全看完、看懂所有的linux内核源码。你得选择一个主线进行深入研究,这些主线可以是:
linux内核启动过程研究linux驱动架构的学习和研究linux网络子系统的研究linux内存管理机制的研究linux调度器的学习和研究linux进程管理的学习和研究linux虚拟机制(kvm)的学习和研究linux内核实时化技术的研究沿着某一个主线,深入进去,在研究清楚这个主线的同时,向其他的主线扩展、渗透和学习。由点到线、由线到面、由面到体,层层深入、不断精进,是学习linux内核源码的一个有效的方法。
关注”技术简说“,带你由浅入深学习linux内核源码。linux内核开发100讲免费教程,每周二、周四晚上9点更新视频,每周一、周三晚9点更新文章,敬请收看。进我主页点”视频“栏目即可观看。
文章到此结束,如果本次分享的linux系统管理命令和linux系统管理及服务器配置的问题解决了您的问题,那么我们由衷的感到高兴!