Language Selection

English French German Italian Portuguese Spanish

TW My sysadmin toolbox

Filed under
OSS

I'm only an amateur systems administrator, but I'm also terribly lazy, so I do have a few good tools in my toolbox.

I work for Mandriva. However, all these tools except Urpmi are available and usable on any distribution. Even Urpmi could potentially work on any distribution, if you set up a correct package source.

An interactive process viewer: htop

My first tool is htop. Most Linux users, when they first wanted to find out what was eating all their CPU time, were taught about top. Top tells you what processes are running and how many resources they're using ... in just about the most unfriendly way possible.

The nano editor

Despite having used Linux for more than four years, I still have no idea how to use vi or Emacs, because I use GNU nano.

EasyTAG

Full Story.

More in Tux Machines

today's leftovers and howtos

  • Digest of YaST Development Sprint 103

    Before introducing the recent changes in the YaST land, the team would like to congratulate the openSUSE community for the release of Leap 15.2. It looks like a pretty solid release, and we are proud of being part of this project. Having said that, let’s focus on what the team has achieved during the past sprint.

  • [syslog-ng] Insider 2020-07: TLS; capabilities; 3.27;

    This is the 83rd issue of syslog-ng Insider, a monthly newsletter that brings you syslog-ng-related news.

  •         
  • Top 6 Open Source Bitcoin Wallets, Rated and Reviewed for 2020

    The biggest appeal of open source wallets is that their code can be reviewed and publicly audited for potential security issues. As a result, open source software is often more robust than closed-source. The same goes for bitcoin wallets. [...] Whether you’re a beginner who needs a fantastic UI to help you navigate the intricacies of an open source wallet or you’re a developer who needs a platform that allows you to build on a secure base, these wallets will give you everything you’re looking for.

  •        
  • Android 10 has the fastest update rate ever, hits 16% of users in 10 months

    Google today dropped a blog post detailing its progress on improving the Android ecosystem's update speed. The company has been hard at work for the past few years modularizing Android, with the hope that making Android easier to update would result in device manufacturers pushing out updates faster. Google's efforts have been paying off, with the company announcing Android 10 has had the fastest rollout ever. The last few versions of Android have each brought a major improvement to Android's update system. Android 8 introduced Project Treble, which separated the OS from the hardware support, enabling easier porting of Android across devices. In Android 9 Pie, Google completed its work on Treble and started publishing Generic System Images (GSIs): drop-in versions of Android that work on any Project Treble-compatible device. Android 10 introduced Project Mainline and the new APEX file type designed for updatable lower-level system components, delivered through the Play Store. Google's stats show that all this work is actually improving the ecosystem. "Thanks to these efforts," Google writes, "the adoption of Android 10 has been faster than any previous versions of Android. Android 10 was running on 100 million devices 5 months post launch—28% faster than Android Pie."

  • LibreOffice QA/Dev Report: June 2020
  • Phoronix Test Suite 9.8 Released For Open-Source Benchmarking, New Docker Benchmarking Image

    Phoronix Test Suite 9.8 is available today as the latest quarterly stable feature release to our open-source, cross-platform benchmarking software. Phoronix Test Suite 9.8 brings numerous improvements as our Q3'2020 update including: - Improved handling of test installation failures around failed download URLs and other cases where newer minor revisions of said test profiles have corrected them. The new behavior is to seamlessly use the new minor revisions of test profile updates to correct said failures rather than requiring manual intervention over the version specified.

  • How to convert an ISO to a Docker image
  • How To Set Up Nginx Server Blocks on Ubuntu 20.04
  • How to Install MariaDB on Ubuntu 16.04 Linux Operating System

