linux学习笔记一(初识)

Linux操作系统

一、什么是Linux/h3>

Linux是一个开源免费的操作系统,和我们的Window一样,主要用来安装到服务器上,运行各种软件和服务。

Linux之父 – 林纳斯(linus)

Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、台式计算机。
有 redhot-红帽linux、centos、乌班图(linux中的windows)等发行版。

1.1 思考 – 既然已经会用Window操作系统,为什么还需要学习Linux/h4>

windows与linux的设计理念有根本性的区别:

1、windows:用户想要做什么,不需要自己知道如何去实现,也不明白自己怎么去实现的,更不打算为自己的行为负责,因为Windows已经将这些功能所封装好了。

? windows将所有操作都隐藏起来,只给用户提供封装好的功能,用户只能在操作系统限制的范围内操作,如果是普通用户,会觉得很windows很舒服,因为不需要思考。只需要按照指示去操作。但对于开发人员而言,这种设计理念是无法接受的,一旦要做出一些超越封装好的功能之外的事情,就会出现各种难以意料的情况,而且很多情况下,这些问题是无解的。或者只能用极其蹩脚扭曲的方式去勉强处理,然后瑟瑟发抖地期待着程序能正常运行。因为一旦程序崩溃,你也会为之崩溃。在windows下作开发,那种体验就好比在陪伴一个任性的女朋友,虽然长得清秀靓丽,但喜怒无常,她开心时,彼此相安无事,她不开心时,就直接哭闹,你问她:怎么了也不说原因,只是一直哭。你只能试着用各种方式去哄她开心,即使这次能哄好她,并不意味着下次同样的方法能奏效。这样的相处方式,很累。不是她不好,而是彼此不适合。即使终日相伴,却依然对其一无所知。

2、 linux:用户知道自己想要什么,也明白自己在做什么,并且会为自己的行为负责。

? linux将所有操作权都交给了用户,她相信用户是理性的聪明的,忠实地执行用户的指令,向用户暴露所有的细节。用户在拥有自主权的同时也拥有了破坏力,因此普通用户根本无法驾驭,可能一个指令就把操作系统弄崩溃了。对于开发者而言,linux的开放与自由给了我们无限的可能性,我们能看到程序是如何运行的,运行 错也会有友好的提示。根据 错指引往往能将问题解决。与之相处,好比与一个成熟的女性相处,历经风雨,已经不再关注浮夸的外表,而是关注内在的涵养。刚接触时,可能会觉得她高冷,慢慢地,会发现她很善解人意,心情不好时她会跟你说是什么原因造成的,彼此商量如何解决这个问题,而不是无来由地崩溃。与之相处,会感到很舒服,彼此坦诚,无需套路,你在想什么,我都知道。我在念什么,你也明白。

? 因此,我选择linux的原因在于自由、舒服,简言之:爽!原文地址:

linux系统的启动过程也并没有想象中的那么复杂,其过程可以分为5个阶段:

  1. 内核的引导;
  2. 运行init;
  3. 系统初始化;
  4. 建立终端;
  5. 用户登录系统。

二、Linux的安装(这里的安装是个人学习所安装的过程)

window系统 -> VMware虚拟管理软件 -> 创建虚拟机(VM) -> 在虚拟机中安装CentOS 7(linux的发行版)

1.1 安装VMware

傻瓜式安装,如何不懂,自行百度。

1.2 安装CentOS7虚拟机

1.2.1 创建虚拟机

1.2.2 在虚拟机安装CentOS

1.2.3 思考 – 为什么要远程连接Linux操作系统/h5>

