I begin to use vim for programming. I like the tools that focus on one function. I used to use emacs. But I think I like vim more. For debugging, I use gdb. But I use the front end cgdb. I can see the codes with the cursor when debugging. I can use F8 for
Read more
Category: Linux
Linux is a family of open-source Unix-like operating systems based on the Linux kernel.
The Linux kernel is an operating system kernel first released on September 17, 1991, by Linus Torvalds.
Linux is typically packaged in a Linux distribution. Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Popular Linux distributions include Debian, Fedora, and Ubuntu. Commercial distributions include Red Hat Enterprise Linux and SUSE Linux Enterprise Server. Desktop Linux distributions include a windowing system such as X11 or Wayland, and a desktop environment such as GNOME or KDE Plasma. Distributions intended for servers may omit graphics altogether, or include a solution stack such as LAMP. Because Linux is freely redistributable, anyone may create a distribution for any purpose.
GNU glibc Manual
Posted on“The C language provides no built-in facilities for performing such common operations as input/output, memory management, string manipulation, and the like. Instead, these facilities are defined in a standard library, which you compile and link with your programs. The GNU C library, described in this document, defines all of the library functions that are specified
Read more
Vim Indenting C/C++ Code
Posted onVim provides some basic formatting commands. A combination of these commands with the editing commands will make the programmer happy. A list of basic text formatting commands in Vim: = is an operator that formats/indents text. i{ is a text object that specifies the surrounding code block. It should be used together with v, =,
Read more
How to Generate Mixed Source and Assembly List from Source Code using GCC
Posted onWhen debugging and optimizing programs, developers sometimes need to generate and investigate into the assembly generated by the compiler. Generating a mixed source and assembly list will help a lot for debugging and optimization. gcc can achieve this by working with the assembler. Generate assembly list mixed with the source code Just add these gcc
Read more
A Free Personal WordPress Blog Solution
Posted onIf you want to have a wordpress blog for FREE co.cc + x10hosting is the best choice. I will introduce both in this post. I will briefly introduce how to set up a wordpress blog like my blog. The overall that I paid for this blog is only $0.89. I can say that it is
Read more
Yum Using DVD as Package Repository
Posted onWe introduce the method to use DVD as the package repository for yum. In this post, we use CentOS 5 as the example. 1) Modify /etc/yum.repos.d/CentOS-Base.repo Delete baseurls in [Base] baseurl by add ‘#’ at the beginning of the lines Then add a line at the end: baseurl=file:///media/CentOS_5.0_Final ‘file://’ means this is a local directory.
Read more
Script: Running Commands on a List of Servers
Posted onI frequently run some commands/scripts on a batch of servers whose IPs are already collected in a file. I usually use a simple loop and call the ssh to run these commands remotely and automatically. This operation, however, is common and can be abstracted into a separate script. Here is the script that I come
Read more
Script: Checking Alive Servers from a Server List
Posted onWith a list of servers, it is common that one or more are down or crash. Lots cluster management tools can detect the aliveness of servers. However, it can be easily done with ping with a Bash script. I summarize the script that I used and share it here: check-alive-server.sh. Usage: usage: ./check-alive-server.sh file Each
Read more
Emacs Tips and Howtos
Posted onWith Emacs, I feel happy. I love the rich functions of Emacs, such as compiling, quickly jumping to the lines with compilation error and debugging with gdb, and more. I ever wrote small tips posts about Emacs before. But it is a good idea to put them together and keep adding new ones. Here comes
Read more
How to Generate and Apply Patches using diff and patch on Linux
Posted on`diff` and `patch` are tools to create patches and apply patches to source code, which is widely used in the open-source world, such as Linux kernel and application. patch: applying patches To apply a patch to a single file: $ patch < foo.patch If the foo.patch does not identify the file the patch should be
Read more
Viewing XPS Files in Linux
Posted onXPS files is a format from MS on Windows. Evince can view some XPS files, but fails to view some. To view XPS files generated on Windows on a Linux system, we can use mupdf. It works very well. I like it much especially in the situation that Evince fails to open the XPS file.
Read more
Configuring Mouse Cursor Style for QT Applications in GNOME / MATE Desktop
Posted onQT and GTK applications use different settings for cursor styles. This makes the mouse cursor styles for QT applications in the GNOME / MATE desktop environment or GTK applications in the KDE desktop environment look different with other programs. In the post [[configuring-mouse-cursor-style-for-gtk-applications-in-kde-desktop]], we talked about how to configure the mouse cursor style for GTK
Read more
Installing Fedora 17 PV Domain-U on Xen with PXE Booting
Posted onAn introduction to the general method of installing Domain-U on Xen is introduced here: Setting Up Stable Xen DomU with Fedora: Unmodified Fedora 12 on top of Xenified Fedora 12 Dom0 with Xen (this is a general introduction, some details are changed, such as ‘xl’ replacing ‘xm’, LVM backing the disk for higher performance. But
Read more
How to Flush iptables on Fedora Linux
Posted oniptables is a mechanism in Linux kernel for port forwarding, NAT, firewalls etc. In Linux distros, such as Fedora, the iptables is configured to be as a “strict” firewall that opens a limited know ports, such as 22 for SSH. However, in some network environment, such as a private cluster, the nodes are trusted and
Read more
How to Change Systemd Runlevel on Fedora Linux – The Manual Way
Posted onFedora Linux starts to use systemd to manage system service. The /etc/inittab is no longer used by systemd. The old method of editing /etc/inittab to change system runlevel does not work anymore. This post introduces a “manual” way to change the boot levels. For the general method, please check https://www.systutorials.com/change-systemd-boot-target-linux/. systemd uses ‘targets’ instead of
Read more
Setting MATE as Default Desktop Environment for startx on Fedora
Posted onI ever discussed Starting KDE from Command Line by startx for KDE and GNOME. Recently, I installed MATE desktop on Fedora 17 and am very happy with it—dear, Gnome 2 is back. However, I checked the /etc/X11/xinit/Xclients script which is called by ‘startx’ and it only includes ‘startkde’ and ‘gnome-session’ without support to MATE. But
Read more
Changing MTU to Make WiFi Faster on Linux
Posted onI experienced very slow WiFi network on Linux, while my iPhone seems surf the Internet quit fast. I pinged a site and the RTT is more than 1000ms! There must be something wrong with my Linux configuration. I tried to change the MTU from “Automatic” to “1400” on my Linux box. Surprisingly, it fix the
Read more
Quickly Copying Text to a File
Posted onCopying some text to a new file is a common operation on Linux. I usually do this by opening the file with ‘vim’, pasting the text in ‘vim’, and then saving the file. I learned a more efficient and quicker way from my advisor during one discussion with him when I show him some results.
Read more
How to Install Xen on Fedora as Domain-0 (Fedora 17)
Posted onThe new development of Xen and Linux kernel make it easy to install Xen on Fedora as the Domain-0 now. This post uses Fedora 17 as an example platform to introduce how to set up Domain-0 on Fedora Linux. Compared to our old method (https://www.systutorials.com/setting-up-stable-xen-dom0-with-fedora-xen-3-4-3-with-xenified-linux-kernel-2-6-32-13-in-fedora-12/) which requires manually compiled Xen and patched kernel, the current
Read more
How to Set Default Entry in Grub2 and Grub
Posted onLinux booting is usually controlled by Grub or the new Grub2. Setting the default booting entry is a frequent operations. Here, we introduce how to set the default entry in Grub2 and Grub. Setting the default booting entry in grub2 Note1: With some version of grub2, the grub2-set-default method and the script below may not
Read more