diff options
Diffstat (limited to 'documentation/content/en/articles/solid-state/_index.po')
-rw-r--r-- | documentation/content/en/articles/solid-state/_index.po | 651 |
1 files changed, 651 insertions, 0 deletions
diff --git a/documentation/content/en/articles/solid-state/_index.po b/documentation/content/en/articles/solid-state/_index.po new file mode 100644 index 0000000000..4c0a9f35bc --- /dev/null +++ b/documentation/content/en/articles/solid-state/_index.po @@ -0,0 +1,651 @@ +# SOME DESCRIPTIVE TITLE +# Copyright (C) YEAR The FreeBSD Project +# This file is distributed under the same license as the FreeBSD Documentation package. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: FreeBSD Documentation VERSION\n" +"POT-Creation-Date: 2023-07-15 16:42-0300\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: LANGUAGE <LL@li.org>\n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. type: YAML Front Matter: description +#: documentation/content/en/articles/solid-state/_index.adoc:1 +#, no-wrap +msgid "The use of solid state disk devices in FreeBSD" +msgstr "" + +#. type: Title = +#: documentation/content/en/articles/solid-state/_index.adoc:1 +#: documentation/content/en/articles/solid-state/_index.adoc:12 +#, no-wrap +msgid "FreeBSD and Solid State Devices" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:45 +msgid "Abstract" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:47 +msgid "" +"This article covers the use of solid state disk devices in FreeBSD to create " +"embedded systems." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:50 +msgid "" +"Embedded systems have the advantage of increased stability due to the lack " +"of integral moving parts (hard drives). Account must be taken, however, for " +"the generally low disk space available in the system and the durability of " +"the storage medium." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:53 +msgid "" +"Specific topics to be covered include the types and attributes of solid " +"state media suitable for disk use in FreeBSD, kernel options that are of " +"interest in such an environment, the [.filename]#rc.initdiskless# mechanisms " +"that automate the initialization of such systems and the need for read-only " +"filesystems, and building filesystems from scratch. The article will " +"conclude with some general strategies for small and read-only FreeBSD " +"environments." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:55 +msgid "'''" +msgstr "" + +#. type: Title == +#: documentation/content/en/articles/solid-state/_index.adoc:59 +#, no-wrap +msgid "Solid State Disk Devices" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:69 +msgid "" +"The scope of this article will be limited to solid state disk devices made " +"from flash memory. Flash memory is a solid state memory (no moving parts) " +"that is non-volatile (the memory maintains data even after all power sources " +"have been disconnected). Flash memory can withstand tremendous physical " +"shock and is reasonably fast (the flash memory solutions covered in this " +"article are slightly slower than a EIDE hard disk for write operations, and " +"much faster for read operations). One very important aspect of flash " +"memory, the ramifications of which will be discussed later in this article, " +"is that each sector has a limited rewrite capacity. You can only write, " +"erase, and write again to a sector of flash memory a certain number of times " +"before the sector becomes permanently unusable. Although many flash memory " +"products automatically map bad blocks, and although some even distribute " +"write operations evenly throughout the unit, the fact remains that there " +"exists a limit to the amount of writing that can be done to the device. " +"Competitive units have between 1,000,000 and 10,000,000 writes per sector in " +"their specification. This figure varies due to the temperature of the " +"environment." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:74 +msgid "" +"Specifically, we will be discussing ATA compatible compact-flash units, " +"which are quite popular as storage media for digital cameras. Of particular " +"interest is the fact that they pin out directly to the IDE bus and are " +"compatible with the ATA command set. Therefore, with a very simple and low-" +"cost adaptor, these devices can be attached directly to an IDE bus in a " +"computer. Once implemented in this manner, operating systems such as " +"FreeBSD see the device as a normal hard disk (albeit small)." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:76 +msgid "" +"Other solid state disk solutions do exist, but their expense, obscurity, and " +"relative unease of use places them beyond the scope of this article." +msgstr "" + +#. type: Title == +#: documentation/content/en/articles/solid-state/_index.adoc:78 +#, no-wrap +msgid "Kernel Options" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:81 +msgid "" +"A few kernel options are of specific interest to those creating an embedded " +"FreeBSD system." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:86 +msgid "" +"All embedded FreeBSD systems that use flash memory as system disk will be " +"interested in memory disks and memory filesystems. As a result of the " +"limited number of writes that can be done to flash memory, the disk and the " +"filesystems on the disk will most likely be mounted read-only. In this " +"environment, filesystems such as [.filename]#/tmp# and [.filename]#/var# are " +"mounted as memory filesystems to allow the system to create logs and update " +"counters and temporary files. Memory filesystems are a critical component " +"to a successful solid state FreeBSD implementation." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:88 +msgid "" +"You should make sure the following lines exist in your kernel configuration " +"file:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:92 +#, no-wrap +msgid "options MD_ROOT # md device usable as a potential root device\n" +msgstr "" + +#. type: Title == +#: documentation/content/en/articles/solid-state/_index.adoc:95 +#, no-wrap +msgid "The `rc` Subsystem and Read-Only Filesystems" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:98 +msgid "" +"The post-boot initialization of an embedded FreeBSD system is controlled by " +"[.filename]#/etc/rc.initdiskless#." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:102 +msgid "" +"[.filename]#/etc/rc.d/var# mounts [.filename]#/var# as a memory filesystem, " +"makes a configurable list of directories in [.filename]#/var# with the man:" +"mkdir[1] command, and changes modes on some of those directories. In the " +"execution of [.filename]#/etc/rc.d/var#, one other [.filename]#rc.conf# " +"variable comes into play - `varsize`. A [.filename]#/var# partition is " +"created by [.filename]#/etc/rc.d/var# based on the value of this variable in " +"[.filename]#rc.conf#:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:106 +#, no-wrap +msgid "varsize=8192\n" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:109 +msgid "Remember that this value is in sectors by default." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:116 +msgid "" +"The fact that [.filename]#/var# is a read-write filesystem is an important " +"distinction, as the [.filename]#/# partition (and any other partitions you " +"may have on your flash media) should be mounted read-only. Remember that in " +"<<intro>> we detailed the limitations of flash memory - specifically the " +"limited write capability. The importance of not mounting filesystems on " +"flash media read-write, and the importance of not using a swap file, cannot " +"be overstated. A swap file on a busy system can burn through a piece of " +"flash media in less than one year. Heavy logging or temporary file creation " +"and destruction can do the same. Therefore, in addition to removing the " +"`swap` entry from your [.filename]#/etc/fstab#, you should also change the " +"Options field for each filesystem to `ro` as follows:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:121 +#, no-wrap +msgid "" +"# Device Mountpoint FStype Options Dump Pass#\n" +"/dev/ad0s1a / ufs ro 1 1\n" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:126 +msgid "" +"A few applications in the average system will immediately begin to fail as a " +"result of this change. For instance, cron will not run properly as a result " +"of missing cron tabs in the [.filename]#/var# created by [.filename]#/etc/rc." +"d/var#, and syslog and dhcp will encounter problems as well as a result of " +"the read-only filesystem and missing items in the [.filename]#/var# that [." +"filename]#/etc/rc.d/var# has created. These are only temporary problems " +"though, and are addressed, along with solutions to the execution of other " +"common software packages in <<strategies>>." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:128 +msgid "" +"An important thing to remember is that a filesystem that was mounted read-" +"only with [.filename]#/etc/fstab# can be made read-write at any time by " +"issuing the command:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:132 +#, no-wrap +msgid "# /sbin/mount -uw partition\n" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:135 +msgid "and can be toggled back to read-only with the command:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:139 +#, no-wrap +msgid "# /sbin/mount -ur partition\n" +msgstr "" + +#. type: Title == +#: documentation/content/en/articles/solid-state/_index.adoc:141 +#, no-wrap +msgid "Building a File System from Scratch" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:144 +msgid "" +"Since ATA compatible compact-flash cards are seen by FreeBSD as normal IDE " +"hard drives, you could theoretically install FreeBSD from the network using " +"the kern and mfsroot floppies or from a CD." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:147 +msgid "" +"However, even a small installation of FreeBSD using normal installation " +"procedures can produce a system in size of greater than 200 megabytes. Most " +"people will be using smaller flash memory devices (128 megabytes is " +"considered fairly large - 32 or even 16 megabytes is common), so an " +"installation using normal mechanisms is not possible-there is simply not " +"enough disk space for even the smallest of conventional installations." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:153 +msgid "" +"The easiest way to overcome this space limitation is to install FreeBSD " +"using conventional means to a normal hard disk. After the installation is " +"complete, pare down the operating system to a size that will fit onto your " +"flash media, then tar the entire filesystem. The following steps will guide " +"you through the process of preparing a piece of flash memory for your tarred " +"filesystem. Remember, because a normal installation is not being performed, " +"operations such as partitioning, labeling, file-system creation, etc. need " +"to be performed by hand. In addition to the kern and mfsroot floppy disks, " +"you will also need to use the fixit floppy." +msgstr "" + +#. type: delimited block = 4 +#: documentation/content/en/articles/solid-state/_index.adoc:157 +msgid "Partitioning Your Flash Media Device" +msgstr "" + +#. type: delimited block = 4 +#: documentation/content/en/articles/solid-state/_index.adoc:167 +msgid "" +"After booting with the kern and mfsroot floppies, choose `custom` from the " +"installation menu. In the custom installation menu, choose `partition`. In " +"the partition menu, you should delete all existing partitions using kbd:" +"[d]. After deleting all existing partitions, create a partition using kbd:" +"[c] and accept the default value for the size of the partition. When asked " +"for the type of the partition, make sure the value is set to `165`. Now " +"write this partition table to the disk by pressing kbd:[w] (this is a hidden " +"option on this screen). If you are using an ATA compatible compact flash " +"card, you should choose the FreeBSD Boot Manager. Now press kbd:[q] to quit " +"the partition menu. You will be shown the boot manager menu once more - " +"repeat the choice you made earlier." +msgstr "" + +#. type: delimited block = 4 +#: documentation/content/en/articles/solid-state/_index.adoc:168 +msgid "Creating Filesystems on Your Flash Memory Device" +msgstr "" + +#. type: delimited block = 4 +#: documentation/content/en/articles/solid-state/_index.adoc:171 +msgid "" +"Exit the custom installation menu, and from the main installation menu " +"choose the `fixit` option. After entering the fixit environment, enter the " +"following command:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:175 +#, no-wrap +msgid "# disklabel -e /dev/ad0c\n" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:179 +msgid "" +"At this point you will have entered the vi editor under the auspices of the " +"disklabel command. Next, you need to add an `a:` line at the end of the " +"file. This `a:` line should look like:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:183 +#, no-wrap +msgid "a: 123456 0 4.2BSD 0 0\n" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:188 +msgid "" +"Where _123456_ is a number that is exactly the same as the number in the " +"existing `c:` entry for size. Basically you are duplicating the existing `c:" +"` line as an `a:` line, making sure that fstype is `4.2BSD`. Save the file " +"and exit." +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:193 +#, no-wrap +msgid "" +"# disklabel -B -r /dev/ad0c\n" +"# newfs /dev/ad0a\n" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:196 +msgid "Placing Your Filesystem on the Flash Media" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:198 +msgid "Mount the newly prepared flash media:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:202 +#, no-wrap +msgid "# mount /dev/ad0a /flash\n" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:206 +msgid "" +"Bring this machine up on the network so we may transfer our tar file and " +"explode it onto our flash media filesystem. One example of how to do this " +"is:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:211 +#, no-wrap +msgid "" +"# ifconfig xl0 192.168.0.10 netmask 255.255.255.0\n" +"# route add default 192.168.0.1\n" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:217 +msgid "" +"Now that the machine is on the network, transfer your tar file. You may be " +"faced with a bit of a dilemma at this point - if your flash memory part is " +"128 megabytes, for instance, and your tar file is larger than 64 megabytes, " +"you cannot have your tar file on the flash media at the same time as you " +"explode it - you will run out of space. One solution to this problem, if " +"you are using FTP, is to untar the file while it is transferred over FTP. " +"If you perform your transfer in this manner, you will never have the tar " +"file and the tar contents on your disk at the same time:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:221 +#, no-wrap +msgid "ftp> get tarfile.tar \"| tar xvf -\"\n" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:224 +msgid "If your tarfile is gzipped, you can accomplish this as well:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:228 +#, no-wrap +msgid "ftp> get tarfile.tar \"| zcat | tar xvf -\"\n" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:231 +msgid "" +"After the contents of your tarred filesystem are on your flash memory " +"filesystem, you can unmount the flash memory and reboot:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:237 +#, no-wrap +msgid "" +"# cd /\n" +"# umount /flash\n" +"# exit\n" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:240 +msgid "" +"Assuming that you configured your filesystem correctly when it was built on " +"the normal hard disk (with your filesystems mounted read-only, and with the " +"necessary options compiled into the kernel) you should now be successfully " +"booting your FreeBSD embedded system." +msgstr "" + +#. type: Title == +#: documentation/content/en/articles/solid-state/_index.adoc:243 +#, no-wrap +msgid "System Strategies for Small and Read Only Environments" +msgstr "" + +#. type: delimited block = 4 +#: documentation/content/en/articles/solid-state/_index.adoc:247 +msgid "" +"In <<ro-fs>>, it was pointed out that the [.filename]#/var# filesystem " +"constructed by [.filename]#/etc/rc.d/var# and the presence of a read-only " +"root filesystem causes problems with many common software packages used with " +"FreeBSD. In this article, suggestions for successfully running cron, " +"syslog, ports installations, and the Apache web server will be provided." +msgstr "" + +#. type: Title === +#: documentation/content/en/articles/solid-state/_index.adoc:248 +#, no-wrap +msgid "Cron" +msgstr "" + +#. type: delimited block = 4 +#: documentation/content/en/articles/solid-state/_index.adoc:251 +msgid "" +"Upon boot, [.filename]#/var# gets populated by [.filename]#/etc/rc.d/var# " +"using the list from [.filename]#/etc/mtree/BSD.var.dist#, so the [." +"filename]#cron#, [.filename]#cron/tabs#, [.filename]#at#, and a few other " +"standard directories get created." +msgstr "" + +#. type: delimited block = 4 +#: documentation/content/en/articles/solid-state/_index.adoc:256 +msgid "" +"However, this does not solve the problem of maintaining cron tabs across " +"reboots. When the system reboots, the [.filename]#/var# filesystem that is " +"in memory will disappear and any cron tabs you may have had in it will also " +"disappear. Therefore, one solution would be to create cron tabs for the " +"users that need them, mount your [.filename]#/# filesystem as read-write and " +"copy those cron tabs to somewhere safe, like [.filename]#/etc/tabs#, then " +"add a line to the end of [.filename]#/etc/rc.initdiskless# that copies those " +"crontabs into [.filename]#/var/cron/tabs# after that directory has been " +"created during system initialization. You may also need to add a line that " +"changes modes and permissions on the directories you create and the files " +"you copy with [.filename]#/etc/rc.initdiskless#." +msgstr "" + +#. type: Title === +#: documentation/content/en/articles/solid-state/_index.adoc:257 +#, no-wrap +msgid "Syslog" +msgstr "" + +#. type: delimited block = 4 +#: documentation/content/en/articles/solid-state/_index.adoc:262 +msgid "" +"[.filename]#syslog.conf# specifies the locations of certain log files that " +"exist in [.filename]#/var/log#. These files are not created by [.filename]#/" +"etc/rc.d/var# upon system initialization. Therefore, somewhere in [." +"filename]#/etc/rc.d/var#, after the section that creates the directories in " +"[.filename]#/var#, you will need to add something like this:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:267 +#, no-wrap +msgid "" +"# touch /var/log/security /var/log/maillog /var/log/cron /var/log/messages\n" +"# chmod 0644 /var/log/*\n" +msgstr "" + +#. type: Title === +#: documentation/content/en/articles/solid-state/_index.adoc:269 +#, no-wrap +msgid "Ports Installation" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:274 +msgid "" +"Before discussing the changes necessary to successfully use the ports tree, " +"a reminder is necessary regarding the read-only nature of your filesystems " +"on the flash media. Since they are read-only, you will need to temporarily " +"mount them read-write using the mount syntax shown in <<ro-fs>>. You should " +"always remount those filesystems read-only when you are done with any " +"maintenance - unnecessary writes to the flash media could considerably " +"shorten its lifespan." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:277 +msgid "" +"To make it possible to enter a ports directory and successfully run `make " +"install`, we must create a packages directory on a non-memory filesystem " +"that will keep track of our packages across reboots. As it is necessary to " +"mount your filesystems as read-write for the installation of a package " +"anyway, it is sensible to assume that an area on the flash media can also be " +"used for package information to be written to." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:280 +msgid "" +"First, create a package database directory. This is normally in [." +"filename]#/var/db/pkg#, but we cannot place it there as it will disappear " +"every time the system is booted." +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:284 +#, no-wrap +msgid "# mkdir /etc/pkg\n" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:287 +msgid "" +"Now, add a line to [.filename]#/etc/rc.d/var# that links the [.filename]#/" +"etc/pkg# directory to [.filename]#/var/db/pkg#. An example:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:291 +#, no-wrap +msgid "# ln -s /etc/pkg /var/db/pkg\n" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:294 +msgid "" +"Now, any time that you mount your filesystems as read-write and install a " +"package, the `make install` will work, and package information will be " +"written successfully to [.filename]#/etc/pkg# (because the filesystem will, " +"at that time, be mounted read-write) which will always be available to the " +"operating system as [.filename]#/var/db/pkg#." +msgstr "" + +#. type: Title === +#: documentation/content/en/articles/solid-state/_index.adoc:295 +#, no-wrap +msgid "Apache Web Server" +msgstr "" + +#. type: delimited block = 4 +#: documentation/content/en/articles/solid-state/_index.adoc:301 +msgid "" +"The steps in this section are only necessary if Apache is set up to write " +"its pid or log information outside of [.filename]#/var#. By default, Apache " +"keeps its pid file in [.filename]#/var/run/httpd.pid# and its log files in [." +"filename]#/var/log#." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:307 +msgid "" +"It is now assumed that Apache keeps its log files in a directory [." +"filename]#apache_log_dir# outside of [.filename]#/var#. When this directory " +"lives on a read-only filesystem, Apache will not be able to save any log " +"files, and may have problems working. If so, it is necessary to add a new " +"directory to the list of directories in [.filename]#/etc/rc.d/var# to create " +"in [.filename]#/var#, and to link [.filename]#apache_log_dir# to [." +"filename]#/var/log/apache#. It is also necessary to set permissions and " +"ownership on this new directory." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:309 +msgid "" +"First, add the directory `log/apache` to the list of directories to be " +"created in [.filename]#/etc/rc.d/var#." +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:311 +msgid "" +"Second, add these commands to [.filename]#/etc/rc.d/var# after the directory " +"creation section:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:316 +#, no-wrap +msgid "" +"# chmod 0774 /var/log/apache\n" +"# chown nobody:nobody /var/log/apache\n" +msgstr "" + +#. type: Plain text +#: documentation/content/en/articles/solid-state/_index.adoc:319 +msgid "" +"Finally, remove the existing [.filename]#apache_log_dir# directory, and " +"replace it with a link:" +msgstr "" + +#. type: delimited block . 4 +#: documentation/content/en/articles/solid-state/_index.adoc:324 +#, no-wrap +msgid "" +"# rm -rf apache_log_dir\n" +"# ln -s /var/log/apache apache_log_dir\n" +msgstr "" |