01 - Linux basename命令与dirname命令

  • dirname命令:获取指定路径的目录部分
  • basename命令:语法“basename string [suffix]”,删除string中以“/”结尾的前缀以及指定的suffix,并将剩余的部分写至标准输出。

02 - Linux文件已经被删除,为什么还是可以被locate出来?

locate命令不是直接在目录中找寻文件,而是通过缓存(包含了被删除文件的信息)来查找。

虽然删除了文件,但缓存中还有文件的相关信息,所以locate出来仍然有结果。将Server重启后,缓存被更新,就不会找到了。

03 - Linux压缩与解压文件

tar cf file.tar files --- 创建包含files的tar文件

tar czf file.tar.gz files --- 创建包含files的tar.gz文件

tar xf file.tar --- 从file.tar提取文件

tar xzf file.tar.gz --- 从file.tar.gz提取文件

gzip file --- 压缩file并重命名为file.gz

gzip -d file.gz --- 将file.gz解压为file

04 - Linux显示ascii编码表

显示ascii编码表: man ascii

05 - Linux文件格式转换

# 不改变文件时间戳
dos2unix -k file # 当前目录批量格式转换
dos2unix file1 file2 file3
dos2unix *
dos2unix *.py # 递归目录批量格式转换
find public/components/ -name "*" | xargs dos2unix
find public/components/ -name "*.py" | xargs unix2dos

06 - Linux设置Ubuntu初始root密码

Ubuntu安装过程中并不会要求设置root密码,每次Ubuntu开机都会生成一个随机密码作为默认root密码。

可以利用“sudo passwd”命令设置root密码。

07 - apt-get命令执行异常,导致资源被锁不可用

报错信息如下:

E: 无法获得锁 /var/lib/dpkg/lock - open (11: 资源暂时不可用)
E: 无法锁定管理目录(/var/lib/dpkg/),是否有其他进程正占用它?

通过删除锁定文件来完成解锁:

# rm -rf /var/cache/apt/archives/lock
# rm -rf /var/lib/dpkg/lock

解决非正常关闭apt-get的锁

08 - LVS and keepalived

LVS(Linux Virtual Server)通过创建虚拟服务器的方式来实现服务节点之间的负载均衡,提供高可伸缩的、高可用的网络服务。

LVS是基于linux内核实现的,2.6.X内核默认集成了lvs模块,LVS常用负载均衡的实现是基于ip协议的,所以一般称为IPVS。

LVS集群有DR、TUN、NAT三种配置模式,可以对www服务、FTP服务、MAIL服务等做负载均衡。

配置LVS集群就是在负载均衡服务器上建一个虚拟ip,然后用ipvsadm(lvs的配置工具)建立转发规则,keepalived实现高可用性(HA)。

09 - 性能测试常用命令

sysstat

# 安装
yum list sysstat
yum install sysstat
# 帮助信息
man sysstat
sar -h
# 常用命令(在“/var/log/sa”目录执行)
# cpu
sar -q -f sa08
sar -p -f sa08
# mem
sar -r -f sa08
sar -B -f sa08
sar -W -f sa08
# IO
sar -b -f sa08
sar -d -f sa08
# Network
sar -n DEV -f sa08
sar -n NFS -f sa08

评估磁盘IO性能

# dd(device to device)和hdparm命令可以简单测试磁盘的IO读写速度
dd -h
hdparm --help
# iostat工具观察磁盘的读写速度和IO使用率
iostat --help

10 - 将命令执行结果在屏幕输出的同时保存到文件

# tee --help
Usage: tee [OPTION]... [FILE]...
Copy standard input to each FILE, and also to standard output. -a, --append append to the given FILEs, do not overwrite
-i, --ignore-interrupts ignore interrupt signals
--help display this help and exit
--version output version information and exit If a FILE is -, copy again to standard output. Report bugs to <bug-coreutils@gnu.org>.

举例说明:

  1. 直接覆盖日志文件log.txt:ls -l | tee log.txt
  2. 将输出内容附加到日志文件 log.txt:ls -l | tee -a log.txt

需要注意的是:此时log.txt文件中只包含有ls –l命令的标准输出信息(stdout),没有标准错误信息(stderr)。

11 - Linux文件和目录的颜色代表的含义

约定的默认颜色:

  • 白色:表示普通文件
  • 蓝色:表示目录
  • 绿色:表示可执行文件
  • 红色:表示压缩文件
  • 浅蓝色:链接文件
  • 红色闪烁:表示链接的文件有问题
  • 黄色:表示设备文件
  • 灰色:表示其他文件

12 - Linux CentOS中升级FireFox

yum erase firefox  # 先卸载
yum install firefox # 再安装

13 - 创建用户并添加到Sudo组

创建用户并添加到Sudo组, 能够使用户在本地不用密码就能执行sudo命令.

以在CentOS7中添加gerrit用户为例:

[Anliven@mt101 ~]$ sudo adduser gerrit
[Anliven@mt101 ~]$ sudo passwd gerrit
Changing password for user gerrit.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
[Anliven@mt101 ~]$ su - gerrit
Password:
[gerrit@mt101 ~]$
[gerrit@mt101 ~]$ exit
logout
[Anliven@mt101 ~]$
[Anliven@mt101 ~]$ sudo visudo
[Anliven@mt101 ~]$ sudo cat /etc/sudoers |grep gerrit
gerrit ALL=(ALL) NOPASSWD: ALL
[Anliven@mt101 ~]$

14 - 问题处理:sonar is not in the sudoers file. This incident will be reported.

处理方法:将用户添加到sudo组

