Linux常见目录&常用运维命令

Linux常见目录
/bin存放系统所需要的的重要命令,如文件目录操作命令ls,cp,mkdir等。另/usr/bin也存放了一些系统命令,这些命令对应的文件都是可执行的,普通用户可以使用大部分的命令。
/boot存放Linux启动时内核及引导系统程序所需要的的核心文件,内核文件和grub引导装载程序都位于此目录。
/dev存放Linux系统下的设备文件,如光驱、硬盘等。访问该目录下某个文件相当于访问某个硬件设备,常用于挂载光驱。
/etc存放系统配置文件,作为一些软件启动时默认配置文件读取的目录,如/etc/fstab存放系统分区信息。
/home系统默认的用户主目录。如果添加用户时不指定用户的主目录,默认在该目录下创建与用户同名的文件夹。
/lib存放动态链接库。类似的目录有/usr/lib、/usr/local/lib等
/lost+found存放一些当系统意外崩溃或机器意外关机时产生的文件碎片
/mnt用于存放挂载储存设备的挂载目录,如光驱等。
/proc存放操作系统运行时的信息,如进程信息、内核信息、网络信息等。此目录的内容存在于内存中,实际不占用磁盘空间。
/rootLinux超级用户root的主目录
/sbin存放一些系统管理命令,一般只能由超级用户root执行,类似目录有/usr/sbin、/usr/local/sbin等。
/tmp临时文件目录。系统软件或用户运行程序(如mysql)时产生的临时文件存放在这里。需要定时清除。
/usr应用程序存放目录,如命令、帮助文件等。安装Linux软件包时默认安装到/usr/local目录下。
/var内容经常变动。如/var/log存放系统日志,/var/lib存放系统库文件等。
/sys与/proc类似,是一个虚拟的文件系统,主要记录与系统核心相关的信息,如系统当前已经载入的模块信息等。
常用运维命令
文本三剑客(grep,awk,sed)

pppps:只是简单介绍一下,详细用法可以看看其他博主的~

  1. grep文本过滤工具
-i	忽略大小写
-v	反向查找
-q	不显示任何信息
-n	显示行号
-c	计算符合结果的行数
-E	使用扩展正则表达式,等同于egrep
例如:grep -Ev "^$|[#;]"   #过滤注释行和空行
  1. awk文本分析工具
命令模式:awk [option] 'pattern+action' filename
	-F:指定分隔符
	-v:指定用户自定变量
例如:1.#自定义变量,以:作为分隔符,输出第三列数据
	   awk -F: -va=3 '{print $a}' /etc/passwd  
	 2.#关系表达式,以:作为分隔符,若第四列数据等于0,则输出第一列和第四列数据
	   awk -F: '$4==0 {print $1 $4}' /etc/passwd
	 3.#内置变量 NR:行号  NF:列数  $0:整行数据......
	   awk -F: '{print "linenumber:"NR,"columes:" NF,"linecontext:"$0}' /etc/passwd
	   # linenumber:1 columes:7 linecontext:root:x:0:0:root:/root:/bin/bash
	 4.#BEGIN——END语块
	   awk -F: 'BEGIN{print "---------------begin---------------"}{printf "username:%-16s\tuserid:%-16s\n",$1,$3}END{print "-------------end------------"}' /etc/passwd
	    #---------------begin---------------
		#	username:root            	userid:0               
		#	username:bin             	userid:1               
		#	username:daemon          	userid:2               
		#	username:adm             	userid:3 
		#	-------------end------------  
	 5.#正则表达式
	   awk -F: '/^\<root\>/ {print $0}' /etc/passwd
	   # root:x:0:0:root:/root:/bin/bash
  1. sed文本编辑工具
    sed处理文本的过程:将当前处理的行存储在临时缓冲区中,该缓冲区称为“模式空间”;用sed命令处理缓冲区中的内容,处理完毕后,把缓冲区的内容送到标准输出;
    sed处理的整个过程中,对象文件的内容没有改变,除非使用重定向来存储处理后的结果;
命令格式:sed [option] 'command' filename
		-n  只打印模式匹配到的行
		-e  直接在命令行模式上进行sed编辑(默认)
		-i  直接修改文件内容
例如:1.#取消注释行
	   sed '1,10s@^#\+\(.*\)$@\1@g' 1.txt
	 2.#显示/etc/passwd文件中位于第偶数行的用户的用户名
	    sed -n 'n;p' /etc/passwd | cut -d: -f1
	 3.#为/tmp/1.txt 文件中前三行的行首加#号。
	    sed -i '1,3s@\(^.\)@#\1@g' /tmp/1.txt
压缩、解压缩文件 tar | zip/unzip
1.打包,不压缩
	tar -cvf /tmp/etc.tar /etc
2.打包并用gzip压缩
	tar -zcvf /tmp/etc.tar.gz /etc
3.解压压缩包至当前路径
	tar -zxvf /tmp/etc.tar.gz