Servers: Kubernetes, MicroK8s and Ubuntu

  • What’s up with the Kubernetes ecosystem

    This week’s acquisition of Rancher Labs by the veteran enterprise Linux firm SUSE neatly illustrates the growing momentum of container-based application deployment. It also underlines the importance of Kubernetes as the orchestration tool of choice for managing all those containers. So, what does this latest move mean for the broader Kubernetes ecosystem? When containers first garnered corporate attention six or seven years ago, Docker and its tools were the centre of attention. But the focus soon shifted to management frameworks capable of automating the deployment and scaling of containers, and Kubernetes, developed by Google from technology used in its cloud platform, quickly won out. Like many open source tools, Kubernetes has its share of rough edges and does not necessarily provide all the capabilities that users need to build a functioning container-based infrastructure. Companies such as Rancher sprang forth to provide a complete software stack built around Kubernetes for those who didn’t want to build it all themselves.

  • MicroK8s HA tech preview is now available
  • Ubuntu Support of AWS Graviton2 Instances
  • Ubuntu Support of AWS Graviton2 Instances

    Ubuntu is the industry-leading operating system for use in the cloud. Every day millions of Ubuntu instances are launched in private and public clouds around the world. Canonical takes pride in offering support for the latest cloud features and functionality. As of today, all Ubuntu Amazon Web Services (AWS) Marketplace listings are now updated to include support for the new Graviton2 instance types. Graviton2 is Amazon’s next-generation ARM processor delivering increased performance at a lower cost. This

