linux系统

linux运维、架构之路-实时同步方案

两盒软妹~` 提交于 2020-03-29 22:48:05
一、inotify+rsync实时同步 1、介绍 inotify-tools是一种强大的、细粒度的、异步的文件系统事件监控机制,可以用来监控文件系统的事件。inotify-tools是用c编写的,除了要求内核支持inotify外,不依赖于其他。inotify-tools提供两种工具,一是inotifywait,它是用来监控文件或目录的变化,二是inotifywatch,它是用来统计文件系统访问的次数。 2、实现原理 3、根据原理进行部署 ①查看系统是否支持inotify [root@nfs-nfs01 ~]# ll /proc/sys/fs/inotify/ -rw-r--r-- 1 root root 0 Aug 22 18:13 max_queued_events -rw-r--r-- 1 root root 0 Aug 28 14:30 max_user_instances -rw-r--r-- 1 root root 0 Aug 22 18:13 max_user_watches ②软件安装 wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo #安装epel源才可以yum安装inotify yum install -y inotify-tools ③

Linux学习篇(二)-软件包管理器、Yum 软件仓库

会有一股神秘感。 提交于 2020-03-29 22:34:00
红帽软件包管理器 在红帽软件包管理器(rpm)公布之前,Linux 系统软件的安装只能采取“源码包”的方式安装,需要自行编译源码并解决许多依赖关系,所以软件的安装、升级、卸载的难度都很大,而且还要考虑到其他程序、库的依赖关系。rpm 机制就是为了解决这些问题而设计的。 常用的RPM软件包命令: 命令 作用 rpm -ivh filename.rpm 安装软件的命令格式 rpm -Uvh filename.rpm 升级软件的命令格式 rpm -e filename.rpm 卸载软件的命令格式 rpm -qpi filename.rpm 查询软件描述信息的命令格式 rpm -qpl filename.rpm 列出软件文件信息的命令格式 rpm -qf filename 查询文件属于哪个RPM的命令格式 Yum 软件仓库 尽管rpm已经方便查询软件依赖关系,单有些大型软件可能与多个程序都存在依赖关系,这种情况下软件的安装也是比较困难的,所以 Yum 进一步简化了软件安装的复杂性,使用 yum 会自动分析出所需软件包及其相关的依赖关系,然后从服务器下载安装到系统。 常用的 yum 命令: 命令 作用 yum repolist all 列出所有仓库 yum list all 列出仓库中所有软件包 yum info 软件包名称 查看软件包信息 yum install 软件包名称 安装软件包

linux 目录结构解释

时光怂恿深爱的人放手 提交于 2020-03-29 19:07:40
FHS(Filesystem Hierarchy Standard)文件结构: /bin:所有用户可用的基本命令程序文件 /sbin:供系统管理适用的工具程序 /boot:引导加载器必须用到的各静态文件:kernel,initramfs(initrd),grup等 /dev:存储特殊文件或设备文件: 设备有两种类型:字符设备(线性设备)、块设备(随机设备): /etc:主机特有的配置文件,只能为静态。 /home:普通用户家目录的集中位置:一般每个普通的家目录默认为此目录下与用户同名的子目录,/home/USERHOME /root:管理员的家目录:可选: /lib:为系统启动或根文件系统上的应用程序(/bin,/sbin等)提供共享库,以及为内核提供内核的模块 libc.so. :动态链接的C库 ld :运行时链接器/加载器: modules:用于存储内核模块的目录: /lib64:64位系统特有的存放共享库的路径 /media:便携式设备挂载点,cdrom,floppy等 /mnt:其他文件系统的临时挂载点 /opt:附加程序的安装程序位置:可选路径 /srv:当前主机为服务提供的数据: /tmp:为那些会产生临时文件的程序提供的用于存储临时文件的目录:可供所有用户执行写的文件 /usr:user Hierarchy:全局共享的只读数据路径 bin,sbin lib,lib64

[Linux]系统目录结构

与世无争的帅哥 提交于 2020-03-29 18:46:45
在 Linux 或 Unix 操作系统中,所有的文件和目录都被组织成以一个根节点开始的倒置的树状结构。 文件系统的最顶层是由根目录开始的,系统使用 / 来表示根目录。在根目录之下的既可以是目录,也可以是文件,而每一个目录中又可以包含子目录文件。如此反复就可以构成一个庞大的文件系统。 在Linux文件系统中有两个特殊的目录,一个用户所在的工作目录,也叫当前目录,可以使用一个点 . 来表示;另一个是当前目录的上一级目录,也叫父目录,可以使用两个点 .. 来表示。 . :代表当前的目录,也可以使用 ./ 来表示; .. :代表上一层目录,也可以 ../ 来代表。 如果一个目录或文件名以一个点 . 开始,表示这个目录或文件是一个隐藏目录或文件(如:.bashrc)。即以默认方式查找时,不显示该目录或文件。 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

[Linux]用户及权限管理

☆樱花仙子☆ 提交于 2020-03-29 18:31:07
Linux用户及权限 -- 转载:https://www.cnblogs.com/fengdejiyixx/p/10773731.html Linux操作系统对多用户的管理,是非常繁琐的,所以用组的概念来管理用户就变得简单,每个用户可以在一个独立的组,每个组也可以有零个用户或者多个用户。 Linux系统用户是根据用户ID来识别的,默认ID长度为32位,从默认ID编号从0开始,但是为了和老式系统兼容,用户ID限制在60000以下,Linux用户分总共分为三种,分别如下: root用户 (ID 0) 系统用户 (ID 1-499) 普通用户 (ID 500以上) Linux系统中的每个文件或者文件夹,都有一个所属用户及所属组,使用id命令可以显示当前用户的信息,使用passwd命令可以修改当前用户密码。Linux操作系统用户的特点如下: 每个用户拥有一个UserID,操作系统实际读取的是UID,而非用户名; 每个用户属于一个主组,属于一个或多个附属组,一个用户最多有31个附属组; 每个组拥有一个GroupID; 每个进程以一个用户身份运行,该用户可对进程拥有资源控制权限; 每个可登陆用户拥有一个指定的Shell环境。 Linux用户管理 Linux用户在操作系统可以进行日常管理和维护,涉及到的相关配置文件如下: /etc/passwd 保存用户信息 /etc/shdaow 保存用户密码

Linux学习笔记二

陌路散爱 提交于 2020-03-29 17:43:08
1.Linux的发行版本 Slackware 二次发行名字为 suse 三次 为opensuse Deblan (最原汁原味的Linux) 二次发行 Ubuntu Redhat 2.什么是自由软件? 自由软件:自由使用,自由学习和修改,自己分发,自由创建衍生版。 3.Linux的哲学思想 (1)一切皆文件 把几乎所有的资源包括硬件,都组织为文件格式。 (2)由众多单一目的的小程序组成,一个程序只实现一个功能,而且要做好组合小程序完成复杂的任务 (3)尽量避免跟用户交互 目标:实现脚本编程,以自助形式完成某些功能 (4)使用纯文本保存配置信息 目标:一款合用的文本编辑器就能完成系统配置工作 4.终端设备:用于与主机交互,必然会用到的设备。 物理终端:直接接入主机的显示器键盘,也叫console(控制台),路径为/dev/console 虚拟终端:附加在物理终端上,以软件虚拟实现的终端,路径为/dev/tty# #为数字1-6 CentOS 默认启动6个虚拟终端 Ctrl+Alt+F# [1,6] 快捷键切换终端 在开机时,使用的是物理终端,启动后,默认使用虚拟1 图形终端 属于虚拟终端,额外提供桌面环境 模拟终端:不附加物理,附加在图形终端或者远程终端 (图形界面上打开的命令行接口,基于SSH协议或telent协议等远程打开的界面,纯软件实现) 查看当前终端的命令:tty 5

Linux学习笔记四

亡梦爱人 提交于 2020-03-29 17:42:38
1.Linux系统的常用命令 基础命令 date date [MMDDhhmmYY] [.ss] date [MMDDhhmmCCYY] MM月份 DD几号 hh小时 mm分钟 YY两位年份 CCYY四位年份 .ss 秒钟 2.llinux的两种时钟 系统时钟:由Linux内核通过CPU的工作频率进行计时 硬件时钟:单独供电,关机后仍然计时 系统时钟是在计算机开机后,向硬件时钟索取时间数据,但是由于工作原理不同,逐渐会产生误差,导致两个时钟显示不一样 所以就有了一些机构,专门做同步时钟这个业务,例如一些天文机构,一些设备可以达到几万年误差小于一秒的精准 计算机联网后可以自动获取 当系统时钟和硬件时钟不一致时,可以用命令调整 hwclock 命令可以显示硬件时钟 -s , --hctosys -w , --systohc 命令cal 显示日历 目录相关的命令和知识 (1)当前目录或工作目录 (2)主目录或叫家目录 root用户,也就是管理员 家目录为/root 普通用户 家目录为/home/USERNAME(默认用户名字) 例Tom 家目录为/home/Tom (3)命令 cd 功能是切换目录 例如 cd /etc/bin 则当前目录已经变为/etc/bin 直接cd 或 cd ~ 这两个命令可直接切换到家目录 cd - 这个命令可以直接切到上一个工作目录,经常用来两个目录的

(从终端看linux-1)linux tty pty pts 概念 区别

心不动则不痛 提交于 2020-03-29 17:21:39
基本概念: 1> tty(终端设备的统称): tty一词源于Teletypes,或者teletypewriters,原来指的是电传打字机,是通过串行线用打印机键盘通过阅读和发送信息的东西,后来这东西被键盘与显示器取代,所以现在叫终端比较合适。 终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备。 2> pty(虚拟终端): 但是如果我们远程telnet到主机或使用xterm时不也需要一个终端交互么?是的,这就是虚拟终端pty(pseudo-tty) 3> pts/ptmx(pts/ptmx结合使用,进而实现pty): pts(pseudo-terminal slave)是pty的实现方法,与ptmx(pseudo-terminal master)配合使用实现pty。 Linux终端: 在Linux系统的设备特殊文件目录/dev/下,终端特殊设备文件一般有以下几种: 1、串行端口终端(/dev/ttySn) 串 行端口终端(Serial Port Terminal)是使用计算机串行端口连接的终端设备。计算机把每个串行端口都看作是一个字符设备。有段时间这些串行端口设备通常被称为终端设备,因为 那时它的最大用途就是用来连接终端。这些串行端口所对应的设备名称是/dev/tts/0(或/dev/ttyS0), /dev/tts/1(或/dev/ttyS1)等

Linux系统下如何查看CPU个数

那年仲夏 提交于 2020-03-29 17:11:02
查看逻辑CPU个数: #cat /proc/cpuinfo |grep "processor"|sort -u|wc -l 24 查看物理CPU个数: #grep "physical id" /proc/cpuinfo|sort -u|wc -l 2 #grep "physical id" /proc/cpuinfo|sort -u physical id : 0 physical id : 1 查看每个物理CPU内核个数: #grep "cpu cores" /proc/cpuinfo|uniq cpu cores : 6 每个物理CPU上逻辑CPU个数: #grep "siblings" /proc/cpuinfo|uniq siblings : 12 判断是否开启了抄超线程: 如果多个逻辑CPU的"physical id"和"core id"均相同,说明开启了超线程 或者换句话说 逻辑CPU个数 > 物理CPU个数 * CPU内核数 开启了超线程 逻辑CPU个数 = 物理CPU个数 * CPU内核数 没有开启超线程 一次性查询所有信息: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #!/bin/bash physicalNumber=0 coreNumber=0 logicalNumber=0 HTNumber=0