aboutsummaryrefslogtreecommitdiff
path: root/documentation/content/en/articles/linux-users/_index.adoc
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/content/en/articles/linux-users/_index.adoc')
-rw-r--r--documentation/content/en/articles/linux-users/_index.adoc58
1 files changed, 34 insertions, 24 deletions
diff --git a/documentation/content/en/articles/linux-users/_index.adoc b/documentation/content/en/articles/linux-users/_index.adoc
index aa2e76682a..7086c93f7c 100644
--- a/documentation/content/en/articles/linux-users/_index.adoc
+++ b/documentation/content/en/articles/linux-users/_index.adoc
@@ -17,17 +17,26 @@ tags: ["Quickstart", "guide", "Linux", "FreeBSD"]
:sectnumlevels: 6
:source-highlighter: rouge
:experimental:
-
-ifeval::["{backend}" == "html5"]
-include::shared/en/urls.adoc[]
+:images-path: articles/linux-users/
+
+ifdef::env-beastie[]
+ifdef::backend-html5[]
+include::shared/authors.adoc[]
+include::shared/mirrors.adoc[]
+include::shared/releases.adoc[]
+include::shared/attributes/attributes-{{% lang %}}.adoc[]
+include::shared/{{% lang %}}/teams.adoc[]
+include::shared/{{% lang %}}/mailing-lists.adoc[]
+include::shared/{{% lang %}}/urls.adoc[]
+:imagesdir: ../../../images/{images-path}
+endif::[]
+ifdef::backend-pdf,backend-epub3[]
+include::../../../../shared/asciidoctor.adoc[]
endif::[]
-
-ifeval::["{backend}" == "pdf"]
-include::../../../../shared/en/urls.adoc[]
endif::[]
-ifeval::["{backend}" == "epub3"]
-include::../../../../shared/en/urls.adoc[]
+ifndef::env-beastie[]
+include::../../../../../shared/asciidoctor.adoc[]
endif::[]
[.abstract-title]
@@ -45,18 +54,19 @@ toc::[]
This document highlights some of the technical differences between FreeBSD and Linux(R) so that intermediate to advanced Linux(R) users can quickly familiarize themselves with the basics of FreeBSD.
This document assumes that FreeBSD is already installed.
-Refer to the link:{handbook}#bsdinstall[Installing FreeBSD] chapter of the FreeBSD Handbook for help with the installation process.
+Refer to the extref:{handbook}[Installing FreeBSD, bsdinstall] chapter of the FreeBSD Handbook for help with the installation process.
[[shells]]
== Default Shell
Linux(R) users are often surprised to find that Bash is not the default shell in FreeBSD.
In fact, Bash is not included in the default installation.
-Instead, FreeBSD uses man:tcsh[1] as the default root shell, and the Bourne shell-compatible man:sh[1] as the default user shell.
+Instead, the Bourne shell-compatible man:sh[1] as the default user shell.
+The root shell is man:tcsh[1] by default on FreeBSD 13 and earlier and man:sh[1] on FreeBSD 14 and later.
man:sh[1] is very similar to Bash but with a much smaller feature-set.
Generally shell scripts written for man:sh[1] will run in Bash, but the reverse is not always true.
-However, Bash and other shells are available for installation using the FreeBSD link:{handbook}#ports[Packages and Ports Collection].
+However, Bash and other shells are available for installation using the FreeBSD extref:{handbook}[Packages and Ports Collection, ports].
After installing another shell, use man:chsh[1] to change a user's default shell.
It is recommended that the `root` user's default shell remain unchanged since shells which are not included in the base distribution are installed to [.filename]#/usr/local/bin#.
@@ -96,7 +106,7 @@ For example, the following command installs Apache 2.4:
# pkg install apache24
....
-For more information on packages refer to section 5.4 of the FreeBSD Handbook: link:{handbook}#pkgng-intro[Using pkgng for Binary Package Management].
+For more information on packages refer to section 5.4 of the FreeBSD Handbook: extref:{handbook}[Using pkgng for Binary Package Management, pkgng-intro].
[[ports]]
=== Ports
@@ -104,8 +114,8 @@ For more information on packages refer to section 5.4 of the FreeBSD Handbook: l
The FreeBSD Ports Collection is a framework of [.filename]#Makefiles# and patches specifically customized for installing applications from source on FreeBSD.
When installing a port, the system will fetch the source code, apply any required patches, compile the code, and install the application and any required dependencies.
-The Ports Collection, sometimes referred to as the ports tree, can be installed to [.filename]#/usr/ports# using man:portsnap[8].
-Detailed instructions for installing the Ports Collection can be found in link:{handbook}#ports-using[section 5.5] of the FreeBSD Handbook.
+The Ports Collection, sometimes referred to as the ports tree, can be installed to [.filename]#/usr/ports# using link:{handbook}mirrors/#git[Git].
+Detailed instructions for installing the Ports Collection can be found in extref:{handbook}[section 4.5.1, ports-using-installation-methods] of the FreeBSD Handbook.
To compile a port, change to the port's directory and start the build process. The following example installs Apache 2.4 from the Ports Collection:
@@ -124,7 +134,7 @@ This example specifies that the mod_ldap module should also be installed:
# make WITH_LDAP="YES" install clean
....
-Refer to link:{handbook}#ports-using[Using the Ports Collection] for more information.
+Refer to extref:{handbook}[Using the Ports Collection, ports-using] for more information.
[[startup]]
== System Startup
@@ -132,14 +142,14 @@ Refer to link:{handbook}#ports-using[Using the Ports Collection] for more inform
Many Linux(R) distributions use the SysV init system, whereas FreeBSD uses the traditional BSD-style man:init[8].
Under the BSD-style man:init[8], there are no run-levels and [.filename]#/etc/inittab# does not exist.
Instead, startup is controlled by man:rc[8] scripts.
-At system boot, [.filename]#/etc/rc# reads [.filename]#/etc/rc.conf# and [.filename]#/etc/defaults/rc.conf# to determine which services are to be started.
+At system boot, [.filename]#/etc/rc# reads [.filename]#/etc/rc.conf# and [.filename]#/etc/defaults/rc.conf# to determine which services are to be started.
The specified services are then started by running the corresponding service initialization scripts located in [.filename]#/etc/rc.d/# and [.filename]#/usr/local/etc/rc.d/#. These scripts are similar to the scripts located in [.filename]#/etc/init.d/# on Linux(R) systems.
-The scripts found in [.filename]#/etc/rc.d/# are for applications that are part of the "base" system, such as man:cron[8], man:sshd[8], and man:syslog[3].
+The scripts found in [.filename]#/etc/rc.d/# are for applications that are part of the "base" system, such as man:cron[8], man:sshd[8], and man:syslog[3].
The scripts in [.filename]#/usr/local/etc/rc.d/# are for user-installed applications such as Apache and Squid.
Since FreeBSD is developed as a complete operating system, user-installed applications are not considered to be part of the "base" system.
-User-installed applications are generally installed using link:{handbook}#ports-using[Packages or Ports].
+User-installed applications are generally installed using extref:{handbook}[Packages or Ports, ports-using].
In order to keep them separate from the base system, user-installed applications are installed under [.filename]#/usr/local/#.
Therefore, user-installed binaries reside in [.filename]#/usr/local/bin/#, configuration files are in [.filename]#/usr/local/etc/#, and so on.
@@ -222,9 +232,9 @@ ifconfig_em0="DHCP"
FreeBSD does not use Linux(R) IPTABLES for its firewall.
Instead, FreeBSD offers a choice of three kernel level firewalls:
-* link:{handbook}#firewalls-pf[PF]
-* link:{handbook}#firewalls-ipf[IPFILTER]
-* link:{handbook}#firewalls-ipfw[IPFW]
+* extref:{handbook}[PF, firewalls-pf]
+* extref:{handbook}[IPFILTER, firewalls-ipf]
+* extref:{handbook}[IPFW, firewalls-ipfw]
PF is developed by the OpenBSD project and ported to FreeBSD.
PF was created as a replacement for IPFILTER and its syntax is similar to that of IPFILTER.
@@ -263,7 +273,7 @@ ipfw add allow tcp from any to me 22 in via $ext_if
There are two methods for updating a FreeBSD system: from source or binary updates.
Updating from source is the most involved update method, but offers the greatest amount of flexibility.
-The process involves synchronizing a local copy of the FreeBSD source code with the FreeBSD Subversion servers.
+The process involves synchronizing a local copy of the FreeBSD source code with the FreeBSD Git repository.
Once the local source code is up-to-date, a new version of the kernel and userland can be compiled.
Binary updates are similar to using `yum` or `apt-get` to update a Linux(R) system.
@@ -281,7 +291,7 @@ When using man:cron[8] to schedule updates, use `freebsd-update cron` in the man
====
-For more information on source and binary updates, refer to link:{handbook}#updating-upgrading[the chapter on updating] in the FreeBSD Handbook.
+For more information on source and binary updates, refer to extref:{handbook}[the chapter on updating, updating-upgrading-freebsdupdate] in the FreeBSD Handbook.
[[procfs]]
== procfs: Gone But Not Forgotten
@@ -365,4 +375,4 @@ Some common command equivalents are as follows:
== Conclusion
This document has provided an overview of FreeBSD.
-Refer to the link:{handbook}[FreeBSD Handbook] for more in-depth coverage of these topics as well as the many topics not covered by this document.
+Refer to the extref:{handbook}[FreeBSD Handbook] for more in-depth coverage of these topics as well as the many topics not covered by this document.