Linux基础学习4

目录

用户

- 超级管理员用户  root  0
- 普通用户
  - 系统用户: 用来启动系统的一些服务和进程的用户,不可以登陆  1-999(centos7)1-499 (centos6) 
  - 可登陆用户:能登录系统的用户 1000-65535(centos7)500-65535(centos6)

useradd

Usage: useradd [options] LOGIN
       useradd -D
       useradd -D [options]
普通用户的id是递增,系统用户的id是递减的
-d 用来指定用户的家目录
-g 指定用户组的id
-G 指定用户的附加组
-k 指定复制那个文件夹下的内容,需要和-m一起使用
-m 创建用户的家目录
-c "message" 指定用户的描述信息
-N 不创建同名的组,以users为组
-s 指定用户登录后使用的shell
-u 指定用户的id
—D 显示系统的默认配置
-D [options] 可以修改系统的默认配置
  • 相关文件
    • /etc/default/useradd 创建用户的默认文件
    • /etc/skel/* 默认复制的文件

用户修改usermode

-c 修改描述信息
-d 修改家目录,默认不会创建新目录,如果想移动家目录,则需要使用-m
-g 修改用户组
-G 修改用户的附加组,默认情况下是替换
-a 追加附加组
-l newname 修改用户的登录名称
-L 锁定用户,不能登录系统,修改密码默认情况下回解锁
-U 解锁用户
-s 修改用户登录后的shell
-u 修改用户的uid
-e 年-月-日 修改用户的过期时间,过期以后不能登录

删除用户 USERDEL

默认删除用户不删除用户的家目录
-r 删除家目录
-f 强制删除
默认情况下,用户登录状态下是不能删除用户,强制删除用户以后,用户还是可以用的

查看用户相关信息id

-g 只显示组id
-G 只显示附加组id
-u 只显示用户id
-n 显示名称,需要和guG来配合使用

切换用户

su [options] [-] [USER [arg]...]

切换用户的方式

- 完整切换:su - username 登录式切换,环境变量等都会切换
- 不完整切换:su username 不会切换用户的环境变量家目录等
- root切换普通用户不需要密码,非root用户切换需要密码
  • 切换用户执行命令
[root@localhost ~]#su - peiqi -c "whoami"
peiqi

执行本身不能执行的命令

sudo 配置文件为/etc/sudoers

peiqi   ALL=(ALL)       NOPASSWD:ALL
其中的NOPASSWD 是不需要输入密码

/etc/passwd文件

  • 用户名称
  • 密码,使用x来占位
  • uid
  • gid
  • 描述信息
  • 家目录
  • 登录后使用的shell

设置密码passwd

passwd [OPTION...] <accountName>
-d 删除指定用户的密码,删除密码之后就不能登录
-l 锁定用户
-u 解锁用户
-e 在下次登录以后强制用户修改密码
-f 强制操作
-x maxday 密码的最长使用时间
-n minday 密码的最短使用时间
-w warnday 密码过期前多长时间提醒
-i inactiveday 密码过期多长时间以后禁用
--stdin 从标准输入读取密码 echo '123'|passwd --stdin peiqi

存放文件/etc/shadow

- 用户名
- 密码 $加密方式(默认sha512)$盐$加密后的字符串$
- 从1970年1月1日到最近一次修改密码经过的时间
- 密码的最短使用时间(0表示随时可以修改)
- 密码的最长使用时间(99999表示永不过期)
- 密码过期多长时间提醒(默认是一周)
- 密码过期多长时间锁定
- 从1970年1月1日开始算起,多长时间后账号失效

密码的复杂性策略

  • 必须包括数字、大小写、特殊字符
  • 密码必须12位以上
  • 不能为弱口令
  • 必须为随机密码
  • 3个月或者半年修改一次

机器免密登录

ssh-keygen 一路回车
ssh-copy-id 要登录的机器

修改用户密码策略 chage

-E
-I
-m
-M
-W
change login 可以使用交互式的修改密码策略

chfn 修改用户的个人信息

用户组

- 超级用户组  root 0
- 普通用户组
  - 系统用户组 1-999(centos7) 1-499(centos6)
  - 可登陆用户组 1000-65535(centos7)500-65535 (centos6)
  
groupadd
-g 指定组id
-r 创建系统用户组

组的文件

/etc/group

- 组名
- 密码占位
- gid
- 组成员

/etc/gshadow

- 组名
- 密码
- 组管理员的密码
- 组成员

修改组信息

groupmod

-g 修改gid
-n 修改组名

删除组

groupdel 删除组

软件

windows exe

centos(redhat) rpm

rpm: radhat package manager

rpm 

yum 

包的命名规范

MySQL-python-1.2.5-1.el7.x86_64.rpm  
名字-版本(大版本.小版本.修订版)-打包版本.可用的系统.架构.rpm
架构:
    x86_64
    x86
    i386
    i486
    i686
    ppc
    noarch 表示通用

包的来源

  • 光盘
  • 第三方网站
  • 官方网站
  • 自己做
  • https://pkgs.org
  • epel 第三方包的结合地

rpm 包的查询

rpm -q 查询指定的包是否安装
-a  all 表示当前系统安装的所有的包
-f filename 查询指定的文件由那个包安装生成
-c 查看指定的包生成了哪些配置文件
-d 查询指定的包生成了哪些文档
-i 查询指定包的详细信息
-l 查询指定的包生成到文件
常用的选项
-qi
-qa
-ql
-qc
-qd

yum

yum 会自动解决依赖关系

仓库  存放的是 多个包和包的元数据信息(所在仓库,依赖关系)

仓库的位置:

- http://
- https: //
- ftp: //
- file: //(本地文件)
- 配置文件存放在/etc/yum.repos.d

yum配置文件

[base] #名称
name=CentOS-$releasever - Base - mirrors.aliyun.com # 描述信息
failovermethod=priority # 定义挑选顺序 priority 按顺序 roundrobin 随机
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
        http://mirrors.aliyuncs.com/centos/$releasever/os/$basearch/
        http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/$basearch/
enabled ={0|1} 是否启用,1启用,0是不启用
gpgcheck={0|1} 使用校验
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7 # 校验文件
默认值
$releasever 发行版
$basearch 系统架构

yum 源

  • 阿里
  • 163
  • sohu
  • 腾讯
  • 北大
  • 中科大学
  • 。。。。

yum命令

- yum repolist 查看仓库
- yum list 列出仓库里面所有的包 安装的包前面带@
- yum install 安装包
- yum reinstall 重新安装
- yum update 更新所有的包
- yum update pkg 更新指定的包
- yum downgrade 降级
- yum check-update 检查包是否可以更新
- yum remove 卸载包
- yum info pkg 显示包的详细信息
- yum clean all 删除元数据信息
- yum makecache 重新构建元数据信息
- yum search 搜索软件包(包名称、描述信息只要包含就可以搜索出来)
- yum provides 搜索命令是由哪个包提供的

软件包组

  • yum grouplist 查看包组
  • yum groupinstall 安装
  • yum groupinfo 获取包的信息,查看包组有哪些包组成
  • yum groupupdate 更新
  • yum groupremove 卸载包组

yum选项命令

-y 自动确认

-q 静默模式

源码安装示例

  • 下载 wget https://www.python.org/ftp/python/3.6.9/Python-3.6.9.tar.xz
  • 解压文件 tar xf
  • 切换目录 cd
  • 可以查看帮助信息 README INSTALL 文件
  • 安装所需文件
  • 编译(检查程序所需的文件)./configure
  • 构建安装程序 make
  • 安装程序 make install
  • 配置环境变量

作 者:郭楷丰

出 处:https://www.cnblogs.com/guokaifeng/

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • django 路由系统

    #注意事项 1 urlpatterns中的元素按照书写顺序从上往下逐一匹配正则表达式,一旦匹配成功则不再继续。 2 若要从URL中捕获一个值,只需要在它周围放置...

    郭大侠
  • 进程的状态转换详解

      进程状态:一个进程的生命周期可以划分为一组状态,这些状态刻画了整个进程。进程状态即体现一个进程的生命状态。

    郭大侠
  • MongoDB(NoSQL) 非关系型数据库

    出 处:https://www.cnblogs.com/guokaifeng/

    郭大侠
  • React 列表、键值与表单

    例子中使用map方法将每个元素的值*2,最后得到的数组为:[2, 4, 6, 8, 10]。在React中,处理组件数组的方式与之类似。

    随风溜达的向日葵
  • React学习(3)——列表、键值与表单 原

        例子中使用map方法将每个元素的值*2,最后得到的数组为:[2, 4, 6, 8, 10]。在React中,处理组件数组的方式与之类似。

    随风溜达的向日葵
  • React 状态、事件与动态渲染

    例子中使用map方法将每个元素的值*2,最后得到的数组为:[2, 4, 6, 8, 10]。在React中,处理组件数组的方式与之类似。

    随风溜达的向日葵
  • 一行代码就能解决的智力题

    本文是我在 LeetCode 刷题过程中总结的三道有趣的「脑筋急转弯」题目,可以使用算法编程解决,但只要稍加思考,就能找到规律,直接想出答案。

    帅地
  • 一行代码就能解决的智力题

    游戏规则是这样的:你和你的朋友面前有一堆石子,你们轮流拿,一次至少拿一颗,最多拿三颗,谁拿走最后一颗石子谁获胜。

    灵魂画师牧码
  • 一行代码就能解决的智力题

    今天分享读者小伙伴 labuladong 总结的 LeetCode 上三道有趣的「脑筋急转弯」题目,可以使用算法编程解决,但只要稍加思考,就能找到规律,直接想出...

    五分钟学算法
  • 以小程序攻占微信生态,茵曼内衣借助微盟赋能强势圈粉

    半江瑟瑟半江红,突破传统电商平台中心化痛点,小程序电商作为后起之秀,以微信生态为基础,盘活流量,点燃创业者热情,崛起之势日渐凶猛。风口之上,茵曼内衣凭借微盟的小...

    曾响铃

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动