Kernel Update without Reinstalling Nvidia Driver

  31 Jan 2017     Linux

Fedora is always known as a cutting edge distribution with frequent updates. I love it so much expect when I have to reinstall my Nvidia driver everytime the kernel is updated. Recently I found a solution online using DKMS. DKMS, short for Dynamic Kernel Module Support, is used to automatically recompiles all DKMS modules when installing a kernel upgrade, thus allowing the drivers to continue working.

For the Nvidia driver on Fedora, simply install the DKMS package and install the Nvidia driver with “-dkms” option.

sudo dnf install dkms
sudo sh ./<DRIVER>.run --dkms

Abaqus 2016 Installation on Linux: Issues and Solutions

  18 Jan 2017     Abaqus and Linux

Recently, I installed Abaqus 2016 on a few different Linux Distros for workstations in my lab and my PC. Here’s a summary of the issues I encountered and my solutions.

Unsupported Linux Distribution

ABAQUS 2016 officially only has support for SUSE and Red Hat (and CentOS). By default, the installer runs a prerequisites check and an error will return if you runs an unsupported Linux release. I have Fedora 25 for one of my PCs and I successfully installed Abaqus 2016 on it using the following workaround.

The Abaqus installer get the release info using the script located at <installer_dir>/Linux64/1/inst/common/init/ I overrode the command to obtain the OS release using


I chose CentOS because Fedora is close to Red Hat Linux. I also disabled other system checks by defining environmental variable DSY_Skip_CheckPrereq in the shell before the installation.

export DSY_Skip_CheckPrereq=1

To satisfy the prerequisites of Abaqus, some additional packages must be installed. For example, the can be installed by

sudo dnf install compat-libstdc++-33

Now you should be able to install Abaqus on your favorite Linux distribution.

Graphical Issues

I failed to start the Abaqus/CAE when the installation done. I got an “X Error” telling me “fmd_GLContext::create(): glXCreateContext() failed”. My Nvidia driver version was 375.26. I found my problem similar to this post. They also gave a suggestion to run Abaqus using

XLIB_SKIP_ARGB_VISUALS=1 abaqus cae -mesa

This works, however, at the price of disabling the hardware acceleration. After some research online, I found this error was related to the indirect GLX rendering. In recent versions, Xorg changed its behavior to disallow indirect GLX by default, probably due to some security concerns.

I tried a few different methods to re-enable the indirect GLX rendering, including modifying the xorg.conf and adding serverargs in startx, but all failed. Finally I found solution in this post to add a wrap for Xorg command. Slightly different in my Fedora 25, my /usr/bin/Xorg is already a wrap, so I simply added the “+iglx” argument in the script:

exec "$basedir"/Xorg "$@" +iglx

Might not be a perfect solution, but hey, now Abaqus can be run natively on my Nvidia GTX 1080!

Fonts Issues

The fonts in my Abaqus/CAE GUI was extremely small and ugly at first. I solved it by installing the 100dpi font in my system:

sudo dnf install xorg-x11-fonts-ISO8859-15-100dpi-7.5-16

I have no idea why this works and I still don’t know how to switch to other fonts. Let me know if you have better ideas about that.


  16 Jan 2017     Book Notes and Linux


从开始用Linux到现在也有四五年了,日常操作早就已经没有什么障碍。但真正遇到问题,常常还是需要网上到处找解决方案。究其原因,自己对Linux的许多基础知识掌握还是很有问题。Linux并非是我的主要操作系统(许多科研需要的CAD/CAE软件还是只支持Windows),我之前玩Linux也只能是断断续续,全凭一时兴起。最近手头上机器多了,好几台服务器都改成了Linux系统,觉得应该利用这个机会,系统的把Linux的知识梳理一下。《鸟哥的Linux私房菜》 是我自己刚接触Linux的时候的入门书,但是内容翔实,我平时日常用都会把它当参考书来用。最近随手翻翻,里面还有好多我不熟悉的内容,此番重读,正好查遗补漏。因为是重读,自然会跳过许多基础的部分,大家有需要可以自行前往鸟哥的网站查看全书。





  • r,读取目录内容,可以查询目录下的文件列表(文件名)
  • w,修改目录内容,可以建立新文件/目录,删除、重命名移动已存在文件/目录
  • x,进入目录,所有该目录下指令的前提

举例来说,有一个文件路径为 /dir1/file1,

  • 知道file1存在,需要对/dir1有r权限
  • 读取,修改,执行file1内容,需要对/dir1有x权限(假如已经知道file1文件名,不需要对/dir1有r权限),对file1有相应的r/w/x权限
  • 删除、重命名file1,需要对/dir1有xw权限(注意与file1权限无关!)



FHS对目录分类主要考量static/variable,shareable/unshareable两个维度。具体可以参考原书以及FHS标准文档。之前我一直搞错的是/usr中usr其实是Unix Software Resource的所写,和user没什么关系。