day01-Linux前言知识
来源:互联网 发布:英雄联盟 mac 国服 编辑:程序博客网 时间:2024/05/22 00:29
介绍课程:
中级: 初级:系统基础 中级:系统管理、服务安全及服务管理、Shell脚本;高级: MySQL数据库; cache & storage 集群: Cluster lb: 4layer 7layer ha: 分布式: zookeeper 分布式文件系统 虚拟化技术: xen kvm Openstack:IAAS云; 运维工具: ansible puppet(ruby), saltstack(python) 监控工具: zabbix 大数据处理: hadoop spark, storm elk: elasticsearch, logstash, kibana docker: Python: 一万小时定律:认证: RedHat: RHCSA RHCE RHCA培训: 加速知识获取过程; 有人监督,有环境;
纪律:
1、迟到
1分钟:2个;
请假一晌:60个;2、教室使用 全天开放; 拒绝玩游戏:3、上课期间 手机铃声关闭; 一次:30个;
作业和考试:
作业:
课前提问
博客作业
5w1h:
what, why, when, where, who
how
考试: 机试、笔试 及格:80分 一分:5个
上课环境:
172.16.0.0/16
Windows: 172.16.250.X
Linux: 172.16.249.X
X: 1-254
网关:172.16.0.1 DNS: 172.16.0.1 每位同学:172.16.Y.1-254 172.16.100+Y.1-254Server: 172.16.0.1, 192.168.0.254, 192.168.1.254 允许核心转发; DHCP、ftp、http、cobbler
VMware Workstation的使用:
现代计算机设备的组成部分: 运算器、控制器、存储器、输入设备、输出设备 CPU bus:总线 memory: 编址存储设备 read ahead IO: 与外部部件交互 磁盘: 网卡:虚拟机:虚拟计算机CPU:运算器、控制器 CPU指令,指令集; 特权指令:OS运行特权指令; 普通指令: 程序员:OS: Operating System 软件程序 通用目的 硬件驱动 进程管理 内存管理 网络管理 安全管理 System Call Syscall:系统调用 编程层次: 硬件规格:hardware specifiacation 系统调用: 库调用:library callUI: GUI: Graphic User Interface CLI: Command Line InterfaceABI: Application Binary InterfaceAPI:Application Programming InterfaceCPU架构类型: x86 x64 arm m68000, m68k power powerpc ultrasparc alpha 安腾WindowsLinux: Linus --> Linux GNU/LinuxUnix: System (Bell Lab) AIX (IBM) Solaris (SUN) HP-UX (HP) BSD: (BSRG)Berkeley System Distribution NetBSD OpenBSD FreeBSDMIT:Richard Stallman GNU: GNU is Not Unix; GPL:General Public License
计算机的基础知识:
CPU, memory, I/O
程序运行模式: 用户空间:user space, us 内核空间:system spacePOS: Portable Operating System POSIX API: 编程接口;运行程序格式: Windows: EXE, dll(dynamic link library) Linux: ELF, so(shared object) 程序:指令+数据 指令:只读 数据:读写 程序:算法+数据结构 库调用,系统调用:允许被调用的程序; malloc(), free() 编程语言: 汇编语言:微码编程 系统中某些与硬件相关的特有代码、驱动程序开发; 高级语言C, C++: 系统级应用、驱动程序 高级应用java, python, php: 应用程序 unix-like## Linux系统基础:Linux的发行版: slackware: suse opensuse debian: ubuntu mint redhat: rhel: redhat enterprise linux 每18个月发行一个新版本 CentOS:兼容rhel的格式 fedora:每6个月发行一个新版本 ArchLinux Gentoo LFS: Linux From scratch Android: kernel+busybox+java虚拟机GNU: GPLv2, GPLv3, LGPL(lesser) Apache: apache BSD: bsd A: 1000, GPL, B: 20000, 20问题1:CentOS和Linux是什么关系?CentOS和RHEL是什么关系?问题2:各种开源协议的具体细节? GPL, LGPL, Apache, BSD程序包管理器: rpm: RHEL, Fedora, S.u.S.E, CentOS dpt: Debian, Ubuntu自由软件: 自由使用;自由学习和修改;自由分发;自由创建衍生版;Linux的哲学思想: 1、一切皆文件; 把几乎所有资源,包括硬件设备都组织为文件格式; 2、由众多单一目的小程序组成;一个程序只实现一个功能,而且要做好; 组合小程序完成复杂任务; 3、尽量避免跟用户交互; 目标:实现脚本编程,以自动完成某些功能; 4、使用纯文本文件保存配置信息; 目标:一款使用的文本编程器即能完成系统配置工作;如何获取CentOS的发行版: http://mirrors.aliyun.com http://mirrors.sohu.com http://mirrors.163.com登录: root/mageedu # startx &终端: 用户与主机交互,必然用到的设备; 物理终端:直接接入本机的显示器和键盘设备;/dev/console 虚拟终端:附加在物理终端之上的以软件方式虚拟实现的终端,CentOS 6默认启动6个虚拟终端 Ctrl+Alt+F#: [1,6] 图形终端:附加在物理终端之上的以软件方式虚拟实现的终端,但额外会提供桌面环境; 设备文件路径:/dev/tty# 模拟终端: 图形界面下打开的命令行接口(图形桌面打开命令行 像Windows的DOS命令行一样), 基于ssh协议或telnet协议等远程打开的界面(在图形桌面通过XManager和XShell输入账号密码打开的命令行) 设备文件:/dev/pts/# [0,oo无穷大) 查看当前的终端设备:tty交互式接口:启动终端后,在终端设备附加一个交互式应用程序 GUI: X protocol, window manager, desktop Desktop: GNOME (C, gtk) KDE (C++, qt) XFCE (轻量级桌面) CLI: shell程序: sh (bourn) csh tcsh ksh (korn) bash (bourn again shell), GPL zsh 显示当前使用的shell: # echo ${SHELL} 显示当前系统使用的所有shell: # cat /etc/shells 命令提示符:prompt [root@localhost ~]# [root@localhost ~]:PS1 prompt: 管理员:# 普通用户:$命令: 输入命令,回车: 提请shell程序找到键入命令所对应的可执行程序或代码,并由其分析后提交给内核分配资源将其运行起来; 表现为一个或多个进程; 在shell中可执行的命令有两类: 内建命令:由shell自带的,而且通过某命令形式提供; 外部命令:在当前系统的某文件系统路径下有对应的可执行程序文件; which,whereis 区别内部或外部命令: # type COMMAND 运行命令: 命令格式: COMMAND [OPTIONS...] [ARGUMENTS...] 选项:用于启用或关闭命令的某个或某些功能; 短选项:-c, 例如:-l, -h 多个短选项可命令使用,例如-l -h, 可写作-lh; 长选项:--word,例如:--long, --human-readable 参数:命令的作用对象 向命令提供数据(目标); 注意: 1、多选项,以及多参数和命令之间都应该使用空白字符分隔 2、取消命令执行:Ctrl+c 文件系统: C:\Program files\office11\word\word.exe /etc/sysconfig/network-scripts/ifcfg-eth0 文件有两类数据: 元数据:metadata(比如文件的上下关系) 数据:data 1、文件名严格区分字符大小写;file1, File1, FILE1是不同的文件; 2、文件名可使用除/以外的任意字符,不建议使用特殊字符; /: 根目录,路径分隔符; 3、文件名长度最长不能超过255个字符; 4、所以.开头的文件,均为隐藏文件; 路径: 绝对路径:从根目录起始的路径; 相对路径:对当前位置起始的路径; 当前位置的表示方式: (1) ./: ./sysconfig/network-scripts (2) 省略上述符号: sysconfig/network-scripts ..:表示当前目录的上一级目录 当前目录:current directory, 也称作working directory; pwd: printing working directory LSB: Linux Standard Base(标准库)命令总结:ls, cd, type, tty, cat, which, whereis, pwd, echo命令: (1) 文件系统相关: 目录管理 文件管理 文件查看 文件编辑 (2) 系统管理相关:Linux命令帮助的获取外部命令:都有一个可执行程序,位于文件系统某目录下; which, whereis shell程序搜寻可执行程序文件的路径定义在PATH环境变量中; # echo $PATH 注意:自左至右格式:COMMAND [OPTIONS...] [ARGUMENTS...]内部命令: # help COMMAND外部命令: (1) # COMMAND --help # COMMAND -h (2) 使用手册(manual) # man COMMAND (3) 信息页 # info COMMAND (4) 程序自身的帮助文档 README INSTALL ChangeLog (5) 程序官方文档 官方站点:Documentation (6) 发行版的官方文档 (7) Google内部命令帮助: # help COMMAND hash命令: shell搜寻到的外部命令的路径结果会缓存至kv(key-value)存储中; history命令: 作用是什么?相关的环境变量是什么?有用的选项? 管理命令历史; 登录shell时,会读取命令历史文件中记录下的命令:~/.bash_history 登录进shell后新执行的命令只会记录在缓存中;这些命令会用户退出时“追加”至命令历史文件中; history: -a: 追加本次会话新执行的命令历史列表至历史文件中; -d: 删除历史中指定的命令; -c: 清空命令历史; 快捷操作: !#: 调用历史中第#条命令; !string:调用历史中最近一个以string类型如man等开头的命令; !!: 上一条命令外部命令帮助获取: (2) man COMMAND 手册页:/usr/share/man man1 ... man8 man1: 用户命令 man2: 系统调用 man3: C库调用 man4: 设备文件及特殊文件 man5: 配置文件格式 man6: 游戏 man7: 杂项 man8: 管理类的命令 注意:有些关键在不止一个章节中存在帮助手册; 要查看指定章节中的手册:man # COMMAND man命令的配置文件:/etc/man.config MANPATH /PATH/TO/SOMEWHERE: 指明新的手册文件搜索位置 # man -M /PATH/TO/SOMEWHERE COMMAND: 到指定位置下搜索COMMAND命令的手册页并显示之; 帮助手册中的段落说明: NAME SYNOPSIS DESCRIPTION OPTIONS EXAMPLES AUTHOR REPORTING BUGS SEE ALSO SYNOPSIS: []:可选内容 <>: 必选内容 a|b:二选一 ...: 同一内容可出现多次 man命令的操作方法: Space, ^V, ^f, ^F: 向文件尾翻屏; b, ^B: 向文件首部翻屏; d, ^D: 向文件尾部翻半屏; u, ^U: 向文件首部翻半屏; RETURN, ^N, e, ^E or j or ^J: 向文件尾部翻一行; y or ^Y or ^P or k or ^K:向文件首部翻一行; q: 退出; #:跳转至第#行; 1G: 回到文件首部 G:翻至文件尾部 文本搜索: /KEYWORD: 以KEYWORD指定的字符串为关键字,从当前位置向文件尾部搜索;不区分字符大小写; n: 下一个 N:上一个 ?KEYWORD: 以KEYWORD指定的字符串为关键字,从当前位置向文件首部搜索;不区分字符大小写; n: 跟搜索命令同方向,下一个 N:跟搜索命令反方向,上一个 练习:date命令 显示今天为周几? 设定当前系统时间? 显示今天的日期,形如:08/15/15? 显示当前的时间,形如: 16:01:21? (3) info info COMMAND (4) 程序自身的帮助文档 /usr/share/doc/COMMAND-VERSION (5) 程序官方文档 (6) 发行版的官方文档 http://www.redhat.com/docs (7) Google (8) slideshare http://www.slideshare.net/
阅读全文
0 0
- day01-Linux前言知识
- 前言-LINUX学习知识摘要及心得
- Day01-JavaWeb知识体系介绍
- linux c学习 day01
- Linux 学习day01-day02
- linux学习笔记day01
- linux笔记day01
- linux学习-day01
- Linux学习day01
- day01_前言知识
- Linux前言
- Linux前言
- Linux前言
- Linux深入 -- day01 Linux介绍
- day01-Linux安装及配置
- The Knowledge of Linux-.-Day01
- linux学习-day01作业
- 第0章 前言知识
- 添加,查询,排序
- SDWebImage使用注意事项
- 吃吃睡睡
- Python 初始化MySQL实例
- 《DOS命令一日通》第十一章 用MODE命令控制计算机设备
- day01-Linux前言知识
- Linux自定义环境变量
- 鼠标滚动到页面底部自动加载数据--阻止多次请求
- 修改Linux的host文件
- cgi ,fastcgi,PHP-FPM和php-cgi
- Android 如何做到隐藏手机底部虚拟按键?
- 006_HTTP_GET_POST
- yilide huawei gongzuo
- 软件工程第五次实验