基本用法
查看日志查看所有日志1journalctl 这个命令将显示所有可用的日志条目,按时间倒序排列。 实时查看日志(跟随模式)1journalctl -f 使用 -f 选项可以实时查看日志更新,类似于 tail -f 的效果。 查看最近的日志条目1journalctl -n 100 -n 选项用于显示最近的日志条目,100 表示显示最近的 100 条日志。 限制日志条目到特定时间1journalctl --since "2024-09-01 12:00:00" --until "2024-09-01 14:00:00" --since 和 --until 选项可以用来限制显示的时间范围。 按时间排序1journalctl --no-pager --reverse --reverse 选项用于将日志条目按时间正序排列(从最新到最旧)。 日志筛选按服务筛选1journalctl -u nginx -u 选项后跟服务名称,用于显示指定服务的日志。例如,显示 nginx 服务的日志。 按优先级筛选1journalctl -p err -p...
清除 Linux 操作痕迹
删除 Bash 历史记录Bash 将当前会话中使用的命令列表保存在内存中,因此必须对其进行清理以覆盖其踪迹。 让我们使用history命令查看当前历史记录: 123456789101112root@target:/# history1 cd /2 ls3 find / -perm -222 -type d 2> / dev / null4 cd / dev / shm /5 cd /6 mkdir /dev/shm/.secret7 ls -l / dev / shm /8 ls -la /dev/shm/9 ls10 rmdir /dev/shm/.secret/11 history 命令写入环境变量 1HISTFILE 通常使用这个命令 1.bash_history … 让我们使用echo来查找位置: 12root@target:/# echo $HISTFILE/root/.bash_history 我们使用unset 命令删除变量: 1root@target:/# unset HISTFILE 再次重复这个过程,我们看到什么都没有出现: 1root@ta...
Docker内存CPU限制
限制可用的 CPU 个数--cpus通过下面的命令创建容器,在docker 1.13开始支持–cpus,代码中–cpus=2 表示容器最多可以使用主机上两个 CPU,容器 CPU 的负载为 200%,它的含义为单个 CPU 负载的两倍。我们也可以把它理解为有两颗 CPU 在 100% 的为它工作。 在1.13之前使用–cpu-period和–cpu-quota,代码中100000 表示 100 毫秒,200000 表示 200 毫秒。它们在这里的含义是:在每 100 毫秒的时间里,运行进程使用的 CPU 时间最多为 200 毫秒(需要两个 CPU 各执行 100 毫秒)。参考:CFS BandWith Control: 12345# docker 1.13开始有cpus$ docker run -it --rm --cpus=2 debian# 更早版本使用--cpu-period和--cpu-quota,$ docker run -it --rm --cpu-period=100000 --cpu-quota=200000 debian 指定固定的 CPU--cpu...
OpenWrt 定制编译(二):环境搭建到固件产出
1.编译环境1.1 系统要求系统环境是 Linux 或者 drawin,虚拟机或者物理机都行,例如 wsl 和 vm。系统选择桌面版或者服务器版,有无 GUI(图形化界面)都可以,不影响编译。我推荐使用 Ubuntu LTS x64 和 Debian 11。编译不要使用 root 用户!会导致编译失败。 1.2 硬件要求cpu 当然是越强越好,内存 4G 起步,硬盘 64G 起步。 1.3 必须软件包在 ubantu 的桌面,打开右键菜单,在菜单中选择在终端打开。如果是无 GUI 的 Linux,SSH 连接或者后台直接输入命令也是可以的。 按序输入以下命令。 更新软件包列表。 1sudo apt update 更新软件包。 1sudo apt full-upgrade -y 安装软件包。 123456sudo apt install -y ack antlr3 aria2 asciidoc autoconf automake autopoint binutils bison build-essential \bzip2 ccache cmake cpio curl devi...
config-ACPI
本指南帮小白快速地构建起一个 opencore 配置文件,所以也就不会讲太多,大部分内容都是帮助你如何做选择。(适用于 OpenCore 0.9.4) 编辑配置文件的工具如下: OC Auxiliary Tools ProperTree OpenCore Configurator OC Auxiliary Tools 和 ProperTree,Windows 和 MacOS 都能使用,OpenCore Configurator 只能在 macos 下使用。ProperTree 界面非常简洁,对没有基础的人不友好,但是上手之后,却也十分不错。 OC Auxiliary Tools 和 OpenCore Configurator 就是常规的 gui 界面了,OpenCore Configurator 和 OC Auxiliary Tools 的逻辑差不多。用过 Clover Configurator,上手 OpenCore Configurator 非常快。 对于没有基础的人,推荐使用 OC Auxiliary Tools 和 OpenCore Configurator。 ope...
Manjaro 内核编译指南
重新编译内核可以修改编译时的参数,使内核在运行时更高效的支持本地硬件。Manjaro团队在gitlab上放了Manjaro内核的编译文件,稍加修改即可使用自己的选项编译。 主要参考论坛中Manjaro团队的philm的回答 https://forum.manjaro.org/t/how-to-compile-the-mainline-kernel-the-manjaro-way/51700/35 Gitlab 仓库philm提到了manjaro在gitlab上编译内核的仓库。https://gitlab.manjaro.org/packages/core/linux56.git 后面使用不同的linux版本号。 仓库文件介绍仓库中不同后缀文件的作用 files ending with .patch should be clear. These are adjustments we think will fit for our distro best. files starting with config are our modified settings on how we ...
Smali 语法入门与代码拆解
工欲善其事必先利其器,所以要学好smali语法,好的工具是必须的,这里推荐两个工具,一个是Smali2Java,也就是将smali文件转换成java的工具;另一个工具是J2S2J1.3,这个工具可以将简单的java或者smali代码进行转换。 案例因为我是一开始直接看源码的,所以我们今天也是直接从源码开始: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566.super Ljava/lang/Object;.source "Test.java"# instance fields.field private name:Ljava/lang/String;# direct methods.method public constructor <init>()V .registers 2 .prologue .line 1 invoke-d...
Arch Linux 备用内核安装与引导配置
Arch Linux 滚动更新的特性,够体验最新的内核和软件,但有时候也会由于更新导致系统出现故障。本文记录了如何安装linux-lts备用内核,并配置GRUB和rEFInd从而方便地选择不同内核 安装linux-lts内核1sudo pacman linux-lts linux-lts-headers 此时重启如果使用GRUB引导系统的话,会出现“Advanced Options for Arch Linxu”,选择这一项就会进入选择启动linux内核或者linux-lts内核的自选单。 如果使用rEFInd引导系统的话,此时选择进入Arch Linux会默认加载最后安装的内核即linux-lts,选中Arch Linux图标在按F2键的话就会进入选择加载不同内核的选单。 为了更加方便地在Boot Loader界面选择想要加载的内核,我们可以分别对GRUB和rEFInd进行一些配置。 配置GRUB我们想要的是在进入GRUB界面后,直接列出了加载不同内核的选项,而不需要先进入子选单再选择内核。编辑/etc/default/grub,取消注释、 官方手册 default 1GR...
压力测试和评测工具 Siege
目录 Siege官网:http://www.joedog.org/ 下载地址 siege: http://www.joedog.org/pub/siege/ Sproxy: http://www.joedog.org/pub/sproxy/ Github: https://github.com/JoeDog/siege Siege是一款开源的压力测试工具,设计用于评估WEB应用在压力下的承受能力。可以根据配置对一个WEB站点进行多用户的并发访问,记录每个用户所有请求过程的相应时间,并在一定数量的并发访问下重复进行。siege可以从您选择的预置列表中请求随机的URL。所以siege可用于仿真用户请求负载,而ab则不能。但不要使用siege来执行最高性能基准调校测试,这方面ab就准确很多。 Sproxy做为一个代理侦听9001端口,可用于搜集正常访问的GET/POST请求、生成siege适用的Urls.txt文件格式。 安装1234567891011121314# siegetar zxvf siege-3.0.6.tar.gzcd siege-3.0.6/./co...
lsof 命令使用
lsof(list open files)是一个查看当前系统文件的工具。在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件。如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字等,系统在后台都为该应用程序分配了一个文件描述符,该文件描述符提供了大量关于这个应用程序本身的信息。 lsof打开的文件可以是: 普通文件 目录 网络文件系统的文件 字符或设备文件 (函数)共享库 管道,命名管道 符号链接 网络文件(例如:NFS file、网络socket,unix域名socket) 还有其它类型的文件,等等 命令参数 -a 列出打开文件存在的进程 -c<进程名> 列出指定进程所打开的文件 -g 列出GID号进程详情 -d<文件号> 列出占用该文件号的进程 +d<目录> 列出目录下被打开的文件 +D<目录> 递归列出目录下被打开的文件 -n<目录> 列出使用NFS的文件 -i<条件> 列出符合条件的进程。(4、6、协议、:端口、 @ip ) -p&l...