[root@node201 ~]# visudo
[root@node201 ~]# cat /etc/sudoers |grep "sonar"
sonar ALL=(ALL) ALL
[root@node201 ~]#

15 - CentOS7修改主机名

临时生效(重启失效)

[root@localhost ~]# hostname node101
[root@localhost ~]# hostname
node101
[root@localhost ~]# exec bash
[root@node101 ~]# hostname
node101
[root@node101 ~]#

永久生效

[root@localhost ~]# hostname
localhost.localdomain
[root@localhost ~]#
[root@localhost ~]# hostnamectl set-hostname node102
[root@localhost ~]# exec bash
[root@node102 ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 node102
192.168.16.102 localhost localhost.localdomain localhost4 localhost4.localdomain4 node102
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 node102
[root@node102 ~]#
[root@node102 ~]# hostname
node102
[root@node102 ~]#

Linux - Tips的更多相关文章

  1. 【Linux Tips】登陆,提示符,别名

    1.Linux 的tty界面下的登陆界面设置 看了半天发现,原来每次ctrl+alt+F1进入的tty1刚开始显示的就是初始化的登陆界面,顿时有种想装扮下他的冲动,因为实在是太简单了点,不过我是个喜欢 ...

  2. [Linux Tips] 1. 查看端口

    查看监听的端口 # netstat -lnp

  3. 常用Linux Tips(不定期更新)

    查看本机所有开放端口 lsof -i -P | grep -i listen 查看一段文本单词出现频率 awk '{b[length($0)]++;total_lines++;for(i=1;i< ...

  4. [linux tips] puppet client ssl 证书过期

    问题: [root@control-01 .ssh]# puppet agent -tv Warning: Unable to fetch my node definition, but the ag ...

  5. 每个极客都应该知道的Linux技巧

    每个极客都应该知道的Linux技巧 2014/03/07 | 分类: IT技术 | 0 条评论 | 标签: LINUX 分享到:18 本文由 伯乐在线 - 欣仔 翻译自 TuxRadar Linux. ...

  6. 剖析 Linux hypervisor--KVM 和 Lguest 简介

    慢慢弄清楚..   M. Tim Jones, 顾问工程师, Emulex Corp. M. Tim Jones 是一名嵌入式软件工程师,他是 Artificial Intelligence: A S ...

  7. Virtio: An I/O virtualization framework for Linux

    The Linux kernel supports a variety of virtualization schemes, and that's likely to grow as virtuali ...

  8. 剖析 Linux hypervisor

    hypervisor 之于操作系统类似于操作系统之于进程.它们为执行提供独立的虚拟硬件平台,而虚拟硬件平台反过来又提供对底层机器的虚拟的完整访问.但并不是所有 hypervisor 都是一样的,这是件 ...

  9. Enable a SQL Server Trace Flag Globally on Linux

    https://www.mssqltips.com/sql-server-tip-category/226/sql-server-on-linux// Microsoft has recently r ...

随机推荐

  1. angular2 递归导航菜单实现方式

    看了网上很多源码,基本都是采用循环三级的方式.如果是无限级的菜单,就无法实现了. 菜单格式: [ { "title": "Item-1", "icon ...

  2. 数据库Date类型和JavaDate类型的转换

    问题:     java.lang.ClassCastException : java.util.Date cannot be cast to java.sql.Date 1.若是想将字符串装换成sq ...

  3. Python学习笔记1——Python基础

    一. 数据类型和变量 整数:十六进制用0x前缀和0-9,a-f表示 浮点数:小数,科学计数法:10用e代替:整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(包括除法),浮点数运算则可 ...

  4. 分享:写了一个 java 调用 C语言 开发的动态库的范例

    分享:写了一个 java 调用 C语言 开发的动态库的范例 cfunction.h   代码#pragma once#ifdef __cplusplusextern "C" {#e ...

  5. 用JS识别各版本浏览器

    自昨天发了各浏览器内核介绍的随笔,就闲不住了,想直接写个JS来识别用户所用浏览器版本. 写着写着却发现很多坑爹的地方,比如IE10-的版本是依循常规支持attachEvent,但到了IE11,却只支持 ...

  6. 推荐书籍 -《移动App测试的22条军规》

    在今天的博文中,博主希望给大家分享一本博主同事黄勇的最新利作:<移动App测试的22条军规>.黄勇是ThoughtWorks资深敏捷QA和咨询师.对于我来说,和黄勇在一起的工作的这个项目, ...

  7. 探求网页同步提交、ajax和comet不为人知的秘密(上篇)

    标题里的技术都是web开发里最常见的技术,但是我想这些常用的技术有很多细节是很多朋友不太清楚的,理解这些细节是我们深入掌握这些技术的一把钥匙,今天我就讲讲我使用这些技术时体会到的这些细节. 同步提交是 ...

  8. 一个简单的、面向对象的javascript基础框架

    如果以后公司再能让我独立做一套新的完整系统,那么我肯定会为这个系统再写一个前端框架,那么我到底该如何写这个框架呢? 在我以前的博客里我给大家展示了一个我自己写的框架,由于当时时间很紧张,做之前几乎没有 ...

  9. MySQL--将MySQL数据导入到SQL Server

    随着时代的进步,社会的发展,各种技术层出不穷五花八门乱七八糟数不胜数(写作文呢!!!) 不扯废话,简单而言,很多公司都会同时使用多种数据库,因此数据在不同数据库之间导入导出就成为一个让人蛋疼的问题,对 ...

  10. 优雅的使用python之环境管理

    优雅的使用python之环境管理 缘起 情景1:不同python版本的管理 同一电脑上的多个python版本之前的管理,为了突出问题的普遍存在,下面是有人在segmentfault上提的问题. 摘自: ...