搜索替换
grep 搜索文件内容
# 搜索/home/sqlsec/Desktop/BBS/中的所有 ph p后缀中的 password 关键词
grep -r "password" --include="*.php" /home/sqlsec/Desktop/BBS/
# 可以添加多个后缀
grep -r "关键词" --include="*.后缀1" --include="*.后缀2" 目标路径
# 搜索/home/sqlsec/Desktop/BBS/中的所有php后缀中的password关键词
# 不搜索js后缀
grep -r "password" --include="*.php" --exclude="*.js" /home/sqlsec/Desktop/BBS/
find 查找文件名
# 查找当前目录下所有 .php 的文件
find . -name "*.php"
# 查找所有文件中的 log 文件
find / -name "*.log"
# 目前目录及其子目录下所有最近 20 天内更新过的文件列出
find . -ctime -20
# 查找系统中所有文件长度为0的普通文件,并列出它们的完整路径
find / -type f -size 0 -exec ls -l {}
查找内容并替换
# 将 file_name文件中的 old 全部替换为 new
sed -i 's/old/new/g' file_name
# 修改 MySQL 的默认端口为 3307
sed -i 's/3306/3307/g' my.cnf
# 批量替换文件夹内容
sed -i "s/old/new/g" `grep "old" -rl floder_path`
用户
修改用户密码
# 修改当前用户密码
passwd
# 修改指定用户密码
passwd 用户名
# 修改root密码
sudo passwd
adduser 新建用户
adduser test
useradd 新建用户
# 创建test用户并自动生成主目录且指定shell为bash
useradd -d /home/test -m test -s /bin/bash
# 设置test用户密码
passwd test
删除用户
# 只删除用户
sudo userdel 用户名
# 连同用户主目录一块删除
sudo userdel -r 用户名
MySQL
Ubuntu
# 安装MySQL客户端
apt install mysql-client
# 安装MySQL服务端
apt install mysql-server
# 启动MySQL
/etc/init.d/mysql start
# 初始化MySQL
sudo mysql_secure_installation
Debian/Kali
# 安装MySQL客户端
apt install mariadb-client
# 安装MySQL服务端
apt install mariadb-server
# 启动MySQL
/etc/init.d/mysql start
# 初始化MySQL
sudo mysql_secure_installation
CentOS
# 安装客户端和服务端 默认root密码为空
yum install mariadb-server
# 启动 mariadb
sudo systemctl start mariadb
# 设置开机自启
sudo systemctl enable mariadb
# 查看mariadb状态
sudo systemctl status mariadb
# 初始化MySQL
sudo mysql_secure_installation
允许 root 远程登陆
# 允许root外部访问连接
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '这里是root密码' WITH GRANT OPTION;
# 刷新权限
FLUSH PRIVILEGES;
查看此时的用户状态:
mysql> select user, host from mysql.user;
+------+-----------+
| user | host |
+------+-----------+
| root | % |
| root | 127.0.0.1 |
| root | ::1 |
| root | localhost |
+------+-----------+
关闭 root 远程登录
# 删除 host 为 % 的用户
DELETE FROM mysql.user WHERE User= "root" and Host="%";
# 刷新权限
FLUSH PRIVILEGES;
查看此时的用户状态:
mysql> select user, host from mysql.user;
+------+-----------+
| user | host |
+------+-----------+
| root | 127.0.0.1 |
| root | ::1 |
| root | localhost |
+------+-----------+
修改密码
# 修改 root 密码的 SQL语句
use mysql;
set password for 'root'@'localhost' = password('你设置的密码');
# 刷新权限 并退出
flush privileges;
quit;
或者直接命令行下修改:
mysqladmin -uroot -poldpassword password newpassword
连接非 3306 默认端口
mysql -h目标IP地址 -u用户名 -p密码 -P端口
mysql -h10.211.55.9 -uroot -ppassword -P 33060
导出 SQL 文件
# 导出所有数据库
mysqldump -uroot -proot --all-databases >/tmp/all.sql
# 导出 db1、db2 两个数据库的所有数据
mysqldump -uroot -proot --databases db1 db2 >/tmp/user.sql
# 导出 db1 中的 a1、a2 表
mysqldump -uroot -proot --databases db1 --tables a1 a2 >/tmp/db1.sql
# 导出 db1 表 a1 中 id=1 的数据
mysqldump -uroot -proot --databases db1 --tables a1 --where='id=1' >/tmp/a1.sql
# 只导出表结构不导出数据
mysqldump -uroot -proot --no-data --databases db1 >/tmp/db1.sql
导入 SQL 文件
mysql -uroot -proot databases.sql
创建用户
CREATE USER 'test'@'%' IDENTIFIED BY 'test用户的密码';
GRANT ALL PRIVILEGES ON `test`.* TO 'test'@'%';
版权声明:本文内容始发于个人博客>作者 : 国光,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行可。
始发链接:https://www.sqlsec.com/2019/10/linux.html#
在此特别鸣谢:个人博主>国光的创作。
本文已获原作者国光授权发布在本公众号;
原作者已在本公众号关联运营账号(安全小姿势),故在此声明本文原创为国光(安全小姿势)。
此篇文章的所有版权归原作者所有,商业转载建议请联系原作者,非商业转载请注明出处。