AISYUN's Blog

学习、笔记、分享

一、如何查找大文件?

其实很多时候,你需要了解当前系统下有哪些大文件,比如文件大小超过100M或1G(阀值视具体情况而定)。那么如何把这些大文件搜索出来呢?例如我要搜索当前目录下,超过800M大小的文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
[root@getlnx01 u03]# pwd
/u03
[root@getlnx01 u03]# find . -type f -size +800M
./flash_recovery_area/backup/backupsets/ora_df873519197_s46815_s1
./flash_recovery_area/backup/backupsets/ora_df873523646_s46822_s1
./flash_recovery_area/backup/backupsets/ora_df873521714_s46818_s1
./flash_recovery_area/backup/backupsets/ora_df873522876_s46820_s1
./flash_recovery_area/backup/backupsets/ora_df873517396_s46813_s1
./flash_recovery_area/backup/backupsets/ora_df873523321_s46821_s1
./flash_recovery_area/backup/backupsets/ora_df873515765_s46811_s1
./flash_recovery_area/backup/backupsets/ora_df873520789_s46817_s1
./flash_recovery_area/backup/backupsets/ora_df873524162_s46823_s1
./flash_recovery_area/backup/backupsets/ora_df873518302_s46814_s1
./flash_recovery_area/backup/backupsets/ora_df873519953_s46816_s1
./flash_recovery_area/backup/backupsets/ora_df873516500_s46812_s1
./flash_recovery_area/backup/backupsets/ora_df873513413_s46809_s1
./flash_recovery_area/backup/backupsets/ora_df873514789_s46810_s1
./oradata/epps/invsubmat_d08.dbf
./oradata/epps/gmtinv_d08.dbf
./oradata/epps/gmtinv_x01.dbf
./oradata/epps/undotbs02.dbf
./oradata/epps/gmtinv_d07.dbf
./oradata/epps/undotbs01.dbf
./oradata/epps/gmtinv_x02.dbf

clip_image001

如上命令所示,我们仅仅能看到超过800M大小的文件的文件名称,但是对文件的信息(例如,文件大小、文件属性)一无所知,那么能否更详细显示一些文件属性或信息呢,当然可以,如下所示

阅读全文 »

一、Linux自动打包文件并发送邮件备份

服务器上安装了个密码管理的工具Bitwarden,为了实现定时备份并发送到我邮箱里,参考网上资料,整理了以下脚本,方便实用,有需要的可以参考。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/bin/bash

#保存时间(天)
save_days=7

#删除指定目录中大于指定时间的.tar.gz文件(用以删除上次打包的备份)
find /root/Vault*.tar.gz -mtime +$save_days -exec rm -rf {} \;

#构建数据库文件名称
d=`date "+%Y-%m-%d"`

#注意-c参数,到/mnt/bitwarden目录下打包data文件夹,并将打包的文件保存到/root/目录下
tar -czvPf /root/Vault-$d.tar.gz -C /mnt/bitwarden data

#发送邮件的标题和内容
title="Vault-Backup-$d"
content="Hello,Master!Vault backup has been completed!Backup Time:$d"

#用自带的mail发邮件,需要配置/etc/mail.rc,在最后添加smtp信息,需要使用25端口
echo "$content" | mail -s "$title" -a /root/Vault_$d.tar.gz i@iyuren.com

#退出当前脚本
exit

注意:linux使用邮件的配置和详细设置请参考《Linux通过配置第三方smtp来发送邮件》。

注意:如果需要排除dada目录下某个目录,可以使用–exclude参数,比如要排除data目录下logs目录:

阅读全文 »

数据无价,自己的网站虽然不算个啥,但保护好自己的数据却依然重要。

为了方便,弄了一个脚本,自动导出sql数据,自动打包,自动发邮件,弄个定时任务,一切变得轻松起来。

将下面的内容保存为yourname.sh,放到任意位置,添加定时任务即可,怎么弄定时任务?请移步《Linux使用Crontab定时执行指定任务》。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/bin/sh

#要备份网站的数据库信息
mysql_user1="sql_user_1"
mysql_user2="sql_user_2"

mysql_name1="sql_name_1"
mysql_name2="sql_name_2"

mysql_pwd1="sql_pw_1"
mysql_pwd2="sql_pw_2"

