光阴似箭,时光如梭,转年出来工作已经3年了。从一个职场新人慢慢熟悉职场的工作方式,适应职场工作的环境,学习了很多知识,也总结了很多经验。现在的目标就是一步一个脚印,慢慢打磨自己,希望早日成为取代其他人后的无可取代。

我的工作是运维工程师, 从最开始入行到现在成为运维组的组长,负责小组的几个小伙伴。回想自己当时学习Linux的时候,都是自己网上找教程,然后照着一篇一篇敲命令,记笔记。最近有时间再来整理一下Linux比较初级的知识,准备把自己的以前的学习的一些记录和经验记录下来,放在自己的博客上,也希望对其他想入Linux坑的小伙伴一些帮助吧,沿着别人走过的路总会比自己无脑乱撞好一些,进步更快一些。

先讲一下Linux目录的结构和每个目录的作用,操作Linux都是无界面的纯命令窗口,所以熟悉目录结构很有必要。

  首先Linux的四种文件类型:

  1.可分享的:可以分享给其他系统挂载使用的目录,所以包括执行文件与用户的邮件等数据, 是能够分享给网络上其他主机挂载用的目录;

   2.不可分享的:自己机器上面运作的装置文件或者是与程序有关的socket文件等, 由于仅与自身机器有关,所以当然就不适合分享给其他主机了。

  3.不变的:有些数据是不会经常变动的,跟随着distribution而不变动。 例如函式库、文件说明文件、系统管理员所管理的主机服务配置文件等等;

  4.可变动的:经常改变的数据,例如登录文件、一般用户可自行收受的新闻组等。

  事实上,FHS针对目录树架构仅定义出三层目录底下应该放置什么数据而已,分别是底下这三个目录的定义:

  / (root, 根目录):与开机系统有关;

  /usr (unix software resource):与软件安装/执行有关;

  /var (variable):与系统运作过程有关。

  /:根目录,Linux文件系统的入口.也是最高一级的目录.

  /etc:系统配置文件目录,不建议在此目录下存放可执行文件,重要的配置文件有/etc/inittab、/etc/fstab、/etc/init.d、/etc/X11、/etc/sysconfig、/etc/xinetd.d等,修改配置文件之前记得备份。

  /usr:应用程序存放目录,软件的安装路径

  /usr/lib:存放不能直接运行的,却是许多程序运行所必需的一些函数库文件。

  /usr/bin:存放应用程序;

  /usr/share:存放共享数据;

  /usr/lib:存放不能直接运行的,却是许多程序运行所必需的一些函数库文件。

  /usr/local:存放软件升级包。

  /usr/share/doc:系统说明文件存放目录。

  /usr/share/man:程序说明文件存放目录。

  /var:放置系统执行过程中经常变化的文件;

  /var/log:随时可能更改的日志文件;

  /var/log/message:所有的登录文件存放目录;

  /var/spool/mail:邮件存放的目录;

  /var/run:程序或服务启动后,其PID(端口号)存放在该目录下。

  /lib:系统使用的函数库的目录,程序在执行过程中,需要调用一些额外的参数时需要函数库的协助。比较重要的目录为/lib/modules。

  /bin:可执行二进制文件的目录,如常用的命令ls、tar、mv、cat等;类似于/usr/bin

  /home:系统默认的用户家目录,新增用户账号时,用户的家目录都存放在此目录下,~表示当前用户的家目录,~test表示用户test的家目录。用户的个人文件都存放在此目录下。

/tmp一般用户或正在执行的程序临时存放文件的目录,任何人都可以访问,重要数据不可放置在此目录下

对于这些目录结构,想学习的小伙伴还是应该熟记一下。我最开始学习这些的时候,逛了很多网站和论坛,像鸟叔写的关于Linux系统文章都有看过,不过支持的教程系统版本在当时可以使用,但随着Linux的几个版本系统的更新,有些已经不适应了,像防火墙,老版的iptabels和新版的firewall就存在较大的区别。现在推荐可以使用刘遄的《Linux就该这么学》,这本教材是基于最新的企业版Linux系统—RHEL7编写的,符合大部分企业使用的Linux系统,即使有些公司使用的社区版的centos7,两者区别也不大,同样可以通用。

这里本打算给大家推荐2个自己用的Linux在线学习的网站,

菜鸟教程:很多朋友应该都知道吧,这个网站有更新很多类型的学习资源,都是入门级的。对想学习,想入坑的朋友可以来试一试。

linuxprobe:这个网站原来就是我推荐书籍的那个同名网站,了解一下原来能在线学习《Linux就该这么学》这本书的内容。然后还有一些知识干货分享,Linux书籍可以下载。

最后希望所以小伙伴可以在Linux这条运维路上折腾出自己想要的成绩和可期的明天。

