Linux-Cli-Tutorial(by Saman Khalife)
  • Characters
  • Linux Commands
  • Quick review for commands
  • Config file parameters you can use
  • .github
    • ISSUE_TEMPLATE
      • bug_report
  • Editors-for-command-line
  • TOOLs and APPs
    • Iptables
    • Ufw
      • man
  • Git Commands
  • Installing tools and apps
    • Check-used-ports
    • Clear the cache memory in Linux
    • ulimit
    • ulimit
    • Installing WordPress with Apache
    • Installing WordPress with Nginx
    • what packages are installed by apt
    • wildcard characters for globbing
  • Lpic 1
    • LPIC-1 Exam 101 (101-500) Exam
    • LPIC-1 Exam 101 Objectives
    • how to use lvm snapshots
    • LPIC-1 Exam 102 Objectives
  • Lpic 2
    • how to use lvm
    • LPIC-2 Exam 201 Objectives
    • LPIC-1 Exam 102 (102-500) Exam
    • LPIC-2 Exam 202 Objectives
  • Lpic 3
    • LPIC-2 Exam 201 (201-450) Exam
    • LPIC-3 High Availability and Storage Clusters 306 Objectives
    • LPIC-2 Exam 202 (202-450) Exam
    • LPIC-3 Mixed Environments 300 Objectives.md
    • LPIC-3 High Availability and Storage Clusters 306 Exam
    • LPIC-3 Security Exam 303 Objectives
    • LPIC-3 High Availability and Storage Clusters 306 Objectives
    • LPIC-3 Virtualization and Containerization 305 Objectives
  • TXT FILES
    • accept
    • accton
    • aclocal
    • acpi
    • acpid
    • addr2line
    • addresses
    • agetty
    • alias
    • alsactl
    • amidi
    • amixer
    • anacron
    • apachetop
    • aplay
    • aplaymidi
    • apm
    • apmd
    • apropos
    • apt-get
    • apt
    • aptitude
    • ar
    • arecord
    • arecordmidi
    • arp
    • aspell
    • at
    • atd
    • atop
    • aumix
    • autoconf
    • autoheader
    • automake
    • autoreconf
    • autoscan
    • badblocks
    • banner
    • basename
    • batch
    • bc
    • bg
    • biff
    • bind
    • bison
    • break
    • builtin
    • bzcmp
    • bzdiff
    • bzgrep
    • bzip2
    • cal
    • cardctl
    • cardmgr
    • case
    • cat
    • cc
    • ccrypt
    • cd
    • cdparanoia
    • cfdisk
    • chage
    • chdir
    • chfn
    • chgrp
    • chkconfig
    • chmod
    • chown
    • chpasswd
    • chroot
    • chrt
    • chsh
    • chvt
    • cksum
    • clorm
    • cloumn
    • cmp
    • comm
    • compress
    • continue
    • cp
    • cpio
    • cron
    • crond
    • crontab
    • csplit
    • ctags
    • cupsd
    • curl
    • cut
    • cvs
    • date
    • dd
    • ddrescue
    • debugfs
    • declare
    • depmod
    • devdump
    • df
    • diff
    • dig
    • dircolors
    • dirname
    • disable
    • dlpsh
    • dmesg
    • dmidecode
    • dnsdomainname
    • dnssec-makekeyset
    • dnssec-signkey
    • dnssec-signzone
    • dnssec
    • doexec
    • domainname
    • dosfsck
    • dstat
    • du
    • dump
    • dumpe2fs.
    • dumpkeys
    • e2fsck
    • e2image
    • e2label
    • echo
    • ed
    • edquota
    • eject
    • elvtune
    • emacs
    • enable
    • env
    • envsubst
    • esd-config
    • esd
    • esdcat
    • esdctl
    • esddsp
    • esdmon
    • esdplay
    • esdrec
    • esdsample
    • etags
    • ethtool
    • eval
    • ex
    • exec
    • exit
    • expand
    • expect
    • export
    • expr
    • factor
    • false
    • fc-cache
    • fc-list
    • fc
    • fdformat
    • fdisk
    • fg
    • fgrep
    • file
    • find
    • finger
    • flex
    • fmt
    • fold
    • for
    • formail
    • format
    • free
    • fsck
    • ftpd
    • function
    • g++
    • gawk
    • gdb
    • getent
    • getkeycodes
    • getopts
    • goaccess
    • gorupmod
    • gpasswd
    • gpgsplit
    • gpgv
    • gpm
    • gprof
    • grep
    • groff
    • groffer
    • groupadd
    • groupdel
    • groups
    • grpck
    • grpconv
    • gs
    • gunzip
    • gzexe
    • gzip
    • halt
    • hash
    • hdparm
    • head
    • help
    • hexdump
    • history
    • host
    • hostid
    • hostname
    • hostnamectl
    • htdigest
    • htop
    • hwclock
    • iconv
    • id
    • if
    • ifconfig
    • iftop
    • ifup
    • import
    • inetd
    • info
    • init
    • insmod
    • install
    • iostat
    • iotop
    • ip
    • ipcrm
    • ipcs
    • iptables-restore
    • iptables
    • isodump
    • isoinfo
    • isosize
    • isovfy
    • ispell
    • iwconfig
    • jnettop
    • jobs
    • join
    • journalctl
    • kbdrate
    • kill
    • killall
    • klogd
    • kudzu
    • last
    • lastlog
    • ld
    • ldconfig
    • ldd
    • less
    • lesskey
    • let
    • lftp
    • lftpget
    • link
    • ln
    • loadkeys
    • local
    • locate
    • lockfile
    • logger
    • login
    • logout
    • logrotate
    • logwatch
    • look
    • losetup
    • lpadmin
    • lpc
    • lpinfo
    • lpmove
    • lpq
    • lpr
    • lprint
    • lprintq
    • lprm
    • lpstat
    • ls
    • lsatb
    • lsattr
    • lsblk
    • lshw
    • lsmod
    • lsof
    • lspci
    • lsusb
    • mail
    • mailstats
    • make
    • makedbm
    • makemap
    • man
    • manpath
    • mattrib
    • mbadblocks
    • mcat
    • mcd
    • mcopy
    • mdu
    • merge
    • mesg
    • mformat
    • mkdir
    • mkfs
    • mkraid
    • mktemp
    • mlabel
    • mmove
    • modinfo
    • LPIC-3 Mixed Environments 300 Exam
    • most
    • mount
    • mountd
    • mpartition
    • mpstat
    • mv
    • named
    • nameif
    • neofetch
    • netcat
    • netstat
    • newaliases
    • newgrp
    • newusers
    • nfsstat
    • nice
    • nl
    • nm
    • nmcli
    • nohup
    • nslookup
    • nsupdate
    • objcopy
    • objdump
    • od
    • op
    • open
    • openvt
    • passwd
    • paste
    • patch
    • pathchk
    • pgrep
    • pidof
    • ping
    • pkill
    • pmap
    • popd
    • portmap
    • poweroff
    • pppd
    • pr
    • praliases
    • printcap
    • printenv
    • printf
    • ps
    • ptx
    • pushd
    • pv
    • pwck
    • pwconv
    • pwd
    • quota
    • quotacheck
    • quotactl
    • quotaoff
    • quotaon
    • quotastats
    • raidstart
    • ram
    • ramsize
    • ranlib
    • rar
    • rarpd
    • rcp
    • rdev
    • rdist
    • read
    • readarray
    • readcd
    • readelf
    • readlink
    • readonly
    • reboot
    • reject
    • rename
    • renice
    • repquota
    • reset
    • restore
    • return
    • rev
    • rexecd
    • rlogin
    • rlogind
    • rm
    • rmail
    • rmdir
    • rmmod
    • rndc
    • rootflags
    • route
    • routed
    • rpcgen
    • rpcinfo
    • rpm
    • rsh
    • rshd
    • rsync
    • runlevel
    • rup
    • rusers
    • rusersd
    • rwall
    • rwho
    • rwhod
    • sane-find-scanner
    • sar
    • scanadf
    • scanimage
    • scp
    • screen
    • script
    • scriptreplay
    • sdiff
    • sed
    • select
    • sensors
    • seq
    • service
    • set
    • setfdprm
    • setkeycodes
    • setleds
    • setmetamode
    • setquota
    • setsid
    • setterm
    • sftp
    • sh
    • shift
    • shopt
    • showkey
    • showmount
    • shred
    • shutdown
    • skill
    • slabtop
    • slacttach
    • sleep
    • slocate
    • snice
    • sort
    • source
    • split
    • ss
    • ssh-add
    • ssh-agent
    • ssh-keygen
    • ssh-keyscan
    • ssh
    • stat
    • statd
    • strfile
    • strings
    • strip
    • stty
    • su
    • sudo
    • sum
    • suspend
    • swapoff
    • swapon
    • symlink
    • sysctl
    • sysklogd
    • syslogd
    • systemctl
    • Systemd
    • tac
    • tail
    • tailf
    • talkd
    • tar
    • taskset
    • tcpdump
    • tcpslice
    • tee
    • telinit
    • telnet
    • terminator
    • tfdp
    • tftpd
    • tmpwatch
    • top
    • touch
    • tput
    • tr
    • tracepath
    • traceroute
    • trap
    • tree
    • tset
    • tty
    • tune2fs
    • tunelp
    • type
    • ul
    • unalias
    • uname
    • uncompress
    • unexpand
    • unicode_start
    • unicode_stop
    • uniq
    • units
    • unix2dos
    • unshar
    • until
    • uptime
    • useradd
    • usermod
    • usleep
    • uudecode
    • uuencode
    • uuidgen
    • vidmode
    • vmstat
    • vnstat
    • w
    • wall
    • warnquota
    • watch
    • wc
    • wget
    • whatis
    • which
    • while
    • who
    • whoami
    • write
    • xargs
    • xdg-open
    • xinetd
    • xz
    • yacc
    • ypbind
    • ypcat
    • ypinit
    • ypmatch
    • yppasswd
    • yppasswdd
    • yppoll
    • yppush
    • ypset
    • yptest
    • ypwhich
    • ypxfr
    • zcat
    • zcmp
    • zdiff
    • zdump
    • zforce
    • zgrep
    • zic
    • zip
    • zless
    • znew
    • readme
      • Some basic info about Cloud Computing model and SRE's
      • Ansible Automation
      • Backup and Recovery
      • Linux File Systems and Storage Management
      • Linux Networking
      • shell-scripting
      • LPIC-3 Mixed Environments 300 Objectives
    • File-systems-Cocepts
      • LPIC1-101
        • LPIC-3 Security Exam 303 Exam
        • /dev/
        • /etc/apt/sources.list
        • /etc/fstab
        • /etc/init.d/
        • LPIC-3 Virtualization and Containerization 305 Exam
        • /etc/ld.so.conf
        • /etc/systemd
        • /etc/yum.conf
        • /etc/yum.repos.d/
        • LPIC-3 Virtualization and Containerization 305 Objectives
        • /media
        • /proc/
        • modprobe
        • /sys/
        • /usr/lib/systemd/user/
        • -boot
        • .bash_history
        • Application container
        • BIOS
        • D-Bus machine ID
        • EFI System Partition
        • Guest drivers
        • LD_LIBRARY_PATH
        • Linux containers
        • MBR
        • Quoting
        • SSH host keys
        • SysVinit
        • UEFI
        • VFAT
        • VMs
        • XFS
        • -etc-inittab
        • -home
        • bootloader
        • -root
        • -var
        • dpkg-reconfigure
        • apt-cache
        • bash
        • exFAT
        • ext2/ext3/ext4
        • bunzip2
        • bzcat
        • dpkg
        • Grub-install
        • grub-mkconfig
        • initramfs
        • kernel
        • egrep
        • file globbing
        • filesystem
        • gdisk
        • menu.lst, grub.cfg and grub.conf
        • Partitions
        • regex(7)
        • rpm2cpio
        • sha256sum
        • sha512sum
        • mke2fs
        • mkswap
        • mount points
        • parted
        • swap space
        • tmux
        • umask
        • umount
        • unset
        • unxz
        • updatedb
        • whereis
        • xfs_db
        • xfs_fsr
        • xfs_repair - Copy (2)
      • LPIC1-102
        • xfs_repair
        • xzcat
        • yum
        • zypper
        • -etc-X11-xorg.conf
        • -etc-X11-xrog.conf.d
        • -etc-at.allow
        • -etc-at.deny
        • -etc-bash.bashrc
        • -etc-chrony.conf
        • -etc-cron.allow
        • -etc-cron.deny
        • -etc-cron
        • -etc-crontab
        • -etc-cups
        • -etc-group
        • -etc-hostname
        • -etc-hosts.allow
        • -etc-hosts.deny
        • -etc-hosts
        • -etc-init.d-
        • -etc-inittab
        • -etc-localhost
        • -etc-localtime
        • -etc-logrotate.conf
        • -etc-logrotate.d-
        • -etc-nologin
        • -etc-nsswitches.conf
        • -etc-nto.conf
        • -etc-ntp.conf
        • -etc-passwd
        • -etc-profile
        • -etc-resolv.conf
        • -etc-rsyslog.conf
        • -etc-services
        • -etc-shadow
        • -etc-skel-
        • -etc-ssh-ssh_host_dsa_key and ssh_host_dsa_key.pub
        • -etc-ssh-ssh_host_ecdsa_key and ssh_host_ecdsa_key.pub
        • -etc-ssh-ssh_host_ed25519_key and ssh_host_ed25519_key.pub
        • -etc-ssh-ssh_host_rsa_key and ssh_host_rsa_key.pub
        • -etc-sudoers
        • -etc-systemd-journald.conf
        • -etc-timezone
        • -etc-updatedb.conf
        • -etc-xinetd.conf
        • -etc-xinetd.d-
        • -usr-bin-locale
        • -usr-share-zoneinfo
        • -usr-share-zoninfo
        • -var-log-journal
        • -var-log
        • DISPLAY
        • -var-spool-cron
        • ASCII
        • Gnome
        • Braille Display.
        • CUPS configuration files, tools and utilities
        • Gesture
        • KDE
        • Gestures.
        • High ContrastLarge Print Desktop Themes.
        • IPv4-IPv6
        • ISO-8859
        • LANG
        • LC_
        • LC_ALL
        • Logical OR
        • Mouse keys
        • On-Screen Keyboard.
        • RDP
        • Screen Magnifier.
        • Screen Reader
        • Slow-Bounce-Toggle keys
        • Spice
        • Sticky-Repeat keys
        • Subnetting
        • TCP-UDP-ICMP
        • TZ
        • X
        • UTF-8
        • XDMCP
        • Xfce
        • Unicode
        • VNC
        • Voice recognition
        • X11
        • atq
        • atrm
        • chronyc
        • exim
        • fuser
        • gpg-agent
        • gpg
        • groupmod
        • ifdown
        • logic and
        • logic or
        • lpd legacy interface
        • mailq
        • nmap
        • ntpd
        • ntpdate
        • ping6
        • pool.ntp.org
        • postfix
        • sendmail emulation layer commands
        • sendmail
        • ssh_known_hosts
        • systemd-cat
        • systemd-run
        • systemd.socket
        • test
        • timedatectl
        • tracepath6
        • traceroute6
        • tzselect
        • xauth
        • ulimit
        • unset
        • userdel
        • who, w, last
        • xhost
        • ~-.bash_login
        • ~-.bash_logout
        • ~-.bash_profile
        • ~-.bashrc
        • ~-.forward
        • ~-.gnupg-
        • ~-.profile
        • ~-.ssh-authorized_keys
        • ~-.ssh-id_dsa and id_dsa.pub
      • LPIC2-201
        • /bin/dmesg
        • /bin/uname
        • Device Naming Conventions
        • /dev/mapper/
        • /etc/auto.[dir]
        • /etc/auto.master
        • ~-.ssh-id_ecdsa and id_ecdsa.pub
        • /etc/hostname and /etc/HOSTNAME
        • /etc/hosts.allow , /etc/hosts.deny
        • /etc/hosts
        • /etc/init.d/
        • /etc/inittab
        • /etc/mtab
        • /etc/network and /etc/sysconfig/network-scripts
        • /etc/rc.d/
        • /etc/resolv.conf
        • /etc/sysctl.conf
        • /etc/systemd/
        • /etc/udev/
        • /proc/mdstat
        • ~-.ssh-id_ed25519 and id_ed25519.pub
        • /proc/sys/kernel/
        • /run/systemd/
        • /sbin/depmod
        • /sbin/insmod
        • /sbin/lsmod
        • /sbin/lspci
        • lv
        • /sbin/modinfo
        • /sbin/modprobe
        • pv
        • /sbin/rmmod
        • ~-.ssh-id_rsa and id_rsa.pub
        • LVM Volume Group (vg)
        • /usr/bin/lsdev
        • /usr/bin/lsusb
        • /usr/src
        • EFI System Partition (ESP)
        • GRUB
        • Master boot record
        • ~-.xsesion-errors
        • /boot , /boot/grub , /boot/efi
        • UEFI shell
        • WWID, WWN, LUN numbers
        • blkid
        • blocks in
        • blocks out
        • btrfs, btrfs-convert
        • bzImage
        • -etc-fstab
        • configure
        • cryptsetup
        • diagnose
        • dkms
        • efiboot.img
        • efibootmgr
        • Extlinux
        • fsck
        • -proc-mounts
        • fstrim Command
        • grub-install
        • -sbin-sysctl
        • System log files such as -var-log-syslog, -var-log-messages and the systemd journal
        • initrd and initramfs
        • SysV Init Overview
        • iSCSI Components
        • isohdpfx.bin
        • ISOLINUX
        • chkconfig
        • iw
        • iwlist
        • lib/modules/kernel-version/modules.dep
        • fsck
        • lvm.conf
        • make targets
        • mdadm.conf
        • mdadm
        • mkfs
        • mkinitramfs
        • mkinitrd
        • mkisofs
        • mkswap
        • /etc/modprobe.d/
        • module tools
        • mount and umount
        • hdparm, sdparm
        • mtr (My Traceroute)
        • Netcat(nc)
        • Nmap
        • NVMe (Non-Volatile Memory Express)
        • partition type 0xFD
        • ping , ping6
        • predict growth
        • processes blocked on IO
        • pxelinux.0
        • pxelinux.cfg/
        • resource exhaustion
        • smartd, smartctl
        • init and telinit
        • isolinux.cfg
        • sync
        • sysctl
        • syslinux
        • lib-modules-kernel-version
        • systemd-delta
        • mount
        • swapoff
        • tune2fs
        • udevadm monitor
        • udevmonitor
        • uefi-grubx64.efi
        • uefi-shim.efi
        • update-rc.d
        • /usr/lib/systemd/
        • usr-src-linux-.config
        • /usr/src/linux
        • /usr/src/linux/Documentation/
        • Xfs_info, Xfs_check, Xfs_repair, Xfsdump and Xfsrestore
        • XZ
        • zImage
      • LPIC2-202
        • /etc/aliases
        • /etc/dovecot
        • /etc/exports
        • /etc/fstab
        • named.conf
        • /etc/nginx
        • /etc/openvpn
        • /etc/passwd
        • /etc/postfix/
        • /etc/samba/
        • /etc/services
        • /etc/ssh/sshd_config
        • /etc/ssh
        • -etc-ssl-, -etc-pki-
        • /proc/mounts
        • /proc/sys/net/ipv4/
        • /proc/sys/net/ipv6/
        • /etc/samba/
        • /var/named/
        • swapon
        • systemctl
        • .htaccess Files
        • Apache2 configuration files
        • AuthUserFile, AuthGroupFile
        • Conditions and comparison operators
        • Configuration files and commands for postfix
        • DHCP Log Messages in Syslog or Systemd Journal
        • DNSSEC
        • traceroute, traceroute6
        • LDIF (LDAP Data Interchange Format)
        • PermitRootLogin, PubKeyAuthentication, AllowUsers, PasswordAuthentication, Protocol
        • Private and public key files
        • SSLCACertificateFile, SSLCACertificatePath
        • SSLEngine, SSLCertificateKeyFile, SSLCertificateFile
        • SSLProtocol, SSLCipherSuite, ServerTokens, ServerSignature, TraceEnable
        • Access Logs:
        • ACL
        • apachectl, apache2ctl
        • tune2fs, dumpe2fs and debugfs
        • dhcpd.conf
        • dhcpd.leases
        • dhcpd
        • dnssec-keygen
        • dnssec-signzone
        • doveadm
        • doveconf
        • dovecot.conf
        • /etc/pam.d
        • exportfs
        • Fail2ban
        • htpasswd
        • http_access
        • httpd, apache2
        • httpd.conf
        • Important Pure-FTPd command line options
        • ip6tables
        • -var-named
        • ldapadd
        • ldapdelete
        • ldappasswd
        • ldapsearch
        • -var-spool-postfix
        • Mail-related logs in /var/log/
        • Master File Format in DNS
        • mod_auth_basic, mod_authz_host and mod_access_compat
        • mount.cifs
        • named-checkconf
        • named-checkzone
        • named-compilezone
        • net
        • Dovecot vacation extension
        • nsswitch.conf
        • OpenSSL
        • OpenVPN
        • pam.conf
        • pam_unix, pam_cracklib, pam_limits, pam_listfile, pam_sss
        • portmapper
        • radvd.conf
        • radvd
        • Resource Record Formats
        • rpcinfo
        • samba-tool
        • Sendmail emulation layer commands
        • slapadd
        • slapcat
        • slapd-config
        • arp
        • keep, fileinto, redirect, reject, discard, stop
        • smbclient
        • Additional Samba Commands: smbcontrol, smbstatus, testparm, smbpasswd, nmblookup
        • SMB Daemons: smbd, nmbd, winbindd
        • squid.conf
        • sshd
        • sssd.conf
        • loglevel
        • vsftpd.conf
        • zone file syntax
      • LPIC3-300
        • IPC$
        • [homes]
        • tunefs.ocfs2
        • vgchange
        • vgcreate
        • HKLM\Software\Samba
        • LDIF (LDAP Data Interchange Format)
        • Microsoft-ADSI-Edit
        • Microsoft-LDP
        • microsoft mmc
        • Microsoft RSAT Tools
        • Microsoft Regedit
        • REG_SZ and REG_MULTI_SZ
        • SeDiskOperatorPrivilege
        • vgdisplay
        • Virtual Machine Generation Identifier
        • Virtual Machine Snapshots
        • allow-dns-updates
        • vgreduce
        • vgreduce
        • vgreduce
        • chmod
        • chown
        • cifscreds
        • cifsiostat
        • config backend
        • vgreduce
        • create-mask and create-mode
        • ifenslave
        • log level (or debuglevel) in Samba
        • delete veto files
        • dig
        • Directory Mask and Force Directory Mode
        • dns-forwarder
        • /etc/exports
        • /etc/fstab
        • /etc/group
        • /etc/idmapd.conf
        • ip
        • /etc/nsswitch.conf
        • /etc/pam.conf
        • /etc/pam.d/
        • /etc/group
        • /etc/resolv.conf
        • exportfs
        • ipvsadm
        • force-create-mode
        • force-directory-mode
        • force group
        • force-user
        • getcifsacl
        • getent
        • getfacl
        • getfattr
        • gpupdate
        • keepalived-configuration-file
        • kpartx
        • ldirectord-configuration-file
        • loadbalancing-algorithms
        • lvchange
        • lvconvert
        • host
        • lvcreate
        • lvdisplay
        • idmap-config
        • idmap_ad
        • lvextend
        • idmap_ldap
        • idmap_rfc2307
        • idmap_rid
        • idmap_tdb
        • idmap_tdb2
        • include
        • inherit-acls
        • lvreduce
        • FreeIPA (IPA)
        • ipa
        • ipa
        • IPA
        • ipa-adtrust-install
        • ipa-advice
        • ipa-client-install
        • ipa-replica-install
        • ipa-replica-prepare
        • ipa-server-install
        • ipactl
        • ipctl
        • kdestroy
        • kinit
        • klist
        • krb5.conf
        • lvresize
        • ldbadd
        • ldbdel
        • ldbedit
        • ldbmodify
        • ldbsearch
        • libnss_winbind
        • libpam_winbind
        • mdadm
        • log level (or debuglevel) in Samba
        • logon-path
        • logon-script
        • map-acl-inherit
        • mount
        • mount.cifs
        • mount Command
        • mkfs.gfs2
        • mkfs.ocfs2
        • multicast dns register
        • net
        • monit
        • net ads
        • net registry
        • nfs4_editfacl
        • nfs4_getfacl
        • nfs4_setfacl
        • nmbd (NetBIOS Name Service Daemon)
        • ntpd.conf
        • ntpsigndsocket
        • mount.gfs2
        • mount.ocfs2
        • mounted.ocfs2
        • multipath
        • nmcli
        • pam_mount.conf.xml
        • pam_mount.so
        • pam_smbpass.so
        • nvme-cli
        • passdb-backend
        • o2image
        • pdbedit
        • o2info
        • ocfpacemakerHealthCPU
        • ocfpacemakerHealthSMART
        • profile-acls
        • rdesktop
        • ocfpacemakerNodeUtilization
        • realm
        • Registry shares
        • registry.tdb in Samba
        • robocopy
        • ocfpacemakerocfSysInfo
        • rpcclient
        • rsync.conf
        • rsync
        • samba regedit
        • samba-tool dbcheck
        • samba-tool dns
        • ocfpacemakerping
        • samba-tool domain backup
        • samba-tool domain backup
        • samba-tool domain exportkeytab
        • samba-tool domain passwordsettings
        • pcs
        • pvcreate
        • samba-tool gpo
        • samba-tool group
        • samba-tool ntacl
        • pvdisplay
        • samba-tool spn
        • samba-tool user
        • Samba
        • samba_dnsupdate
        • secrets.tdb in Samba
        • security
        • server role
        • server services
        • server string
        • setcifsacl
        • setfacl
        • sharesec
        • smb-encrypt
        • smb.conf
        • smbcacls
        • smbclient
        • smbcontrol
        • smbcquotas
        • smbd (Samba Daemon)
        • smbget
        • smbpasswd
        • pvmove
        • smbstatus
        • smbtar
        • pvremove
        • pvresize
        • sss_cache
        • sss_debuglevel
        • sss_override
        • sss_user and sss_group
        • sssd.conf
        • rados-(including-relevant-subcommands)
        • store-dos-attributes
        • systemctl
        • tdbbackup
        • tdbdump
        • tdbrestore
        • tdbtool
        • template-homedir
        • template-shell
        • testparm
        • tls-cafile
        • tls-certfile
        • tls-dh-params-file
        • tls-enabled
        • tls-keyfile
        • rdb(including-relevant-subcommands)
        • /var/lib/samba/sysvol/
        • /var/lib/sss/db
        • /var/log/samba/
        • sbd
        • smartctl
        • vfs objects
        • vfs_acl_tdb
        • vfs_acl_xattr
        • wbinfo
        • winbind-enumerate-groups
        • smartd
        • winbind-offline-logon
        • winbind-separator
        • winbindd
        • workgroup
        • stonith
        • stonith_admin
      • LPIC3-303
        • /etc/aide/aide.conf
        • /etc/crypttab
        • /etc/openvas/
        • /etc/openvpn/
        • /etc/raddb/
        • /etc/rkhunter.conf
        • /etc/security/limits.conf
        • /etc/selinux/
        • /etc/snort
        • /etc/ssh/sshd_config
        • /etc/ssh
        • /etc/strongswan.conf
        • /etc/strongswan.d/.
        • /etc/swanctl/
        • /etc/swanctl/swanctl.conf
        • /etc/sysctl.conf
        • /etc/usbguard/rules.conf
        • /etc/usbguard/usbguard-daemon.conf
        • /etc/wireguard/
        • /proc/cgroups
        • nginx
        • slapd
        • ARP and NDP
        • Brute force attacks
        • Buffer overflows
        • CRL (Certificate Revocation List)
        • CSR (Certificate Signing Request)
        • CSRF
        • XSS
        • DoS and DDoS
        • keylogger
        • Link layer address and IP address spoofing
        • Man-in-the-Middle
        • OCSP (Online Certificate Status Protocol)
        • OpenSSL Configuration
        • PEM, DER, PKCS
        • Phishing
        • Privilege escalation
        • Rainbow tables
        • Rogue access points, routers, and DHCP servers
        • Rootkits
        • SQL and codes injection
        • Social engineering
        • slapindex
        • varlibldap
        • aide
        • apol
        • audit.rules
        • audit2allow
        • audit2why
        • auditctl
        • auditd.conf
        • auditd
        • ausearch, aureport
        • -sys-fs-group-
        • capsh
        • chcon
        • chkrootkit
        • chroot
        • conf.maldet
        • cryptmount
        • cryptsetup (Disk Encryption Setup)
        • delv
        • dnssec-dsfromkey
        • -sys-fs-group
        • dnssec-settime
        • Trojans
        • dpkg
        • ecryptfs- commands
        • ecryptfsd
        • fixfiles
        • getcap
        • getenforce
        • getfacl
        • getfattr
        • getsebool
        • grub.cfg
        • httpd.conf (Apache HTTP Server Configuration)
        • ip6tables-restore
        • ip6tables-save
        • ip6tables
        • ipset
        • iptables-save
        • iptables
        • Kismet
        • Linux Malware Detect (maldet)
        • mod_ssl (Apache SSL Module)
        • mount.ecryptfs, umount.ecryptfs
        • named.conf
        • ndpmon
        • newrole
        • ntop
        • openssl
        • openvas-adduser
        • openvas-feed-update
        • openvas-mkcert
        • openvas-nvt-sync
        • openvas-rmuser
        • openvassd
        • OpenVPN
        • pam_ecryptfs
        • pam_limits.so
        • pam_tty_audit.so
        • pulledpork.pl
        • radclient
        • radiusd.conf
        • radiusd
        • Viruses
        • radmin
        • radtest
        • radwho
        • restorecon
        • rkhunter
        • rndc
        • c
        • seaudit
        • seinfo
        • selinuxenabled
        • semanage
        • sestatus
        • setcap
        • setcon
        • setenforce
        • setfacl
        • setfattr
        • setfiles
        • setsebool
        • snort-stat
        • snort
        • ssh-keygen
        • swanctl
        • sysctl
        • systemctl
        • systemd-cgls
        • systemd-cgtop
        • Tcpdump
        • togglesebool
        • tshark
        • dnssec-keygen
        • usbguard
        • wg-quick
        • wg
        • wireshark
        • ~/.ssh/
      • LPIC3-305
        • -dev-kvm-
        • /etc/docker/daemon.json
        • /etc/libvirt — Libvirt Configuration Directory
        • -proc -[0-9]+-status
        • -proc-[0-9]+-ns
        • -sys-fs-cgroups
        • /var/lib/cloud
        • /var/lib/docker
        • CPU-flags
        • Dockerfile
        • Domain0(Dom0),DomainU (DomU)
        • Emulation and Simulation
        • Hardware Virtual Machine (HVM)
        • IaaS, PaaS, SaaS
        • Kernel-modules-kvm,kvm-intel.and.kvm-amd
        • Migration (P2V, V2V)
        • OpenStack
        • PV-DomU,HVM-DomU
        • Paravirtualization (PV)
        • QEMU Monitor
        • Terraform
        • Vagrantfile
        • brctl — Bridge Control Utility
        • capsh
        • cloud-init
        • syncd
        • dockerd
        • etc-xen-
        • guestumount — Virtual Disk Image Unmounting Tool
        • guestmount
        • guestumount
        • Hypervisor
        • ip(including-relevant-subcommands)
        • ip — Network Management Command
        • libvirtd — Libvirt Daemon (Legacy Central Virtualization Daemon)
        • LXC (Linux Containers)
        • LXD (Linux Container Daemon)
        • nsenter
        • Packer
        • tunefs.ocfs2
        • qemu-img — QEMU Disk Image Utility
        • vgchange
        • qemu — Quick Emulator
        • tunctl — TUN/TAP Device Control Utility
        • unshare
        • user-data
        • vagrant
        • virsh — Virtualization Shell for Managing VMs
        • virt-cat
        • virt-copy-in
        • virt-copy-out
        • virt-df
        • virt-diff
        • virt-filesystems
        • virt-inspector
        • virt-p2v-make-disk
        • virt-p2v
        • virt-rescue
        • virt-resize
        • virt-sparsify
        • virt-sysprep
        • virt-v2v
        • xentop
        • xl.cfg
        • xl.conf
        • xl
      • LPIC3-306
        • /etc/drbd.conf
        • /etc/drbd.d/
        • /etc/lvm/lvm.conf Configuration File
        • /etc/multipath.conf
        • /etc/network/interfaces
        • /etc/smartd.conf
        • /etc/sysconfig/networking-scripts/ifcfg-*
        • /etc/systemd/network/*.netdev
        • /etc/systemd/network/*.network
        • /proc/drbd
        • /proc/mdstat
        • /proc/sys/dev/raid
        • -sys-class-net-bond-bonding-miimon
        • -sys-class-net-bond-bonding-slaves
        • -sys-class-net-bonding_masters
        • Access Control Lists (ACLs)
        • Active-Active Cluster
        • vgcreate
        • Cluster Services
        • Disaster Recovery (DR)
        • Failover Cluster
        • Fencing (Node and Resource Level Fencing)
        • HAProxy Configuration File
        • LVS Forwarding Methods
        • Load-Balanced Cluster
        • Mean Time Before Failure (MTBF)
        • Mean Time To Repair (MTTR)
        • Primary, Secondary
        • ProtocolA,BandC
        • Quorum
        • Redundancy
        • Replication
        • Service-Level Agreement (SLA)
        • Session-Handling
        • Shared-Disk Cluster
        • Shared-Nothing Cluster
        • Split-Brain
        • State-Handling
        • Three-way replication
        • active-passive-cluster
        • apctest
        • apcupsd
        • authkeys
        • bonding.ko
        • Ceph
        • ceph-authtool
        • ceph-bluestore-tool
        • ceph-deploy
        • ceph-volume
        • ceph.conf
        • CephFS
        • cibadmin
        • connection-scheduling-algorithms
        • corosync-cfgtool
        • corosync-cmapctl
        • corosync-quorumtool
        • corosync.conf
        • crm
        • crm_attribute
        • crm_mon
        • crm_node
        • crm_resource
        • crm_shadow
        • crm_simulate
        • crm_standby
        • crm_verify
        • crushtool
        • DRBD Kernel Module
        • drbdadm
        • drbdmeta
        • drbdsetup
        • vgdisplay
        • fsck.ocfs2
        • genhash
        • gfs2_edit
        • gfs2_grow
        • gfs2_jadd
        • gluster
        • ifenslave Command
        • ip Command
        • ipvsadm
        • iscsiadm
        • iscsid.conf
        • Keepalived Configuration File
        • kpartx
        • ldirectord Configuration File
        • loadbalancing-algorithms
        • vgreduce
        • lvconvert
        • lvcreate
        • lvdisplay
        • lvextend
        • lvreduce
        • lvresize
        • mdadm
        • mkfs.gfs2
        • mkfs.ocfs2
        • Monit
        • mount.gfs2
        • mount.ocfs2
        • mounted.ocfs2
        • multipath
        • nmcli
        • nvme-cli
        • o2image
        • o2info
        • ocf:pacemaker:HealthCPU
        • ocf:pacemaker:HealthSMART
        • ocf:pacemaker:NodeUtilization
        • ocf:pacemaker:ocfSysInfo
        • ocf:pacemaker:ping
        • pcs
        • pvcreate
        • pvdisplay
        • pvmove
        • pvremove
        • pvresize
        • rados
        • rbd
        • authkey
        • smartctl
        • smartd
        • bonding.ko-(including-relevant-module-options)
        • stonith
        • stonith_admin
        • syncd
        • targets.conf
        • tgtadm
        • tunefs.ocfs2
        • vgchange
        • vgcreate
        • vgdisplay
        • vgreduce
  • Security attacks full list
Powered by GitBook
On this page
  • make
  • help
  1. TXT FILES

make

make

The make command is a build automation tool that automatically builds executable programs and libraries from source code by reading files called Makefiles which specify how to derive the target program. The make command is essential for compiling software in Unix-like operating systems, including Linux.

Key Concepts of make

  1. Makefile: A file named Makefile (or makefile) that contains rules defining how to build the targets. It specifies the dependencies between files and the commands needed to create or update each target.

  2. Targets: The file or files to be built or the actions to be taken. Each target is typically an executable program or an object file.

  3. Dependencies: Files that a target depends on. If any of these files change, the target must be rebuilt.

  4. Rules: Instructions that define how to build the targets. A rule consists of a target, dependencies, and a command to build the target.

Basic Structure of a Makefile

A simple Makefile typically has the following structure:

target: dependencies
    command
  • target: The file to be created or the action to be performed.

  • dependencies: The files that the target depends on.

  • command: The command to be executed to build the target. This must be preceded by a tab character.

Example Makefile

Consider a simple C project with the following files:

  • main.c

  • utils.c

  • utils.h

A corresponding Makefile might look like this:

# Compiler and flags
CC = gcc
CFLAGS = -Wall -g

# Targets
all: myprogram

myprogram: main.o utils.o
    $(CC) $(CFLAGS) -o myprogram main.o utils.o

main.o: main.c utils.h
    $(CC) $(CFLAGS) -c main.c

utils.o: utils.c utils.h
    $(CC) $(CFLAGS) -c utils.c

clean:
    rm -f myprogram *.o

Commands in the Example

  • all: The default target. It depends on myprogram.

  • myprogram: The executable to be created. It depends on main.o and utils.o.

  • main.o: An object file created from main.c. It depends on main.c and utils.h.

  • utils.o: An object file created from utils.c. It depends on utils.c and utils.h.

  • clean: A utility target to remove generated files. It does not create a file named clean.

Running make

To use the Makefile, simply run:

make

This will execute the first target in the Makefile (usually all). To execute a specific target, specify it as an argument:

make clean

Variables in Makefiles

Makefiles can use variables to simplify the code and make it more maintainable. For example:

CC = gcc
CFLAGS = -Wall -g
OBJ = main.o utils.o

all: myprogram

myprogram: $(OBJ)
    $(CC) $(CFLAGS) -o myprogram $(OBJ)

main.o: main.c utils.h
    $(CC) $(CFLAGS) -c main.c

utils.o: utils.c utils.h
    $(CC) $(CFLAGS) -c utils.c

clean:
    rm -f myprogram $(OBJ)

Useful make Options

  • -f FILE: Use FILE as the Makefile.

  • -C DIR: Change to directory DIR before reading the Makefile.

  • -j [N]: Allow N jobs at once; infinite jobs with no argument.

  • -k: Continue as much as possible after an error.

  • -n: Print the commands that would be executed, but do not execute them.

Conclusion

The make command is a powerful and flexible tool for automating the build process of software projects. By defining rules and dependencies in a Makefile, make can efficiently compile and link programs, rebuild only the necessary components, and simplify the management of complex build processes. Understanding make and writing effective Makefiles is a valuable skill for developers working in Unix-like environments.

help

Usage: make [options] [target] ...
Options:
  -b, -m                      Ignored for compatibility.
  -B, --always-make           Unconditionally make all targets.
  -C DIRECTORY, --directory=DIRECTORY
                              Change to DIRECTORY before doing anything.
  -d                          Print lots of debugging information.
  --debug[=FLAGS]             Print various types of debugging information.
  -e, --environment-overrides
                              Environment variables override makefiles.
  -E STRING, --eval=STRING    Evaluate STRING as a makefile statement.
  -f FILE, --file=FILE, --makefile=FILE
                              Read FILE as a makefile.
  -h, --help                  Print this message and exit.
  -i, --ignore-errors         Ignore errors from recipes.
  -I DIRECTORY, --include-dir=DIRECTORY
                              Search DIRECTORY for included makefiles.
  -j [N], --jobs[=N]          Allow N jobs at once; infinite jobs with no arg.
  -k, --keep-going            Keep going when some targets can't be made.
  -l [N], --load-average[=N], --max-load[=N]
                              Don't start multiple jobs unless load is below N.
  -L, --check-symlink-times   Use the latest mtime between symlinks and target.
  -n, --just-print, --dry-run, --recon
                              Don't actually run any recipe; just print them.
  -o FILE, --old-file=FILE, --assume-old=FILE
                              Consider FILE to be very old and don't remake it.
  -O[TYPE], --output-sync[=TYPE]
                              Synchronize output of parallel jobs by TYPE.
  -p, --print-data-base       Print make's internal database.
  -q, --question              Run no recipe; exit status says if up to date.
  -r, --no-builtin-rules      Disable the built-in implicit rules.
  -R, --no-builtin-variables  Disable the built-in variable settings.
  -s, --silent, --quiet       Don't echo recipes.
  --no-silent                 Echo recipes (disable --silent mode).
  -S, --no-keep-going, --stop
                              Turns off -k.
  -t, --touch                 Touch targets instead of remaking them.
  --trace                     Print tracing information.
  -v, --version               Print the version number of make and exit.
  -w, --print-directory       Print the current directory.
  --no-print-directory        Turn off -w, even if it was turned on implicitly.
  -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE
                              Consider FILE to be infinitely new.
  --warn-undefined-variables  Warn when an undefined variable is referenced.
PreviousmailstatsNextmakedbm

Last updated 10 months ago