systemd

命令行生存指南:强制早睡 | Linux 中国

生来就可爱ヽ(ⅴ<●) 提交于 2020-11-17 05:56:18
你会不会经常陷入这么一个情景:计划晚上早点睡叫,然而无奈总是一不小心玩过头了。 作者:Lujun9972 (本文字数:2996,阅读时长大约:3 分钟) 作为一个工程师,我们经常与命令行打交道,但除了工作用的命令,你是否尝试过让命令来替代你生活中方方面面? 为了让更多的爱好者可以用命令行作为自己的有效工具,Linux 中国特别邀请了三位作者,撰写了《命令行生存指南》,希望可以通过这个系列的文章,让你换一个视角,来看待命令行的存在。如果你想体验一下不一样的命令行,那就不妨来看看今天的《命令行生存指南》。 本次的内容为试读内容,也欢迎你针对今天的内容提出自己的意见和建议。 操作概述 你会不会经常陷入这么一个情景:计划晚上早点睡叫,然而无奈总是一不小心玩过头了。你需要一种方法强制让你到时间了就要关机去睡觉了,这该怎么做呢? Kgotobed 是一个很变态的内核模块。它会强制 Linux 在特定时间关闭,而你却毫无办法(即使你是 root 用户)。 概念和术语 内核模块允许 Linux 内核在运行时动态地向其中插入和删除代码。这些模块是具有独立功能的程序,可以被单独编译,但无法独立运行。模块在运行时作为内核的一部分在内核空间内运行。 操作实战 场景一:使用 Kgotobed 强制关机 安装 在 archlinux 上要安装 kgotobed ,首先需要安装 dkms 和 linux

centos7 安装 KVM 虚拟化系统

好久不见. 提交于 2020-11-15 05:02:19
KVM是什么 KVM(Kernel-based Virtual Machine, 即内核级虚拟机) 是一个开源的系统虚拟化模块。它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源码很少。 目前KVM已成为学术界的主流VMM之一,它包含一个为处理器提供底层虚拟化 可加载的核心模块kvm.ko(kvm-intel.ko 或 kvm-amd.ko)。kvm还需要一个经过修改的QEMU 软件(qemu-kvm),作为虚拟机上层控制和界面。KVM的虚拟化需要硬件支持(如 Intel VT技术或者AMD V技术)。是基于硬件的完全虚拟化。 KVM可以运行多个其本身运行未 改动的镜像的虚拟机,例如Windows,Mac OS X ,每个虚拟机都有各自的虚拟硬件,比如网卡、硬盘核图形适配器等。 KVM和QEMU的关系 QEMU是个独立的虚拟化解决方案,从这个角度它并不依赖KVM。而KVM是另一套虚拟化解决方案,不过因为这个方案实际上只实现了内核中对处理器(Intel VT), AMD SVM) 虚拟化特性的支持,换言之,它缺乏设备虚拟化以及相应的用户空间管理虚拟机的工具,所以它借用了QEMU的代码并加以精简,连同KVM一起构成了另一个独立的虚拟化解决方案: KVM +QEMU。 kvm相关安装包及其作用 qemu-kvm #主要的KVM程序包 python-virtinst

Linux是如何启动的?

微笑、不失礼 提交于 2020-11-13 03:27:16
参考资料: An introduction to the Linux boot and startup processes 这篇随笔,可以理解为是对这篇英文文章的翻译与个人理解、笔记的整合。 扩展阅读: GNU GRUB - Wikipedia systemd - Wikipedia BIOS interrupt call - Wikipedia Multiboot specification - Wikipedia Chain loading - Wikipedia Master boot record - Wikipedia Best Couple of 2016: Display manager and window manager 浅析 Linux 初始化 init 系统,第 1 部分:SysV init 浅析 Linux 初始化 init 系统,第 2 部分:Upstart 浅析 Linux 初始化 init 系统,第 3 部分:Systemd 前言 理解Linux是如何启动的对于配置和针对Linux启动失败的排错是至关重要的。 本篇文章大体上把Linux启动过程分成了两部分:引导(boot)和启动(startup)。 引导:从计算机开机至内核初始化完毕启动systemd程序的这个阶段。 启动:从systemd程序启动至系统完全启动完毕的这个阶段。

CentOS7 安装远程桌面

耗尽温柔 提交于 2020-11-10 07:55:21
yum 源使用是阿里的: https://opsx.alibaba.com/mirror?lang=zh-CN rm -rf /etc/yum.repos.d/* curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo 一、桌面环境 首先安装桌面环境,这里安装 GNOME。 yum -y groups install " GNOME Desktop " 关于桌面环境相关命令 # 从命令行切换到桌面环境 startx # 获取当前启动模式 systemctl get - default # 修改启动模式为图形化 systemctl set - default graphical.target # 修改启动模式为命令行 systemctl set -default multi-user.target 默认启动桌面环境后以 root 用户自动登录 # 修改配置文件 vi /etc/gdm/ custom.conf # 增加如下配置 [daemon] AutomaticLoginEnable = True AutomaticLogin =root 二、远程服务设置 # Windows 远程登录需要安装 Xrdp,需要 epel 源 wget -O /etc/yum

rsync + inotify 实时同步

