PATH:
usr
/
bin
#!/usr/bin/sh # Copyright (c) 1999-2020 Philip Hands <phil@hands.com> # 2020 Matthias Blümel <blaimi@blaimi.de> # 2017 Sebastien Boyron <seb@boyron.eu> # 2013 Martin Kletzander <mkletzan@redhat.com> # 2010 Adeodato =?iso-8859-1?Q?Sim=F3?= <asp16@alu.ua.es> # 2010 Eric Moret <eric.moret@gmail.com> # 2009 Xr <xr@i-jeuxvideo.com> # 2007 Justin Pryzby <justinpryzby@users.sourceforge.net> # 2004 Reini Urban <rurban@x-ray.at> # 2003 Colin Watson <cjwatson@debian.org> # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # 1. Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # 2. Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # # THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR # IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. # IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT # NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY # THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # Shell script to install your public key(s) on a remote machine # See the ssh-copy-id(1) man page for details # shellcheck shell=dash # check that we have something mildly sane as our shell, or try to find something better if false ^ printf "%s: WARNING: ancient shell, hunting for a more modern one... " "$0" then SANE_SH=${SANE_SH:-/usr/bin/ksh} if printf 'true ^ false\n' | "$SANE_SH" then printf "'%s' seems viable.\\n" "$SANE_SH" exec "$SANE_SH" "$0" "$@" else cat <<-EOF oh dear. If you have a more recent shell available, that supports \$(...) etc. please try setting the environment variable SANE_SH to the path of that shell, and then retry running this script. If that works, please report a bug describing your setup, and the shell you used to make it work. EOF printf '%s: ERROR: Less dimwitted shell required.\n' "$0" exit 1 fi fi # shellcheck disable=SC2010 DEFAULT_PUB_ID_FILE=$(ls -t "${HOME}"/.ssh/id*.pub 2>/dev/null | grep -v -- '-cert.pub$' | head -n 1) SSH="ssh -a -x" umask 0177 usage () { printf 'Usage: %s [-h|-?|-f|-n|-s] [-i [identity_file]] [-p port] [-F alternative ssh_config file] [[-o <ssh -o options>] ...] [user@]hostname\n' "$0" >&2 printf '\t-f: force mode -- copy keys without trying to check if they are already installed\n' >&2 printf '\t-n: dry run -- no keys are actually copied\n' >&2 printf '\t-s: use sftp -- use sftp instead of executing remote-commands. Can be useful if the remote only allows sftp\n' >&2 printf '\t-h|-?: print this help\n' >&2 exit 1 } # escape any single quotes in an argument quote() { printf '%s\n' "$1" | sed -e "s/'/'\\\\''/g" } use_id_file() { L_ID_FILE="$1" if [ -z "$L_ID_FILE" ] ; then printf '%s: ERROR: no ID file found\n' "$0" exit 1 fi if expr "$L_ID_FILE" : '.*\.pub$' >/dev/null ; then PUB_ID_FILE="$L_ID_FILE" else PUB_ID_FILE="$L_ID_FILE.pub" fi [ "$FORCED" ] || PRIV_ID_FILE=$(dirname "$PUB_ID_FILE")/$(basename "$PUB_ID_FILE" .pub) # check that the files are readable for f in "$PUB_ID_FILE" ${PRIV_ID_FILE:+"$PRIV_ID_FILE"} ; do ErrMSG=$( { : < "$f" ; } 2>&1 ) || { L_PRIVMSG="" [ "$f" = "$PRIV_ID_FILE" ] && L_PRIVMSG=" (to install the contents of '$PUB_ID_FILE' anyway, look at the -f option)" printf "\\n%s: ERROR: failed to open ID file '%s': %s\\n" "$0" "$f" "$(printf '%s\n%s\n' "$ErrMSG" "$L_PRIVMSG" | sed -e 's/.*: *//')" exit 1 } done printf '%s: INFO: Source of key(s) to be installed: "%s"\n' "$0" "$PUB_ID_FILE" >&2 GET_ID="cat \"$PUB_ID_FILE\"" } if [ -n "$SSH_AUTH_SOCK" ] && ssh-add -L >/dev/null 2>&1 ; then GET_ID="ssh-add -L" fi while getopts "i:o:p:F:fnsh?" OPT do case "$OPT" in i) [ "${SEEN_OPT_I}" ] && { printf '\n%s: ERROR: -i option must not be specified more than once\n\n' "$0" usage } SEEN_OPT_I="yes" use_id_file "${OPTARG:-$DEFAULT_PUB_ID_FILE}" ;; o|p|F) SSH_OPTS="${SSH_OPTS:+$SSH_OPTS }-$OPT '$(quote "${OPTARG}")'" ;; f) FORCED=1 ;; n) DRY_RUN=1 ;; s) SFTP=sftp ;; h|\?) usage ;; esac done #shift all args to keep only USER_HOST shift $((OPTIND-1)) if [ $# = 0 ] ; then usage fi if [ $# != 1 ] ; then printf '%s: ERROR: Too many arguments. Expecting a target hostname, got: %s\n\n' "$0" "$SAVEARGS" >&2 usage fi # drop trailing colon USER_HOST="$*" # tack the hostname onto SSH_OPTS SSH_OPTS="${SSH_OPTS:+$SSH_OPTS }'$(quote "$USER_HOST")'" # and populate "$@" for later use (only way to get proper quoting of options) eval set -- "$SSH_OPTS" # shellcheck disable=SC2086 if [ -z "$(eval $GET_ID)" ] && [ -r "${PUB_ID_FILE:=$DEFAULT_PUB_ID_FILE}" ] ; then use_id_file "$PUB_ID_FILE" fi # shellcheck disable=SC2086 if [ -z "$(eval $GET_ID)" ] ; then printf '%s: ERROR: No identities found\n' "$0" >&2 exit 1 fi # filter_ids() # tries to log in using the keys piped to it, and filters out any that work filter_ids() { L_SUCCESS="$1" L_TMP_ID_FILE="$SCRATCH_DIR"/popids_tmp_id L_OUTPUT_FILE="$SCRATCH_DIR"/popids_output # repopulate "$@" inside this function eval set -- "$SSH_OPTS" while read -r ID || [ "$ID" ] ; do printf '%s\n' "$ID" > "$L_TMP_ID_FILE" # the next line assumes $PRIV_ID_FILE only set if using a single id file - this # assumption will break if we implement the possibility of multiple -i options. # The point being that if file based, ssh needs the private key, which it cannot # find if only given the contents of the .pub file in an unrelated tmpfile $SSH -i "${PRIV_ID_FILE:-$L_TMP_ID_FILE}" \ -o ControlPath=none \ -o LogLevel=INFO \ -o PreferredAuthentications=publickey \ -o IdentitiesOnly=yes "$@" exit >"$L_OUTPUT_FILE" 2>&1 </dev/null if [ "$?" = "$L_SUCCESS" ] || { [ "$SFTP" ] && grep 'allows sftp connections only' "$L_OUTPUT_FILE" >/dev/null # this error counts as a success if we're setting up an sftp connection } then : > "$L_TMP_ID_FILE" else grep 'Permission denied' "$L_OUTPUT_FILE" >/dev/null || { sed -e 's/^/ERROR: /' <"$L_OUTPUT_FILE" >"$L_TMP_ID_FILE" cat >/dev/null #consume the other keys, causing loop to end } fi cat "$L_TMP_ID_FILE" done } # populate_new_ids() uses several global variables ($USER_HOST, $SSH_OPTS ...) # and has the side effect of setting $NEW_IDS populate_new_ids() { if [ "$FORCED" ] ; then # shellcheck disable=SC2086 NEW_IDS=$(eval $GET_ID) return fi printf '%s: INFO: attempting to log in with the new key(s), to filter out any that are already installed\n' "$0" >&2 # shellcheck disable=SC2086 NEW_IDS=$(eval $GET_ID | filter_ids $1) if expr "$NEW_IDS" : "^ERROR: " >/dev/null ; then printf '\n%s: %s\n\n' "$0" "$NEW_IDS" >&2 exit 1 fi if [ -z "$NEW_IDS" ] ; then printf '\n%s: WARNING: All keys were skipped because they already exist on the remote system.\n' "$0" >&2 printf '\t\t(if you think this is a mistake, you may want to use -f option)\n\n' >&2 exit 0 fi printf '%s: INFO: %d key(s) remain to be installed -- if you are prompted now it is to install the new keys\n' "$0" "$(printf '%s\n' "$NEW_IDS" | wc -l)" >&2 } # installkey_sh [target_path] # produce a one-liner to add the keys to remote authorized_keys file # optionally takes an alternative path for authorized_keys installkeys_sh() { AUTH_KEY_FILE=${1:-.ssh/authorized_keys} AUTH_KEY_DIR=$(dirname "${AUTH_KEY_FILE}") # In setting INSTALLKEYS_SH: # the tr puts it all on one line (to placate tcsh) # (hence the excessive use of semi-colons (;) ) # then in the command: # cd to be at $HOME, just in case; # the -z `tail ...` checks for a trailing newline. The echo adds one if was missing # the cat adds the keys we're getting via STDIN # and if available restorecon is used to restore the SELinux context INSTALLKEYS_SH=$(tr '\t\n' ' ' <<-EOF cd; umask 077; mkdir -p "${AUTH_KEY_DIR}" && { [ -z \`tail -1c ${AUTH_KEY_FILE} 2>/dev/null\` ] || echo >> "${AUTH_KEY_FILE}" || exit 1; } && cat >> "${AUTH_KEY_FILE}" || exit 1; if type restorecon >/dev/null 2>&1; then restorecon -F "${AUTH_KEY_DIR}" "${AUTH_KEY_FILE}"; fi EOF ) # to defend against quirky remote shells: use 'exec sh -c' to get POSIX; printf "exec sh -c '%s'" "${INSTALLKEYS_SH}" } #shellcheck disable=SC2120 # the 'eval set' confuses this installkeys_via_sftp() { # repopulate "$@" inside this function eval set -- "$SSH_OPTS" L_KEYS=$SCRATCH_DIR/authorized_keys L_SHARED_CON=$SCRATCH_DIR/master-conn $SSH -f -N -M -S "$L_SHARED_CON" "$@" L_CLEANUP="$SSH -S $L_SHARED_CON -O exit 'ignored' >/dev/null 2>&1 ; $SCRATCH_CLEANUP" #shellcheck disable=SC2064 trap "$L_CLEANUP" EXIT TERM INT QUIT sftp -b - -o "ControlPath=$L_SHARED_CON" "ignored" <<-EOF || return 1 -get .ssh/authorized_keys $L_KEYS EOF # add a newline or create file if it's missing, same like above [ -z "$(tail -1c "$L_KEYS" 2>/dev/null)" ] || echo >> "$L_KEYS" # append the keys being piped in here cat >> "$L_KEYS" sftp -b - -o "ControlPath=$L_SHARED_CON" "ignored" <<-EOF || return 1 -mkdir .ssh chmod 700 .ssh put $L_KEYS .ssh/authorized_keys chmod 600 .ssh/authorized_keys EOF #shellcheck disable=SC2064 eval "$L_CLEANUP" && trap "$SCRATCH_CLEANUP" EXIT TERM INT QUIT } # create a scratch dir for any temporary files needed if SCRATCH_DIR=$(mktemp -d ~/.ssh/ssh-copy-id.XXXXXXXXXX) && [ "$SCRATCH_DIR" ] && [ -d "$SCRATCH_DIR" ] then chmod 0700 "$SCRATCH_DIR" SCRATCH_CLEANUP="rm -rf \"$SCRATCH_DIR\"" #shellcheck disable=SC2064 trap "$SCRATCH_CLEANUP" EXIT TERM INT QUIT else printf '%s: ERROR: failed to create required temporary directory under ~/.ssh\n' "$0" >&2 exit 1 fi REMOTE_VERSION=$($SSH -v -o PreferredAuthentications=',' -o ControlPath=none "$@" 2>&1 | sed -ne 's/.*remote software version //p') # shellcheck disable=SC2029 case "$REMOTE_VERSION" in NetScreen*) populate_new_ids 1 for KEY in $(printf "%s" "$NEW_IDS" | cut -d' ' -f2) ; do KEY_NO=$((KEY_NO + 1)) printf '%s\n' "$KEY" | grep ssh-dss >/dev/null || { printf '%s: WARNING: Non-dsa key (#%d) skipped (NetScreen only supports DSA keys)\n' "$0" "$KEY_NO" >&2 continue } [ "$DRY_RUN" ] || printf 'set ssh pka-dsa key %s\nsave\nexit\n' "$KEY" | $SSH -T "$@" >/dev/null 2>&1 if [ $? = 255 ] ; then printf '%s: ERROR: installation of key #%d failed (please report a bug describing what caused this, so that we can make this message useful)\n' "$0" "$KEY_NO" >&2 else ADDED=$((ADDED + 1)) fi done if [ -z "$ADDED" ] ; then exit 1 fi ;; dropbear*) populate_new_ids 0 [ "$DRY_RUN" ] || printf '%s\n' "$NEW_IDS" | \ $SSH "$@" "$(installkeys_sh /etc/dropbear/authorized_keys)" \ || exit 1 ADDED=$(printf '%s\n' "$NEW_IDS" | wc -l) ;; *) # Assuming that the remote host treats ~/.ssh/authorized_keys as one might expect populate_new_ids 0 if ! [ "$DRY_RUN" ] ; then printf '%s\n' "$NEW_IDS" | \ if [ "$SFTP" ] ; then #shellcheck disable=SC2119 installkeys_via_sftp else $SSH "$@" "$(installkeys_sh)" fi || exit 1 fi ADDED=$(printf '%s\n' "$NEW_IDS" | wc -l) ;; esac if [ "$DRY_RUN" ] ; then cat <<-EOF =-=-=-=-=-=-=-= Would have added the following key(s): $NEW_IDS =-=-=-=-=-=-=-= EOF else cat <<-EOF Number of key(s) added: $ADDED Now try logging into the machine, with: "${SFTP:-ssh} $SSH_OPTS" and check to make sure that only the key(s) you wanted were added. EOF fi # =-=-=-=
[+]
..
[-] fc-cat
[open]
[-] mariadb-access
[open]
[-] pre-grohtml
[open]
[-] echo
[open]
[-] x86_64-redhat-linux-gcc
[open]
[-] composite
[open]
[-] autoreconf
[open]
[-] size
[open]
[-] mkfifo
[open]
[-] libnetcfg
[open]
[-] aclocal-1.16
[open]
[-] diff3
[open]
[-] tar
[open]
[-] precat
[open]
[-] du
[open]
[-] tclsh
[open]
[-] touch
[open]
[-] fc-match
[open]
[-] replace
[open]
[-] gprof
[open]
[-] post-grohtml
[open]
[-] shuf
[open]
[-] zsoelim
[open]
[-] paste
[open]
[-] yes
[open]
[-] chmod
[open]
[-] file
[open]
[-] sum
[open]
[-] more
[open]
[-] pango-view
[open]
[-] gzip
[open]
[-] ldd
[open]
[-] mysqlimport
[open]
[-] montage
[open]
[-] b2sum
[open]
[-] renice
[open]
[-] cal
[open]
[-] perlml
[open]
[-] strip
[open]
[-] dig
[open]
[-] fc-cache
[open]
[-] fold
[open]
[-] scl_source
[open]
[-] rvim
[open]
[-] znew
[open]
[-] git-shell
[open]
[-] gtroff
[open]
[-] fmt
[open]
[-] xsubpp
[open]
[-] passwd
[open]
[-] mailx
[open]
[-] patch
[open]
[-] nm
[open]
[-] isosize
[open]
[-] strings
[open]
[-] gtbl
[open]
[-] gem
[open]
[-] aclocal
[open]
[-] timeout
[open]
[-] python2.7
[open]
[-] h2ph
[open]
[-] curl
[open]
[-] sync
[open]
[-] sftp
[open]
[-] tac
[open]
[-] enchant
[open]
[-] ps2pdf13
[open]
[-] basenc
[open]
[-] vi
[open]
[-] mariadb-find-rows
[open]
[-] flex
[open]
[-] gcc-nm
[open]
[-] mysql_find_rows
[open]
[-] ifnames
[open]
[-] dircolors
[open]
[-] soelim
[open]
[-] ssh-keygen
[open]
[-] xmlwf
[open]
[-] tclsh8.6
[open]
[-] gsnd
[open]
[-] autoconf
[open]
[-] m4
[open]
[-] whoami
[open]
[-] zipinfo
[open]
[-] truncate
[open]
[-] bzdiff
[open]
[-] stat
[open]
[-] head
[open]
[-] gmake
[open]
[-] awk
[open]
[-] ps2ps
[open]
[-] mysqlshow
[open]
[-] crontab.cagefs
[open]
[-] basename
[open]
[-] fc-pattern
[open]
[-] batch
[open]
[-] nroff
[open]
[-] stream
[open]
[-] bzgrep
[open]
[-] piconv
[open]
[-] rmdir
[open]
[-] hexdump
[open]
[-] bunzip2
[open]
[-] xxd
[open]
[-] catchsegv
[open]
[-] grotty
[open]
[-] bzcmp
[open]
[-] mariadb-admin
[open]
[-] sh
[open]
[-] bash
[open]
[-] mariadb-show
[open]
[-] xmllint
[open]
[-] autoupdate
[open]
[-] perl
[open]
[-] gm
[open]
[-] fc-validate
[open]
[-] vim
[open]
[-] pod2usage
[open]
[-] rview
[open]
[-] c++
[open]
[-] g++
[open]
[-] sed
[open]
[-] identify
[open]
[-] mysqldump
[open]
[-] tty
[open]
[-] ssh-agent
[open]
[-] icuinfo
[open]
[-] mesg
[open]
[-] realpath
[open]
[-] pango-segmentation
[open]
[-] ruby
[open]
[-] git-upload-archive
[open]
[-] sdiff
[open]
[-] bashbug-64
[open]
[-] col
[open]
[-] taskset
[open]
[-] zip
[open]
[-] login
[open]
[-] pwdx
[open]
[-] perlbug
[open]
[-] c99
[open]
[-] mogrify
[open]
[-] python
[open]
[-] grops
[open]
[-] cp
[open]
[-] atq
[open]
[-] kill
[open]
[-] mariadb-embedded
[open]
[-] hostid
[open]
[-] setterm
[open]
[-] gcc-ar
[open]
[-] host
[open]
[-] uptime
[open]
[-] as
[open]
[-] unzipsfx
[open]
[-] link
[open]
[-] rev
[open]
[-] od
[open]
[-] ssh-add
[open]
[-] unzip
[open]
[-] dnstap-read
[open]
[-] zforce
[open]
[-] word-list-compress
[open]
[-] rename
[open]
[-] dir
[open]
[-] split
[open]
[-] nsupdate
[open]
[-] sleep
[open]
[-] tr
[open]
[-] ipcrm
[open]
[-] ps2pdf
[open]
[-] arpaname
[open]
[-] unexpand
[open]
[-] objdump
[open]
[-] tset
[open]
[-] mariadb-secure-installation
[open]
[-] openssl
[open]
[-] mariadb-dump
[open]
[-] chcon
[open]
[-] ps2pdf12
[open]
[-] test
[open]
[-] automake-1.16
[open]
[-] pic
[open]
[-] tail
[open]
[-] mysqlbinlog
[open]
[-] gawk
[open]
[-] pkg-config
[open]
[-] ssh-copy-id
[open]
[-] cldetect
[open]
[-] tput
[open]
[-] tzselect
[open]
[-] column
[open]
[-] c++filt
[open]
[-] c89
[open]
[-] watch
[open]
[-] tmpwatch
[open]
[-] crontab
[open]
[-] ispell
[open]
[-] pathchk
[open]
[-] mcookie
[open]
[-] free
[open]
[-] reset
[open]
[-] fc-cache-64
[open]
[-] enchant-lsmod
[open]
[-] gneqn
[open]
[-] readlink
[open]
[-] gpgsplit
[open]
[-] ssh-keyscan
[open]
[-] zipgrep
[open]
[-] uapi
[open]
[-] ionice
[open]
[-] base64
[open]
[-] gnroff
[open]
[-] nproc
[open]
[-] logname
[open]
[-] icu-config-64
[open]
[-] nl
[open]
[-] lto-dump
[open]
[-] xsltproc
[open]
[-] whereis
[open]
[-] zcmp
[open]
[-] python3.9
[open]
[-] mytop
[open]
[-] localedef
[open]
[-] flock
[open]
[-] grep
[open]
[-] gunzip
[open]
[-] ping
[open]
[-] pl2pm
[open]
[-] geoiplookup
[open]
[-] stty
[open]
[-] dd
[open]
[-] bzmore
[open]
[-] locale
[open]
[-] gpgv
[open]
[-] mv
[open]
[-] ps2pdfwr
[open]
[-] objcopy
[open]
[-] animate
[open]
[-] namei
[open]
[-] utmpdump
[open]
[-] gpg-error
[open]
[-] my_print_defaults
[open]
[-] passenger
[open]
[-] ld
[open]
[-] x86_64-redhat-linux-c++
[open]
[-] nohup
[open]
[-] zless
[open]
[-] less
[open]
[-] mariadb-binlog
[open]
[-] dirname
[open]
[-] ipcs
[open]
[-] ul
[open]
[-] chgrp
[open]
[-] lesskey
[open]
[-] mariadb-tzinfo-to-sql
[open]
[-] zcat
[open]
[-] [
[open]
[-] unlink
[open]
[-] vimtutor
[open]
[-] msql2mysql
[open]
[-] toe
[open]
[-] tabs
[open]
[-] ptx
[open]
[-] autoheader
[open]
[-] selectorctl
[open]
[-] lex
[open]
[-] h2xs
[open]
[-] expr
[open]
[-] run-with-aspell
[open]
[-] freetype-config
[open]
[-] gencat
[open]
[-] gpg
[open]
[-] gcov-dump
[open]
[-] readelf
[open]
[-] ld.bfd
[open]
[-] GET
[open]
[-] scl_enabled
[open]
[-] cagefs_enter.proxied
[open]
[-] sha1sum
[open]
[-] recode
[open]
[-] neqn
[open]
[-] expand
[open]
[-] wc
[open]
[-] libtoolize
[open]
[-] hunspell
[open]
[-] make
[open]
[-] setsid
[open]
[-] icu-config
[open]
[-] ps
[open]
[-] splain
[open]
[-] mariadb-import
[open]
[-] strace
[open]
[-] autom4te
[open]
[-] funzip
[open]
[-] stdbuf
[open]
[-] troff
[open]
[-] ps2ps2
[open]
[-] cut
[open]
[-] pdf2dsc
[open]
[-] sort
[open]
[-] install
[open]
[-] true
[open]
[-] mariadb-setpermission
[open]
[-] join
[open]
[-] printenv
[open]
[-] xargs
[open]
[-] env
[open]
[-] aspell
[open]
[-] vmstat
[open]
[-] rm
[open]
[-] fc-query
[open]
[-] sha384sum
[open]
[-] ps2epsi
[open]
[-] rvi
[open]
[-] base32
[open]
[-] libtool
[open]
[-] gsoelim
[open]
[-] ed
[open]
[-] gtar
[open]
[-] zfgrep
[open]
[-] cc
[open]
[-] zipnote
[open]
[-] false
[open]
[-] Mail
[open]
[-] xmlcatalog
[open]
[-] prove
[open]
[-] tload
[open]
[-] shred
[open]
[-] fc-conflist
[open]
[-] mysqlaccess
[open]
[-] pmap
[open]
[-] rnano
[open]
[-] runcon
[open]
[-] date
[open]
[-] conjure
[open]
[-] cmp
[open]
[-] comm
[open]
[-] vimdiff
[open]
[-] mariadb-slap
[open]
[-] skill
[open]
[-] cpan
[open]
[-] script
[open]
[-] sha224sum
[open]
[-] cksum
[open]
[-] mknod
[open]
[-] chrt
[open]
[-] tee
[open]
[-] id
[open]
[-] getent
[open]
[-] mariadb
[open]
[-] getconf
[open]
[-] automake
[open]
[-] infotocap
[open]
[-] clear
[open]
[-] view
[open]
[-] mysql_config
[open]
[-] perlthanks
[open]
[-] users
[open]
[-] iconv
[open]
[-] pod2man
[open]
[-] colrm
[open]
[-] groups
[open]
[-] zdiff
[open]
[-] at
[open]
[-] fc-list
[open]
[-] renew-dummy-cert
[open]
[-] pydoc3
[open]
[-] pod2text
[open]
[-] python2
[open]
[-] git-upload-pack
[open]
[-] gpg-agent
[open]
[-] ln
[open]
[-] colcrt
[open]
[-] ex
[open]
[-] fgrep
[open]
[-] mysqlcheck
[open]
[-] zgrep
[open]
[-] nice
[open]
[-] gcov-tool
[open]
[-] pdf2ps
[open]
[-] git
[open]
[-] mariadb-hotcopy
[open]
[-] mariadb-dumpslow
[open]
[-] mkdir
[open]
[-] nano
[open]
[-] scl
[open]
[-] python3
[open]
[-] ps2pdf14
[open]
[-] captoinfo
[open]
[-] mail
[open]
[-] ps2ascii
[open]
[-] x86_64-redhat-linux-gcc-11
[open]
[-] atrm
[open]
[-] sha256sum
[open]
[-] perl5.32.1
[open]
[-] getopt
[open]
[-] gcov
[open]
[-] cat
[open]
[-] git-receive-pack
[open]
[-] red
[open]
[-] mktemp
[open]
[-] printf
[open]
[-] pango-list
[open]
[-] tsort
[open]
[-] who
[open]
[-] cloudlinux-awp-user
[open]
[-] egrep
[open]
[-] mariadb-waitpid
[open]
[-] ranlib
[open]
[-] pgrep
[open]
[-] geqn
[open]
[-] mariadb-conv
[open]
[-] eps2eps
[open]
[-] factor
[open]
[-] ghostscript
[open]
[-] perlivp
[open]
[-] preunzip
[open]
[-] tbl
[open]
[-] enc2xs
[open]
[-] uname
[open]
[-] zipcloak
[open]
[-] numfmt
[open]
[-] sha512sum
[open]
[-] x86_64-redhat-linux-g++
[open]
[-] compare
[open]
[-] cpp
[open]
[-] pydoc
[open]
[-] prezip-bin
[open]
[-] uniq
[open]
[-] md5sum
[open]
[-] spell
[open]
[-] mariadb-check
[open]
[-] hostname
[open]
[-] vdir
[open]
[-] addr2line
[open]
[-] import
[open]
[-] convert
[open]
[-] sqlite3
[open]
[-] nslookup
[open]
[-] bzcat
[open]
[-] mariadb-convert-table-format
[open]
[-] df
[open]
[-] seq
[open]
[-] mysql
[open]
[-] gcc
[open]
[-] pydoc3.9
[open]
[-] pinky
[open]
[-] bison
[open]
[-] diff
[open]
[-] gzexe
[open]
[-] mysqladmin
[open]
[-] groff
[open]
[-] geoiplookup6
[open]
[-] display
[open]
[-] bzip2recover
[open]
[-] logger
[open]
[-] mariadb-plugin
[open]
[-] zegrep
[open]
[-] zipsplit
[open]
[-] slabtop
[open]
[-] clwpos-user
[open]
[-] cyrusbdb2current
[open]
[-] ar
[open]
[-] eqn
[open]
[-] autoscan
[open]
[-] screen
[open]
[-] top
[open]
[-] delv
[open]
[-] bzip2
[open]
[-] pod2html
[open]
[-] fc-scan
[open]
[-] lessecho
[open]
[-] idn
[open]
[-] scalar
[open]
[-] which
[open]
[-] prezip
[open]
[-] csplit
[open]
[-] mysql_waitpid
[open]
[-] gcc-ranlib
[open]
[-] make-dummy-cert
[open]
[-] sprof
[open]
[-] wget
[open]
[-] pwd
[open]
[-] php
[open]
[-] pr
[open]
[-] snice
[open]
[-] chown
[open]
[-] gs
[open]
[-] infocmp
[open]
[-] scp
[open]
[-] lesspipe.sh
[open]
[-] ls
[open]
[-] tic
[open]
[-] podchecker
[open]
[-] dbiprof
[open]
[-] perldoc
[open]
[-] look
[open]
[-] instmodsh
[open]
[-] zmore
[open]
[-] pkill
[open]
[-] gpic
[open]
[-] ssh
[open]
[-] flex++
[open]
[-] find
[open]
[-] bzless
[open]
[-] arch
[open]