共有 54 篇文章
rsync 文件夹同步
2023-05-29 - 2024-09-18

描述

cp和scp是ubuntu中文件拷贝常用的两个命令,一般在同一台服务器上我们是用cp命令,跨服务时使用过scp命令,但是如果做文件同步的话,rsync要比上述两个命令更好用一些,跨不跨服务器都是如此。

Fail2ban
2023-05-11 - 2024-09-18

安装 Fail2ban

1apt-get install fail2ban

Fail2ban 默认启用 ssh 的过滤器,可以在 /etc/fail2ban/jail.conf 查看,但是 Fail2ban 更新会覆盖此文件,建议复制一个 jail.local 进行编辑。

1cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

此后建议编辑 jail.local

对于 jail.local,你能找到许多 unit

Resize Partition
2023-05-04 - 2024-09-18

1.卸载磁盘

1umount  -l  /data

若提示磁盘忙,使用fuser找出将正在使用磁盘的程序并结束掉。

1fuser -m -v /data
2fuser -m -v -i -k /data

2.磁盘分区

使用fdisk命令重新调整磁盘分区大小

1fdisk -l
2fdisk /dev/sdb
1p #查看磁柱号 ,记住,后面要用到
2d #删除之前的分区
3n #建立新分区
4p #主分区
51 #第一个主分区

删除之前的分区,然后建立新分区,注意开始的磁柱号要和原来的一致(保证数据不丢失的关键步骤),结束的磁柱号默认回车使用全部磁盘。

增加SWAP分区
2023-05-04 - 2024-09-18

一般来说可以按照如下规则设置swap大小:

  • 4G以内的物理内存,SWAP 设置为内存的2倍。
  • 4-8G的物理内存,SWAP 等于内存大小。
  • 8-64G 的物理内存,SWAP 设置为8G。
  • 64-256G物理内存,SWAP 设置为16G。

实际上,系统中交换分区的大小并不取决于物理内存的量,而是取决于系统中内存的负荷,所以在安装系统时要根据具体的业务来设置SWAP的值。

Music Player Control
2023-03-22 - 2024-09-18

通过命令行控制软件的声音

安装

1sudo apt install playerctl

使用

控制当前

1playerctl play
2playerctl pause
3playerctl play-pause  # toggle
4playerctl stop
5playerctl next
6playerctl previous
7playerctl volume

控制指定软件

获取软件列表

1playerctl status -l

控制指定软件,如网易云音乐

Fstab
2023-03-08 - 2024-09-18

系统挂载的一些限制

  • 根目录/是必须挂载的,而且一定要先于其他mount point被挂载进来。
  • 其他挂载点必须为已新建的目录,可任意指定,但一定要遵守必需的系统目录架构原则
  • 所有挂载点在同一时间之内,只能挂载一次
  • 所有分区在同一时间内,只能挂载一次
  • 如若进行卸载,必须先将工作目录移到挂载点(及其子目录)以外。

/etc/fstab(file system table)

 1# <file system> <mount point>   <type>  <options>       <dump>  <pass>
 2# / was on /dev/sda2 during installation
 3UUID=0b15699d-6b0c-4c41-91e8-b2a5fe113366 /               ext4    errors=remount-ro 0       1
 4# /boot/efi was on /dev/sda1 during installation
 5UUID=DBF9-FECA  /boot/efi       vfat    umask=0077      0       1
 6# swap was on /dev/sda3 during installation
 7UUID=2126dcda-b478-4b0f-bfc6-a29189440e46 none            swap    sw              0       0
 8
 9LABEL=HHD1 /HHD1 ext4 noexec 0 2
10LABEL=HHD2 /HHD2 ext4 noexec 0 2
11LABEL=PHHD1 /PHHD1 ext4 noexec 0 2

语法

[Device] [Mount Point] [File System Type] [Options] [Dump] [Pass]

Creating ISO images with dd and mkisofs
2023-02-27 - 2024-09-18

IMG file

Make

1dd if=/dev/zero of=fdimage.img count=2880
2# or
3dd if=/dev/zero of=fdimage.img bs=1024 count=1440