#构建数据库文件名称
d=`date "+%Y-%m-%d"`
BackName1=sql_name_1_$d
BackName2=sql_name_2_$d

#备份数据库存放路径
BackPath=/root/SQL/

#执行导出数据库
mysqldump -u${mysql_user1} -p${mysql_pwd1} $mysql_name1 > $BackPath$BackName1.sql
mysqldump -u${mysql_user2} -p${mysql_pwd2} $mysql_name2 > $BackPath$BackName2.sql

#压缩数据库包
#打包/root目录下的SQL文件夹,SQL目录需要手动建立
tar -czvPf mysql_$d.tar.gz -C /root SQL

#压缩后删除备份目录中的sql文件
rm $BackPath*.sql

#发送邮件的标题和内容
title="MySQL-Backup-$d"
content="Hello,Master!MySQL backup has been completed!Backup Time:$d"

#用自带的mail发邮件,需要配置/etc/mail.rc,在最后添加smtp信息,需要使用25端口
echo "$content" | mail -s "$title" -a /root/mysql_$d.tar.gz your@mail.com

#退出当前脚本
exit

更新:

阅读全文 »

近期折腾Centos7,搞了个脚本,自动备份mysql数据库,并发送邮件到我的邮箱,网上很多教程,装sendmail、mutt、msmtp之类的,其实Centos7可以简单的配置一下smtp,就可以使用第三方邮箱发送邮件。

  1. 编辑/etc/mail.rc文件:
1
vim /etc/mail.rc
  1. 添加以下第三方邮箱的smtp配置:
1
2
3
4
5
6
7
8
set from=your@mail.com #发送邮箱
set smtp=“smtps://smtp.qq.com:465 #465端口为 smtps://, 587端口为 smtp://
set smtp-auth-user=your@mail.com #邮箱
set smtp-auth-password=authpassword #邮箱密码授权
set smtp-auth=login

#set nss-config-dir=/etc/pki/nssdb #设置证书路径
set nss-config-dir=/etc/certs
阅读全文 »

一、简介

文件 /etc/fstab 是用来存放文件系统的挂载信息,当系统启动的时候,会自动读取该文件信息,并将此文件中指定的文件系统挂载到指定的目录

二、语法

一个简单的 /etc/fstab 使用内核名称标识磁盘

1
2
3
4
5
<file system>         <dir>         <type>    <options>             <dump> <pass>
tmpfs /tmp tmpfs nodev,nosuid 0 0
/dev/sda1 / ext4 defaults,noatime 0 1
/dev/sda2 none swap defaults 0 0
/dev/sda3 /home ext4 defaults,noatime 0 2
阅读全文 »

系统信息

主要是查询系统相关信息命令

arch 显示机器的处理器架构
uname -m 显示机器的处理器架构
uname -r 显示正在使用的内核版本
dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)
hdparm -i /dev/hda 罗列一个磁盘的架构特性
hdparm -tT /dev/sda 在磁盘上执行测试性读取操作
cat /proc/cpuinfo 显示CPU info的信息
cat /proc/interrupts 显示中断
cat /proc/meminfo 校验内存使用
cat /proc/swaps 显示哪些swap被使用
cat /proc/version 显示内核的版本
cat /proc/net/dev 显示网络适配器及统计
cat /proc/mounts 显示已加载的文件系统
lspci -tv 罗列 PCI 设备
lsusb -tv 显示 USB 设备
date 显示系统日期
cal 2007 显示2007年的日历表
date 041217002007.00 设置日期和时间 - 月日时分年.秒
clock -w 将时间修改保存到 BIOS

关机 (系统的关机、重启以及登出 )

shutdown -h now 关闭系统
init 0 关闭系统
telinit 0 关闭系统
shutdown -h hours:minutes & 按预定时间关闭系统
shutdown -c 取消按预定时间关闭系统
shutdown -r now 重启
reboot 重启
logout 注销

文件和目录

阅读全文 »

简介

Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统

目录
用户基本信息 存储在 /etc/passwd
用户密码信息 存储在 /etc/shadow
用户群组基本信息 存储在 /etc/group
用户群组信息信息 存储在 /etc/gshadow
用户目录默认位于 /home/用户名
邮箱 /var/spool/mail/用户名

Linux 系统中,每个用户的 ID 细分为 2 种,分别是

阅读全文 »
0%