从了解Linux开始

关注【郑大钱呀】【公】【众】【号】,我们一起交流,一起学习。

linux系统介绍

Linux是一个免费开源基于Posix和Unix的多用户、多任务、支持多线程和多CPU的操作系统。以继承Unix以网络为核心思想,是一个性能稳定的多用户网络操作系统。值得注意的是Linux并没有包括Unix源码,它是按照公开的POSIX标准重新编写的。Linux大量使用了由麻省剑桥免费软件基金的GNU软件,同时Linux自身也是用它们构造而成。

发展史

  1. 1991年,芬兰大学生Linux torvalds(Linux之父),在赫尔辛基大学时开发了该系统,并将这项成果通过互连网与其他同学共享,主要用于学术领域;
  2. 1993年,约百余名程序员参与了Linux内核代码编写、修改工作;
  3. 1994年3月Linux 1.0发布,代码量17万行,当时是按照完全自由免费的协议发布,随后正式采用GPL协议;
  4. 1995年1月,Bob Young创办了RedHat(小红帽),以GNU、Linux为核心,集成了400多个源代码开放的程序模块,即RedHat Linux,称为Linux发行版
  5. 1996年6月Linux 2.0内核发布,此内核有大约40万行代码,并可以支持多个处理器。此时的Linux 已经进入了实用阶段;

Linux的主流的版本

Linux从狭义上来说,Linux只是一个kernel(内核),但是内核,一般的普通用户很难使用,于是就公司、团体以及个人,在内核的基础上,开发出适合用户使用的Linux版本,形成了一个个Linux的发行版本,目前主流的linux版本如下:

  1. Debian:是一款历史很悠久的系统,属于祖先级别,几乎一半以上的发行版都是基于Debian来衍生出来的。
  2. Deepin:深度操作系统(deepin),是一个致力于为全球用户提供美观易用、安全稳定服务的Linux发行版,同时也一直是排名最高的来自中国团队研发的Linux发行版,适合于国人的操作系统。
  3. Ubuntu:基于Debian开发,历史也比较悠久,系统也很成熟,社区的支持很完善,就是稳定性可能不是很好。
  4. Kali:Kali Linux也是基于Debian的Linux发行版,该版本中预装了很多的渗透软件,在渗透测试中使用较多。
  5. CentOS:社区企业操作系统,是企业Linux发行版领头羊Red Hat Enterprise Linux的再编译版本,开源免费,且相对于其他 Linux 发行版,其稳定性很好。

除了上面的,还有其它很多的Linux发行版,这里就不逐一叙述了。

为什么要学习Linux?

Linux最初的时候,是面向专业的计算机人员的,它没有可视化的图形界面,所有的操作全部都是靠命令执行完成的,也就意味着,你不需要使用鼠标,扛着键盘就可以走天下,目前大量的公司服务器都是使用的Linux系统,所以不管是作为运维、开发还是软件测试的人员,了解并掌握Linux系统的使用,是很有必要的。

Linux目录结构

在我们正式学习Linux的命令前,我们先学习一下Linux的目录结构,Linux与Windows系统不同,在Windows的系统中将硬盘划分成不同的盘符,如C盘、D盘等等,但是在Linux的系统中,是没有盘符的概念的,就只有一个根目录/,所有的文件都是在根目录的下面,在根目录下面有很多的子目录,子目录下面又可以很多的子目录,Linux的目录结构有点像一棵树。在Linux的目录系统中,有一些常用的目录是需要了解并掌握的,他们有着特殊的作用和意义,具体如下:

目录作用
/bin存放二进制文件,所谓二进制文件就类似于Windows系统中的可执行文件,比如*.exe *.msi文件
/sbin管理系统相关的目录,超级管理员使用
/boot系统引导程序所需文件目录
/dev设备软件目录,比如磁盘、光驱等
/etc配置文件存放目录
/lib共享库文件和内核模块存放目录
/home在Linux的系统中,有两种角色一种为管理员用户(root),另一种为普通用户,此目录就是普通用户默认数据存放的目录
/rootLinux超级权限用户root的家目录
/mnt临时挂载存储设备的挂载点
/tmp临时文件目录
/opt一般在是第三方软件的安装目录,比如在Linux系统装一个微信,就可以选择安装在该目录,当然也可以安装在其他目录,这里只是建议将第三方软件安装在opt目录
/proc操作系统运行时,进程信息和内核信息存放目录
/usr用户或系统软件应用程序目录
/var存放系统日志目录

Linux提示符

当我们登录Linux服务器,或者使用其他Linux连接工具(如 Final Shell、Xshell等)连接到Linux服务器时,我们会看到屏幕上有一个提示符,如下:

