Linux快速入门教程

1 基础知识

  • 应用领域:服务器使用。

  • linux启动:Linux系统的启动过程可以分为5个阶段:

  1. 内核的引导。当计算机打开电源后,首先是BIOS开机自检,按照BIOS中设置的启动设备(通常是硬盘)来启动。操作系统接管硬件以后,首先读入 /boot 目录下的内核文件。
  2. 运行 init。init 进程是系统所有进程的起点,你可以把它比拟成系统所有进程的老祖宗,没有这个进程,系统中任何进程都不会启动。init 程序首先是需要读取配置文件 /etc/inittab。/boot /init 进程
  3. 系统初始化。在init的配置文件中有这么一行: si::sysinit:/etc/rc.d/rc.sysinit 它调用执行/etc/rc.d/rc.sysinit,而rc.sysinit是一个bash shell的脚本,它主要是完成一些系统初始化的工作,rc.sysinit是每一个运行级别都要首先运行的重要脚本。
  4. 建立终端 。rc执行完毕后,返回init。这时基本系统环境已经设置好了,各种守护进程也已经启动了。
  5. 用户登录系统。命令行登录、ssh登录、图形界面登录。
  • 运行级别:

    • 运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
    • 运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
    • 运行级别2:多用户状态(没有NFS)
    • 运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
    • 运行级别4:系统未使用,保留
    • 运行级别5:X11控制台,登陆后进入图形GUI模式
    • 运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动
  • 窗口切换:默认登录就是第一个窗口,也就是tty1,这个六个窗口分别为tty1,tty2 … tty6,你可以按下Ctrl + Alt + F1 ~ F6 来切换它们。当你进入命令窗口界面后再返回图形界面只要按下Ctrl + Alt + F7 就回来了。

  • Linux关机:正确的关机流程为:sync > shutdown > reboot > halt

sync 将数据由内存同步到硬盘中。
shutdown –h now 立马关机
shutdown –h 20:25 系统会在今天20:25关机
shutdown –h +10 十分钟后关机
shutdown –r now 系统立马重启
shutdown –r +10 系统十分钟后重启

reboot 就是重启,等同于 shutdown –r now
halt 关闭系统,等同于shutdown –h now 和 poweroff
  • Linux 忘记密码:进入单用户模式更改一下root密码即可。
  • 远程登陆:Linux系统中是通过ssh服务实现的远程登录功能,默认ssh服务端口号为 22。Window系统上 Linux 远程登录客户端有SecureCRT, Putty, SSH Secure Shell等,本文以Putty为例来登录远程服务器。putty下载地址:http://www.putty.org/

2 Linux 系统目录结构

登录系统后,在当前命令窗口下输入命令ls /

  • /bin:目录存放着最经常使用的命令。
  • /boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
  • /dev :dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。
  • /etc:存放所有的系统管理所需要的配置文件和子目录。
  • /home:用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
  • /lib:这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
  • /media:linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。
  • /mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。
  • /opt: 这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
  • /proc:这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
  • /root:该目录为系统管理员,也称作超级权限者的用户主目录。
  • /sbin:s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
  • /selinux: 这个目录是Redhat/CentOS所特有的目录,Selinux是一个安全机制,类似于windows的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。
  • /srv: 该目录存放一些服务启动之后需要提取的数据。
  • /sys:该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。
  • /tmp:这个目录是用来存放一些临时文件的。
  • /usr: 这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。
  • /usr/bin:系统用户使用的应用程序。
  • /usr/sbin:超级用户使用的比较高级的管理程序和系统守护程序。
  • /usr/src:内核源代码默认的放置目录。
  • /var:这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
  • /run:是一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。如果你的系统上有 /var/run 目录,应该让它指向 run。

3 文件操作

3.1 文件基本操作

