W1 linux 操作系统基础
Linux 只是一个系统内核,不同的组织拿到这个内核,自己添加相应的功能和基础软件再打包发布成为相应的系统版本
目前我们用的 Linux 都是一个 Linux 内核+GNU 工具的组合
centos 内核查看 uname -r
1、linux 的发行版本和不同发行版之间的联系和区别
发行版本:
slackware:SUSE Linux Enterprice Server(SLES) ,OpenSuse 桌面
debian: ubuntu,deepin(国产,深度),mint
redhat:
RHEL: RedHat Enterprise Linux ,每 18 个月发行一个新版本,收费
CentOS: Community Enterprise Operatiing System 兼容 RHEL 的格式
中标麒麟:中标软件
Fedora:每 6 个月发行一个版本
Alpine: 一个面向安全的轻型 Linux 发行版。它不同于通常 Linux 发行版,Alpine 采用了 musl libc 和 busybox 以减小系统的体积和运行时资源消耗,但功能上比 busybox 又完善的多,只有 5M 左右大小.适合在 docker 中测试
ArchLinux:轻量简洁,遵循 K.I.S.S.原则( keep it simple and stupid ),
Manjaro 是基于 Arch Linux 的 Linux 发行版
Gentoo:极致性能,不提供传统意义的安装程序,下载源代码在本机上编译安装软件
LFS:Linux From scratch 自制 Linux,只是一个说明书
Android:kernel+busybox(工具集)+java 虚拟机
2、centos7.6 安装
mac 版
docker 安装https://www.runoob.com/docker/macos-docker-install.html、
docker 镜像地址: https://hub.docker.com/_/centos?tab=tags&page=1&ordering=last_updated
找到 7.6 相关 7.6.1810
运行 docker
docker pull centos:7.6.1810
找到对应镜像 id,这里是f1cd
docker images
启动 centos
docker run -ti f1cb /bin/bash
就进入 os 系统里了
查看系统版本
cat /etc/redhat-release
3、配置环境变量,实现执行 history 的时候可以看到执行命令的时间
4、linux 哲学思想总结
一切都是一个文件,包括硬件.window 一切皆窗口.
小型,单一用途的程序
链接程序,共同完成复杂任务
shell 脚本
避免令人困惑的用户界面
配置数据存储在文本中
5、Linux 常用命令使用格式
COMMAND [OPTIONS...] [ARGUMENTS...]
短选项:UNIX 风格选项,-c 例如:-l, -h
长选项:GNU 风格选项,--word 例如:--all, --human
BSD 风格选项: 一个字母,例如:a,使用相对较少
参数:命令的作用对象,比如:文件名,用户名等
echo 命令
简介:
只用于显示一行文本,可以实现显示字符串,显示变量等;
也可以配合-e 选项显示转义字符;
常用选项:
6、Linux 发行版的系统目录名称命名规则和用途
命名规则:
使用 LSB(Linux Standard Base)分层结构
遵循 FHS (Filesystem Hierarchy Standard) 标准
文件名最长 255 个字节
包括路径在内文件名称最长 4095 个字节
蓝色-->目录 绿色-->可执行文件 红色-->压缩文件 浅蓝色-->链接文件 灰色-->其他文件
除了斜杠和 NUL,所有字符都有效.但使用特殊字符的目录名和文件不推荐使用,有些字符需要用引号来引用它们
标准 Linux 文件系统(如 ext4),文件名称大小写敏感
7、描述文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息?
每个文件都有两类相关数据:
metedata,元数据,也就是属性
data 文件内容
查看
stat
file:文件的完整名称
Size:文件的数据大小
Blocks:占用磁盘的块数
IO Block:IO 块的大小
Device:所在设备
regular:文件的类型
Indoe:文件的节点
Links:文件的链接数
Access:文件的访问权限
Uid:属主 id/用户
Gid:属组 id/组名
access time :访问时间,atime,读取文件内容
modify time :修改时间, mtime,改变文件内容(数据)
change time :改变时间, ctime,元数据发生改变
修改:
touch
命令有两个功能:一是创建新的空文件,二是改变已有文件的时间戳属性。
touch
命令会根据当前的系统时间更新指定文件的访问时间和修改时间。如果文件不存在,将会创建新的空文件,除非指定了”-c”或”-h”选项
8、软连接和硬链接的区别
软连接,其实就是新建立一个文件,这个文件就是专门用来指向别的文件的。软连接的 inode 跟原文件的 inode 是不一致的
硬链接是不会建立 inode。他只是在文件原里的 inode link count 域再增加 1 而已,也因此硬链接是不可以跨越文件系统的。
硬链接是一个文件别名。
软链接可以跨文件系统,硬链接不可以
软链接可以对一个不存在的文件名进行链接,硬链接不行。
软链接可以对目录进行连接,硬连接不可以
两种链接都可以通过 ln 来创建,ln 默认创建的是硬链接
使用-s 开关可以创建软链接。
版权声明: 本文为 InfoQ 作者【Kevin】的原创文章。
原文链接:【http://xie.infoq.cn/article/c0eb14216ac10ee873e06609a】。文章转载请联系作者。
评论