I wanted to spin up a virtual machine on a Synology NAS mainly to play with PacVim and get some hands-on Vim practice. The lightweight CentOS image I had previously used in Docker was only around 200 MB, and it was missing a lot of required packages, so PacVim installation failed.
So the better approach was to check what kind of Linux environment the Synology box was running first, then decide which CentOS version to install.
The first step was simple: SSH into the Synology NAS.
Check what Linux version is running
Before choosing an image, it helps to confirm the system version, kernel, release information, and CPU architecture. These are the commands I collected for checking that under Linux.
1. View the current operating system version
cat /proc/version
Example output:
Linux version 2.6.32-696.el6.x86_64 ([email protected]) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-18) (GCC) ) #1 SMP Tue Mar 21 19:29:05 UTC 2017
2. View current kernel information
uname -a
Example output:
Linux localhost.localdomain 2.4.20-8 #1 Thu Mar 13 17:54:28 EST 2003 i686 athlon i386 GNU/Linux
3. View distribution release information
cat /etc/issue
or
cat /etc/centos-release
Example output:
CentOS release 6.9 (Final)
4. View CPU details
This shows model, clock speed, core information, and more:
cat /etc/cpuinfo
Example output:
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 60
model name : Intel(R) Core(TM) i5-4590 CPU @ 3.30GHz
stepping : 3
microcode : 29
cpu MHz : 3292.277
cache size : 6144 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 4
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase bmi1 avx2 smep bmi2 erms invpcidbogomips : 6584.55clflush size : 64cache_alignment : 64address sizes : 39 bits physical, 48 bits virtual
5. Check whether the current CPU is running in 32-bit or 64-bit mode
getconf LONG_BIT
Example output:
64
That indicates the CPU is currently running in 64-bit mode.
A quick note on uname
The uname command prints system information such as the kernel version, hardware architecture, host name, and operating system type.
uname -a
Useful options include:
-ashow all information-mor--machineshow machine hardware type-ror--releaseshow kernel release-sor--sysnameshow operating system name-vshow operating system version-por--processorshow processor type orunknown-ior--hardware-platformshow hardware platform orunknown-oor--operating-systemshow operating system name--helpshow help--versionshow version information
Other ways to check the Linux version
Using lsb_release -a
lsb_release -a
If the command is missing, install it first:
yum install redhat-lsb -y
Example output:
[root@localhost ~]# lsb_release -a
LSB Version: :core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0- noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: CentOS
Description: CentOS Linux release 6.0 (Final)
Release: 6.0
Codename: Final
This command works across multiple Linux distributions, including Red Hat, SUSE, Debian, and others.
Checking the CentOS version with /etc/issue
cat /etc/issue
Example output:
CentOS release 6.9 (Final)
Kernel \r on an \m
Checking with file /bin/ls
file /bin/ls
Choosing the CentOS image
After that, I looked at the CentOS mirror and picked a proper installation image instead of another stripped-down build.

http://mirrors.aliyun.com/centos/8.3.2011/isos/x86_64/
# Index of /centos/8.3.2011/isos/x86_64/
---
../ CHECKSUM 18-Nov-2020 21:48 319 CHECKSUM.asc 04-Dec-2020 15:48 1179 CentOS-8.3.2011-x86_64-boot.iso 18-Nov-2020 21:01 716177408 CentOS-8.3.2011-x86_64-boot.iso.manifest 18-Nov-2020 21:13 635 CentOS-8.3.2011-x86_64-boot.torrent 04-Dec-2020 16:01 27830 CentOS-8.3.2011-x86_64-dvd1.iso 18-Nov-2020 21:43 9264168960 CentOS-8.3.2011-x86_64-dvd1.iso.manifest 18-Nov-2020 21:43 465895 CentOS-8.3.2011-x86_64-dvd1.torrent 选了最大的dvd版本 本来想着需要很久. 但是没有想到阿里云镜像节点 用idm 慢速31M 8g多几分钟.有图为证.真快. ```
I went with the largest DVD image. At first I expected it to take a long time, but the mirror was much faster than expected. Using IDM, the download speed was around 31 MB/s, so pulling down more than 8 GB only took a few minutes.

Uploading the ISO to the NAS
Once the ISO was downloaded, the next step was to upload it to the NAS.
That transfer speed was also pretty good. Earlier I had replaced the old 100 Mbps network card with an Intel single-port gigabit PCI card. I did not build an all-in-one setup, just swapped the old single-port 100 Mbps adapter for the faster one.

To be continued.