linux命令笔记
关机/重启
shutdown -r now # 立即重启(reboot)
shutdown -h now # 立即关机(poweroff)
内存占用
ps aux --sort -rss
top
free
ps aux | grep nginx # 查看某个软件的进程
端口占用
netstat -lnp|grep 80 # 查看端口占用
ps 14973 # 查看进程情况
kill -9 14973 # 杀进程
查看软件安装路径
which node
文件管理
1 | cat: 连接文件并打印到标准输出设备上 |
防火墙
1 | firewall-cmd --query-port=80/tcp # 查询防火墙指定端口是否开启 |
用户管理
1 | useradd user # 创建新用户 |
发送请求curl
-b [str/url]: 使用cookie字符串或文件用来向服务器发送 Cookie
-X [type]: 请求类型(POST)
-o [url]: 抓取内容到一个文件
-d: 传输数据(-d log=aaaa)
-x: 代理(-x 24.10.28.84:32779)
添加到systemctl服务
新建文件
/usr/lib/systemd/system/frp.service
添加以下文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17[UNIT]
Description=frp Service
After=network.target
[Service]
Type=simple
# Type=forking
# 命令
ExecStart=/web/frp/frp_0.38.0_linux_amd64/frps -c /web/frp/frp_0.38.0_linux_amd64/frps.ini
ExecReload=
ExecStop=
PrivateTmp=True
[Install]
WantedBy=multi-user.target重载
systemctl daemon-reload
启动服务
systemctl start frp.service
centos8网卡操作
1 | nmcli connection reload # 重启网卡 |
压缩
1 | tar -czvf a.tar.gz a.txt # 压缩a.txt文件(c: create创建, z: gzip压缩, v: 显示压缩的文件信息, f: file压缩文件名) |
vsftpd(配置文件删除后面的注释及空格,centos8)
yum install vsftpd -y # vsftpd安装
useradd ftpadmin -s /sbin/nologin # 新建虚拟宿主用户
配置vsftpd的文件(/etc/vsftpd/)
1
2
3
4
5
6
7
8
9
10listen=YES
listen_ipv6=NO
allow_writeable_chroot=YES
chroot_list_enable=NO
chroot_local_user=YES
guest_enable=YES # 启用虚拟用户
guest_username=ftpadmin # 虚拟宿主用户名
user_config_dir=/etc/vsftpd/user_conf
pasv_min_port=30000
pasv_max_port=31000mkdir /etc/vsftpd/user_conf/ # 虚拟用户配置文件存放路径
生成虚拟用户的数据库文件
- vi /etc/vsftpd/login.txt # 奇数行为用户名,偶数行为密码
- db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/vsftpd_login.db # 转换成db文件
- chmod 600 /etc/vsftpd/vsftpd_login.db # 权限设置
生成一个使用vsftpd_login.db数据文件的PAM认证文件
- vi /etc/pam.d/vsftpd # 注释文件内的所有行,添加下面2,3行
- auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login crypt=hash
- account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login crypt=hash
创建虚拟用户的配置文件
cd /etc/vsftpd/user_conf
vi test # 新建文件(文件名为虚拟用户表中的名字),并写入下面的权限
1
2
3
4
5
6local_root=/home/ftpadmin # 访问目录
write_enable=YES # 写入的权限
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
systemctl restart vsftpd # 重启服务
开启端口
- firewall-cmd –permanent –add-port=20-21/tcp
- firewall-cmd –permanent –add-port=30000-31000/tcp
若出现500 OOPS: cannot change directory:/home/ftpadmin
- getsebool -a | grep ftp # 发现tftp_home_dir–>off则执行
- setsebool -P tftp_home_dir 1
- systemctl restart vsftpd
gitlab安装
centos7安装gitlab
1 | yum install -y curl policycoreutils-python openssh-server # 防火墙中打开HTTP,HTTPS和SSH访问 |
docker安装gitlab
1 | docker pull gitlab-ce # 获取镜像 |
邮件配置
修改配置文件/etc/gitlab/gitlab.rb
1
2
3
4
5
6
7
8
9
10gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "******@qq.com"
gitlab_rails['smtp_password'] = "授权码"
gitlab_rails['smtp_domain'] = "smtp.qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_from'] = '******@qq.com'gitlab-rails console # 进入控制台
- Notify.test_email(‘收件人邮箱’, ‘title’, ‘body’).deliver_now # 发送邮件测试
docker常用命令
- docker rm -f id # 删除镜像
- docker rmi REPOSITORY:TAG # 删除容器
- docker build -t hsiangleev/httptest:v1 . # 构建容器(.为查找当前目录下的Dockerfile)
- docker run -d -p 127.0.0.1:3000:3000 hsiangleev/httptest:v1 # 运行容器
安装ifconfig
- yum search ifconfig
- yum install net-tools.x86_64
把默认的CentOS Yum源修改成国内的aliyun Yum源
- 下载wget:
yum install wget
- 备份:
mkdir /opt/centos-yum.bak
,mv /etc/yum.repos.d/* /opt/centos-yum.bak/
- 下载aliyun Yum源repo文件:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
- 清除缓存:
yum clean all
,yum makecache
mysql安装
安装指定版本的mysql
- RPM Bundle文件下载
- tar -xvf mysql… # 解压
- dnf install mysql-community-{server,client,common,libs}-* # 安装
- grep ‘temporary password’ /var/log/mysqld.log # 查看初始密码
- mysql -uroot -p # 登录
SET GLOBAL validate_password_policy=LOW;
# 降低密码安全级别use mysql;
,update user set host = '%' where user = 'root';
,flush privileges;
# 远程访问- mysql_secure_installation # 配置密码与安全性选择
- 为root用户设置密码;
- 删除匿名账号;
- 取消root用户远程登录;
- 删除test库和对test库的访问权限;
- 刷新授权表使修改生效。
- systemctl start mysqld.service # 启动服务
- systemctl enable mysqld.service # 开机自启
- systemctl disable mysqld.service # 取消开机自启
安装最新版本的
- dnf install mysql-server