Linux简介

操作系统

操作系统(Operating System,OS)是软件的一部分,它是硬件基础上的第一层软件,是硬件和其它软件沟通的桥梁

Linux

Linux 英文解释为 Linux is not Unix。
Linux 是一个类似 Unix 的开源操作系统内核,在功能和用户体验上进行优化,在使用方式上与 UNIX 非常类似。
Linux在安全性性与高性能方面优于Windows。

Linux的发行版

  • Red Hat
    包括 RHEL(Red Hat Enterprise Linux,收费版本)和 CentOS(免费版)、Fedora Core(免费桌面版)。成熟,兼容性好,具有强大的英文文档与开发社区的支持。
  • Debian
    稳定,占用内存小,严谨(但使用门槛高)。
  • Ubuntu
    由Debian发展而来,具有图形界面,适合充当桌面操作系统而非服务器操作系统。

Linux的安全性

Linux在对计算机实体没有所有权时保证安全。


Linux简介_第1张图片

Linux文件

文件目录结构标准

在Linux中,文件/目录名区分大小写,文件看扩展名(后缀名)没有特殊作用

  • /
    根目录
  • /bin/
    存放系统命令。
  • /boot/
    系统启动目录,保存与系统启动相关的文件,如内核文件和启动引导程序(grub)文件
  • /dev/
    设备文件保存位置
  • /etc/
    配置文件保存位置。系统内所有采用默认安装方式(rpm 安装)的服务配置文件全部保存在此目录中,如用户信息、服务的启动脚本、常用服务的配置文件等
  • /home/
    普通用户的主目录(也称为家目录)。如用户 a 的主目录是 /home/a
  • /root/
    root 用户的主目录。
  • /media/ 或 /mnt/ 或 /misc/
    挂载目录。
  • /lib/
    系统调用的函数库保存位置
  • /opt/
    第三方安装的软件保存位置。
  • /tmp/
    临时目录,建议每次开机清空。
  • /srv/
    服务数据目录
  • /sbin/
    系统环境相关命令。
  • /usr
    (注意不是 user),全称为 Unix Software Resource,用于存储系统软件资源,类似 Windows 系统中 C:\Windows\ + C:\Program files\ 两个目录的综合体。
  • /var
    用于存储动态数据,例如缓存、日志文件、软件运行过程中产生的文件等。
文件系统

分区主要分为两大部分(暂时不提超级块):小部分用于保存文件的 inode (i 节点)信息;剩余的大部分用于保存 block 信息。

每个文件都独自占用一个 inode,文件内容由 inode 的记录来指向;
如果想要读取文件内容,就必须借助目录中记录的文件名找到该文件的 inode,才能成功找到文件内容所在的 block 块;

  • inode
    默认大小为 128 Byte,用来记录文件的权限(r、w、x)、文件的所有者和属组、文件的大小、文件的状态改变时间(ctime)、文件的最近一次读取时间(atime)、文件的最近一次修改时间(mtime)、文件的数据真正保存的 block 编号。每个文件需要占用一个 inode。

  • block
    大小可以是 1KB、2KB、4KB,默认为 4KB。block 用于实际的数据存储(目录的block中包括了其下文件的文件名),如果一个 block 放不下数据,则可以占用多个 block。例如,有一个 10KB 的文件需要存储,则会占用 3 个 block,虽然最后一个 block 不能占满,但也不能再放入其他文件的数据。这 3 个 block 有可能是连续的,也有可能是分散的。

通过ln命令可以给文件创建链接

  • -s:建立软链接文件。如果不加 "-s" 选项,则建立硬链接文件;
  • -f:强制。如果目标文件已经存在,则删除目标文件后再建立链接文件;
ln [选项] 源文件 目标文件
  • 软链接:
    类似于 Windows 系统中给文件创建快捷方式,即产生一个特殊的文件,该文件用来指向另一个文件,此链接方式同样适用于目录。
    • 指令中源文件必须写绝对路径
  • 硬链接:给一个文件的 inode 分配多个文件名,通过任何一个文件名,都可以找到此文件的 inode,从而读取该文件的数据信息。
    • 修改存在硬链接的文件会导致另一文件同样被修改,删除则互不影响
    • 硬链接不能跨文件系统(分区)建立,因为在不同的文件系统中,inode 号是重新计算的。
    • 硬链接不能链接目录

文本处理

使用文本编辑器
  • Vim是Vi的加强版
  • nano
查看文本
cat 文件名//查看文本文件,但不适合太长的文本
head -n 文件名//查看前n行
tail -n 文件名//查看后n行

软件安装

基础的软件安装方式有SRPM 源码包RPM 二进制包两种方式,都比较繁琐,需要手动解决包之间具有依赖性的问题

yum

全称“Yellow dog Updater, Modified”,是改进型的 RPM 软件管理器,yum 在服务器端存有所有的 RPM 包,并将各个包之间的依赖关系记录在文件中,解决了 RPM 所面临的软件包依赖问题。
yum 网络源配置文件位于 /etc/yum.repos.d/ 目录下,文件扩展名为*.repo

rpm -qa yum//查看已安装的yum版本
yum list//查询所有已安装和可安装的软件包。
yum list 包名//查询执行软件包的安装情况
yum install 包名//安装
yum update 包名//升级软件包
yum remove 包名//卸载软件包(包括其所有依赖,因此尽量不要用)

用户与权限

  • /etc/passwd 文件,是系统用户配置文件,存储了系统中所有用户的基本信息,每行信息如下

用户名:密码(x表示有密码):UID(用户ID):GID(组ID):描述性信息:主目录:默认Shell

  • /etc/shadow 密码文件
  • /etc/group 用户组配置文件
  • /etc/gshadow 用户组密码文件

在Linux中为python文件定义默认执行

在文件头部添加#!/usr/bin/env python#!/usr/bin/python
前者表示从环境变量中寻找python并用于执行,后者为直接指定一个路径来执行。
此时在命令行中直接输入如下内容即可执行该python文件。

./test.py

如报错Permission denied则为权限不足,需要通过chmod指令添加执行权限。

你可能感兴趣的:(Linux简介)