? 因为我们的开发完成的项目,往往都是部署在远程的服务器中的,所以需要使用远程连接的方法来操作服务器,我们不可能每当需要做一些服务器的更改的时候,跑到机房器操作服务器。

  • /bin
    bin是Binary的缩写, 这个目录存放着最经常使用的命令。

  • /boot:
    这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。

  • /dev :
    dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。

  • /etc:
    这个目录用来存放所有的系统管理所需要的配置文件和子目录。

  • /home
    用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账 命名的。

  • /lib
    这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。

  • /lost+found
    这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。

  • /media linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。

  • /mnt
    系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。

  • /opt
    这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。

  • /proc
    这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
    这个目录的内容不在硬盘上而是在内存里,我们也可以直接修改里面的某些文件,比如可以通过下面的命令来屏蔽主机的ping命令,使别人无法ping你的机器:

  • /root
    该目录为系统管理员,也称作超级权限者的用户主目录。

  • /sbin
    s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。

  • /selinux
    这个目录是Redhat/CentOS所特有的目录,Selinux是一个安全机制,类似于windows的防火墙,但是这套机制比较复杂,这个目录就是存放selinux相关的文件的。

  • /srv
    该目录存放一些服务启动之后需要提取的数据。

  • /sys
    这是linux2.6内核的一个很大的变化。该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。sysfs文件系统集成了下面3种文件系统的信息:针对进程信息的proc文件系统、针对设备的devfs文件系统以及针对伪终端的devpts文件系统。 该文件系统是内核设备树的一个直观反映。
    当一个内核对象被创建的时候,对应的文件和目录也在内核对象子系统中被创建。

  • /tmp
    这个目录是用来存放一些临时文件的。

  • /usr
    这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似与windows下的program files目录。

  • /usr/bin:
    系统用户使用的应用程序。

  • /usr/sbin:
    超级用户使用的比较高级的管理程序和系统守护程序。

  • **/usr/src:**内核源代码默认的放置目录。

  • /var
    这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。
    在linux系统中,有几个目录是比较重要的,平时需要注意不要误删除或者随意更改内部文件。
    /etc: 上边也提到了,这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动。
    /bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的执行文件的放置目录,比如 ls 就是在/bin/ls 目录下的。
    值得提出的是,/bin, /usr/bin 是给系统用户使用的指令(除root外的通用户),而**/sbin, /usr/sbin** 则是给root使用的指令。
    /var: 这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在/var/log 目录下,另外mail的预设放置也是在这里。

四、Linux的常用命令

4.1 基本命令

ifconfig

注意Windows系统的

查看当前的 络信息(ip地址)

ping ip地址

检测主机 络

who am i

查看当前的登录用户
su [账 名称]

切换用户,如果直接输su,表示切换到root账

pwd

打印输出当前的工作路径(打印当前在什么位置)

cd

进入某一个文件夹
cd后面可以跟绝对路径,也可以跟相对路径,如果是相对路径需要注意命令执行的位置

ll & ls

打印当前目录下的所有内容(子目录、子文件…)
参数:
-l 打印当前目录的详细信息
-a 打印当前目录的隐藏文件夹

clear

清空命令行

命令的小技巧:
1、通过方向键 上/下 找到曾经输入过的命令
2、通过tab键可以对文件夹/文件进行补全

4.2 文件夹的相关操作

mkdir -p 文件夹名/文件夹名

创建文件夹

参数:
-p 表示级联创建

mv

文件夹/文件的剪切,可以起到改名的效果

cp

文件夹/文件的复制
注意:复制文件夹时,需要添加**-r参数**,但是剪切不需要,

rm

删除文件/文件夹;在linux没有回收站,在试用rm命令的时候,一定要小心些,删除之后就无法再恢复了。

参数:
-r 表示删除文件夹
-f 表示强制删除,不用确认

4.3 文件以及文件内容的相关操作

vi & vim

创建并且编译文件

touch xxx

cat XXX

查看文件的所有内容,但是不能修改

more xxx

查看文件部分内容,逐步展示

head -n xxx

查看文件开头n行

tail -n xxx

参数:

-f

打包压缩命令

tar -zcf xxxx.tar.gz 待压缩文件…

解压缩的命令

tar -zxf xxxx.tar.gz

4.5 用户和用户组的相关操作

Linux的用户分类

超级用户 – root
普通用户 – id(500 ~ 60000)
伪用户 – id(1~499) :伪用户不能登录系统,也不会在/home下创建响应的文件夹,主要是执行一些系统命令

用户组

一个用户组可以包含多个用户
一个用户必须属于一个用户组

用户相关的配置信息

/etc/passwd 用户信息文件

/etc/shadow 保存密码信息

/etc/group 用户组信息

/etc/gshadow 用户组密码信息

Linux用户组的操作

Linux用户的操作

4.7 其他命令

poweroff 关机

reboot 重启

uname -a 查看linux的内核的版本

free 查看内存的使用情况

参数:-h ,homan

df 查看硬盘的使用情况

top 类似window的任务管理器

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年7月22日
下一篇 2020年7月22日

相关推荐