Linux 内核是开源类 Unix 系统宏内核。仅仅一个内核并不是一套完整的操作系统。有一套基于 Linux 内核的完整操作系统叫作 Linux 操作系统。Kernel 是 Linux 系统的核心,主要负责硬件的支持。
Linux 内核提供了安全补丁, bugfix 和新特性。
Linux 内核在 GNU 通用公共许可证第 2 版之下发布。
Linux 的 Kernel 主要提供以下五个基本的功能 1:
硬件管理以及硬件的抽象
进程和线程的管理,以及之间的通信
内存的管理,包括虚拟内存管理以及内存空间的包含
I/O 设备,包括文
Read more ...
adb and fastboot
从 Android 开发官网下载 Android SDK,从事过 Android 开发的应该知道 adb 和 fastboot 工具,在完整 SDK 中这两个工具在 platform-tools 文件夹下。如果想要方便的使用这两个工具,可以将文件路径加入到系统环境变量中,这样以后就可以在任何目录使用 adb 和 fastboot 命令。
flash factory image
救砖,或者在 recovery 下没有备份又无法开机的情况下只能刷回原厂镜像救砖机。因此折腾需谨慎,刷机前请一定使用 recovery 备份系统
Read more ...
部分内容为 《Linux 命令速查手册》读书记录。
系统
uname -a # 查看内核 / 操作系统 /CPU 信息
head -n 1 /etc/issue # 查看操作系统版本
cat /proc/cpuinfo # 查看 CPU 信息
hostname # 查看计算机名
lspci -tv # 列出所有 PCI 设备
lsusb -tv # 列出所有 USB 设备
lsmod # 列出加载
Read more ...
wc 命令是 Linux 下 Word Count 的缩写,用来统计文件中的字节数,字数,行数等等。
命令格式
非常简单
wc [options] files
选项
-c, --bytes 统计字节数
-l, --lines 统计行数
-m, --chars 统计字符数,不能和 -c 一起使用
-w 统计字数,一个字定义为由空白、空格或者换行分割的字串
-L, --max-line-length 最长行的长度
例子
查看文件字节数、字数、行数
命令:wc file.txt
比如有如下文件:
cat file.txt
Lin
Read more ...
MultiTail是一个开源的ncurses的实用工具,可用于在一个窗口或单一外壳,显示实时一样的尾巴命令,该命令拆分控制台为更多子窗口的日志文件的最后几行(很像显示多个日志文件到标准输出屏幕命令 )。 它还支持颜色突出显示,过滤,添加和删除窗口等。
他和tail的区别就是他会在控制台中打开多个窗口,这样可以同时监控多个日志。
安装
apt install multitail
如果要在 CentOS,基于 Red Hat 的发行版中使用,需要开启 EPEL repository,然后安装
yum install -y multitail
Read more ...
Cache 在实际场景中有着非常广泛的使用,通常情况下如果遇到需要大量时间计算或者获取值的场景,就应当将值保存到缓存中。Cache 和 ConcurrentMap 类似,但又不尽相同。最大的不同是 ConcurrentMap 会永久的存储所有的元素值直到他们被显示的移除,但是 Cache 会为了保持内存使用合理,而配置自动将一些值移除。
通常情况下,Guava caching 适用于以下场景:
花费一些内存来换取速度
一些 key 会被不止一次被调用
缓存内容有限,不会超过内存空间的值,Guava caches 不会存储内容到文件或者到
Read more ...
Let’s Encrypt 是一个免费 SSL 证书发行项目,自动化发行证书,证书有 90 天的有效期。于是有了另外一个项目可以自动安装,自动续期。
直接上网站
https://certbot.eff.org/
选择 WEB 服务器版本,系统版本,然后执行脚本即可。
执行完成之后执行 certbot run 跟着步骤就行了。
在 crontab -e 编辑文件
0 0 1 * * /usr/bin/certbot renew --force-renewal
定时每天检查,如果要过期则自动延期。
指定域名
使用 -d 来指定域名
Read more ...
tail 命令从指定点开始将文件写到标准输出。使用 tail 命令的 -f 选项可以方便的查阅正在改变的日志文件,tail -f filename 会把 filename 里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容。
默认情况下 tail 会打印文件最后 10 行。
命令格式
tail [OPTION] file
用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。
命令参数:
-f 循环读取,只要文件有修改会立即显示
-q 不显示处理信息
-v
Read more ...
Linux 启动项管理
Debian/Ubuntu/Linux Mint 系利用 update-rc.d 来管理 Linux 自启动服务。RedHat/Fedora/CentOS 下貌似有一个 chkconfig 来管理。
而我使用的 Linux Mint 自带的启动服务管理配置地址在 ~/.config/autostart 目录下。
Linux 中的服务通常利用 /etc/init.d/ 目录下的脚本进行启动,停止或者重新加载等操作。一般情况下如果安装完服务之后,该服务会自动启动。比如安装完 apache2 之后, apache 服务会在下次启
Read more ...
在Linux下安装 Genymotion Android 模拟器。最近拾起 Android Development,Android 模拟器必不可少,用来用去 Genymotion 模拟器算是速度和效率最棒的模拟器了。
事前准备
Genymotion 依赖 VirtualBox 运行,在安装之前确保已经安装 VirtualBox. 在Linux Mint下直接去 Software Manager 搜索 VirtualBox 然后点击安装即可。
Genymotion 安装需要一个 Genymotion 的个人账号,Genymotion 高级功能需要付费
Read more ...