4.排除不加入压缩包的文件
	tar --exclude /home/*log -zcvf test.tar.gz /data/soft
5.解压时保留文件的原属性
	tar -zxvpf /tmp/etc.tar.gz /etc
6.打包并使用bzip2压缩
	tar -jcvf /tmp/etc.tar.bz2 /etc

1.将整个文件夹压缩成一个文件
	zip -r file_backup.zip .
2.解压时不询问,直接覆盖
	unzip -o filename.zip
3.将文件解压到指定文件夹
	unzip filename.zip -d [指定文件夹路径]
查看系统负载 uptime
[root@localhost ~]# uptime
 14:46:27  up 1:33,  2 users,  load average: 0.00, 0.01, 0.05
#系统当前时间 主机已运行时间, 用户连接数, 系统平均负载:最近1分钟,5分钟,15分钟
显示系统内存状态 free
[root@localhost ~]# free -m
              total     used     free    shared  buff/cache   available
Mem(内存):     974      128      694       7        151         679
Swap(交换分区): 2047      0       2047

total:物理内存总量;
used:总计分配给缓存(包含buffers和cache)使用的数量,但其中可能部分缓存并未实际使用;
free:未被分配的内存
shared:共享内存
buffers:系统分配但未被使用的buffers数量
cached:系统分配但未被使用的cache数量
计算应用程序占用内存公式=total-free-buffers-cached
单次任务 at

设置在指定时间执行一个指定任务,只能执行一次,使用前确认系统开启了atd服务。

周期任务crond

周期性地执行某种任务或等待处理某些事件,如进程监控、日志处理等。crond进程每分钟定期检查是否有要执行的任务,最小调度单位为分钟。
任务调度分为:系统任务调度和用户任务调度。
(1)系统任务调度:系统周期性所要执行的工作,如写缓存数据到硬盘、日志清理等。配置文件/etc/crontab。

.---------------- minute (0 - 59)
|  .------------- hour (0 - 23)
|  |  .---------- day of month (1 - 31)
|  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
|  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
|  |  |  |  |
*  *  *  *  * user-name  command to be executed

crontab命令参数:
	-e 执行文字编辑器来编辑任务列表
	-r 删除目前的任务列表
	-l 列出目前的任务列表
例子:1.#每两个小时重启一次apache
		0 */2 * * * /sbin/service httpd restart
	 2.#在12月,每天的早上6点到12点中,每隔20分钟执行一次/uer/bin/backup
	    0/3 6-12 * 12 * /usr/bin/backup
改变文件所有权 chown | chgrp

chown:可以将文件更改为新的属主或属组,只有root用户和拥有该文件的用户才可以更改。

常用参数: -R 递归更改指定文件的所有权,但不更改链接指向的目录

chgrp:用于改变指定文件或目录的属组。

改变文件权限 chmod
例如:1.#给文件所有者加上可执行权限
		chmod u+x filename
	 2.#采用数字设置文件权限 r=4,w=2,x=1
	 	chmod 775 filename
查看磁盘空间占用情况 df
常用参数: -a 显示所有文件系统的磁盘使用情况
		 -k  以k字节为单位显示
		 -i  显示i节点信息,而不是磁盘块
		 -t  显示各指定类型的文件系统的磁盘空间使用情况
		 -x  与-t相反
		 -h  以更直观的方式显示
		 -T  显示文件系统类型
[root@localhost ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root   17G  1.5G   16G    9% /
devtmpfs                 476M     0  476M    0% /dev
tmpfs                    488M     0  488M    0% /dev/shm
tmpfs                    488M  7.7M  480M    2% /run
tmpfs                    488M     0  488M    0% /sys/fs/cgroup
/dev/sda1               1014M  130M  885M   13% /boot
tmpfs                     98M     0   98M    0% /run/user/0
[root@localhost ~]# df -ih
文件系统                Inode 已用(I) 可用(I) 已用(I)% 挂载点
/dev/mapper/centos-root  8.5M     41K    8.5M       1% /
devtmpfs                 119K     389    119K       1% /dev
tmpfs                    122K       1    122K       1% /dev/shm
tmpfs                    122K     737    122K       1% /run
tmpfs                    122K      16    122K       1% /sys/fs/cgroup
/dev/sda1                512K     326    512K       1% /boot
tmpfs                    122K       1    122K       1% /run/user/0
查看文件或目录所占用的空间 du
常用选项: -a  显示全部目录和其子目录下的每个文件所占的磁盘空间
		  -b  大小用bytes来表示
		  -c  最后加上总计
		  -h  以更直观的方式显示大小
		  --max-depth=N  只打印层级小于等于指定数值的文件夹的大小
		  -s  只显示各文件大小的总和
		  -x  只计算属于同一文件系统的文件
		  -L  计算所有文件大小
[root@localhost ~]# du -sh	#统计当前文件夹的大小,默认不统计软链接指向的目的文件夹
212M	.

未完待续…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值