写给正在入坑linux系统的伙伴的更多相关文章

  1. 搞明白这八个问题,Linux系统就好学多了

    导读 正在犹豫入坑Linux学习的同学或者已经入坑的同学,经常会问到这样八个问题.今天,这些问题我都会一一解答,希望我的看法能帮助各位同学.常言道“好的开始是成功的一半”,如果你明白了以下八个问题,就 ...

  2. 搞明白这八个问题,Linux系统就好学多了。

    正在犹豫入坑Linux学习的同学或者已经入坑的同学,经常会问到这样八个问题.今天,这些问题我都会一一解答,希望我的看法能帮助各位同学.常言道“好的开始是成功的一半”,如果你明白了以下八个问题,就能有一 ...

  3. 在虚拟机的Linux系统下安装wineqq

    |   版权声明:本文为博主原创文章,未经博主允许不得转载. 本文参考教程:http://www.ubuntukylin.com/ukylin/forum.php?mod=viewthread& ...

  4. Linux运维一定要知道的六类好习惯和23个教训,避免入坑!

    Linux运维一定要知道的六类好习惯和23个教训,避免入坑! 从事运维三年半,遇到过各式各样的问题,数据丢失,网站挂马,误删数据库文件,黑客攻击等各类问题. 今天简单整理一下,分享给各位小伙伴. 一. ...

  5. Linux探索之路1---CentOS入坑笔记整理

    前言 上次跟运维去行方安装行内环境,发现linux命令还是不是很熟练.特别是用户权限分配以及vi下的快捷操作.于是决定在本地安装一个CentOS虚拟机,后面有时间就每天学习一点Linux常用命令. 作 ...

  6. 初入linux系统

    作为微软的老铁粉了,看到微软进军linux这么久了,是时候该跟上脚本了,不然该落后了,脚步是如此之快,着实让我吃了一惊,说干就干, 绝不是开玩笑的,谁也阻止不了.net开源,跨平台的脚步了.以前别人说 ...

  7. 烧写u_boot系统和linux系统

    今天下午准备烧写一下u_boot还有linux系统,因为是笔记本电脑,吐槽一下,笔记本电脑的usb转串口不是怎么稳定,dnw下对应的驱动也不怎么好用,导致在笔记本电脑上烧写系统的成功率比较低,本来三点 ...

  8. 写个 Hello world - 前端从入坑到弃坑系列教程(1)

    这是一个系列教程<前端从入坑到弃坑>的第一篇. HTML 是什么 说白了,HTML 就是网页的内容.比如你现在正在阅读的这个网页的内容,就是 HTML.如果你还不明白,请继续往下阅读. 写 ...

  9. 入坑第二式 golang入坑系统

    史前必读: 这是入坑系列的第二式,如果错过了第一式,可以去gitbook( https://andy-zhangtao.gitbooks.io/golang/content/ )点个回放,看个重播.因 ...

随机推荐

  1. 【Codeforces 17E】Palisection

    Codeforces 17 E 题意:给一个串,求其中回文子串交叉的对数. 思路1:用哈希解决.首先求出每个点左右最长的回文串(要分奇数长度和偶数长度),然后记录经过每个点的回文串的个数,以及它们是在 ...

  2. 用Qt程序打开.txt 文件的时候,出现乱码的情况

    打开*.txt 文件出现乱码的情况,说明编码格式不对,一般的Windows下创建的txt 文件,到ubuntu 系统中打开会出现乱码的情况, 下面的代码读取文件,并且转化编码格式 void MainW ...

  3. day86

    视图组件 基于以往我们所用的视图函数,我们发现其中冗余的代码比较多,今天就来对其进行封装,争取做一个代码洁癖者 原来我们的视图函数: class Book(APIView): def get(self ...

  4. oracle 记录被另一个用户锁住

    第一步:查询处用户,被锁表名,sessionID select b.owner,b.object_name,l.session_id,l.locked_modefrom v$locked_object ...

  5. C# 程序默认使用管理员权限(转载)

    1.从A程序启动B程序,当B程序需要管理员权限的时候代码如下 A程序里面启动B程序的代码如下 ProcessStartInfo startInfo = new ProcessStartInfo(); ...

  6. (转)Linux SSH配置和禁止Root远程登陆设置

    原文 一.修改vi /etc/ssh/sshd_config 文件 1.修改默认端口:默认Port为22,并且已经注释掉了:修改是把注释去掉,并修改成其它的端口. 2.禁止root用户远程登陆:修改P ...

  7. 【Qt】窗口居中显示

    w.move((a.desktop()->width() - w.width())/, (a.desktop()->height() - w.height())/); 上述方法可以置中,但 ...

  8. jdbc操作根据bean类自动组装sql,天啦,我感觉我实现了hibernate

    场景:需要将从ODPS数仓中计算得到的大额可疑交易信息导入到业务系统的mysql中供业务系统审核.最简单的方式是用阿里云的组件自动进行数据同步了.但是本系统是开放是为了产品化,要保证不同环境的可移植性 ...

  9. Unity 敌人波次设计

    一.平均时间随机敌人 将所有种类敌人预制物体放在一个列表里面,每隔时间T从列表中随机选出一个生成在场景中. 二.时间加权紧迫度随机敌人 在随机情况下每种敌人出现的概率近似相等,当敌人种类较多时,有可能 ...

  10. better-scroll的参数和方法

    格式:let obj = new BScroll(object,{[option1,],.,.}); 注意,如果在某一个组件内创建了一个BScroll的实例,在组件生命周期结束前要注意调用destro ...