上一篇提到,Linux发行版就是把系统内核、附带的工具程序以及应用软件包等打包在一起,组成的一个集合体或者套件。而CentOS是其中一种发行版。 这是Linux操作系统的结构。

其结构可以用kernel、shell和utility三个不同层次的同心圆来表示。其中kernel控制着系统运行的各个方面,影响着一个系统的整体性能 我们平时在Linux的使用中也大多是和shell、工具(utility)打交道。有了这些工具,程序员在shell命令行下几乎可以完成所有想做的工作,也正因为如此,Linux比Windows更加适合远程管理,因为后者的远程操作一般在GUI下完成,这无疑影响了服务器端的性能。

Linux下的工具是非常丰富的,任何一个程序员都可以共享自己做的小工具。如果我们想要掌握这些工具的使用。最好是系统看书比如《鸟哥的私房菜》。不想看书的话,搜到的有些资料内容比较零散,有的可能像百科一样,太过于全面[1]。这里试图从初学者用的角度来了解、演示一些常用管理工具。

Step by step

1 xshell连上CentOS之后,如何关机重启呢?如何安装新软件?

$ sudo shutdown -h 或halt

重启系统:$ sudo reboot

安装git: $ sudo yum install git

2 查看当前目录的信息

ls(list)命令可用来显示目录的内容。配合参 数的使用,能以不同的方式显示目录内容。[4]

格式:ls [参数] [目录名或文件名]

[fsj@vm-centos shit]$ ls

a b c d shit.c

[fsj@vm-centos shit]$ ll

total 0

-rw-rw-r--. 1 fsj fsj 0 Mar 27 14:07 a

-rw-rw-r--. 1 fsj fsj 0 Mar 27 14:07 b

-rw-rw-r--. 1 fsj fsj 0 Mar 27 14:07 c

-rw-rw-r--. 1 fsj fsj 0 Mar 27 14:07 d

-rwxr--r--. 1 fsj fsj 0 Mar 27 13:10 shit.c

[fsj@vm-centos shit]$ ll -a

total 8

drwxr-x--x. 2 fsj fsj 4096 Mar 27 14:24 .

drwxr-xr-x. 3 fsj fsj 4096 Mar 17 22:06 ..

-rw-rw-r--. 1 fsj fsj 0 Mar 27 14:07 a

-rw-rw-r--. 1 fsj fsj 0 Mar 27 14:07 b

-rw-rw-r--. 1 fsj fsj 0 Mar 27 14:07 c

-rw-rw-r--. 1 fsj fsj 0 Mar 27 14:07 d

-rw-rw-r--. 1 fsj fsj 0 Mar 27 14:24 .hiden

-rwxr--r--. 1 fsj fsj 0 Mar 27 13:10 shit.c

其中ll等价于ls -l.

查看当前路径

[fsj@vm-centos shit]$ pwd

/home/fsj/temp/shit

3 如何对文件和目录进行操作呢?

file fileName: 显示指定file的信息

touch fileName:更新指定文件的时间,或新建空文件

cp path1 path2:将path1的文件复制到path2

rm fileName:删除指定文件

mv:移动指定文件(类似cp),或重命名文件

find:查找文件,如:find ./logs/ -name 'error*' 表示在logs目录下查找名称以error开头的文件

[fsj@vm-centos shit]$ file a

a: ASCII text

[fsj@vm-centos shit]$ cp a a-bak

[fsj@vm-centos shit]$ ls

a a-bak b c d shit.c

[fsj@vm-centos shit]$ mv a a-origin

[fsj@vm-centos shit]$ ls

a-bak a-origin b c d shit.c

[fsj@vm-centos shit]$ find a*

a-bak

a-origin

[fsj@vm-centos shit]$ rm a-bak

[fsj@vm-centos shit]$ ls

a-origin b c d shit.c

4 如何文本文件?

cat fileName:显示指定文件的全部内容

more:分页显示指定文件

less:分页显示指定文件

head:显示指定文件头部的信息

tail:显示指定文件尾部的信息

[fsj@vm-centos shit]$ cat a-origin

aaaaa

2

5 命令使用技巧[2]

在终端输入命令,按回车执行

命令可用tab键自动进行补齐

一般可使用-h、-help或--help参数查看命令 的说明以及该命令可用的参数

使用man(manual)命令也可查看其它命令的 说明以及其可用的参数

格式:man 其它命令

[fsj@vm-centos shit]$ man cat

包括前面用到的几个命令在内,Linux命令可以分类如下:

浏览目录命令:ls pwd cd

浏览文件命令:ls cat more less head tail

目录操作命令:chmod mkdir rm mv cp find

文件操作命令:chmod vi rm mv cp ln find grep tar gzip

如何编辑文件?——vim编辑器入门

vim编辑器是需要CentOS自带的vi编辑器的加强版,需要下载:# yum install vim.

这里简单举两个栗子:

1 新建文件hello.txt,输入内容,保存并退出

