Ruben's Blog | ΥΥΈΦΥ’Υ₯ΥΆΥ« Τ²Υ¬ΥΈΥ£Υ¨
π ..Configuring own homebrew server - part 1: Arch Linux, Networking, and Data Syncing π§
After three long years of loyalty to CentOS, the time had finally come to shake things up and introduce Arch Linux to the server. Armed with determination and a USB cable, I faced the challenge of connecting my phone to the server, since I didn’t have a LAN cable and monitor in the same location. An unconventional setup, indeed! π π±π»
Following this guide for installation for Arch Linux. https://www.youtube.com/watch?v=G-mLyrHonvU
Encountered an issue, that was fixed here https://github.com/archlinux/archinstall/issues/1810#issuecomment-1545235595
After installation update the packages pacman -Syy
.
install dependencies for our setup server pacman -S openssh net-tools rsync git fish
Add to the end of visudo /etc/sudoers
to stop asking password for sudo every time.
Manual server network configuration
ip address add MY_STATIC_IP/255.255.255.0 dev enp4s0
ip route add default via MY_GATEWAY dev enp4s0
Automated /etc/systemd/network/20-ethernet.network
[Match]
Name=enp4s0
[Network]
Address=MY_STATIC_IP/24
Gateway=MY_GATEWAY
Where enp4s0 is the name of your network interface.
SSH
Enable ssh service.
systemctl start sshd
systemctl enable sshd
Copying key to ssh to the server.
ssh-copy-id user@MY_SERVER_IP
Testing ssh connection.
ssh user@MY_SERVER_IP
As this server is accessible through internet I have disabled password on ssh part to improve securityπΎπβ¨ by adding to this file /etc/ssh/sshd_config
PasswordAuthentication no
Fish is the π coolest shell around! To make it the default shell for any user, simply run this command:
chsh -s $(which fish)
disc and sync
In this concise guide, we’ll explore a simple yet effective method for backing up your data using the power of rsync. By following the advice of norayr, we’ll configure a backup solution that provides peace of mind without the complexity of RAID. I have 2 disc configuration for my data storage except for my OS drive. Let’s get started and secure your precious data! πͺπΎ
Let’s list all connected devices
lsblk -f
Output
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
sda
ββsda1 vfat FAT32 C8B9-F37C 451.9M 11% /boot
ββsda2 ext4 1.0 9aa35d6f-d7b8-446a-a070-5ca6e252aeb5 218.9G 1% /
sdb
ββsdb1 xfs a9ce21d2-a8f8-403a-a583-997aacb1f68f
sdc
ββsdc1 xfs 7ca56d73-fc0a-4fb1-a1d5-6816123fac4d
zram0 [SWAP]
In my case SDB and SDC are drives I want to “RAID”. They are already formatted and are using xfs as their filesystem.
Creating directories for disks.
mkdir /disk0 && mkdir /disk1
Mounting disks to directories on startup by adding nano /etc/fstab
UUID=a9ce21d2-a8f8-403a-a583-997aacb1f68f /disk1 xfs defaults 0 0
UUID=7ca56d73-fc0a-4fb1-a1d5-6816123fac4d /disk0 xfs defaults 0 0
Reboot the system and make sure the disks are in place.
sync
This is our GEM π, we will create a script that runs once a day syncing one disk to the other.
First create sync scrypt.
nano /root/bin/sync.sh
#!/bin/bash
rsync -avh /disk0/ /disk1/ --delete-after > /tmp/cron.log 2>&1
Make it executable.
chmod +x /root/bin/sync.sh
systemd
Now we are going to create a systemd timer
Initially we need to create the service which will run our script.
nano /etc/systemd/system/rsync.service
[Unit]
Description=Rsync for synchronizing Disk0 with Disk1
[Service]
ExecStart=/root/bin/sync.sh
We need to create the timer to run once every day to sync our data by nano /etc/systemd/system/rsync.timer
[Unit]
Description=Rsync service timer
[Timer]
OnCalendar=daily
AccuracySec=12h
[Install]
WantedBy=timers.target
All logs for the script output can be fount at /tmp/cron.log
.
Phew! π₯΅ That was a ton of work, but I’ve finally got it all sorted out. Stay tuned for my upcoming blog post where I spill the beans on how I’ve set up my homemade server. πͺπ π
Please give me feedback, comment on whatever you think about my blog post, and help me improve. β€οΈ
Blog Menu
- πΌ hire my consultancy
- βΉοΈ about me
- π° rss
- πΈ a young blog
- π blog
- 2024-12-29
Then the Journey Is Not About Winning ποΈ
Winning is the target, but the journey is never about winning. You cannot be sure the path is correct. Even with guidance, there is a chance it’...
- 2024-12-28
Free Consultancy ππ»
Nobody buys it. When I provide it everyone is happy. Why? Maybe people don’t understand the offer, which is completely understandable. What I of...
- 2024-12-28
The Algorithm of the Dressings π₯¬βπ₯ββοΈπ°π₯
Martun said he read many books about healthy food and didn’t become healthy. I agree, that reading and doing is very different. But I think that...
- 2024-12-25
Powered.community Meetup π€π»
Well, it happened. The food was sushi, and people came with friends, some just checking in. I was so glad to see so many people I know and don’t...
- 2024-12-23
5 Books to Read Before 2025 to Transform Your Life ποΈ
People are not computers, though we share traits such as short and long-term memory or processing power. You cannot install a “software” o...
- 2024-12-21
Ikigai π₯
Opportunities come and go, but sometimes there is THAT opportunity. It makes my heart sing, puts me in sync with what I live for, and creates purpose ...
- 2024-12-19
Piece Is Pressure
We are not in a hot war right now, but it’s always over the corner. Many countries are in hot wars at this moment, what do they tell us? What wo...
- 2024-12-17
I Met My Mentor π¦
My mentor probably doesn’t know she is my mentor. And I understood some things. I did a lot of analysis. She told me about the start stop and co...
- 2024-12-17
I'm Still Learning π
I find myself suggesting the right solutions, right for me. And when I see that the pattern doesn’t match, I get sad. It’s hard to acknowl...
- 2024-12-13
Rushing the Process Doesn't Help βοΈ
I’ve started too late, because of that I have more knowledge from the field. I have been learning these past 4 years, but starting something by ...
- See all...
- π links