Linux and Linux Foundation: Rust, Windows, SystemD and More

  • Linux Developers May Discuss Allowing Rust Code Within The Kernel

    A Google engineer is looking to discuss at this year's Linux Plumbers Conference the possibility of allowing in-tree Rust language support. Nick Desaulniers of Google, who is known for his work on LLVM Clang'ing the Linux kernel and related efforts, is wanting to bring up the matter of in-tree Rust support for the kernel. The extent though of allowing Rust within the kernel isn't clear yet but would likely be very limited.

  • Emulating Windows system calls in Linux

    The idea of handling system calls differently depending on the origin of each call in the process's address space is not entirely new. OpenBSD, for example, disallows system calls entirely if they are not made from the system's C library as a security-enhancing mechanism. At the end of May, Gabriel Krisman Bertazi proposed a similar mechanism for Linux, but the objective was not security at all; instead, he is working to make Windows games run better under Wine. That involves detecting and emulating Windows system calls; this can be done through origin-based filtering, but that may not be the solution that is merged in the end. To run with any speed at all, Wine must run Windows code directly on the CPU to the greatest extent possible. That must end, though, once the Windows program makes a system call; trapping into the Linux kernel with the intent of making a Windows system call is highly unlikely to lead to good results. Traditionally, Wine has handled this by supplying its own version of the user-space Windows API that implemented the required functionality using Linux system calls. As explained in the patch posting, though, Windows applications are increasingly executing system calls directly rather than going through the API; that makes Wine unable to intercept them. The good news is that Linux provides the ability to intercept system calls in the form of seccomp(). The bad news is that this mechanism, as found in current kernels, is not suited to the task of intercepting only system calls made from Windows code running within a larger process. Intercepting every system call would slow things down considerably, an effect that tends to make gamers particularly cranky. Tracking which parts of a process's address space make Linux system calls and which make Windows calls within the (classic) BPF programs used by seccomp() would be awkward at best and, once again, would be slow. So it seems that a new mechanism is called for. The patch set adds a new memory-protection bit for mmap() called PROT_NOSYSCALL which, by default, does not change the kernel's behavior. If, however, a given process has turned on the new SECCOMP_MODE_MMAP mode in seccomp(), any system calls made from memory regions marked with PROT_NOSYSCALL will be trapped; the handler code can then emulate the attempted system call.

  • systemd 246-RC1 Released

    With this being the first systemd release since March, there is a lot in store for the v246 milestone. There are many systemd 246 features including new unit settings, the service manager has support for the cgroup v2 freezer, the CPU affinity setting now supports a NUMA value, systemd.hostname= can be used for setting the hostname from the kernel command line during early boot, hardware database updates, systemd-journald now supports Zstd compression, numerous networkd additions, systemd-cryptsetup now supports activating Microsoft BitLocker volumes during boot, systemd-homed improvements, the new systemd-xdg-autostart-generator, and much more. Just yesterday was one of the latest additions of exposing host OS information to containers.

  • Intel Gen12/Xe Graphics Have AV1 Accelerated Decode - Linux Support Lands

    On top of Intel Gen12/Xe Graphics bringing other media engine improvements and much better 3D graphics support, another exciting element of the next-generation Intel graphics is now confirmed: GPU-accelerated AV1 video decoding! There has been talk of Gen12/Xe supporting AV1 at least on the decode side but a lack of hard information to date. But landing this week in Intel's Media Driver for Linux is indeed AV1 decode wired up for Gen12. This is nice to see happen and a bit of a surprise as so far the Intel Media Driver support matrix has lacked any references to AV1.

  • Four years of Zephyr

    The Zephyr project is an effort to provide an open-source realtime operating system (RTOS) that is designed to bridge the gap between full-featured operating systems like Linux and bare-metal development environments. It's been over four years since Zephyr was publicly announced and discussed here (apparently to a bit of puzzlement). In this article, we give an update on the project and its community as of its v2.3.0 release in June 2020; we also make some guesses about its near future. The authors are both Zephyr developers working for Nordic Semiconductor; Cufí was the release manager for the v2.3.0 release. [...] The Zephyr kernel supports multiple architectures and scheduling algorithms. There are cooperative and preemptive threads, along with facilities for reducing interrupt latencies and guaranteeing the execution of key threads. An optional user mode can use the Memory Protection Units (MPUs) typically present in microcontrollers to isolate and sandbox threads or groups of threads from one another and the kernel. Zephyr supports six major architectures (x86, Arm, ARC, NIOS II, Xtensa, and RISC-V) and also runs in emulation. Both 32- and 64-bit processor support exists for some architectures. Within the Arm architecture, the emphasis has been on the usual 32-bit Cortex-M cores, but experimental support for Cortex-R and Cortex-A (including 64-bit Cortex-A) exists and continues to improve. Beyond "real hardware," Zephyr runs on QEMU, and as an ELF executable. It supports a simulated radio, which can save time and expense when testing and debugging radio frequency (RF) issues. In all, there are upstream support files for over 200 "boards". Zephyr has logging and shell subsystems. These have configurable transports, including traditional serial ports (for both) and over the network (for logging). Logging is optionally asynchronous; in this case, a separate thread actually sends log messages. The logging calls themselves post compact messages to a queue, which can be done quickly, so logging can be done even from within interrupt context. Hardware-specific APIs are built around a lightweight device driver model that is tightly integrated with the kernel. It supports a wide range of peripherals and sensors under this common model. Multiple storage options are available. These range from basic key-value storage optimized for NOR flash to filesystems.

