为什么服务器尤其大型服务器都使用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、第七列表示文件/文件夹名称

Linux1:Linux概述的更多相关文章

  1. Linux概述

    Linux概述 1.计算机资源 硬件资源 软件资源 硬件资源与软件资源之间的桥梁就是操作系统 2.操作系统分类 Windows :个人版用户最多 Mac :土豪机 Linux :主要应用于服务器 Un ...

  2. 一、Linux概述 二、Linux的安装 三、Linux的常用命令(重点)

    一.Linux概述###<1>操作系统 OS,管理和控制 计算机的 硬件和软件资源的 计算机程序. 最基本的系统软件. 是用户和计算机交互的桥梁,是硬件和软件交互的桥梁. 操作系统:she ...

  3. Linux 学习笔记02丨Linux 概述、常用快捷键、apt命令

    Chapter 1. Linux 概述 Linux 是一种自由和开放源码的 Unix 操作系统, 是一个基于 POSIX 和 UNIX 的多用户.多任务.支持多线程和多CPU的操作系统.只要遵循 GN ...

  4. Linux概述及简单命令

    Linux概述及简单命令 转自https://www.cnblogs.com/ayu305/p/Linux_basic.html 一.准备工作 1.环境选择:VMware\阿里云服务器 2.Linux ...

  5. 一、linux概述

    1. 学习Linux之前先了解Unix Unix是一个强大的多用户.多任务操作系统.于1969年在AT&T的贝尔实验室开发.UNIX的商标权由国际开放标准组织(The Open Group) ...

  6. Linux-(1)Linux概述

    一.概述 1.1 Linux的历史 操作系统,英语Operating System简称为OS.说道操作系统就需要先讲一讲Unix,UNIX操作系统,是一个强大的多用户.多任务操作系统, 支持多种处理器 ...

  7. Linux初学:(一)Linux概述

    Linux各个目录的结构介绍 Linux系统以目录的方式来组织和管理系统中的所有文件.Linux系统通过目录将系统中的所有的文件分级.分层组织在一起,形成了Linux文件系统的树形结构层次.以根目录“ ...

  8. 1.linux概述及如何访问

    1.linux终端访问及退出 1.1访问 linux有7个终端:(1个真实终端+6个虚拟终端) ctril+alt+Fn (Fn是指F1\F2..)切换终端 1.2退出: shutdown 缓冲一会关 ...

  9. (从终端看linux-1)linux tty pty pts 概念 区别

    基本概念: 1> tty(终端设备的统称):tty一词源于Teletypes,或者teletypewriters,原来指的是电传打字机,是通过串行线用打印机键盘通过阅读和发送信息的东西,后来这东 ...

随机推荐

  1. Robot Framework入门学习2 创建第一个测试用例

    本文章部分内容引自以下网址,感谢作者的辛苦分享 http://www.cnblogs.com/fnng/p/3871712.html http://blog.csdn.net/tulituqi/art ...

  2. ps 的一些小东西

    1.画圈 画框 新建图层--矩形选框工具(U)--左上角选 '路径'--画圆/画框--编辑(右键)--描边--ok. 2 ctrl+t 大小变换问题

  3. aa2

    option = { series : [ { name: 'Map', type: 'map', mapLocation: { x : 'left', y : 'top', height : 500 ...

  4. mysql用户的创建

    MySQL是采用c/s方式的,需要客户端登录服务器,那么可以登录账号叫做用户,这些用户的信息都存储在mysql数据库(mysql安装时默认有的一个数据库)中的user表中, 比如用户的名称,用户的密码 ...

  5. python subprocess 自动运行实验室程序

    import threading, os, subprocess, time exec_path = "/home/xhz/gems/ruby/amd...../bin/tester.exe ...

  6. AD帐户操作C#示例代码(二)——检查密码将过期的用户

    本文接着和大家分享AD帐户操作,这次开发一个简单的检查密码将过期用户的小工具. 首先,新建一个用户实体类,属性是我们要取的用户信息. public class UserInfo { /// <s ...

  7. python 装饰器修改调整函数参数

    简单记录一下利用python装饰器来调整函数的方法.现在有个需求:参数line范围为1-16,要求把9-16的范围转化为1-8,即9对应1,10对应2,...,16对应8. 下面是例子: def fo ...

  8. redis hash数据类型

    我们可以将Redis中的Hashes类型看成具有String Key和String Value的map容器.所以该类型非常适合于存储值对象的信息.如Username.Password和Age等.如果H ...

  9. Java Environment Setting

    As a non-Java developer, I am quit stuck in Java environment setting because I am not familiar with ...

  10. VC 单文档视图分割

    http://blog.csdn.net/smartwhitehorse/article/details/6707183 主要使用类:CSplitterWnd 问题:分割线的固定,需要重写CSplit ...