How to get regular stuff working: Difference between revisions
m (→Man pages) |
Prabuanand (talk | contribs) m (Restored introduction sentence) |
||
(23 intermediate revisions by 7 users not shown) | |||
Line 1: | Line 1: | ||
To minimize footprint, Alpine Linux comes with [[BusyBox]] by default. [[BusyBox]] is set up as an endpoint for numerous symlinks that substitute various utilities. The utilities in [[BusyBox]] generally have fewer options and hence missing some functionality. This page explains how to get the regular utilities working as found in other Linux distributions. Installing the relevant packages, replaces [[BusyBox]] symlinks. | |||
== Core utilities == | |||
{{Main|GNU core utilities}} | |||
Most of the basic file, shell and text manipulation utilities commonly grouped under [https://en.wikipedia.org/wiki/List_of_GNU_Core_Utilities_commands Core Utilities] are provided by [[BusyBox]]. To replace it with original {{pkg|coreutils}} package: | |||
{{Cmd|# apk add {{pkg|coreutils}}}} | |||
== Util-linux == | |||
A set of approximately 100 basic Linux system utilities not included in GNU Core Utilities, such as <code>mount</code>, <code>cfdisk</code>, <code>more</code>, <code>lsblk</code> and <code>kill</code> are maintained under [https://en.wikipedia.org/wiki/Util-linux Util-linux]. To have the complete {{pkg|util-linux}} package: | |||
{{Cmd|# apk add {{pkg|util-linux}}}} | |||
== Search utilities == | |||
Standard search tools <code>grep</code> and <code>find</code> can be installed by installing the packages {{pkg|grep}} and {{pkg|findutils}} as follows: | |||
{{Cmd|# apk add {{pkg|grep}} {{pkg|findutils}} }} | |||
== Bash shell == | |||
{{Main|Change default shell}} | |||
The default shell used by Alpine Linux is the busybox variant of the [[BusyBox#Ash_shell|ash shell]]. To install {{pkg|bash}}: | |||
{{Cmd|# apk add {{pkg|bash}} {{pkg|bash-completion}}}} | |||
== Hardware Management == | |||
Install {{pkg|pciutils}} and {{pkg|usbutils}} for configuring PCI and USB hardware respectively. You can always remove these packages once the hardware is configured. | |||
{{Cmd|# apk add {{pkg|pciutils}} {{pkg|usbutils}}}} | |||
The packages {{pkg|hwdata-pci}} and {{pkg|hwdata-usb}} are dependencies for the above utilities and they are installed automatically. | |||
== Disk Management == | |||
Managing (removable) disks is much easier with udisks. | |||
{{Cmd|# apk add {{pkg|udisks2}}}} | |||
To see the mounted disks: | |||
{{Cmd|# udisksctl status}} | |||
== Network Management == | |||
For network, you may want to install {{pkg|iproute2}}. | |||
{{Cmd|# apk add {{pkg|iproute2}}}} | |||
== Development environment == | |||
Compiling in Alpine may be more challenging because it uses [https://musl.libc.org/ musl-libc] instead of glibc. Alpine offers the regular compiler stuff such as {{pkg|gcc}}. | |||
{{Cmd|# apk add {{pkg|gcc}}}} | |||
The {{pkg|alpine-sdk}} meta package is provided to build packages for Alpine. It includes {{pkg|abuild}}, {{pkg|build-base}}, and {{pkg|git}}. | |||
{{Cmd|# apk add {{pkg|alpine-sdk}}}} | |||
To install CMake: | |||
{{Cmd|# apk add {{pkg|cmake}} {{pkg|extra-cmake-modules}}}} | |||
{{pkg|ccache}} and a lot other tools are also available in Alpine. | |||
[https://wiki.musl-libc.org/functional-differences-from-glibc.html Functional differences between musl and glibc] | |||
[[Category:Installation]] | [[Category:Installation]] |
Latest revision as of 10:50, 25 October 2024
To minimize footprint, Alpine Linux comes with BusyBox by default. BusyBox is set up as an endpoint for numerous symlinks that substitute various utilities. The utilities in BusyBox generally have fewer options and hence missing some functionality. This page explains how to get the regular utilities working as found in other Linux distributions. Installing the relevant packages, replaces BusyBox symlinks.
Core utilities
Most of the basic file, shell and text manipulation utilities commonly grouped under Core Utilities are provided by BusyBox. To replace it with original coreutils package:
# apk add coreutils
Util-linux
A set of approximately 100 basic Linux system utilities not included in GNU Core Utilities, such as mount
, cfdisk
, more
, lsblk
and kill
are maintained under Util-linux. To have the complete util-linux package:
# apk add util-linux
Search utilities
Standard search tools grep
and find
can be installed by installing the packages grep and findutils as follows:
Bash shell
The default shell used by Alpine Linux is the busybox variant of the ash shell. To install bash:
# apk add bash bash-completion
Hardware Management
Install pciutils and usbutils for configuring PCI and USB hardware respectively. You can always remove these packages once the hardware is configured.
The packages hwdata-pci and hwdata-usb are dependencies for the above utilities and they are installed automatically.
Disk Management
Managing (removable) disks is much easier with udisks.
# apk add udisks2
To see the mounted disks:
# udisksctl status
Network Management
For network, you may want to install iproute2.
# apk add iproute2
Development environment
Compiling in Alpine may be more challenging because it uses musl-libc instead of glibc. Alpine offers the regular compiler stuff such as gcc.
# apk add gcc
The alpine-sdk meta package is provided to build packages for Alpine. It includes abuild, build-base, and git.
# apk add alpine-sdk
To install CMake:
# apk add cmake extra-cmake-modules
ccache and a lot other tools are also available in Alpine.