Format

1mkfs.msdos fdimage.img

Mount

1mount -o loop *.img /mnt

Bootable

因为制作可启动镜像一定会用到虚拟机,推荐用 Virtualbox,先到网上下个 DOS 启动盘来引导。用 DOS 的 sys 命令传递系统。推荐使用 FreeDOS,属自由软件。也可用 dd 命令 来传递引导引导信息,并复制启动启动时所需文件来做启动盘。以 FreeDOS 为例,传递启动信息用以下命令,其中下载的启动盘为balder10.img 文件

Create Systemd Service Unit
2023-02-27 - 2024-09-18

文件所在路径

1vim /usr/lib/systemd/system/SERVICE_NAME.service

服务模板

 1[Unit]
 2Description=Viry Service
 3After=network.target auditd.service
 4
 5[Service]
 6User=root
 7Type=oneshot
 8RemainAfterExit=true
 9ExecStart=/viry/serv/serv.sh
10ExecStop=/bin/true
11
12[Install]
13WantedBy=multi-user.target
14Alias=viry.service

serv.sh

 1#!/bin/bash
 2
 3echo "Sync Time"
 4ntpdate 172.16.1.1
 5hwclock -w
 6
 7TIME=$(TZ=UTC-8 date "+%Y-%m-%d %H:%M:%S")
 8LOG="/viry/serv/serv.log"
 9
10echo "Ready"
11echo "" >> $LOG
12echo $TIME >> $LOG
13
14echo "Start DEMO"
15echo "Start DEMO" >> $LOG
16sh /viry/serv/demo/demo.sh
17
18echo "Finished"
19echo "Finished" >> $LOG

demo.sh

 1#!/bin/bash
 2
 3cd /viry/serv/demo/exec/
 4
 5screen_name="demo"
 6
 7screen -s /usr/bin/bash -dmS $screen_name
 8
 9cmd1=""
10cmd2="./demo"
11
12screen -x -S $screen_name -p 0 -X stuff "$cmd1\n"
13screen -x -S $screen_name -p 0 -X stuff "$cmd2\n"
14
15echo "Demo Started"
16
17exit 0
Xterm
2023-02-15 - 2024-09-18
1vim ~/.Xresource

填写配置

 1xterm.termName: xterm-256color
 2xterm*locale:true
 3xterm.utf8: true
 4xterm*utf8Title: true
 5
 6!fix alt key input 
 7!xterm*eightBitInput: false
 8!xterm*altSendsEscape: true
 9
10!xterm*scrollBar: true
11!xterm*rightScrollBar: true
12xterm*SaveLines: 4096
13
14!xterm*background: black
15!xterm*foreground: green
16
17xterm*printAttributes: 0
18xterm*printerCommand: cat > ~/xtermdump
19
20!xterm*VT100.translations: #override <Btn1UP>: select-end(PRIMARY, CLIPBOARD, CUT_BUFFER0)
21xterm*VT100.translations: #override \
22        Ctrl <KeyPress> V: insert-selection(CLIPBOARD,PRIMARY,CUT_BUFFER0) \n\
23        <BtnUp>: select-end(CLIPBOARD,PRIMARY,CUT_BUFFER0) \n\
24        Ctrl <KeyPress> P: print() \n
25
26xterm*faceName: Ubuntu Bold:antialias=True:pixelsize=12
27xterm*faceNameDoublesize:Noto Sans Mono CJK SC:antialias=True:pixelsize=12
Sudo
2023-02-15 - 2024-09-18
1apt install sudo
2cd /etc/sudoers.d
3vim user
4# Akvicor ALL=(ALL)NOPASSWD:ALL
Ufw
2023-02-15 - 2024-09-18

https://wiki.ubuntu.org.cn/Ufw%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97

安装

默认UFW的规则是放通全部端口

1apt-get install ufw

设置默认规则

首先设置拒绝所有传入并允许所有传出。

请勿运行以下命令后直接应用,否则会直接锁定你的服务器。确保在应用默认规则前放通了SSH和其他关键服务的端口。