Mozilla Leftovers and Firefox Development

  • Browser Wish List - Tab Splitting for Contextual Reading

    On Desktop, I'm very often in a situation where I want to read a long article in a browser tab with a certain number of hypertext links. The number of actions I have to do to properly read the text is tedious. It's prone to errors, requires a bit of preparation and has a lot of manual actions.

  • Mozilla Privacy Blog: Laws designed to protect online security should not undermine it

    Mozilla, Atlassian, and Shopify yesterday filed a friend-of-the-court brief in Van Buren v. U.S. asking the U.S. Supreme Court to consider implications of the Computer Fraud and Abuse Act for online security and privacy. Mozilla’s involvement in this case comes from our interest in making sure that the law doesn’t stand in the way of effective online security. The Computer Fraud and Abuse Act (CFAA) was passed as a tool to combat online hacking through civil and criminal liability. However, over the years various federal circuit courts have interpreted the law so broadly as to threaten important practices for managing computer security used by Mozilla and many others. Contrary to the purpose of the statute, the lower court’s decision in this case would take a law meant to increase security and interpret it in a way that undermines that goal.

  • Changes to storage.sync in Firefox 79

    Firefox 79, which will be released on July 28, includes changes to the storage.sync area. Items that extensions store in this area are automatically synced to all devices signed in to the same Firefox Account, similar to how Firefox Sync handles bookmarks and passwords. The storage.sync area has been ported to a new Rust-based implementation, allowing extension storage to share the same infrastructure and backend used by Firefox Sync. Extension data that had been stored locally in existing profiles will automatically migrate the first time an installed extension tries to access storage.sync data in Firefox 79. After the migration, the data will be stored locally in a new storage-sync2.sqlite file in the profile directory.

  • SpiderMonkey Newsletter 5 (Firefox 78-79)

    SpiderMonkey is the JavaScript engine used in Mozilla Firefox. This newsletter gives an overview of the JavaScript and WebAssembly work we’ve done as part of the Firefox 78 and 79 Nightly release cycles. If you like these newsletters, you may also enjoy Yulia’s weekly Compiler Compiler live stream, a guided tour of what it is like to work on SpiderMonkey and improve spec compliance.

  • Testing Firefox more efficiently with machine learning

    At Mozilla we have around 50,000 unique test files. Each contain many test functions. These tests need to run on all our supported platforms (Windows, Mac, Linux, Android) against a variety of build configurations (PGO, debug, ASan, etc.), with a range of runtime parameters (site isolation, WebRender, multi-process, etc.). While we don’t test against every possible combination of the above, there are still over 90 unique configurations that we do test against. In other words, for each change that developers push to the repository, we could potentially run all 50k tests 90 different times. On an average work day we see nearly 300 pushes (including our testing branch). If we simply ran every test on every configuration on every push, we’d run approximately 1.35 billion test files per day! While we do throw money at this problem to some extent, as an independent non-profit organization, our budget is finite. So how do we keep our CI load manageable? First, we recognize that some of those ninety unique configurations are more important than others. Many of the less important ones only run a small subset of the tests, or only run on a handful of pushes per day, or both. Second, in the case of our testing branch, we rely on our developers to specify which configurations and tests are most relevant to their changes. Third, we use an integration branch. [...] The early results of this project have been very promising. Compared to our previous solution, we’ve reduced the number of test tasks on our integration branch by 70%! Compared to a CI system with no test selection, by almost 99%! We’ve also seen pretty fast adoption of our mach try auto tool, suggesting a usability improvement (since developers no longer need to think about what to select). But there is still a long way to go! We need to improve the model’s ability to select configurations and default to that. Our regression detection heuristics and the quality of our dataset needs to improve. We have yet to implement usability and stability fixes to mach try auto. And while we can’t make any promises, we’d love to package the model and service up in a way that is useful to organizations outside of Mozilla. Currently, this effort is part of a larger project that contains other machine learning infrastructure originally created to help manage Mozilla’s Bugzilla instance.

  • Async Interview #8: Stjepan Glavina

    Several months ago, on May 1st, I spoke to Stjepan Glavina about his (at the time) new crate, smol. Stjepan is, or ought to be, a pretty well-known figure in the Rust universe. He is one of the primary authors of the various crossbeam crates, which provide core parallel building blocks that are both efficient and very ergonomic to use. He was one of the initial designers for the async-std runtime.

  • Missing structure in technical discussions

    People are amazing creatures. When discussing a complex issue, they are able to keep multiple independent arguments in their heads, the pieces of supporting and disproving evidence, and can collapse this system into a concrete solution.

  • Thank you, Julie Hanna

    Over the last three plus years, Julie Hanna has brought extensive experience on innovation processes, global business operations, and mission-driven organizations to her role as a board member of Mozilla Corporation. We have deeply appreciated her contributions to Mozilla throughout this period, and thank her for her time and her work with the board. [...] We look forward to continuing to see her play a key role in shaping and evolving purpose-driven technology companies across industries.