标签:linux学习笔记
1.uname -n (hostname) 显示主机名,uname -r 显示系统的内核版本2.systemctl daemon-reload 重新加载systemd的配置文件
3.ls /usr/lib/systemd/system/ |grep httpd ,/usr/lib/systemd/system 下的脚本包括启动的和禁用的,
而 /etc/systemd/system/ 下的脚本都是enable的脚本
4.lsof -i tcp:3306 查看tcp协议的3306端口。
5.IANA把D类地址留给组播使用: 224.0.0.0 - 239.255.255.255
6.学会使用man 配置文件来查看配置选项信息(很重要)
7.pcs cluster auth node1 node2 出现验证不通过的情况,是因为防火墙没有关掉的原因
8.unicast 单播, udpu(UDP unicast)
9.grep -v '^[[:space:]]*#' corosync.conf
10.vim /etc/rsyslog.conf 系统日志配置文件
systemctl restart rsyslog.service
11.systemctl is-enabled httpd #查看服务是否是开机启动
12.ln -sv apache-tomcat-8.0.23 tomcat 创建软连接,tomcat是链接文件,apache-tomcat-8.0.23是源文件
13.环境变量的文件位置:vi /etc/profile.d/tomcat.sh
14.create database zabbix_proxy character set utf8;
15.grant all on zabbix_proxy.* to zbxuser@'172.16.%.%' identified by 'zbxpass';
16.PS1="\[\e[36;1m\][\u@\[\e[32;1m\]\h \W] \[\e[0m\]"
17.1,$s/^[^[:space:]]/ &/g 将文件中非空行的内容前面添加空白,&表示前面匹配的非空行
18.lscpu 查看cpu相关信息
19.lsb_release -a(cat /etc/centos-release) 查看系统版本号,与/etc/centos-release 查看版本号一致
20./etc/motd 显示登陆后的信息(Message of the day)
21.rz 用于向linux主机传送文件,可以使用yum install lrzsz -y 来安装rz、sz 工具
22.设定开机自动以某用户的身份自动登录路径: /etc/gdm/cutom.conf 增加内容如下:
AutomaticLoginEnable=true
AutomaticLogin=root
23.killall -0 nginx 通过返回值可以探测服务是否存在
24.alt + 数字,可以指定重复打印字符的次数
25.各类型显示文件颜色配置 /etc/DIR_COLORS,颜色范围31-37
echo -e "\e[1;31mcolor\e[0m" 1表示颜色高亮显示
26.#mount
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=99996k,mode=700)
中的relaytime 就是为了避免重复读操作引起的不必要的access time 更新,一般的更新条件是两次读操作的时间超过1天,或是mtime的时间比atime的时间要新,才会再次更新atime
27. 注意let a=$a+1
#!/bin/bash
a=1
until [ $a -gt 2 ]; do
let a=$a+1
echo $a
done
28.lsof |grep deleted 删除文件但是空间没有释放,可以通过该命令查看已经删除却被进程所使用的文件
29.exportfs(showmount -e)查看nfs服务器共享出去的路径与IP
30.文件有时无访问权限可能是因为selinux的设置问题,注意改成setenforce 0 并且修改配置文件 vi /etc/sysconfig/selinux
31.使用 yum install nfs-utils -y 安装nfs服务,并使用systemctl start nfs.service 启动nfs服务
32.nfs的主服务配置文件为:/etc/exports
/www/htdocs 192.168.1.0/24(rw) #将/www/htdocs目录共享给192.168.1.0的网段内的所有主机,并且权限为读写
33.免密码登录:# ssh-keygen -t rsa
# ssh-copy-id -i /root/.ssh/id_rsa root@node2
34.查看各分区的inode节点信息: # df -i
35.三种查看所有已挂载的设备: 1.mount 2. cat /proc/mounts 3. cat /etc/mtab
36.vim + file #打开文件并且光标的位置在文件末尾(常用)
37.vim -O file1 file2 #垂直分屏
vim -o file1 file2 #水平分屏
全部不保存退出:qall,全部保存退出:wqall
38.vi +/pattern filename # 打开文件将光标置于第一个与patter匹配(包含)的处,并且会高亮显示匹配的字符串
39.vi中删除文档中所有的空白行,在删除行时候使用的全文使用g,选择替换的时候使用的是%s,并且支持的正则表达式是普通的正则表达式,注意\转义斜线的使用
:g/^$/d
40.tar --exclude=python* -cvzf my.tar.gz * #排除以python开头的所有文件并压缩
41.查看文件的前10行,可以使用head -10 /etc/passwd ,也可以使用sed 10q /etc/passwd
42.计算文件的行数,可以使用wc -l /etc/passwd ,也可以使用 sed -n '$=' /etc/passwd
43.取出文件的指定行的内容 # sed -n '20p' /etc/passwd
44.删除文件匹配行至文件末尾的所有内容 # sed -i '/aaa/,$d' /home/test ,sed -i.bak '/aaa/,$d' /home/test ,可以备份源文件
45.显示文件的指定行的内容 # sed -n '2,10p' /etc/passwd
显示文件非连续的行 # sed -n '3p;10p' /etc/passwd 显示第3行和第10行
46.sed 's/^root/&localhost/' example # &符号表示替换换字符串中被找到的部份。所有以root开头的行都会被替换成它自已加 localhost,变成rootlocalhost
47.反斜线和单引号都可以执行原始命令本身,而不执行别名。如:\ls,或者'ls'
48.date 修改时间: date 月日时分年.秒,如 date 022313062018.30
49.clock(hwclock)显示系统的硬件时间
clock -s 从硬件时钟设置系统时间
clock -w 从当前系统时间设置硬件时钟
50.将windows上传到linux环境中出现乱码的文本(windows中默认的是ANSI格式),通过iconv -f gb2312 win.txt -o win3.txt
tr -d '/r'
51.centos中whatis查看命令需要依赖于whatis数据库,可以使用makewhatis(仅centos6中可用)来创建数据库,centos7中使用mandb来创建whatis数据库
whatis数据库在系统刚刚安装完以后不可用
52.可以打印命令不执行,如:!man:p 防止执行的命令有误
53.!*表示的是命令所有的参数,可以使用command !* 重新对上次执行的命令参数使用command命令来执行
54.ctrl + o 用于执行命令并再次给出显示执行过的命令,不确定是否执行成功的命令可以使用,方便再次修改
55.ctrl + xx 用于切换光标的当前位置与命令行首进行切换
56.启动光盘自动挂载 systemctl start autofs ,挂载点在 /mis/cd上,通过cd /mis/cd/Packages 可以查看光盘中的内容,挂载过程是自动完成的,无须手动。有时需要logout后重新登录
57.通过df -T 可以查看各个分区文件系统类型
58.ls -1 竖行列出文件夹内容,但没有文件的详细信息
59.ls -d */ 显示当前目录下面的目录,如果不指定-d 选项将递归下面的文件夹
60.创建指定文件大小的文件:dd if=/dev/zero of=/boot/bigfile bs=100M count=10 可以控制文件大小
61.rm 删除文件后空间没有释放的原因是因为删除的文件正在被使用,可以通过lsof|grep deleted 来查看被删除但空间没有被释放的进程
62.大文件快速释放空间的办法最好使用 > 重定向符号来清空大文件,此办法可以立即释放空间(不论文件是否正在被使用),rm删除文件的时候,如果文件正在被使用,空间不会立即释放。
可以通过lsof |grep deleted 来找到删除文件的进程号pid ,使用kill -9 pid 来终止程序
63.文件是由元数据区与数据区组成,元数据区中存放的是文件或目录的属性信息,包括atime,ctime,mtime,mode,links,inode号,data指针,通过指定的inode编号的data指针可以从数据区找到该inode编号的文件内容,对于目录来讲,通过该inode编号对应的data指针可以在数据区找到该inode号对应的文件名与inode编号的对应关系,然后通过文件名对应的inode号,再次查找便可找到文件的内容。
对于硬链接而言,同一inode号对应于数据区中的内容存放的是file1<-->100,file2<-->100对应关系,删除硬链接的时候删除的是文件名与inode编号的对应关系,所以,删除目标文件file1链接文件还是可以正常打开,目录不能创建硬链接。
对于软链接inode的对应的data指针是指向的数据区的链接地址,由该链接地址找到对应的inode号,进而找到数据区中文件的内容
64.彻底删除文件可以使用shred -uvzn 10 file1 n指定填充的次数,u表示反复填充完0会后删除文件
65.使用vim打开文件的时候,实际是打开的文件的fd(file descriptor)文件描述符,可以通过查找打开的文件的pid号,再去/proc/pid号/fd/ 可以查看到vim编辑的文件时以.开头的隐藏文件,文件保存之后才会写到真实的文件中去,并删除隐藏文件
[root@centos7 fd]#pwd
/proc/3807/fd
[root@centos7 fd]#ll
total 0
lrwx------. 1 root root 64 Apr 13 07:57 0 -> /dev/pts/0
lrwx------. 1 root root 64 Apr 13 07:57 1 -> /dev/pts/0
lrwx------. 1 root root 64 Apr 13 07:57 2 -> /dev/pts/0
lrwx------. 1 root root 64 Apr 13 07:57 4 -> /home/zhanglei/.test.swp
66.查看当前的终端窗口编号:tty 可以查看,然后可以使用重定向将输出内容重定向指定的终端 ls /etc/ > /dev/tty/1
67.使用>> file 来创建文件比> 创建文件安全,因为不会清空文件
68.set -C 可以禁用> 清空文件的功能,也可以使用强制覆盖 >|,如ls /etc/ >| file1,使用set +C 开启允许覆盖
69.可以使用()来将多个命令的组合统一重定向,如(ls;pwd;uname) > file1, 括号的两边有无空格均可
用()括起来的命令执行时,是开启的子shell来运行的,可以不影响当前的shell环境,执行命令组合的时候也可以不用切换目录
70.grep -Ev '^[[:space:]]+#' /etc/corosync/corosync.conf 删除每行以#号注释且前面有空白行的行
标签:linux学习笔记
原文地址:http://blog.51cto.com/9980200/2104902