Linux鸡毛蒜皮

系统配置

系统环境配置

修改语言区域

apt install locals
dpkg-reconfigure locales

修改时区

dpkg-reconfigure tzdata

修改主机名

vi /etc/hostname

修改为需要的主机名, 如:

myhost

同时需要修改hosts文件 的 127.0.0.1. 添加别名

vi /etc/hosts

127.0.0.1 localhost myhost

管理系统版本的替代系统

如果你曾进行过软件开发, 你就会明白跨项目管理不同版本的语言的支持的重要性. 许多 Linux 发行版都有工具可以来处理不同的内建版本.

可执行文件比如 java 往往符号链接到目录 /etc/alternatives 下. 反过来, 该目录会将符号链接存储为二进制文件并提供一个管理这些链接的接口. Java 可能是替代系统最常管理的语言, 但是, 经过一些配置, 它也可以作为其他应用程序替代品, 比如 NVM 和 RVM (NVM 和 RVM 分别是 NodeJS 和 Ruby 的版本管理器).

在基于 Debian 的系统中, 你可以使用 update-alternatives 命令创建和管理这些链接. 在 CentOS 中, 这个工具就叫做 alternatives . 通过更改你的 alternatives 文件中的链接, 你便可以安装一个语言的多个版本, 并且在不同的情况下使用不同的二进制. 这个替代系统也提供了对任何你可能在命令行运行的程序的支持.

挂载proc文件系统

在FreeNAS系统中, 进入 /proc 目录中, 里头并没有内容. 经查, 需要挂载 proc 文件系统才会在其中列出当前进程情况.

sudo mount -t procfs proc /proc

用户管理

添加sudo用户(sudoers)

sudoers文件需要用visudo命令修改. 可以在sudoers.d文件夹中新建文件单独配置.

cd /etc/sudoers.d/
echo "username    ALL=(ALL:ALL) ALL" > username

BUG, 异常, 各种莫名奇妙的毛病

CPU 占用过高

  • upowerd进程占用CPU 杀掉后又回来了.. upowerd hogging CPU
    拔掉连在电脑上的iPhone或点击信任此电脑.

Remmina 连接windows 远程桌面(RDP) 输入法问题

  1. 现象: 进入windows桌面后无法输入中文. 要按着右crtl才能激活windows中的输入法.
  2. 处理: 搜索后得知是键盘布局的问题, 默认是自动检测(很明显检测的不着调). 编辑->首选项->RDP选项卡->键盘布局->Chinese(Simplified) – US Keyboard

以下为未整理的旧文档

查看进程详细信息

ps -ef | grep procName # 得到进程号(pid)
ll /proc/pid

即可得到:
进程详情
其中:

cwd符号链接的是进程运行目录
exe符号连接就是执行程序的绝对路径
cmdline就是程序运行时输入的命令行命令
environ记录了进程运行时的环境变量
fd目录下是进程打开或使用的文件的符号连接

Ubuntu默认的桌面图标

在/usr/share/applications目录中有许多系统默认的图标(*.desktop),复制到桌面后赋上可执行权限即可.
手动添加图标也可参考其中.

通过ssh公钥登录

client端生成秘钥对

  1. 检查ssh是否安装, 没有则安装.
apt install ssh
ssh -V
  1. 生成秘钥对
ssh-keygen

秘钥默认保存于~/.ssh目录. id_rsa为私钥, id_rsa.pub为公钥.

server端

  1. 检查用户目录下是否有.ssh目录, 没有则创建.
  2. 检查.ssh目录下是否有authorized_keys文件, 没有则创建.
  3. 检查authorized_keys是否为600权限. 没有则"chmod 600 authorized_keys"
  4. 拷贝client端公钥内容到 authorized_keys
cat id_rsa.pub > ~/.ssh/authorized_keys
  1. 到client端测试 ssh username@server-host

APT代理

apt更新时google源直接挂. 需要代理.

tsocks

sudo apt install tsocks

配置 /etc/tsocks.conf

local = 127.0.0.0/255.255.255.0
server = 127.0.0.1     # 代理地址
server_type = 5         # socks类型
server_port = 8008    # 代理端口

代理apt

sudo -i
tsocks apt update

apt 代理参数

# 只支持http代理
sudo apt -o Acquire::http::proxy="http://127.0.0.1:8000/" update

使用iconv转换文件编码

查看文件编码

file -i filename

递归转换(包括子文件夹)

find default -type d -exec mkdir -p utf/{} \;
find default -type f -exec iconv -f GBK -t UTF-8 {} -o utf/{} \;
find default -name *.java -exec iconv --verbose -f GBK -t UTF-8 {} -o utf/{} \;

挂载cifs文件系统

mount.cifs //remotepath /localpath -o username=${username},password=${password},iocharset=utf8,uid=${uid},gid=${gid}

不指定uid和gid则使用当前账户的uid和gid. 其他用户可能无法写入.

查询硬件信息

查看硬件信息

#示例(查看网卡信息)
lshw -C network
#示例(查看显卡信息)
lshw -C display
#当前 Linux 系统上所使用的显卡驱动名称
lshw -c video | grep configuration

检查显卡硬件加速

glxinfo | grep OpenGL

使用hdparm调整硬盘参数

hdparm命令

显示系统中所有PCI总线设备或连接到该总线上的所有设备

lspci -v

读取BIOS信息

dmidecode

制作启动盘

Ubuntu下

usb-creator-gtk

处理Google's updated GPG Key 丢失

现象:

错误:7 http://dl.google.com/linux/chrome/deb stable Release.gpg
由于没有公钥, 无法验证下列签名: NO_PUBKEY 6494C6D6997C215E

处理:

wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -

参考:

数据处理

用grep -c来统计匹配的行数

grep -c 的作用类似于 grep | wc -l. 不同的是,对于查找多个文件, grep -c会统计每个文件匹配行数, 每个文件一行; 而wc -l则列出总行数.

参考文档

转载于:https://my.oschina.net/CasparLi/blog/719147

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值