My Blog

DirectAdmin - error when compiling Exim 4.98 on Oracle Linux 8

I was trying to upgrade Exim to 4.98 from 4.97 (with a standard "da build exim" command), and somehow the compilation on Oracle Linux 8.10 failed with the following repeated errors:

  • relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
  • relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
  • relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
  • relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
[root@myserver custom]# da build exim
download_cached: using cached '/usr/local/directadmin/custombuild/cache/exim-4.98.2.tar.gz' file
Compiling exim...
/bin/sh scripts/source_checks

>>> Creating links to source files...
>>> Creating lookups/Makefile for building dynamic modules
>>> New Makefile & lookups/Makefile installed
>>> Use "make makefile" if you need to force rebuilding of the makefile

make[1]: warning: -j4 forced in submake: resetting jobserver mode.
make[1]: Entering directory '/usr/local/directadmin/custombuild/tmp/tmp.PdNlP96QuO.exim-4.98.2.tar.gz/build-Linux-x86_64'
/bin/sh ../scripts/Configure-os.c
cc buildconfig.c
/bin/sh ../scripts/Configure-os.h
cc exim_lock.c
cc -o exim_lock
>>> exim_lock utility built

/bin/sh ../scripts/Configure-config.h "make"
make[2]: Entering directory '/usr/local/directadmin/custombuild/tmp/tmp.PdNlP96QuO.exim-4.98.2.tar.gz/build-Linux-x86_64'
make[2]: 'buildconfig' is up to date.
make[2]: Leaving directory '/usr/local/directadmin/custombuild/tmp/tmp.PdNlP96QuO.exim-4.98.2.tar.gz/build-Linux-x86_64'
Building configuration file config.h
>>> config.h built

cc -DMACRO_PREDEF macro_predef.c
cc -DMACRO_PREDEF readconf.c
cc -DMACRO_PREDEF globals.c
cc -DMACRO_PREDEF expand.c
cc -DMACRO_PREDEF route.c
cc -DMACRO_PREDEF transport.c
cc -DMACRO_PREDEF drtables.c
cc -DMACRO_PREDEF acl.c
cc -DMACRO_PREDEF tls.c
cc -DMACRO_PREDEF transports/appendfile.c
cc -DMACRO_PREDEF transports/autoreply.c
cc -DMACRO_PREDEF transports/lmtp.c
cc -DMACRO_PREDEF transports/pipe.c
cc -DMACRO_PREDEF transports/queuefile.c
cc -DMACRO_PREDEF transports/smtp.c
cc -DMACRO_PREDEF routers/accept.c
cc -DMACRO_PREDEF routers/dnslookup.c
cc -DMACRO_PREDEF routers/ipliteral.c
cc -DMACRO_PREDEF routers/iplookup.c
cc -DMACRO_PREDEF routers/manualroute.c
cc -DMACRO_PREDEF routers/queryprogram.c
cc -DMACRO_PREDEF routers/redirect.c
cc -DMACRO_PREDEF auths/auth-spa.c
cc -DMACRO_PREDEF auths/cram_md5.c
cc -DMACRO_PREDEF auths/cyrus_sasl.c
cc -DMACRO_PREDEF auths/dovecot.c
cc -DMACRO_PREDEF auths/gsasl_exim.c
cc -DMACRO_PREDEF auths/heimdal_gssapi.c
cc -DMACRO_PREDEF auths/plaintext.c
cc -DMACRO_PREDEF auths/spa.c
cc -DMACRO_PREDEF auths/tls.c
cc -DMACRO_PREDEF auths/external.c
cc -DMACRO_PREDEF dkim.c
cc -DMACRO_PREDEF malware.c
cc -DMACRO_PREDEF pdkim/signing.c
cc exim_dbmbuild.c
....
....
cc lookups/lf_sqlperform.c
cc local_scan.c
ar cq transports.a
ranlib transports.a
make[2]: Leaving directory '/usr/local/directadmin/custombuild/tmp/tmp.PdNlP96QuO.exim-4.98.2.tar.gz/build-Linux-x86_64/transports'