在Linux中第一个字符代表这个文件是目录、文件或链接文件等等。

  • 当为[ d ]则是目录;
  • 当为[ - ]则是文件;
  • 若是[ l ]则表示为链接文档(link file);
  • 若是[ b ]则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
  • 若是[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。
[root@www /]# ls -l
total 64
dr-xr-xr-x   2 root root 4096 Dec 14  2012 bin
dr-xr-xr-x   4 root root 4096 Apr 19  2012 boot
……

Linux快速入门教程_第1张图片

3.2 文件属主和属组

[root@www /]# ls -l
total 64
drwxr-xr-x 2 root  root  4096 Feb 15 14:46 cron
drwxr-xr-x 3 mysql mysql 4096 Apr 21  2014 mysql
……
  • chgrp:更改文件属组,语法:-R:递归更改文件属组,该目录下的所有文件的属组都会更改。
chgrp [-R] 属组名 文件名
  • chown:更改文件属主,也可以同时更改文件属组,语法:
chown [–R] 属主名 文件名
chown [-R] 属主名:属组名 文件名

进入 /root 目录(~)将install.log的拥有者改为bin这个账号:

[root@www ~] cd ~
[root@www ~]# chown bin install.log
[root@www ~]# ls -l
-rw-r--r--  1 bin  users 68495 Jun 25 08:53 install.log

将install.log的拥有者与群组改回为root:

[root@www ~]# chown root:root install.log
[root@www ~]# ls -l
-rw-r--r--  1 root root 68495 Jun 25 08:53 install.log
  • chmod:更改文件9个属性
    Linux文件属性有两种设置方法,一种是数字,一种是符号。Linux文件的基本权限就有九个,分别是owner/group/others三种身份各有自己的read/write/execute权限。各权限的分数对照表如下:r:4,w:2,x:1
    每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: [-rwxrwx—-] 分数则是:
    • owner = rwx = 4+2+1 = 7
    • group = rwx = 4+2+1 = 7
    • others= —- = 0+0+0 = 0

所以等一下我们设定权限的变更时,该文件的权限数字就是770啦!变更权限的指令chmod的语法是这样的:xyz : 就是刚刚提到的数字类型的权限属性,为 rwx 属性数值的相加。

chmod [-R] xyz 文件或目录

举例来说,如果要将.bashrc这个文件所有的权限都设定启用,那么命令如下:

[root@www ~]# ls -al .bashrc
-rw-r--r--  1 root root 395 Jul  4 11:45 .bashrc
[root@www ~]# chmod 777 .bashrc
[root@www ~]# ls -al .bashrc
-rwxrwxrwx  1 root root 395 Jul  4 11:45 .bashrc

那如果要将权限变成 -rwxr-xr-- 呢?那么权限的分数就成为 [4+2+1][4+0+1][4+0+0]=754。

3.3 处理目录的常用命令

  • ls: 列出目录
    Linux快速入门教程_第2张图片
  • cd:切换目录
  • pwd:显示目前的目录
  • mkdir:创建一个新的目录 Linux快速入门教程_第3张图片
  • rmdir:删除一个空的目录
    Linux快速入门教程_第4张图片
  • cp: 复制文件或目录
    Linux快速入门教程_第5张图片
  • rm: 移除文件或目录
  • mv: 移动文件与目录,或修改文件与目录的名称
    Linux快速入门教程_第6张图片

3.4 文件内容查看

  • cat 由第一行开始显示文件内容
    Linux快速入门教程_第7张图片
  • tac 从最后一行开始显示,可以看出 tac 是 cat 的倒着写!
  • nl 显示的时候,顺道输出行号!
    Linux快速入门教程_第8张图片
  • more 一页一页的显示文件内容
    Linux快速入门教程_第9张图片
  • less 与 more 类似,但是比 more 更好的是,该命令可以往前翻页!
    Linux快速入门教程_第10张图片
  • head 只看头几行
    在这里插入图片描述
  • tail 只看末尾几行
    在这里插入图片描述

4 用户和用户组

实现用户账号的管理,要完成的工作主要有如下几个方面:

  • 用户账号的添加、删除与修改。
    Linux快速入门教程_第11张图片
 # useradd –d /usr/sam -m sam

Linux快速入门教程_第12张图片Linux快速入门教程_第13张图片

  • 用户口令的管理。用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用,即使是指定空口令。
    Linux快速入门教程_第14张图片
    Linux快速入门教程_第15张图片
  • 用户组的管理。用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。
    Linux快速入门教程_第16张图片
    Linux快速入门教程_第17张图片
    Linux快速入门教程_第18张图片

5 磁盘管理

Linux磁盘管理好坏直接关系到整个系统的性能问题。Linux磁盘管理常用三个命令为df、du和fdisk。

  • df:列出文件系统的整体磁盘使用量,可以利用该命令来获取硬盘被占用了多少空间,目前还剩下多少空间等信息。
    Linux快速入门教程_第19张图片
    Linux快速入门教程_第20张图片
  • du:检查磁盘空间使用量,Linux du命令是对文件和目录磁盘使用的空间的查看。
    Linux快速入门教程_第21张图片
    Linux快速入门教程_第22张图片
  • fdisk:用于磁盘分区
    Linux快速入门教程_第23张图片
    列出所有分区信息:fdisk -l

6 vim编辑器

Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。
Linux快速入门教程_第24张图片
基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode),输入模式(Insert mode)和底线命令模式(Last line mode)。 这三种模式的作用分别是:

