Show Table of Contents
Appendice G. Alternative ai comandi busybox
Diversamente dalle precedenti release di Red Hat Enterprise Linux, Red Hat Enterprise Linux 6 non include alcuna versione di busybox per i comandi della shell negli ambienti pre e post installazione. Tabella G.1, «Alternative ai comandi busybox» contiene un elenco di comandi busybox, i metodi equivalenti per l'implementazione delle stesse funzionalità in bash, e la disponibilità di queste alternative in ambienti %pre e %post. La tabella indica altresì il percorso esatto per il comando anche se generalmente non sarà necessario specificarlo poichè la variabile dell'ambiente
PATH
è impostata nell'ambiente di installazione.
Se un comando è solo disponibile in %post, il comando è in esecuzione sul sistema target e la sua disponibilità dipende quindi dalla presenza del pacchetto che lo fornisce. Ogni comando che appare nella colonna "Nuovo comando o alternativo" della Tabella G.1, «Alternative ai comandi busybox», è disponibile per Red Hat Enterprise Linux 6, anche se non tutti i comandi sono disponibili su ogni sistema installato.
Se un comando è stato elencato come non disponibile l'utente sarà in grado di creare una funzionalità equivalente con uno script Python. Il linguaggio Python è disponibile per autori di script %pre e %post, completo con un set di moduli Python pronti all'uso. Per questo motivo se un comando particolare non è disponibile nell'ambiente di installazione, è consigliato l'uso di Python come linguaggio di programmazione.
Tabella G.1. Alternative ai comandi busybox
Busybox command | %pre | %post | Nuovi comandi o alternative |
---|---|---|---|
addgroup | no | yes | /usr/sbin/groupadd |
adduser | no | yes | /usr/sbin/useradd |
adjtimex | no | no | nessuno |
ar | no | yes | /usr/bin/ar |
arping | yes | yes | /sbin/arping o /usr/sbin/arping |
ash | yes | yes | /bin/bash |
awk | yes | yes | /sbin/awk , /sbin/gawk , or /usr/bin/gawk [a] |
basename | yes | yes | /bin/bash [b], /usr/bin/basename |
bbconfig | no | no | nessuno — questo comando è specifico a Busybox |
bunzip2 | yes | yes | /usr/bin/bunzip2 , /usr/bin/bzip2 -d |
busybox | no | no | nessuno |
bzcat | yes | yes | /usr/bin/bzcat , /usr/bin/bzip2 -dc |
cal | no | yes | /usr/bin/cal |
cat | yes | yes | /usr/bin/cat |
catv | no | no | cat -vET o cat -A |
chattr | yes | yes | /usr/bin/chattr |
chgrp | yes | yes | /usr/bin/chgrp |
chmod | yes | yes | /usr/bin/chmod |
chown | yes | yes | /usr/bin/chown |
chroot | yes | yes | /usr/sbin/chroot |
chvt | yes | yes | /usr/bin/chvt |
cksum | no | yes | /usr/bin/cksum |
clear | yes | yes | /usr/bin/clear |
cmp | no | yes | /usr/bin/cmp |
comm | no | yes | /usr/bin/comm |
cp | yes | yes | /usr/bin/cp |
cpio | yes | yes | /usr/bin/cpio |
crond | no | no | nessuno — nessun demone disponibile per gli scriptlets |
crontab | no | yes | /usr/bin/crontab |
cut | yes | yes | /usr/bin/cut |
date | yes | yes | /usr/bin/date |
dc | no | yes | /usr/bin/dc |
dd | yes | yes | /usr/bin/dd |
deallocvt | no | yes | /usr/bin/deallocvt |
delgroup | no | yes | /usr/sbin/groupdel |
deluser | no | yes | /usr/sbin/userdel |
devfsd | no | no | nessuno — Red Hat Enterprise Linux non utilizza devfs |
df | yes | yes | /usr/bin/df |
diff | no | yes | /usr/bin/diff |
dirname | yes | yes | /bin/bash [c], /usr/bin/dirname |
dmesg | yes | yes | /usr/bin/dmesg |
dnsd | no | no | nessuno — nessun demone disponibile per gli scriptlets |
dos2unix | no | no | sed 's/.$//' |
dpkg | no | no | nessuno — nessun supporto per i pacchetti Debian |
dpkg-deb | no | no | nessuno — nessun supporto per i pacchetti Debian |
du | yes | yes | /usr/bin/du |
dumpkmap | no | no | nessuno |
dumpleases | no | no | nessuno |
e2fsck | yes | yes | /usr/sbin/e2fsck |
e2label | yes | yes | /usr/sbin/e2label |
echo | yes | yes | /usr/bin/echo |
ed | no | no | /sbin/sed , /usr/bin/sed |
egrep | yes | yes | /sbin/egrep , /usr/bin/egrep |
eject | yes | yes | /usr/bin/eject |
env | yes | yes | /usr/bin/env |
ether-wake | no | no | nessuno |
expr | yes | yes | /usr/bin/expr |
fakeidentd | no | no | nessuno — nessun demone disponibile per gli scriptlets |
false | yes | yes | /usr/bin/false |
fbset | no | yes | /usr/sbin/fbset |
fdflush | no | no | nessuno |
fdformat | no | yes | /usr/bin/fdformat |
fdisk | yes | yes | /usr/sbin/fdisk |
fgrep | yes | yes | /sbin/fgrep , /usr/bin/fgrep |
find | yes | yes | /usr/bin/find |
findfs | no | no | nessuno |
fold | no | yes | /usr/bin/fold |
free | no | yes | /usr/bin/free |
freeramdisk | no | no | nessuno |
fsck | yes | yes | /usr/sbin/fsck |
fsck.ext2 | yes | yes | /usr/sbin/fsck.ext2 , /usr/sbin/e2fsck |
fsck.ext3 | yes | yes | /usr/sbin/fsck.ext3 , /usr/sbin/e2fsck |
fsck.minix | no | no | nessuno — nessun supporto per il file system Minix |
ftpget | yes | yes | /usr/bin/ftp o modulo Python ftplib |
ftpput | yes | yes | /usr/bin/ftp o modulo Python ftplib |
fuser | no | yes | /sbin/fuser |
getopt | no | yes | /usr/bin/getopt |
getty | no | no | nessuno |
grep | yes | yes | /sbin/grep , /usr/bin/grep |
gunzip | yes | yes | /usr/bin/gunzip , /usr/bin/gzip -d |
gzip | yes | yes | /usr/bin/gzip |
hdparm | yes | yes | /usr/sbin/hdparm |
head | yes | yes | /usr/bin/head |
hexdump | no | yes | /usr/bin/hexdump |
hostid | no | yes | /usr/bin/hostid or Python |
hostname | yes | yes | /sbin/hostname , /usr/bin/hostname |
httpd | no | no | nessuno — nessun demone disponibile per gli scriptlets |
hush | no | no | nessuno |
hwclock | yes | yes | /usr/sbin/hwclock |
id | no | yes | /usr/bin/id o Python |
ifconfig | yes | yes | /sbin/ifconfig , /usr/sbin/ifconfig |
ifdown | no | no | ifconfig device down |
ifup | no | no | ifconfig device up |
inetd | no | no | nessuno — nessun demone disponibile per gli scriptlets |
insmod | yes | yes | /sbin/insmod , /usr/sbin/insmod |
install | no | yes | /usr/bin/install or mkdir/cp/chmod/chown/chgrp |
ip | yes | yes | /sbin/ip , /usr/sbin/ip |
ipaddr | no | no | ifconfig o ip |
ipcalc | yes | yes | /sbin/ipcalc , /usr/bin/ipcalc |
ipcrm | no | yes | /usr/bin/ipcrm |
ipcs | no | yes | /usr/bin/ipcs |
iplink | no | no | ip |
iproute | no | no | ip |
iptunnel | no | yes | /sbin/iptunnel |
kill | yes | yes | /sbin/kill , /usr/bin/kill |
killall | yes | yes | /usr/bin/killall |
lash | no | no | nessuno |
last | no | yes | /usr/bin/last |
length | no | no | Python o bash |
less | yes | yes | /usr/bin/less |
linux32 | no | no | nessuno |
linux64 | no | no | nessuno |
ln | yes | yes | /sbin/ln , /usr/bin/ln |
load_policy | yes | yes | /sbin/load_policy , /usr/sbin/load_policy |
loadfont | no | no | nessuno |
loadkmap | no | no | nessuno |
login | yes | yes | /usr/bin/login |
logname | no | yes | /usr/bin/logname |
losetup | yes | yes | /usr/bin/losetup |
ls | yes | yes | /usr/bin/ls |
lsattr | yes | yes | /usr/bin/lsattr |
lsmod | yes | yes | /usr/bin/lsmod |
lzmacat | no | yes | /usr/bin/lzmadec |
makedevs | no | no | /usr/bin/mknod |
md5sum | yes | yes | /usr/bin/md5sum |
mdev | no | no | nessuno |
mesg | no | yes | /usr/bin/mesg |
mkdir | yes | yes | /sbin/mkdir , /usr/bin/mkdir |
mke2fs | yes | yes | /usr/sbin/mke2fs |
mkfifo | no | yes | /usr/bin/mkfifo |
mkfs.ext2 | yes | yes | /usr/sbin/mkfs.ext2 |
mkfs.ext3 | yes | yes | /usr/sbin/mkfs.ext3 |
mkfs.minix | no | no | nessuno — nessun supporto per il file system Minix |
mknod | yes | yes | /usr/bin/mknod |
mkswap | yes | yes | /usr/sbin/mkswap |
mktemp | yes | yes | /usr/bin/mktemp |
modprobe | yes | yes | /sbin/modprobe , /usr/sbin/modprobe |
more | yes | yes | /usr/bin/more |
mount | yes | yes | /sbin/mount , /usr/bin/mount |
mountpoint | no | no | Controllare l'output del comando mount |
msh | no | no | nessuno |
mt | yes | yes | /usr/bin/mt |
mv | yes | yes | /usr/bin/mv |
nameif | no | no | nessuno |
nc | no | yes | /usr/bin/nc |
netstat | no | yes | /bin/netstat |
nice | no | yes | /bin/nice |
nohup | no | yes | /usr/bin/nohup |
nslookup | yes | yes | /usr/bin/nslookup |
od | no | yes | /usr/bin/od |
openvt | yes | yes | /usr/bin/openvt |
passwd | no | yes | /usr/bin/passwd |
patch | no | yes | /usr/bin/patch |
pidof | yes | yes | /usr/sbin/pidof |
ping | yes | yes | /usr/bin/ping |
ping6 | no | yes | /bin/ping6 |
pipe_progress | no | no | nessuno |
pivot_root | no | yes | /sbin/pivot_root |
printenv | no | yes | /usr/bin/printenv |
printf | no | yes | /usr/bin/printf |
ps | yes | yes | /usr/bin/ps |
pwd | yes | yes | /usr/bin/pwd |
rdate | no | yes | /usr/bin/rdate |
readlink | yes | yes | /sbin/readlink , /usr/bin/readlink |
readprofile | no | yes | /usr/sbin/readprofile |
realpath | no | no | Python os.path.realpath() |
renice | no | yes | /usr/bin/renice |
reset | no | yes | /usr/bin/reset |
rm | yes | yes | /sbin/rm , /usr/bin/rm |
rmdir | yes | yes | /sbin/rmdir , /usr/bin/rmdir |
rmmod | yes | yes | /sbin/rmmod , /usr/bin/rmmod |
route | yes | yes | /sbin/route , /usr/sbin/route |
rpm | yes | yes | /usr/bin/rpm |
rpm2cpio | no | yes | /usr/bin/rpm2cpio |
run-parts | no | no | nessuno |
runlevel | no | no | nessuno |
rx | no | no | nessuno |
sed | yes | yes | /sbin/sed , /usr/bin/sed |
seq | no | yes | /usr/bin/seq |
setarch | no | yes | /usr/bin/setarch |
setconsole | no | no | nessuno |
setkeycodes | no | yes | /usr/bin/setkeycodes |
setlogcons | no | no | nessuno |
setsid | no | yes | /usr/bin/setsid |
sh | yes | yes | /sbin/sh , /usr/bin/sh |
sha1sum | yes | yes | /usr/bin/sha1sum |
sleep | yes | yes | /sbin/sleep , /usr/bin/sleep |
sort | yes | yes | /usr/bin/sort |
start-stop-daemon | no | no | nessuno |
stat | no | yes | /usr/bin/stat o Python os.stat() |
strings | no | yes | /usr/bin/strings |
stty | no | yes | /bin/stty |
su | no | yes | /bin/su |
sulogin | no | yes | /sbin/sulogin |
sum | no | yes | /usr/bin/sum |
swapoff | yes | yes | /usr/sbin/swapoff |
swapon | yes | yes | /usr/sbin/swapon |
switch_root | no | yes | /sbin/switch_root |
sync | yes | yes | /usr/bin/sync |
sysctl | no | yes | /sbin/sysctl |
tail | yes | yes | /usr/bin/tail |
tar | yes | yes | /usr/bin/tar |
tee | yes | yes | /usr/bin/tee |
telnet | yes | yes | /usr/bin/telnet |
telnetd | no | no | nessuno — nessun demone disponibile per gli scriptlets |
test | no | yes | /usr/bin/test o [ in bash |
tftp | no | yes | /usr/bin/tftp |
time | no | yes | /usr/bin/time o Python |
top | yes | yes | /usr/bin/top |
touch | yes | yes | /sbin/touch , /usr/bin/touch |
tr | no | yes | /usr/bin/tr o Python |
traceroute | no | yes | /bin/traceroute |
true | yes | yes | /usr/bin/true |
tty | no | yes | /usr/bin/tty |
tune2fs | yes | yes | /usr/sbin/tune2fs |
udhcpc | no | no | /sbin/dhclient |
udhcpd | no | no | nessuno — nessun demone disponibile per gli scriptlets |
umount | yes | yes | /sbin/umount , /usr/bin/umount |
uname | no | yes | /bin/uname o Python os.uname() |
uncompress | no | no | nessuno |
uniq | yes | yes | /usr/bin/uniq |
unix2dos | no | no | sed 's/$//' |
unlzma | no | yes | /usr/bin/unlzma |
unzip | no | yes | /usr/bin/unzip |
uptime | no | yes | /usr/bin/uptime o lettura Python di /proc/uptime |
usleep | no | yes | /bin/usleep o Python |
uudecode | no | yes | /usr/bin/uudecode o Python |
uuencode | no | yes | /usr/bin/uuencode o Python |
vconfig | yes | yes | /usr/sbin/vconfig |
vi | yes | yes | /usr/bin/vi |
vlock | no | no | nessuno |
watch | no | yes | /usr/bin/watch |
watchdog | no | no | nessuno |
wc | yes | yes | /usr/bin/wc |
wget | yes | yes | /sbin/wget , /usr/bin/wget |
which | no | yes | /usr/bin/which |
who | no | yes | /usr/bin/who |
whoami | no | yes | /usr/bin/whoami |
xargs | yes | yes | /usr/bin/xargs |
yes | no | yes | /usr/bin/yes |
zcat | yes | yes | /usr/bin/zcat |
zcip | no | no | NetworkManager è in grado di far fronte a questo |
[b]
GNU bash è in grado di fornire la funzionalità basename usando una manipolazione della stringa. Se var="/usr/bin/command" , allora echo ${var##*/} darà command .
[c]
GNU bash è in grado di fornire la funzionalità dirname usando una manipolazione della stringa. Se var="/usr/bin/command" allora echo ${var%/*} darà /usr/bin .
|