博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【03】Linux笔记
阅读量:5973 次
发布时间:2019-06-19

本文共 6170 字,大约阅读时间需要 20 分钟。

Linux 笔记


装机必备

立刻关机

sudo shutdown -t now

设置fish为默认shell

chsh -s /usr/bin/fish

安装ssh服务

sudo apt install sshd

让你的sudo输错密码的时候嘲讽你
sudo visudo然后在配置中加入如下一行:Defaults insults
安装ss-qt5
sudo add-apt-repository ppa:hzwhuang/ss-qt5sudo apt install shadowsocks-qt5
vim简单配置
set number  "显示行号filetype onset history=1000syntax on  "打开语法高亮显示  set autoindent "自动对齐,使用上一行的对齐方式set smartindent "智能对齐方式set tabstop=4set shiftwidth=4set showmatch  "设置匹配模式set ruler "在编辑过程中,在右下角显示光标位置的状态行autocmd Insertleave * se nocul    //浅色高亮当前行autocmd InsertEnter * se cul   //浅色高亮当前行set mouse=aset encoding=utf-8hi Normal ctermbg=Black ctermfg=white  //修改背景色
consolas字体安装配置
下载:https://code.google.com/archive/p/uigroupcode/downloads将上面下载的字体包解压,并按如下操作:sudo mkdir -p /usr/share/fonts/consolassudo cp YaHei.Consolas.1.12.ttf /usr/share/fonts/consolas/sudo chmod 644 /usr/share/fonts/consolas/YaHei.Consolas.1.12.ttfcd /usr/share/fonts/consolassudo mkfontscale && sudo mkfontdir && sudo fc-cache -fv
修改dns
进入 /etc/network/interfaces 在它的最后增加一句:dns-nameservers 8.8.8.8 (或者别的啥)临时修改就在 /etc/resolv.conf 中加入nameserver 8.8.8.8nameserver 8.8.4.4 (之类的)

常用操作

刷新dns
sudo apt install nscd (如果没有装的话)/etc/init.d/nscd restart
运行新版网易云音乐

sudo netease-cloud-music

解压缩tar.gz包

tar -xzvf ***.tar.gz

查看不与terminal有关的所有process

ps -a

进程树

pstree

系统进程动态视图

top

查找进程

pgrep ***

按照进程名杀进程

pkill ***

查看系统负载详细信息

sudo atop

查看当前系统路径

pwd

查看帮助

man ***

查看当前tty窗口号

tty

后台运行任务

nohup *** &

查看所有可用字体名

fc-list

字符串正则匹配

grep match_pattern file_name

解决Xauthority的问题
sudo rm ~/.Xauthority-*sudo touch ~/.Xauthority ; sudo chown $LOGNAME ~/.Xauthority ; chmod 775 ~/.Xauthority
监视某命令运行结果 : watch
命令格式: watch[参数][命令]命令参数:-n或--interval  缺省每2秒运行一下程序,可以用-n或-interval来指定间隔的时间。-d或--differences  会高亮显示变化的区域。 而-d=cumulative选项会把变动过的地方(不管最近的那次有没有变动)都高亮显示出来。-t 或-no-title  会关闭watch命令在顶部的时间间隔,命令,当前时间的输出。-h, --help 查看帮助文档。

有趣的骚操作

watch实例-命令行时钟

watch -t -n1 "date +%T|toilet"

增强版时钟

watch -t -n1 "date +%T|toilet -fbigmono12"

录制终端操作 : script & scriptreplay
录制命令:script -t 2>example.time -a example.txt播放命令:scriptreplay example.time example.txt两个文件可以随便命名 例如timing.log和output.session解释:1. -t是把时间数据输出到标准错误(standard error),这里使用 2>example.time 把数据重定向到example.time这个文件当中.2. -a 选项则指定输出录制的文件.3. 在录制过程中,使用 exit 结束录制过程.
黑客帝国终端
sudo apt install cmatrix选项-a :异步滚动(默认)-b :随机粗体-B :全部粗体-h :获得帮助信息-n :不使用粗体(默认)-s :屏保模式 任意键退出-u :刷新频率,0-9,也就是滚动的快慢-C :显示的颜色,支持green(默认),red,blue,white,yellow,cyan,magenta,black在运行的状态下直接按q 即可退出程序
高端显示linux系统信息

screenfetch

小火车

sl 或者 LS

艺术字

toilet 一些文本

分解质因数

factor ***

输出无穷字符

yes ***

显示火

aafire

跟着鼠标的猫

oneko


硬件相关

刷bios

flashrom

查看系统信息(代替cpu-z)
cpu-g https://sourceforge.net/projects/cpug/i-nex https://sourceforge.net/projects/i-nex/        或者:        sudo add-apt-repository ppa:gambas-team/gambas3 && \        sudo add-apt-repository ppa:i-nex-development-team/stable && \        sudo apt-get update        sudo apt-get install \        debhelper devscripts pkg-config dpkg-dev \        lsb-release gambas3-dev gambas3-gb-image gambas3-gb-qt5 gambas3-gb-form gambas3-gb-desktop \        gambas3-gb-form-stock git        sudo apt-get install i-nex
详细开机信息(内核 硬件等)

dmesg

详细内存信息

cat /proc/meminfo

详细cpu信息

cat /proc/cpuifo

cpu信息 仅频率

cat /proc/cpuinfo |grep MHz|uniq

proc硬件信息整合

sudo lshw (-short)

操作系统相关信息

uname -a

硬件信息(DMI)
dmidecode            显示全部dmi信息dmidecode -q         (–quite) 只显示必要的信息dmidecode -t TYPE    指定信息类型 例如memory bios processor
硬件信息

hardinfo

