zoukankan      html  css  js  c++  java
  • Linux1:Linux概述

    为什么服务器尤其大型服务器都使用Linux系统

    服务器尤其是大型服务器一般都使用Linux系统,有以下几点原因:

    1、成本低,Linux操作系统是免费的

    2、安全性好,Linux采取了许多的安全措施,包括对读写权限控制、带保护的子系统、审计跟踪、核心授权等,为网络多用户环境中的用户提供了必要的安全保障

    3、网络功能强大,Linux在通信和网络功能方面优于其他操作系统

    4、开源性,这意味着管理员可以对系统随意进行定制

    Linux用户和组的概念

    1、用户

    用户是能够获取系统资源的权限的集合

    2、Linux用户组分类

    (1)管理员root:具有使用系统所有权限的用户,UID为0

    (2)普通用户:即一般用户,其使用系统的权限受限,UID在500-60000之间

    (3)系统用户:保障系统运行的用户,一般不提供密码登录系统,UID在1-499之间

    3、与用户相关的文件

    (1)/etc/passwd

    其格式为account:password:UID:GID:GECOS:diretory:shell

    a)account表示用户名或账号

    b)password表示用户密码占位符

    c)UID表示用户ID号

    d)GID表示用户所在组的ID号

    e)diretory表示用户所在的家目录

    f)shell表示用户所在的编程环境

    我自己家里面装了一个ubuntu12,该文件的内容为:

    (2)/etc/shadow

    其格式为account:password:最近更改密码的日期:密码不可更改的天数:密码需要重新更改的天数:密码更改前的告警期限:密码过期的宽限时间:账号失效日期:保留

    4、用户组分类

    (1)普通用户组:可以加入多个用户

    (2)系统组:一般加入一些系统用户

    (3)私有组:当创建用户时,如果没有为其指明所属组,则为其定义一个私有的用户组,其名称与用户名同名。如果把其他用户加入了该私有组中,那么私有组就变成了普通组

    同组用户有一样的权限

    5、与用户组相关的文件

    /etc/group,其格式为group_name:password:GID:user_list

    (1)group_name表示组名

    (2)password表示组密码

    (3)GID表示组ID号

    (4)user_list表示已group_name为附加组的用户列表

    su和sudo的区别

    1、su

    su就是切换用户的工具。比如以用户A登录,但要添加用户任务,执行useradd,A用户并没有这个权限,而这个权限恰恰root拥有。解决办法无非两个,一个是退出A,以root登录;另一个是通过su切换到root,等任务完成后再退出root。

    注意,"su"和"su -"同样是切换到root用户,二者之间还是有区别的。前者只是切换了root身份,但是Shell环境仍然是普通用户的Shell;后者连用户和 Shell环境一起切换成了root身份。只有切换了Shell环境才不会出现PATH环境变量错误,可以通过pwd命令验证。

    su确实给管理带来了方便,通过切换到root下,就能完成所有系统管理,只要把 root密码交给任何一个普通用户,他都能切换到root来完成所有的系统管理工作。但通过su切换到root也有不安全的因素,多用户操作时,只要有任 何一个人操作失误,都可能造成系统崩溃或数据损失。

    2、sudo

    通过sudo,我们能把某些超级权限有针对性地下方,并且不需要普通用户知道root密码,所以sudo相对于权限无限制的su来说,还是比较安全的,所以sudo也称为受限制的su。另外sudo是需要授权许可的,所以它也被称为授权许可的su。

    sudo执行命令的流程是当前用户切换到root(或其它执行切换到的用户),然后以root(或其他执行切换到的用户)身份执行命令,执行完成后,直接退回到当前用户。而这些的前提是要通过sudo配置文件/etc/sudoers来进行授权。

    文件权限

    我截取自己ubuntu下某路径下的文件列表:

    详细解释一下:

    1、第一列表示文件/文件夹的种类和权限

    (1)第一个字符表示文件种类,"d"表示目录,"-"表示普通文件

    (2)第二至第四个字符表示文件/文件夹所有者的权限,r表示读权限、w表示写权限、x表示执行权限

    (3)第五至第七个字符表示文件/文件夹所属群组的权限,r表示读权限、w表示写权限、x表示执行权限

    (4)第八至第十个字符表示文件/文件夹其他用户的权限,r表示读权限、w表示写权限、x表示执行权限

    2、第二列表示文件/文件夹的连接数

    3、第三列表示文件/文件夹的拥有者

    4、第四列表示文件/文件夹所属的组

    5、第五列表示文件/文件夹大小

    6、第六列表示文件/文件夹最后修改时间

    7、第七列表示文件/文件夹名称

  • 相关阅读:
    系统架构设计(通用型)
    主流Java数据库连接池分析(C3P0,DBCP,TomcatPool,BoneCP,Druid)
    JS实现多行文本最后是省略号紧随其后还有个超链接在同一行的需求
    java判断集合是否相等
    JavaScript调试技巧
    linux下出现ping:unknown host www.baidu.com问题时的解决办法——ubuntu下局域网络的配置
    linux网络配置相关命令、虚拟网络接口eth0:0
    网络游戏服务器架构设计
    Linux 下使用静态google protocl buffer
    php-fpm nginx 使用 curl 请求 https 出现 502 错误
  • 原文地址:https://www.cnblogs.com/szlbm/p/5554037.html
Copyright © 2011-2022 走看看