南楼画角 提交于 2020-11-08 18:58:49
1. 前言   2 台 nginx 需要做集群, 静态文件和php文件都在nginx服务器本地。   有三种方案:     (1)NFS     (2)Rsync + inotify     (3)共享存储服务器   第一种:当 nfs server端宕机,全部完蛋,第三种:共享存储服务器单点,如果宕机也完蛋。因此采用 第二种方式:rsync + inotify 2. 环境配置   2.1 环境介绍   系统:Centos 7.2 x64   server端:192.168.118.14   client端(同步端):192.168.118.15   2.2 搭建过程   默认防火墙和selinux 关闭,这里采用 http web服务器测试。    client 端(同步端)配置: [root@ 192.168 . 118.15 ~]# yum install rsync httpd - y [root@ 192.168 . 118.15 ~]# egrep ^[a-z] /etc/ rsyncd.conf uid = root # 设置rsync运行权限为root gid = root # 设置rsync运行权限为root use chroot = no # 默认为true,修改为no,增加对目录文件软连接的备份 max connections = 200 # 最大连接数

Jumpserver高可用集群部署:(七)RDP代理模块guacamole部署并实现系统服务管理

五迷三道 提交于 2020-11-08 04:20:46
1、配置防火墙 firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.255.200.1/30" port protocol="tcp" port="8081" accept" firewall-cmd --reload 2、下载guacamole cd /sas/src/ wget -O docker-guacamole-v2.3.2.tar.gz https://github.com/jumpserver/docker-guacamole/archive/master.tar.gz mkdir /sas/src/docker-guacamole tar -xf docker-guacamole-v2.3.2.tar.gz -C /sas/src/docker-guacamole --strip-components 1 rm -rf /sas/src/docker-guacamole-v2.3.2.tar.gz cd /sas/src/docker-guacamole wget http://download.jumpserver.org/public/guacamole-server-1.2.0.tar.gz tar -xf guacamole-server-1.2.0

详解,日志管理工具: journalctl 和用法

大城市里の小女人 提交于 2020-11-06 21:20:17
Centos 7 以后版本,利用Systemd 统一管理所有的Unit 的启动日志,带来的好处是,可以只用journalctl一个命令,查看所有日志,(内核日志和应用日志). 日志的配置文件:(一般情况不需要更改) /etc/systemd/journald.conf journalctl命令格式 journalctl [OPTIONS...] [MATCHES...] 选项说明 --no-full, --full, -l 如果字段内容超长则以省略号(...)截断以适应列宽。 默认显示完整的字段内容(超长的部分换行显示或者被分页工具截断)。 老旧的 -l/--full 选项 仅用于撤销已有的 --no-full 选项,除此之外没有其他用处。 -a, --all 完整显示所有字段内容, 即使其中包含不可打印字符或者字段内容超长。 -f, --follow 只显示最新的日志项,并且不断显示新生成的日志项。 此选项隐含了 -n 选项。 -e, --pager-end 在分页工具内立即跳转到日志的尾部。 此选项隐含了 -n1000 以确保分页工具不必缓存太多的日志行。 不过这个隐含的行数可以被明确设置的 -n 选项覆盖。 注意,此选项仅可用于 less(1) 分页器。 -n, --lines= 限制显示最新的日志行数。 --pager-end 与 --follow 隐含了此选项。

Failed to start LSB: Bring up/down networking.

不羁的心 提交于 2020-11-06 06:50:10
由于我的虚拟机是从别的机器拷贝过来的,导入新机器后,没有问题,第二天就网络连接不上了,就出现下面的错误 [root@centos ~]# /etc/init.d/ network restart Restarting network (via systemctl): Job for network.service failed because the control process exited with error code. See " systemctl status network.service " and " journalctl -xe " for details. [FAILED] [root@centos ~ ]# systemctl status network ● network.service - LSB: Bring up/ down networking Loaded: loaded ( /etc/rc.d/init.d/ network; bad; vendor preset: disabled) Active: failed (Result: exit -code) since Tue 2018 - 03 - 20 06 : 32 : 23 EDT; 23s ago Docs: man:systemd -sysv-generator( 8 )

Keepalived+LVS实现高可用负载均衡Web集群

…衆ロ難τιáo~ 提交于 2020-11-06 02:27:58
一 、原理及简介: 1.1 Keepalived简介 Keepalived是Linux下一个轻量级别的高可用解决方案。Keepalived起初是为LVS设计的,专门用来监控集群系统中各个服务节点的状态,它根据TCP/IP参考模型的第三、第四层、第五层交换机制检测每个服务节点的状态,如果某个服务器节点出现异常,或者工作出现故障,Keepalived将检测到,并将出现的故障的服务器节点从集群系统中剔除,这些工作全部是自动完成的,不需要人工干涉,需要人工完成的只是修复出现故障的服务节点。 后来Keepalived又加入了VRRP的功能,VRRP(Virtual Router Redundancy Protocol,虚拟路由冗余协议)出现的目的是解决静态路由出现的单点故障问题,通过VRRP可以实现网络不间断稳定运行,实现高可用性,因此Keepalvied 一方面具有服务器状态检测和故障隔离功能,另外一方面也有HA cluster功能,下面介绍一下VRRP协议实现的过程。 上图是Keepalived的功能体系结构,大致分两层:用户空间(user space)和内核空间(kernel space)。 内核空间:主要包括IPVS(IP虚拟服务器,用于实现网络服务的负载均衡)和NETLINK(提供高级路由及其他相关的网络功能)两个部份。 用户空间: WatchDog