$ vim hello.txt

按i键进入编辑模式,输入三行内容

按ESC键进入命令模式,输入:wq,保存并退出

2 编辑hello.txt,删除第一行,复制第二行到尾部

试着操作之后会对命令模式与插入模式有直观的了解。

用户管理

1 借助GUI新建用户test0

查看该用户的home目录:

[root@vm-centos home]# ll -a test0/

total 32

drwx------. 4 test0 test0 4096 Mar 6 19:44 .

drwxr-xr-x. 4 root root 4096 Mar 6 19:44 ..

-rw-r--r--. 1 test0 test0 18 Jul 24 2015 .bash_logout

-rw-r--r--. 1 test0 test0 176 Jul 24 2015 .bash_profile

-rw-r--r--. 1 test0 test0 124 Jul 24 2015 .bashrc

-rw-r--r--. 1 test0 test0 500 Nov 27 2014 .emacs

drwxr-xr-x. 2 test0 test0 4096 Nov 12 2010 .gnome2

drwxr-xr-x. 4 test0 test0 4096 Mar 6 17:00 .mozilla

2 用useradd新建用户test1,并添加密码

[root@vm-centos home]# useradd test1

[root@vm-centos home]# passwd test1

Changing password for user test1.

New password:

BAD PASSWORD: it is WAY too short

BAD PASSWORD: is a palindrome

Retype new password:

passwd: all authentication tokens updated successfully.

[root@vm-centos home]# ll -a test1/

total 32

drwx------. 4 test1 test1 4096 Mar 27 11:41 .

drwxr-xr-x. 5 root root 4096 Mar 27 11:41 ..

-rw-r--r--. 1 test1 test1 18 Jul 24 2015 .bash_logout

-rw-r--r--. 1 test1 test1 176 Jul 24 2015 .bash_profile

-rw-r--r--. 1 test1 test1 124 Jul 24 2015 .bashrc

-rw-r--r--. 1 test1 test1 500 Nov 27 2014 .emacs

drwxr-xr-x. 2 test1 test1 4096 Nov 12 2010 .gnome2

drwxr-xr-x. 4 test1 test1 4096 Mar 6 17:00 .mozilla

3 切换用户

test0-->test1-->root

[test0@vm-centos home]$ su test1

Password:

[test1@vm-centos home]$

[test1@vm-centos home]$ su

Password:

[root@vm-centos home]#

4 删除用户

[root@vm-centos home]# userdel test1

userdel: user test1 is currently used by process 3087

删除失败,接着参数rf,强制删除

[root@vm-centos home]# userdel -rf test1

userdel: user test1 is currently used by process 3087

虽然依然提示test1正在被使用,但是删除成功了。其中r表示删除该用户的home文件夹,f表示强制删除。

[root@vm-centos home]# userdel -h

Usage: userdel [options] LOGIN

Options:

-f, --force force removal of files,

even if not owned by user

-h, --help display this help message and exit

-r, --remove remove home directory and mail spool

-Z, --selinux-user remove SELinux user from SELinux user mapping

拾遗

Linux下有三类用户,超级用户(root)具有操作系统的一切权限,UID值均为0。普通用户具有操作系统有限的权限,只能管理自己启动的进程,UID值500~6000。系统用户是为了方便系统管理,满足相应的系统进程对文件属主的的要求,系统用户不能登录,UID值1~499。

这里新建普通用户的UID会依次增长,fsj为500,test0为501,test1为502

$ id fsj

uid=500(fsj) gid=500(fsj) groups=500(fsj)

$ id test0

uid=501(test0) gid=501(test0) groups=501(test0)

文件/目录权限管理

1 文件详情中有权限信息

[fsj@vm-centos shit]$ ll

total 0

[fsj@vm-centos shit]$ touch shit.c

[fsj@vm-centos shit]$ ll

total 0

-rw-rw-r--. 1 fsj fsj 0 Mar 27 13:10 shit.c

其中第一列-rw-rw-r--表示当前文件权限,其他列see also:[4].

这一列的第一个字符表示文件类型。取值包括:

d :目录

- :文件

l :链接

s :socket

p :named pipe

b :block device

c :character device

剩下9位,3为一组。格式为:[属主权限][属组用户权限][其他用户权限]

属主和属组用户为rw-,有读、写权限。

其他用户为r--,有读权限。

2 用chmod设置文件权限

把前面shit.c权限改为只允许属主读写执行(rwx),其他用户只能读(r).

[fsj@vm-centos shit]$ chmod 744 shit.c

[fsj@vm-centos shit]$ ll

total 0

-rwxr--r--. 1 fsj fsj 0 Mar 27 13:10 shit.c

744什么和rwx对应起来的呢?

我们用二进制来表示是否允许某个权限,允许就置1,不允许就置0,比如777表示所有用户都有读、写、执行权限。 777(8进制)=111111111(2进制),9位都置一,就是所有权限都开。