[root@VM-0-6-centos ~]# 

我们来解释一下其中的意义

  • root:表示当前登录的用户名
  • @:为分隔符
  • VM-0-6-centos:表示Linux服务器的计算机名
  • ~:表示当前所在目录
  • #:表示当前用户是一个超级管理员用户。

开关机命令

学习第一步,先得学会关机,友情提示,谨慎操作,非必要不要对服务器开关机。

关机机命令

关机命令,一般有如下几个,haltpoweroffshutdown,值得注意的是:shutdown的命令只有拥有root权限才能使用。

  1. halt: 立刻关机,停掉系统,但是主板还是通电的
  2. poweroff: 掉电关机,过程是先关闭系统,然后掉电的
  3. shutdown -h now:立刻关机,如果将now换成一个数字,则表示在几分钟后关机,如在10分钟后自动关机,命令可以这样写shutdown -h 10,当你在关机前又想要取消关机时,可以执行如下命令:shutdown -a取消关机。

重启命令

  1. reboot: 重启
  2. shutdown -r now: 立刻重启
  3. shutdown -r 10: 10分钟后重启
  4. shutdown -r 20:35: 在时间为20:35时重启

文件显示命令(ls)

作用:查看当前目录内容,如果什么参数不加,表示显示非隐藏文件,隐藏的文件是不显示的,ls命令常用的参数如下:

选项参数对应英文含义
-aall显示置顶目录下所有子目录与文件,包含隐藏文件
-llist以列表方式显示文件的详细信息
-hhuman配合-l选项,以人性化的方式显示文件大小

示例1:直接使用ls命令

ls

运行结果如下:

abc  def

从上面的运行结果我们得知,显示了两个非隐藏的文件,但是我此时想看到所以的文件,包括非隐藏的文件怎么办呢,此时就需要加上-a选项。

示例2:显示所有的文件

ls -a

运行结果如下:

.  ..  abc  .bash_history  .bash_logout  .bash_profile  .bashrc  .cshrc  def  **.pip**  .pydistutils.cfg  .ssh  .tcshrc  .viminfo

从上面的运行结果,我们看出,所有的文件都显示出来了,这里我们说一下,文件名称前带.的表示隐藏文件,文件名称加粗的,并且显示成蓝色的表示目录。上面我们虽然显示出了所有的文件,但是看不到文件的一些详细信息,比如文件的大小啊、权限啊等等,这个时候我们就可以通过-l命令来以列表的方式,显示文件的详细信息。

示例3:以列表的形式显示文件的详细信息

方式1:ls -l
方式2(简写):ll

运行结果如下:

总用量 8
-rw-r--r-- 1 root root 4 724 14:14 abc
-rw-r--r-- 1 root root 4 724 14:14 def

从上面的运行结果我们看出,显示的信息更全,具体如下:

  • 第一部分(-rw-r--r--) :表示该文件的权限, 第一部分的首个字符表示文件的类型,d是目录-表示是文件。后面是权限以3个字母为一个单位,第一个是使用者,第二个是同组,第三个是其他组。rwx表示使用者有:读,写,执行权限。r-x表示没有写权限。
  • 第二部分(1):表示链接个数,有3,4,2
  • 第三部分(root):表示所有者
  • 第四部分(root):表示所有者的组
  • 第五部分(4):表示文件的大小,默认为字节
  • 第六部分(7月 24 14:14):表示最后修改的时间
  • 第七部分(abc):表示文件的名称

我们从上面的结果看出,虽然显示出了文件的详细信息,但是只是显示了非隐藏文件的详细信息,但是如果我们既要显示出所有的文件,也要显示出它们的详细信息,我们需要怎么做呢?此时我们可以通过将两个参数组合起来使用。

示例4:参数组合使用,显示出所有文件及其详情

 ls -al

运行结果如下:

总用量 60
dr-xr-x---.  4 root root 4096 724 14:14 .
dr-xr-xr-x. 24 root root 4096 724 15:36 ..
-rw-r--r--   1 root root    4 724 14:14 abc
-rw-r--r--   1 root root  497 724 14:28 .bash_history
-rw-r--r--.  1 root root   18 520 2009 .bash_logout
-rw-r--r--.  1 root root  176 520 2009 .bash_profile
-rw-r--r--.  1 root root  176 923 2004 .bashrc
-rw-r--r--.  1 root root  100 923 2004 .cshrc
-rw-r--r--   1 root root    4 724 14:14 def
drwxr-xr-x   2 root root 4096 722 21:26 .pip
-rw-r--r--   1 root root   73 722 21:26 .pydistutils.cfg
drwx------   2 root root 4096 313 2018 .ssh
-rw-r--r--.  1 root root  129 124 2004 .tcshrc
-rw-------   1 root root  669 724 14:14 .viminfo