cpu实时信息

i7z

每个逻辑cpu的频率

sudo cpupower monitor

查看各种传感器数据
sensors-detectsensors
一个控制台UI的cpu监测工具s-tui
sudo apt install gcc python-dev python-pip(可选:sudo apt install stress)sudo pip install s-tuisudo s-tui

tty优化相关

支持中文的命令行zhcon

sudo zhcon --utf8

远程桌面vnc : tigervnc
https://bintray.com/tigervnc/stable/tigervnc/1.8.0#files启动: vncserver帮助:vncserver -help列出进程: vncserver -list杀进程: vncserver -kill :* (* 为桌面号)端口: 5900+* (* 为对应桌面号)
内网穿透 : frp
https://github.com/fatedier/frp/releases配置文档:https://github.com/fatedier/frp/blob/master/README_zh.md
任务开机启动
sudo vim /etc/systemd/system/ *** .service 新建此文件,并写入以下内容[Unit]Description=*** daemon# 下面两行意味着网络准备好以后才会启动命令# After=syslog.target  network.target# Wants=network.target[Service]Type=simpleExecStart= ***  # 启动指令Restart= alwaysRestartSec=1min[Install]WantedBy=multi-user.target然后设为开机自启动:sudo systemctl start ***sudo systemctl enable ***
支持中文的console:fbterm 配置
sudo apt install fbtermsudo fbterm 或者 sudo fbterm fish 运行然后修改~/.fbtermrcfont-names=YaHei Consolas Hybridfont-size=18font-width=-2font-height=-4color-foreground=0color-background=7text-encodings=zh_CN.UTF-8获得纯白的方法:echo -en "\e]P7ffffff"clear如果要支持中文输入法的话,安装fcitx-frontend-fbterm,然后运行:sudo setcap 'cap_sys_tty_config+ep' /usr/bin/fbterm并且在.fbtermrc里设置input-method=fcitx-fbterm
开机自动运行的脚本
创建一个脚本文件: *** .sh编写内容,开头一定要是#!/bin/sh 或者 #!/usr/bin/fish 等表示在哪个shell下执行命令然后下面必须有LSB描述信息:### BEGIN INIT INFO# Provides:         *** .sh# Required-Start:    $syslog $remote_fs $network# Required-Stop:    $syslog $remote_fs $network# Default-Start:    2 3 4 5# Default-Stop:        0 1 6# Short-Description: starts the *** .sh daemon# Description:     starts *** .sh using start-stop-daemon### END INIT INFO执行如下指令:sudo chmod 755 *** .sh让脚本具备可执行权限将 *** .sh移动到/etc/init.d路径下,可以直接拷贝执行:cd /etc/init.d/sudo update-rc.d  *** .sh defaults 90在这里90表明一个优先级,越高表示执行的越晚如果要移除脚本:sudo update-rc.d -f  *** .sh remove获取sudo的方式:echo PASSWORD | sudo -S ls
fish启动加载脚本位置

~/.config/fish/config.fish

fish shell判断是否是tty命令行还是图形界面命令行来启动fbterm
脚本位于~/.config/fish/config.fish内容如下:  if tty | grep tty      nohup vncserver :1 &      echo PASSWORD | sudo -S ls      fcitx-fbterm-helper -l   # 如果要开机启动输入法 那就用这句      # sudo fbterm fish         # 如果不要输入法 就用这句      如果想要开机登陆到root用户,这段可以这样:      sudo fcitx      sudo fcitx-fbterm-helper      sudo fbterm fish      如果想在fbterm里exit以后直接退出登陆,那么再加:      echo PASSWORD | sudo -S ls      sudo kill %self  else      sudo echo -en "\e]P7ffffff"      clear  end这段脚本的运行逻辑:每次登陆到一个tty进入fish的时候先试着启动vnc然后往下运行到sudo fbterm fish,递归下一层进入fbterm发现tty得到的不是tty而是pts于是执行刷新白色的操作等到这个fbterm最后exit的时候就回溯到kill %self,直接把上一层的依赖fish给杀掉,于是退出当前这个tty的登陆依赖关系为: login - fish - sudo - fbterm - fish注意,如果最开始登陆的那个tty退出的话,vnc会跟着退出。因为vnc是依赖于tty运行的,一直运行着的那个vnc:1自然是依赖于最早启动的tty一旦最早登录的那个tty被退出,vnc:1自然就会被杀掉。

转载于:https://www.cnblogs.com/stevehawk/p/8445552.html

你可能感兴趣的文章
正数阶乘结尾0的个数
查看>>
SQL SERVER2008及以上版本数据库自动备份的三种方法
查看>>
秒杀于丹、蒋勋、蒙曼,每篇都有10万+的潜质。《六神磊磊读唐诗》,5星。
查看>>
JDBC教程之PreparedStatement
查看>>
利用日志记录所有LINQ的增,删,改解决方案
查看>>
实例讲解PostSharp(一)
查看>>
IDE神器intellij idea的基本使用
查看>>
回收 PV - 每天5分钟玩转 Docker 容器技术(152)
查看>>
数据结构之图(存储结构、遍历)
查看>>
MySQL 5.5.35 单机多实例配置详解
查看>>
graylog 客户端的安装配置
查看>>
CentOS6.4_X86_64 安装Drupal-7.31必须成功版!
查看>>
附录B 安装MySql数据库
查看>>
驱动学习之驱动和应用的接口
查看>>
hbase region split源码分析
查看>>
MySQL备份之分库分表备份脚本
查看>>
Java 与 Netty 实现高性能高并发
查看>>
SurfControl人工智能新突破 领跑反垃圾邮件
查看>>
一个动态ACL的案例
查看>>
RSA加密
查看>>