cc -o exim
/usr/bin/ld: acl.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: base64.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: child.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: crypt16.o: relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: daemon.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: dbfn.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: debug.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: deliver.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: directory.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: dns.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: drtables.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: enq.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: exim.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: expand.o: relocation R_X86_64_32S against undefined symbol `expand_nstring' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: filter.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: filtertest.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: dkim.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: dkim_transport.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: dnsbl.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: hash.o: relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: header.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: host.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: ip.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: log.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: lss.o: relocation R_X86_64_32 against symbol `domainlist_anchor' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: match.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: moan.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: os.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: parse.o: relocation R_X86_64_32S against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: priv.o: relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: queue.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: rda.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: readconf.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: receive.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: retry.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: rewrite.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: rfc2047.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: regex_cache.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: route.o: relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: search.o: relocation R_X86_64_32S against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: sieve.o: relocation R_X86_64_32S against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: smtp_in.o: relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: smtp_out.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: spool_in.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: spool_out.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: std-crypto.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: store.o: relocation R_X86_64_32 against undefined symbol `paired_pools' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: string.o: relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: tls.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: tod.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: transport.o: relocation R_X86_64_32S against symbol `optionlist_transports' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: tree.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: verify.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: environment.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: lookups/lf_quote.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: lookups/lf_check_file.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: lookups/lf_sqlperform.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: malware.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: mime.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: regex.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: spam.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: spool_mbox.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: dane.o: relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: spf.o: relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: version.o: relocation R_X86_64_32S against `.bss' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: routers/routers.a(accept.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: routers/routers.a(dnslookup.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: routers/routers.a(ipliteral.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: routers/routers.a(manualroute.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: routers/routers.a(queryprogram.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: routers/routers.a(redirect.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: routers/routers.a(rf_change_domain.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: routers/routers.a(rf_expand_data.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: routers/routers.a(rf_get_errors_address.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: routers/routers.a(rf_get_munge_headers.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: routers/routers.a(rf_get_transport.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: routers/routers.a(rf_get_ugid.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: routers/routers.a(rf_lookup_hostlist.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: routers/routers.a(rf_queue_add.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: routers/routers.a(rf_self_action.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: transports/transports.a(appendfile.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: transports/transports.a(autoreply.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: transports/transports.a(lmtp.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: transports/transports.a(pipe.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: transports/transports.a(smtp.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: transports/transports.a(tf_maildir.o): relocation R_X86_64_32S against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: lookups/lookups.a(cdb.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: lookups/lookups.a(dbmdb.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: lookups/lookups.a(dnsdb.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: lookups/lookups.a(lsearch.o): relocation R_X86_64_32S against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: lookups/lookups.a(spf.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: lookups/lookups.a(readsock.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: auths/auths.a(cram_md5.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: auths/auths.a(dovecot.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: auths/auths.a(get_data.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: auths/auths.a(get_no64_data.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: auths/auths.a(plaintext.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: auths/auths.a(spa.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: auths/auths.a(xtextdecode.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: auths/auths.a(xtextencode.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: auths/auths.a(auth-spa.o): relocation R_X86_64_32S against `.bss' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: auths/auths.a(check_serv_cond.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: pdkim/pdkim.a(pdkim.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: pdkim/pdkim.a(signing.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
/usr/bin/ld: final link failed: Nonrepresentable section on output
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:687: exim] Error 1
make[1]: Leaving directory '/usr/local/directadmin/custombuild/tmp/tmp.PdNlP96QuO.exim-4.98.2.tar.gz/build-Linux-x86_64'
make: *** [Makefile:37: all] Error 2
doExim: failed to compile '/usr/local/directadmin/custombuild/cache/exim-4.98.2.tar.gz' inside '/usr/local/directadmin/custombuild/tmp/tmp.PdNlP96QuO.exim-4.98.2.tar.gz'
failed to compile exim 4.98.2

The solution is to customize the Makefile as per  ">https://docs.directadmin.com/other-hosting-services/exim/configuring-exim.html#how-to-compile-exim-from-source

cd /usr/local/directadmin/custombuild
mkdir -p custom/exim/
cp configure/exim/Makefile custom/exim/Makefile

then edit the Makefile in /usr/local/directadmin/custombuild/custom/exim

[root@myserver exim]# pwd
/usr/local/directadmin/custombuild/custom/exim
[root@server1 exim]# ls -la
total 76
drwxr-xr-x 2 root root  4096 Apr 17 12:06 .
drwxr-xr-x 5 root root  4096 Apr 17 11:41 ..
-rw-r--r-- 1 root root 69414 Apr 17 11:44 Makefile

Add the following line "CFLAGS += -fstack-protector-strong -fPIC" to the Makefile:

...
...
# DISABLE_CLIENT_CMD_LOG=yes

# End of EDITME for Exim 4.
CFLAGS += -fstack-protector-strong -fPIC

then re-run "da build exim" and you should be good :)

 

Read More

VirtualBox error NS_ERROR_INVALID_ARG (0X80070057) when adding an existing virtual machine

If you've ever encountered the following error when adding an existing VM to your host:

 

Failed to open virtual machine located in *********.vbox.
Callee RC: NS_ERROR_INVALID_ARG (0X80070057)

 

or from the commandline  VBoxManage registervm VirtualMachineNameSample.vbox

VBoxManage: error: Code NS_ERROR_INVALID_ARG (0x80070057) - Invalid argument value (extended info not available)
VBoxManage: error: Context: "OpenMachine(Bstr(szVMFileAbs).raw(), Bstr(strPassword).raw(), machine.asOutParam())" at line 153 of file VBoxManageMisc.cpp

One thing that you can check is see if there's a non-existing file. In my case, the solution is to edit the .vbox file manually (which is in XML format) and remove the following line:

      <DVDImages>
        <Image uuid="{a82fec76-40db-4b60-9054-4fd156c8982a}" location="/usr/share/virtualbox/VBoxGuestAdditions.iso"/>
      </DVDImages>

 

Some people say that it could also because of insufficient disk space. In my case, there was plenty of space, but this file no longer exists since it's from a different machine.

Read More

Tik Tok algorithm is interesting

I don't know how Tik Tok does it and honestly I don't know how its algorithm works. It can't be algorithm though.

I just went to get a quick bite outside and got myself a $2.99 Jamaican beef patty. I paid with cash, didn't use my credit card. By the way, I also didn't bring my cellphone with me since it was just a very short distance, just a short walk. I had no electronics with me at all. Somehow, when I opened Tik Tok on my wifi-only tablet with no cellular connectivity, which I left at home, a few minutes later it displayed a video about a Jamaican beef patty. It's really strange... can't be a coincidence.

Read More

How to upgrade Gitlab safely with zero downtime

GitLab is a complex piece of software. If you are planning on upgrading your self-hosted GitLab machine to a new major version, you need to follow this documentation: https://docs.gitlab.com/ee/update/

Also, use the Upgrade Path Toolbox from here: https://gitlab-com.gitlab.io/support/toolbox/upgrade-path/?edition=ce to ensure that the upgrade is smooth and safe.

For instance, if you currently have gitlab-ce version 15.11.10-ce.0 and want to upgrade to version 16.10.1, you have to perform the following upgrade one-by-one:

  • apt-get install gitlab-ce=15.11.13-ce.0
  • apt-get install gitlab-ce=16.0.8-ce.0
  • apt-get install gitlab-ce=16.1.6-ce.0
  • apt-get install gitlab-ce=16.2.9-ce.0
  • apt-get install gitlab-ce=16.3.7-ce.0
  • apt-get install gitlab-ce=16.4.5-ce.0
  • apt-get install gitlab-ce=16.5.8-ce.0
  • apt-get install gitlab-ce=16.6.7-ce.0
  • apt-get install gitlab-ce=16.7.7-ce.0
  • apt-get install gitlab-ce=16.8.5-ce.0
  • apt-get install gitlab-ce=16.9.3-ce.0
  • apt-get install gitlab-ce=16.10.1-ce.0

See - https://gitlab-com.gitlab.io/support/toolbox/upgrade-path/?current=15.11.10&edition=ce&downtime=true

 

Read More

How to reduce Proxmox VE guest machine backup size

To reduce a guest machine before you perform a backup, first set the discard flag on the guest machine (while turned off), then do a TRIM inside the machine.

Run this command inside the guest machine (assuming it's running Linux): fstrim -a -v

What it does is it emulates SSD TRIM facility, which blanks out free space, since deleting a file only removes a file but doesn't mark the space as free.

Read More

Proxmox and CSF - LAN vmbr2 not working

If somehow you have Proxmox & CSF for blocking outside traffic vmbr0 (WAN), and have a vmbr2 LAN interface, check your ETH_DEVICE abd ETH_DEVICE_SKIP settings in /etc/csf/csf.conf and add vmbr2 in ETH_DEVICE_SKIP so it won't block internal LAN traffic.

Read More

Scam text message from +1 (604) 339-2192

Today I got a scam text message from +1 (604) 339-2192, telling me to deposit email money transfer at et-lnterac-xxx (see screenshot). Notice how the scammer changed the letter I to lowercase l (L). I am not sure if the number is spoofed or not, or if the cellphone is compromised and used as a bot. Basically the scam message claims that CRA (Canada Revenue Agency) has sent me $297.00 and that I should deposit the money.

Text message from +1 (604) 339-2192

Then I checked the whois data, but it seems to be fake.

whois data

The address is in Toronto but the originating number is from Richmond, BC.

I'm usually too lazy to check it because I already know it's a scam. But this time I checked it because I'm bored, and when I checked the address, it goes to this site. Now, the only time somebody can create a subdomain record on a CPanel-based server is when they have access to the CPanel itself, so even if the application (e.g. Wordpress or any other script hosted there) is compromised, unless the person has the username & password for CPanel, they won't be able to create a subdomain record. Another possibility is if the scammer has compromised the whole server and got himself a root account. Who knows.

Then I proceeded to check the index files. Ahh, I can see now what the scammer has uploaded because he forgot to disable index in .htaccess.

More scam

Then I tried clicking the INTERAC e-Transfer_fichiers folder as I was just curious to see what's there.

Interac scam

Very interesting. Then I clicked td, rbc2, bmo, sco. Here's what came up - a fishing page trying to get users to post their credentials for TD, Royal Bank of Canada, Bank of Montreal, and ScotiaBank.

Here's the Scotia one (check out the URL in the address bar):

Scotia Bank scam

Here's the TD scam (check out the URL in the address bar):

TD Scam

There you go.

If I go to the main domain, apparently the site is from India (country code +91):

Hope this can help some people. Be careful and stay safe.

 

Read More

Disable free SSL from CPanel

Recently, CPanel has been providing domain validated SSL certificate for free. However, it is quite intrusive that it replaced my own Wildcard certificate with theirs. To disable it, login as root and type these two commands:

root@servername [~]# touch /var/cpanel/ssl/disable_auto_hostname_certificate

root@servername [~]# touch /var/cpanel/ssl/disable_service_certificate_management

 

 

Read More

Windows 2012 Server RC Evaluation ISO direct link

I've been wanting to download the latest version of Windows 2012 but for some reasons I keep getting errors so if anyone is experiencing the same thing here's the direct download link.

Read More

Scam from TextWon.com/Ziinga (claiming to be BestBuy) sent by (917) 690-6874

This morning I received a scam spam message from (917) 690-6874. Becareful because this is not a legitimate text from BestBuy.ca. It tries to fool the receiver by adding "BestBuy.ca" subdomain.

The page then redirects to Ziinga.com. Read the following about fraud by Ziinga

http://www.scambook.com/company/reports/59339/Ziinga.com

http://www.consumeractiongroup.co.uk/forum/showthread.php?332397-ziinga.com-Help-Needed

The WHOIS information for ziinga.com:

Domain: ziinga.com
Registrar: Eurodns S.A.

Registrant:
Company: Flamingo Intervest Ltd.
Name: Nikdar Masih
Address: OMC Chambers, Road Town
City: Tortola
Country: VIRGIN ISLANDS, BRITISH
Postal Code: P.O. Box 3152
TextWon.com SCAM claiming from BestBuy.ca


Administrative Contact:
Company: Flamingo Intervest Ltd.
Name: Nikdar Masih
Address: OMC Chambers, Road Town
City: Tortola
Country: VIRGIN ISLANDS, BRITISH
Postal Code: P.O. Box 3152
Phone: +35625572557
Fax:
Email: nodomainnames@gmail.com

Technical Contact:
Company: Flamingo Intervest Ltd.
Name: Nikdar Masih
Address: OMC Chambers, Road Town
City: Tortola
Country: VIRGIN ISLANDS, BRITISH
Postal Code: P.O. Box 3152
Phone: +35625572557
Fax:
Email: nodomainnames@gmail.com

Original Creation Date: 2009-09-30
Expiration Date: 2015-09-29

Status:
clientTransferProhibited

Nameserver Information:
Nameserver: ns1.mydyndns.org
Nameserver: ns2.mydyndns.org
Nameserver: ns3.mydyndns.org
Nameserver: ns4.mydyndns.org
Nameserver: ns5.mydyndns.org

59QMY8Y3PY9G
Read More

Latest

DirectAdmin - error when compiling Exim 4.98 on Oracle Linux 8

17.Apr.2025
I was trying to upgrade Exim to 4.98 from 4.97 (with a standard "da build exim" command), and someh...

VirtualBox error NS_ERROR_INVALID_ARG (0X80070057) when adding an existing virtual machine

1.Oct.2024
If you've ever encountered the following error when adding an existing VM to your host:   ...

Tik Tok algorithm is interesting

17.Apr.2024
I don't know how Tik Tok does it and honestly I don't know how its algorithm works. It can't be alg...

How to upgrade Gitlab safely with zero downtime

30.Mar.2024
GitLab is a complex piece of software. If you are planning on upgrading your self-hosted GitLab mac...

How to reduce Proxmox VE guest machine backup size

30.Mar.2024
To reduce a guest machine before you perform a backup, first set the discard flag on the guest mach...