Skip to content
0
  • Recent
  • Tags
  • Popular
  • Search
  • ads.txt
  • Recent
  • Tags
  • Popular
  • Search
  • ads.txt
Collapse
Lime-it.us
  1. Home
  2. Categories
  3. Linux Systems
  4. Linux Systems Guides
  5. Basic Linux Terminal Commands

Basic Linux Terminal Commands

Scheduled Pinned Locked Moved Linux Systems Guides
8 Posts 1 Posters 7.6k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • rickR Offline
    rickR Offline
    rick
    wrote on last edited by rick
    #1

    Adding a user
    While logged in as root, type in the shell:

    replace username with the username you wish

    adduser username
    

    Deleting a user:
    While logged in as root, type replace username with the user name you wish to delete.

    userdel username
    

    Change login password
    To set the password for a specific user, replace username with the name of the user. By typing simply:

      passwd username
    

    To change the current password for the user you are logged in as:

    passwd
    

    Change directories

    cd - Used to Change Directories

    Usage: cd /[directory]
    Example:

    cd /tmp
    

    Example:

    cd ../
    

    (moves back one directory)

    Move to your home directory:

    cd
    

    Check the man pages for more info:

    man cd
    
    1 Reply Last reply
    1
    • rickR Offline
      rickR Offline
      rick
      wrote on last edited by rick
      #2

      Downloading a file using the terminal command wget

      First cd to the tmp directory

      cd /tmp

      Example: wget http://news.lime-it.us/uploads/system/site-logo.png


      Copy files

      cp - Used to copy files or directories from one location to another. We can use the above example for this.

      Example: cp /tmp/site-logo.png /var/www/httpdocs

      [as httpdocs is your root web directory]


      To move ALL files from one directory to another:

      Example: cp /tmp/files/* /var/www/httpdocs

      (the “*” tells the machine to copy everything in /tmp/files to /var/www/)


      Check your man pages for more information on the cp command**

      man cp

      1 Reply Last reply
      1
      • rickR Offline
        rickR Offline
        rick
        wrote on last edited by rick
        #3

        Renaming files
        mv - Command used to move or rename files
        Usage: mv file location
        Usage: mv filename::newfilename

        Example: mv tmp/site-logo.png /tmp/lime-it.png

        Read the manual: man mv


        Moving files
        mv - Used to move or rename files
        Usage: mv file location (to move)

        Example:mv index.html /var/www/index.html

        For more information, in a terminal and read the manual pages, type: man mv

        1 Reply Last reply
        1
        • rickR Offline
          rickR Offline
          rick
          wrote on last edited by rick
          #4

          Editing files
          The default editor installed with most all distros of linux is VIM , or

          vi filename

          Vim is an advanced command line editor, you should consider learning the commands.

          You can however also use nano To edit a file with nano, simply run:

          nano filename

          This will open up the file and allow to you edit the file. At the bottom of the screen you will notice the various commands that you have access to with nano. If you wish to save the file and exit, simply hold down the control key and hit the x key on your keyboard.

          You will be asked to confirm this edit, if you have permissions to do so, once you confirm by typeing y, the file will be edited and nano will exit.

          1 Reply Last reply
          1
          • rickR Offline
            rickR Offline
            rick
            wrote on last edited by rick
            #5

            Deleting files

            To delete a file you must first have write permission to it. Once you have write permission, in a terminal run:
            rm filename\

            There is no “Recycle Bin” in Linux so once you delete a file, it’s gone for good.

            Being safe, find the files first and actually look at what you will be deleting! find . -type f -name foo\*

            When removing files, you may use an astrix “*” as a wildcard flag to remove certain files, for example if I wanted to remove all files that began with “foo” , I would run:

            find . -type f -name foo\* -exec rm {} \;

            If anyone tells you to run rm -rf / as root, DO NOT LISTEN TO THEM. Running this command will delete all the files/directories on your Linux system. And render the machine completely useless with zero chance of recovery!


            You should not be running as root to begin with! Learn to use a secondary user, and as well the “su” command or “Super User” as general usage dictates.


            Deleting directories
            If you have ownership to the directory and the directory is empty, you can simply type

            rmdir directoryname to remove the directory.

            If the directory is not empty and you wish to simply delete it and all its contents, run:

            rm -rf directoryname\[/code\] Please be careful with the -rf flag, as it will remove everything in the specified directory including sub directories. With root access and the rm -rf command you can wipe out your entire system if you make an error.

            1 Reply Last reply
            1
            • rickR Offline
              rickR Offline
              rick
              wrote on last edited by
              #6
              This post is deleted!
              1 Reply Last reply
              1
              • rickR Offline
                rickR Offline
                rick
                wrote on last edited by rick
                #7

                Listing directory contents

                ls - To list the contents of a directory

                Usage: ls [flags]

                Example: ls (To list the current directory)

                Example: ls /tmp (To list the contents of /tmp)

                Example: ls -a (To list hidden files)

                Example: ls -l (To list file/directory permissions and file sizes)

                Example: ls -al /tmp(To list all files and permissions in /tmp)

                Example: ls -il (To get the inode number, permissions, owner, file sizes, UID and timestamps of all files in current directory)

                For more information, in a terminal, type man ls

                1 Reply Last reply
                1
                • rickR Offline
                  rickR Offline
                  rick
                  wrote on last edited by rick
                  #8

                  To list all files in current directory including dot files (hidden files or directories), as well as print permissions :

                  ls -la
                  
                  1 Reply Last reply
                  0
                  Reply
                  • Reply as topic
                  Log in to reply
                  • Oldest to Newest
                  • Newest to Oldest
                  • Most Votes


                  FreeBSD Notes
                  • rickR
                    rick

                    Create a shell script that will dump the Redis database

                    cd ~ mkdir redi-backups-script cd redis-backups-script nano redis_backups-script.sh

                    Paste the script below:

                    #!/bin/bash rdb_file="/Place-directory-of-rdb-here/redis/dump.rdb" redis_cli="/usr/bin/redis-cli" DIR=`date +%d-%m-%y` DEST=~/redis_backups/$DIR mkdir $DEST echo save| $redis_cli exit 1

                    Set script to executable:

                    chmod +x ~/scripts/redis_backups-script.sh

                    Create a cron to run daily:

                    Then create a cron job to run the script every day at midnight:

                    crontab -e 0 0 * * * ~/redis-backups-script/redis_backup.sh

                    Restore RDB backup

                    Disable Append Only in the config:

                    nano /etc/redis/redis.conf appendonly no

                    Stop redis:

                    sudo service redis-server stop

                    Restore the redis backup:

                    rename the rdb file you wish sudo cp /home/redis/dump.rdb /home/redis/dump.rdb.bak

                    You can then copy the backup rdb file as follows:

                    sudo cp /redis_backups/------/dump.rdb /home/redis/dump.rdb

                    Apply the proper permissions to the dump.rdb file:

                    sudo chmod 660 /home/redis/dump.rdb

                    Re-starting Redis server

                    sudo service redis-server start
                    read more

                  • rickR
                    rick

                    Install Zabbix 7.2 repo

                    wget https://repo.zabbix.com/zabbix/7.2/release/debian/pool/main/z/zabbix-release/zabbix-release_latest_7.2+debian12_all.deb

                    zab1.png

                    dpkg -i zabbix-release_latest_7.2+debian12_all.deb

                    zab2.png

                    Update repos

                    apt update

                    zab3.png

                    Install Zabbix server and frontend

                    apt install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-sql-scripts zabbix-agent2

                    zab4.png

                    Install plugins

                    apt install zabbix-agent2-plugin-mongodb zabbix-agent2-plugin-mssql zabbix-agent2-plugin-postgresql

                    zab5.png

                    Install mysql

                    wget https://dev.mysql.com/get/mysql-apt-config_0.8.30-1_all.deb

                    zab-6sql.png

                    sudo dpkg -i mysql-apt-config_0.8.30-1_all.deb

                    Error on this new install, where lsb-release is not installed

                    zab7sql-error.png

                    apt-get install lsb-release

                    zab7lsb.png

                    Try again…

                    dpkg -i mysql-apt-config_0.8.30-1_all.deb

                    Error, gnupg not installed

                    zab7gnupgerror.png

                    apt install gnupg2

                    zab7gnupg2.png

                    Give it another go…

                    dpkg -i mysql-apt-config_0.8.30-1_all.deb

                    zab7sqltui.png

                    zab7sql.png

                    I had to list upgradable packages :

                    apt-list --upgradable

                    Which spit out : mysql-common/unknown 8.4.4-1debian12 all [upgradable from: 5.8+1.1.0]

                    Then installed mysql-common

                    apt-get install mysql-common

                    zabbix-7-sqlgoofs.png

                    Had to uninstall Mariadb to resolve these conflicts

                    apt remove mariadb-client-core

                    Then install mysql-server:

                    apt install mysql-server

                    zab7-sql-common.png

                    zab7-sql-rootpass.png

                    Enter your password, twice

                    Now enter mysql by typing :

                    mysql -u root -p

                    zab7-mysql-enter.png

                    Enter the following command individually Where ‘password’ is where you type in your actual own password

                    mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin; mysql> create user zabbix@localhost identified by 'password'; mysql> grant all privileges on zabbix.* to zabbix@localhost; mysql> set global log_bin_trust_function_creators = 1; mysql> quit;

                    Populate the database with zabbix script

                    zcat /usr/share/zabbix/sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix mysql --u root -p set global log_bin_trust_function_creators = 0; quit;

                    Edit file /etc/zabbix/zabbix_server.conf You can use nano

                    nano /etc/zabbix/zabbix_server.conf

                    Uncomment the DBPassword section, and type your password

                    zabbix-dbpassword.png

                    Then hold ctrl and tap x, it will ask if you want to save changes.

                    Enable services:

                    systemctl enable zabbix-server zabbix-agent2 nginx php8.2-fpm systemctl restart zabbix-server zabbix-agent2 nginx php8.2-fpm

                    Check that zabbix service has started

                    journalctl -xeu zabbix-server.service

                    zabbix7startjob.png

                    Delete the 'default site in nginx

                    sudo rm -rf /etc/nginx/sites-enabled/default

                    Make sure the symbolic link to the zabbix nginx file is present

                    ln -s /etc/zabbix/nginx.conf /etc/nginx/sites-enabled/zabbix.conf

                    Check that the zabbix nginx file is in the includes in nginx config

                    nano /etc/nginx/nginx.conf

                    Look for :

                    include /etc/nginx/sites-enabled/*

                    Now restart nginx

                    systemctl restart nginx

                    Hit the browser and type in the IP (or URL that you may have put in the zabbix nginx config file)

                    zabbix.png

                    Make sure to configure locales

                    zabbix-locales.png

                    sudo dpkg-reconfigure locales

                    zabbixlocalestui.png

                    zabbix-locales-2.png

                    zabbix-locales-command.png

                    Reboot the system

                    sudo shutdown -r now

                    zabbix-utf.png

                    Add your database password

                    zabbix-db.png

                    Add a server name

                    zabbix-servername.png

                    zabbix-summary.png

                    zabbix-config.png

                    The default username is Admin, and the password is zabbix

                    zabbix-home.png

                    read more

                  • rickR
                    rick
                    Unable to negotiate with 10.10.1.35 port 22: no matching host key type found. Their offer: ssh-rsa,ssh-dss

                    While attempting ssh this error is generally due to mismatched versions of ssh, where an up to date version is attempting to access an older version

                    Add the following to your command :

                    The proper way:

                    ssh -o KexAlgorithms=diffie-hellman-group14-sha1 -oHostKeyAlgorithms=+ssh-dss 10.10.1.35

                    The cheap way:

                    Example :

                    ssh -oHostKeyAlgorithms=+ssh-dss 10.10.1.35

                    or ssh -oHostKeyAlgorithms=+ssh-dss user@10.10.1.35

                    This can be added to the ~/.ssh/config file

                    Host my-server HostName 10.10.1.35 HostKeyAlgorithms=+ssh-dss
                    read more

                  • rickR
                    rick

                    Locate hard drive and get information

                    ls -l /sys/block | grep sd.

                    Output:

                    lrwxrwxrwx 1 root root 0 Jun 22 06:28 sda -> ../devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0/block/sda lrwxrwxrwx 1 root root 0 Jun 22 06:28 sdb -> ../devices/pci0000:00/0000:00:1f.2/ata2/host1/target1:0:0/1:0:0:0/block/sdb lrwxrwxrwx 1 root root 0 Jun 22 06:28 sdc -> ../devices/pci0000:00/0000:00:1f.2/ata3/host2/target2:0:0/2:0:0:0/block/sdc lrwxrwxrwx 1 root root 0 Jun 22 06:28 sdd -> ../devices/pci0000:00/0000:00:1f.2/ata4/host3/target3:0:0/3:0:0:0/block/sdd

                    Or for a more detailed view

                    strace -e trace=open lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS sda 8:0 0 3.6T 0 disk ├─data--2-data--2_tmeta 252:3 0 15.9G 0 lvm │ └─data--2-data--2-tpool 252:9 0 3.6T 0 lvm │ ├─data--2-data--2 252:10 0 3.6T 1 lvm │ ├─data--2-vm--101--disk--0 252:11 0 8G 0 lvm │ ├─data--2-vm--103--disk--0 252:12 0 32G 0 lvm │ ├─data--2-vm--107--disk--0 252:13 0 500G 0 lvm │ └─data--2-vm--108--disk--0 252:20 0 100G 0 lvm └─data--2-data--2_tdata 252:6 0 3.6T 0 lvm └─data--2-data--2-tpool 252:9 0 3.6T 0 lvm ├─data--2-data--2 252:10 0 3.6T 1 lvm ├─data--2-vm--101--disk--0 252:11 0 8G 0 lvm ├─data--2-vm--103--disk--0 252:12 0 32G 0 lvm ├─data--2-vm--107--disk--0 252:13 0 500G 0 lvm └─data--2-vm--108--disk--0 252:20 0 100G 0 lvm sdb 8:16 0 698.6G 0 disk └─sdb1 8:17 0 698.6G 0 part /mnt/pve/backups sdc 8:32 0 3.6T 0 disk ├─vm--data-vm--data_tmeta 252:4 0 15.9G 0 lvm │ └─vm--data-vm--data-tpool 252:14 0 3.6T 0 lvm │ ├─vm--data-vm--data 252:15 0 3.6T 1 lvm │ ├─vm--data-vm--100--disk--0 252:16 0 270G 0 lvm │ ├─vm--data-vm--102--disk--0 252:17 0 100G 0 lvm │ ├─vm--data-vm--104--disk--0 252:18 0 25G 0 lvm │ └─vm--data-vm--106--disk--0 252:19 0 32G 0 lvm └─vm--data-vm--data_tdata 252:7 0 3.6T 0 lvm └─vm--data-vm--data-tpool 252:14 0 3.6T 0 lvm ├─vm--data-vm--data 252:15 0 3.6T 1 lvm ├─vm--data-vm--100--disk--0 252:16 0 270G 0 lvm ├─vm--data-vm--102--disk--0 252:17 0 100G 0 lvm ├─vm--data-vm--104--disk--0 252:18 0 25G 0 lvm └─vm--data-vm--106--disk--0 252:19 0 32G 0 lvm sdd 8:48 0 931.5G 0 disk ├─sdd1 8:49 0 1007K 0 part ├─sdd2 8:50 0 1G 0 part └─sdd3 8:51 0 930.5G 0 part ├─pve-swap 252:0 0 8G 0 lvm [SWAP] ├─pve-root 252:1 0 96G 0 lvm / ├─pve-data_tmeta 252:2 0 8.1G 0 lvm │ └─pve-data 252:8 0 794.3G 0 lvm └─pve-data_tdata 252:5 0 794.3G 0 lvm └─pve-data 252:8 0 794.3G 0 lvm +++ exited with 0 +++ cat /proc/partitions major minor #blocks name 8 0 3907018584 sda 8 16 732574584 sdb 8 17 732572672 sdb1 8 32 3907018584 sdc 8 48 976762584 sdd 8 49 1007 sdd1 8 50 1048576 sdd2 8 51 975712967 sdd3 252 0 8388608 dm-0 252 1 100663296 dm-1 252 2 8495104 dm-2 252 3 16650240 dm-3 252 4 16650240 dm-4 252 6 3873329152 dm-6 252 5 832888832 dm-5 252 7 3873329152 dm-7 252 8 832888832 dm-8 252 9 3873329152 dm-9 252 10 3873329152 dm-10 252 11 8388608 dm-11 252 12 33554432 dm-12 252 13 524288000 dm-13 252 14 3873329152 dm-14 252 15 3873329152 dm-15 252 16 283115520 dm-16 252 17 104857600 dm-17 252 18 26214400 dm-18 252 19 33554432 dm-19 252 20 104857600 dm-20

                    Locate drive by serial and model information

                    hdparm -i /dev/sda /dev/sda: Model=WDC WD4000FYYZ-05UL1B0, FwRev=00.0NS05, SerialNo=WD-WCC132262513 Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq } RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=0 BuffType=unknown, BuffSize=unknown, MaxMultSect=16, MultSect=off CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=7814037168 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120} PIO modes: pio0 pio3 pio4 DMA modes: mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 udma2 udma3 udma4 udma5 *udma6 AdvancedPM=yes: unknown setting WriteCache=disabled Drive conforms to: Unspecified: ATA/ATAPI-1,2,3,4,5,6,7 * signifies the current active mode
                    read more

                  • rickR
                    rick

                    Screen recording can use webm as their format, it can be more simple to use a gif to embed into a website or forum, than adding scripts to host different video format.

                    In this case I grabbed a screen record of the progress for writing zeros to a hard drive with dd

                    Use ffmpeg to convert webm to gif:

                    First create a pallet:

                    Move into the directory which the webm is located, or type in the path

                    Where ‘dd.webm’ is the screen recording

                    ffmpeg -y -i dd.webm -vf palettegen palette.png

                    Output:

                    dd-ffmpeg.png

                    Then convert the webm to gif:

                    ffmpeg -y -i dd.webm -i palette.png -filter_complex paletteuse -r 10 dd.gif

                    dd-webm-2.png

                    This is what I ended up with, looks like any image of any alien on the interwebz, as if shot through a potato, some tweaking of the command is in my future. None the less.

                    dd.gif

                    read more
                  • Login

                  • Don't have an account? Register

                  • Login or register to search.
                  • First post
                    Last post