这里744(8进制)=111100100(2进制),属主读写执行(rwx),其他用户只能读(r).

换算的时候rwx权重分别看作421那就简单了,比如rw-就是110,也是6.

修改权限有什么用呢?当你搞一些配置文件的时候会想起来的~

ref

linux服务器配置和管理,Linux服务器配置和管理:一般管理相关推荐

  1. linux进程的高级管理,Linux高级程序设计(第2版) PDF扫描版[94MB]

    Linux高级程序设计(第2版)以Linux操作系统(内核为2.6版本)为开发平台.GCC 4.0/GDB 6.3为开发调试环境,详细介绍了Linux系统下编程环境及编程工具.文件管理(文件类型.AN ...

  2. 第3章 远程连接管理Linux实践

    第3章 远程连接管理Linux实践 3.1 远程连接Linux系统管理 3.1.1 为什么要远程连接Linux系统 在很多机构的培训教学中,教员通常会直接在虚拟机界面或者虚拟机里的图形界面讲解知识,这 ...

  3. PostgreSQL服务器管理:服务器配置

    https://www.sypopo.com/post/715XYNwNoY/ PostgreSQL服务器管理:服务器配置 本文档为PostgreSQL 9.6.0文档,本转载已得到原译者彭煜玮授权. ...

  4. 远程管理linux系统工具,远程管理Linux系统工具的设计与实现Linux013

    一种远程管理Linux系统工具的设计与实现 摘  要 现在,Linux已经是应用比较广泛的操作系统之一,在其系统中有很多的服务.为了实现远程配置和管理Linux中的各种服务,需要有一种远程管理Linu ...

  5. 使用Powershell管理Linux 下的 SQL Server

    使用Powershell管理Linux 下的 SQL Server 我们上一篇文章介绍了在Centos 7.3下安装及配置 SQL Server,今天我们主要介绍的是如何在Windows下使用Powe ...

  6. linux 下mysql的管理,Linux下 MySQL安装和基本管理

    •安装linux一些必须的包: 1.yum install gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-deve ...

  7. linux磁盘管理系列一:磁盘配额管理

    磁盘管理系列 linux磁盘管理系列一:磁盘配额管理   http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...

  8. 安装网页图形界面管理Linux

    安装网页图形界面管理Linux webmin下载地址 http://www.webmin.cn/download.html 下载webmin [root@localhost ~]# wget http ...

  9. 巧妙设置Android来方便管理Linux和Windows

    前几天晚上睡觉前没事,想了想如何实现用Android手机来管理Linux和Windows,比如连接到Linux的SSH(Secured Shell)和连接到Windows的cmd(直接访问PowerS ...

  10. 操作系统内存管理-Linux版

    引言 操作系统内存管理:总的来说,操作系统内存管理包括物理内存管理和虚拟内存管理. 物理内存管理: 包括程序装入等概念.交换技术.连续分配管理方式和非连续分配管理方式(分页.分段.段页式). 虚拟内存 ...

最新文章

  1. 应聘苹果数据科学家,你需要知道些什么?
  2. ossec 学习二 (ossec -analogi安装)
  3. ARM 之十四 ARMv9 架构前瞻
  4. 【我所认知的BIOS】— uEFI AHCI Driver(8) — Pci.Read()
  5. RTKLIB源码解析(三)、 Rinex文件读取(rinex.c)——1
  6. 征途LINUX服务端脚本技术,征途脚本高手进阶编写教程
  7. 基于JS实现简单甘特图
  8. table表格锁定任意数量列或行
  9. 汇聚优质AR应用开发者,技术助力AR领域繁荣生态
  10. 【PS实例】照片拼图的制作
  11. 【课程设计】Java Web 学生成绩管理系统
  12. Transfer Learning - Overview(详细讲解)
  13. 嵌入式--LCD常用接口介绍
  14. 按键消抖+点亮led灯
  15. html改变元素外边距,CSS 简明教程 - 外边距 ( margin ) 属性
  16. 二代测序技术之illumina测序技术原理简介
  17. SLAM导航机器人零基础实战系列:(四)差分底盘设计——2.stm32主控软件设计
  18. BW顾问进阶:SAP BW后勤数据源抽取机制
  19. C++之begin()和end()分析(C艹11)
  20. mdb java_java从mdb文件中读出数据

热门文章

  1. 分布式计算,大型网站技术架构:核心原理与案例分析
  2. 云计算基础技术及解决方案介绍 - ZCCT考试
  3. c语言如何实现正负交替输出指令,C语言的谜题
  4. curl: (60) Peer‘s Certificate issuer is not recognized
  5. 三维装箱论文阅读小结
  6. python修改V4L2摄像头参数
  7. 为什么接吻的时候一定要紧闭双眼?
  8. 计算机主机内部的除尘课件,怎么给电脑主机机箱内部除尘
  9. 网传国内互联网梯队划分,网友坐不住了!
  10. JPA 5.映射关联关系