从上面我们的显示结果我们发现,文件大小的单位是字节,不太人性化,不太直观,此时我们可以通过添加"h"参数让他更加的人性化显示

示例5:人性化显示文件详情

ls -alh

运行结果如下:

总用量 60K
dr-xr-x---.  4 root root 4.0K 724 14:14 .
dr-xr-xr-x. 24 root root 4.0K 724 15:42 ..
-rw-r--r--   1 root root    4 724 14:14 abc
-rw-r--r--   1 root root  571 724 15:42 .bash_history
-rw-r--r--.  1 root root   18 520 2009 .bash_logout
-rw-r--r--.  1 root root  176 520 2009 .bash_profile
-rw-r--r--.  1 root root  176 923 2004 .bashrc
-rw-r--r--.  1 root root  100 923 2004 .cshrc
-rw-r--r--   1 root root    4 724 14:14 def
drwxr-xr-x   2 root root 4.0K 722 21:26 .pip
-rw-r--r--   1 root root   73 722 21:26 .pydistutils.cfg
drwx------   2 root root 4.0K 313 2018 .ssh
-rw-r--r--.  1 root root  129 124 2004 .tcshrc
-rw-------   1 root root  669 724 14:14 .viminfo

ls默认显示的是当前的目录,我们也可以在使用的时候指定目录位置.

示例6:ls 显示指定目录下的文件

ls -l /etc

显示结果如下:

总用量 1428
drwxr-xr-x.  3 root root   4096 616 2020 abrt
drwxr-xr-x.  4 root root   4096 127 2017 acpi
-rw-r--r--.  1 root root     44 722 21:28 adjtime
-rw-r--r--.  1 root root   1512 112 2010 aliases
-rw-r--r--   1 root root  12288 313 2018 aliases.db
drwxr-xr-x.  2 root root   4096 127 2017 alsa
drwxr-xr-x.  2 root root   4096 616 2020 alternatives
-rw-------.  1 root root    541 824 2016 anacrontab
-rw-r--r--.  1 root root    148 112 2016 asound.conf
...

清屏命令(clear)

当我们在终端输入很多命令的时候,整个终端看上去不清爽,这个时候我们可以使用清屏命令,清空整个终端。

clear

历史命令(history)

有的时候,我们想去执行之前使用过的命令,但是我们又记不起来了,这个时候,我们可以使用历史命令,用来查看我们之前使用的命令有哪些。

history

执行结果如下:

[root@iZ8vb15btme7rdyvwu43dyZ study]# history
   43  ls
   44  clear
   45  pip3 install pymdown-extensions
   46  pip3 install python-markdown-math
   47  pip3 list
   48  ps -ef|grep uwsgi
   49  uwsgi --stop /root/finance/Finance/uwsgi.pid
   50  ps -ef|grep uwsgi
   51  ps -ef|grep nginx
[root@iZ8vb15btme7rdyvwu43dyZ study]# 

帮助命令(man)

Linux中有众多的命令,有很多的用法,我们有时候会忘记了一个命令怎么使用,有哪些参数,这个时候就可以使用man命令来查询,用法如下:man 命令名称,比如我们想要查询ls命令的用法,man ls,执行结果如下:

User Commands                                                                                                      LS(1)

NAME
       ls - list directory contents

SYNOPSIS
       ls [OPTION]... [FILE]...

DESCRIPTION
       List information about the FILEs (the current directory by default).  Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.

       Mandatory arguments to long options are mandatory for short options too.

       -a, --all
              do not ignore entries starting with .

       -A, --almost-all
              do not list implied . and ..

       --author
              with -l, print the author of each file

       -b, --escape
              print C-style escapes for nongraphic characters

       --block-size=SIZE
              with -l, scale sizes by SIZE when printing them; e.g., '--block-size=M'; see SIZE format below

       -B, --ignore-backups
              do not list implied entries ending with ~

       -c     with -lt: sort by, and show, ctime (time of last modification of file status information); with -l: show ctime and sort by name; otherwise: sort by ctime, newest first

       -C     list entries by columns

       --color[=WHEN]
              colorize the output; WHEN can be 'always' (default if omitted), 'auto', or 'never'; more info below

       -d, --directory
              list directories themselves, not their contents

       -D, --dired
              generate output designed for Emacs' dired mode

       -f     do not sort, enable -aU, disable -ls --color

结尾

本期的内容就到这里了,如有不足之处还请大家多多指正,欢迎大家留言、关注、转发、收藏,感谢卓尔不凡的文档整理,谢谢。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

郑大钱呀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值