(1)命令模式

户刚刚启动 vi/vim,便进入了命令模式。此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令。以下是常用的几个命令:

  • i 切换到输入模式,以输入字符。
  • x 删除当前光标所在处的字符。
  • : 切换到底线命令模式,以在最底一行输入命令。

若想要编辑文本:启动Vim,进入了命令模式,按下i,切换到输入模式。命令模式只有一些最基本的命令,因此仍要依靠底线命令模式输入更多命令。

(2)输入模式

在命令模式下按下i就进入了输入模式。在输入模式中,可以使用以下按键:

  • 字符按键以及Shift组合,输入字符
  • ENTER,回车键,换行
  • BACK SPACE,退格键,删除光标前一个字符
  • DEL,删除键,删除光标后一个字符
  • 方向键,在文本中移动光标
  • HOME/END,移动光标到行首/行尾
  • Page Up/Page Down,上/下翻页
  • Insert,切换光标为输入/替换模式,光标将变成竖线/下划线
  • ESC,退出输入模式,切换到命令模式

(3)底线命令模式

在命令模式下按下:(英文冒号)就进入了底线命令模式。底线命令模式可以输入单个或多个字符的命令,可用的命令非常多。在底线命令模式中,基本的命令有(已经省略了冒号):

  • q 退出程序
  • w 保存文件

按ESC键可随时退出底线命令模式。简单的说,我们可以将这三个模式想成底下的图标来表示:
Linux快速入门教程_第25张图片
(4)使用案例

  • 创建文件,按下i进入编辑模式,Esc回到一般模式,:wq保存且退出,:q退出
$ vim runoob.txt
  • 常见按键
    Linux快速入门教程_第26张图片
    Linux快速入门教程_第27张图片
    Linux快速入门教程_第28张图片
    Linux快速入门教程_第29张图片
    Linux快速入门教程_第30张图片

7 yum 命令

yum( Yellow dog Updater, Modified)是一个Shell前端软件包管理器。可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。该命令多用于RedHat、CentOS等操作系统。
Linux快速入门教程_第31张图片
常见命令

  1. 列出所有可更新的软件清单命令:yum check-update

  2. 更新所有软件命令:yum update

  3. 仅安装指定的软件命令:yum install

  4. 仅更新指定的软件命令:yum update

  5. 列出所有可安裝的软件清单命令:yum list

  6. 删除软件包命令:yum remove

  7. 查找软件包 命令:yum search

  8. 清除缓存命令:

     yum clean packages: 清除缓存目录下的软件包
     yum clean headers: 清除缓存目录下的 headers
     yum clean oldheaders: 清除缓存目录下旧的 headers
     yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的headers
    

Linux快速入门教程_第32张图片
Linux快速入门教程_第33张图片
Linux快速入门教程_第34张图片

以上就是对Linux系统常用的操作命令进行的总结,相信本文对不熟悉linux命令的小白有很大帮助,可以快速入门。最后,欢迎大家转载,转载请注明出处。

你可能感兴趣的:(Linux)