7.231. sos

Updated sos packages that fix a number of bugs and add two enhancements are now available for Red Hat Enterprise Linux 6.
The sos packages contain a set of tools that gather information from system hardware, logs and configuration files. The information can then be used for diagnostic purposes and debugging.

Bug Fixes

The previous versions of the sos packages used a built-in module to collect data from Red Hat Network Satellite Server and Red Hat Network Proxy Server. As a consequence, data captured by the sos utility was incomplete or in a different format than expected by RHN Satellite developers. The module has now been extended to use the RHN Satellite script (spacewalk-debug) to collect information when present, and the RHN Satellite components now supply a debug script that is able to collect more detailed diagnostic data.
Previous versions of sos did not include any support for capturing RHUI (Red Hat Update Infrastructure) configuration and diagnostic data. Consequently, no diagnostic information for the RHUI components was available in generated reports. A new module has been added to capture this information. As a result, full logs and configuration data are now included when run on hosts with RHUI components installed.
The previous version of gluster module made use of gluster CLI commands to obtain state dump information. This caused cluster-wide locks to be taken, potentially blocking other nodes for the duration of data collection. The module has been set to directly issue a signal to the local gluster processes and collect the generated files. Now, full state dump data is collected without causing side effects to other hosts in the environment.
Previous versions of the sos psacct (BSD Process Accounting) module collected all process accounting files present on the system, which could, under certain configurations, lead to a very large number of archived files in the process accounting directory. This has been fixed by changing psacct collecting only the most recent accounting file by default. The all option has been added to the module which allows the user to request the original behavior if required. As a result, reports generated on hosts with many archived accounting files no longer include this large set of additional data.
Previous versions of the device-mapper-multipath packages stored path binding data directly in the /etc/ or /var/lib/ directories. Consequently, the previous versions of sos did not capture files stored in this location. The devicemapper module has been extended to include the /etc/multipath/ directory contents as well, to allow more consistent SELinux labeling of multipath files. The complete bindings file is now captured on hosts using the new directory layout.
Prior to this update, the sosreport networking module collected various data from the sysctl configuration found in the /proc/sys/net/ directory. Certain legacy paths in this directory have been deprecated upstream and scheduled for removal in future releases but are maintained for compatibility reasons. Nevertheless, running sosreport on systems having deprecated sysctls configuration generated warning messages as the sos utility accessed these paths. This bug has been fixed by including sos to a blacklist for forbidden paths of this directory. Now, diagnostic information is no longer lost as the content of these files is now provided under different parameter names that are already included in the report. Thus, full diagnostic information is now collected from the /proc/sys/net/ directory without generating unnecessary warning messages in system logs.
Previously, the sosreport utility did not recognize interfaces named by BIOS, using the biosdevname utility. Consequently, Ethernet network devices were constrained to the conventional ethN naming scheme and the ifconfig command, in some cases, did not identify correctly interface types. To address this issue, the sos networking module was set to use the ip command from the iproute package to generate lists of network interfaces. As a result, information for these network interfaces is now correctly captured and is available in generated reports.
Prior to this update, the Python runtime's pipe communication interface added an additional trailing newline (\n) character to output read by an external program. Consequently, files stored in the reports that were generated by running an external command included additional trailing whitespace that could interfere with attempts to compare file contents. The sosreport command has been modified to remove this additional character when present, thus fixing this bug. File capture is now consistent between sos versions in Red Hat Enterprise Linux 5 and 6, thus simplifying comparison of diagnostic data captured on these two releases.
Previous versions of sos did not sanitize special characters in system hostnames when using the name in file system paths. Consequently, inserting special characters in the system hostname could cause sos to generate invalid file system paths and fail to generate a report. With this update, invalid characters are filtered out of system hostnames and the sosreport command now works correctly on systems having characters disallowed in file system paths present in the hostname, thus fixing this bug.
Previous versions of the sos utility failed to validate the --name parameter correctly. Consequently, the report was generated with a file name containing an empty name field. To fix this bug, a default name has been substituted when the provided report name is empty or invalid and files are now generated with names following a consistent pattern.
Due to changes in the logging design in earlier releases, the sos utility did not log errors when attempting to collect output from external commands. Consequently, no message was written to the sos log file when an external command could not be executed. This update ensures that the logging is carried out in the core plug-in code and a failure to execute an external program is now correctly logged.
Previous versions of the sos utility passed an unescaped double tilde (~~) character sequence to a command executed by the system shell. On some systems, the expansion of this sequence resulted in an error message when the shell home directory expansion attempted a lookup for an account named ~. The sequence is now correctly double-quoted to disable shell expansion of the string and no spurious account lookup or log message is triggered in the described scenario.
The sanlock package is a new component that provides disk based leases and uses the watchdog device to protect their recovery. Previous versions of sos did not include support for collecting sanlock diagnostic data. A new module has been added to collect configuration and log files for this component so that diagnostic information relating to the sanlock service would be captured in generated reports.
PostgreSQL is a popular open-source database in Red Hat Enterprise Linux. Prior versions of sos did not include support for collecting information about installed postgres instances, and thus no diagnostic information was collected for this component. The psql module that obtains information from the database has been included in this release. Now, when psql is enabled, diagnostic data is captured on appropriately configured systems, and optional parameters such as database name and authentication may be specified in order to collect more detailed information.
The pagetypeinfo file contains additional information relevant to external fragmentation of kernel memory. Previous versions of sos only collected the related buddyinfo data. Consequently, less detailed information was available regarding the fragmentation state of the kernel page allocator. The pagetypeinfo file has been included in the generated report and detailed fragmentation debugging data is now collected by default, thus avoiding manual effort to obtain this information.


Previous releases of sos captured only the /proc/ioports file detailing registered I/O port regions in use. The /proc/iomem file additionally describes regions of physical system memory and their use of memory, firmware data, and device I/O traffic. As this data may be important in debugging certain hardware and device-driver problems, both ioports and iomem data have been made available within generated reports.
BZ#825968, BZ#826312
The RHSM (Red Hat Subscription Manager) provides a new method for managing Red Hat subscriptions and entitlements on installed hosts. This update adds support for capturing the subscription-manager utility output for diagnostic purposes. The output of subscription-manager is now included in generated reports.
Users of sos are advised to upgrade to these updated packages, which fix these bugs and add these enhancements.